1765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye/******************************************************************************* 2765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Copyright (c) 2011 Google, Inc. 3765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * All rights reserved. This program and the accompanying materials 4765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * are made available under the terms of the Eclipse Public License v1.0 5765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * which accompanies this distribution, and is available at 6765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * http://www.eclipse.org/legal/epl-v10.html 7765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * 8765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Contributors: 9765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Google, Inc. - initial API and implementation 10765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye *******************************************************************************/ 11765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyepackage org.eclipse.wb.internal.core.model.property.editor.presentation; 12765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 13765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.core.controls.CFlatButton; 14765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.internal.core.model.property.Property; 15765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.internal.core.model.property.table.PropertyTable; 16765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 17765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.swt.SWT; 18765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.swt.widgets.Control; 19765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 20765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye/** 21765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Internal implementation of {@link PropertyEditorPresentation} for displaying special owner-draw 22765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * button for Mac OSX. 23765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * 24765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * @author mitin_aa 25765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * @coverage core.model.property.editor 26765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye */ 27765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyefinal class ButtonPropertyEditorPresentationImplMac extends ButtonPropertyEditorPresentationImpl { 28765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye //////////////////////////////////////////////////////////////////////////// 29765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // 30765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // Constructor 31765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // 32765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye //////////////////////////////////////////////////////////////////////////// 33765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye public ButtonPropertyEditorPresentationImplMac(ButtonPropertyEditorPresentation presentation) { 34765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye super(presentation); 35765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye } 36765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 37765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye //////////////////////////////////////////////////////////////////////////// 38765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // 39765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // Control 40765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye // 41765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye //////////////////////////////////////////////////////////////////////////// 42765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye @Override 43765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye protected final Control createControlImpl(final PropertyTable propertyTable, Property property) { 44765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye CFlatButton button = new CFlatButton(propertyTable, SWT.NONE); 45765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye button.setImage(getPresentation().getImage()); 46765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye button.setToolTipText(getPresentation().getTooltip()); 47765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye return button; 48765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye } 49765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 50765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye @Override 51765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye public final void setSelection(PropertyTable propertyTable, Property property, boolean selected) { 52765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye CFlatButton button = (CFlatButton) m_propertyToControl.get(propertyTable, property); 53765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye if (button != null) { 54765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye button.setSelected(selected); 55765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye } 56765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye } 57765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye} 58