/* * � Copyright IBM Corp. 2011 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.ibm.xsp.extlib.designer.tooling.panels.mobile; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Group; import com.ibm.commons.iloader.node.NodeException; import com.ibm.commons.iloader.node.lookups.api.StringLookup; import com.ibm.commons.swt.data.controls.DCCompositeCombo; import com.ibm.commons.swt.data.editors.api.PropertyEditor; import com.ibm.commons.swt.data.editors.support.EditorRegistry; import com.ibm.commons.util.StringUtil; import com.ibm.designer.domino.constants.XSPAttributeNames; import com.ibm.designer.domino.ide.resources.extensions.util.DesignerDELookup; import com.ibm.designer.domino.xsp.registry.DesignerExtensionUtil; import com.ibm.designer.domino.xsp.registry.PropertyDesignerExtension; import com.ibm.designer.ide.xsp.components.api.panels.XSPBasicsPanelWithValue; import com.ibm.xsp.extlib.designer.tooling.constants.IExtLibAttrNames; import com.ibm.xsp.extlib.designer.tooling.constants.IExtLibTagLib; import com.ibm.xsp.extlib.designer.tooling.constants.IExtLibTagNames; import com.ibm.xsp.extlib.designer.tooling.utils.ExtLibToolingLogger; import com.ibm.xsp.registry.FacesDefinition; import com.ibm.xsp.registry.FacesLibrary; import com.ibm.xsp.registry.FacesProperty; import com.ibm.xsp.registry.FacesRegistry; /** * @author doconnor * */ public class ToolBarButtonBasicsPanel extends XSPBasicsPanelWithValue { /** * @param parent * @param style */ public ToolBarButtonBasicsPanel(Composite parent, int style) { super(parent, style); } /* (non-Javadoc) * @see com.ibm.commons.swt.data.layouts.PropLayoutGroupBox#createGroupBoxContents(org.eclipse.swt.widgets.Group) */ @Override protected void createGroupBoxContents(Group groupBox) { FacesRegistry reg = getExtraData().getDesignerProject().getFacesRegistry(); FacesLibrary lib = reg.getLibrary(IExtLibTagLib.EXT_LIB_NAMESPACE_URI); FacesDefinition def = lib.getDefinition(IExtLibTagNames.EXT_LIB_TAG_TOOLBAR_BUTTON); String moveToLabel = null; String transisitionLabel = null; String hrefLabel = null; String arrowLabel = null; if(def != null){ FacesProperty p = def.getProperty(IExtLibAttrNames.EXT_LIB_ATTR_MOVE_TO); if(p != null){ PropertyDesignerExtension ext = DesignerExtensionUtil.getPropertyExtension(p); if(ext != null){ moveToLabel = ext.getDisplayName(); } } p = def.getProperty(IExtLibAttrNames.EXT_LIB_ATTR_TRANSITION); if(p != null){ PropertyDesignerExtension ext = DesignerExtensionUtil.getPropertyExtension(p); if(ext != null){ transisitionLabel = ext.getDisplayName(); } } p = def.getProperty(IExtLibAttrNames.EXT_LIB_ATTR_HREF); if(p != null){ PropertyDesignerExtension ext = DesignerExtensionUtil.getPropertyExtension(p); if(ext != null){ hrefLabel = ext.getDisplayName(); } } /*p = def.getProperty(IExtLibAttrNames.EXT_LIB_ATTR_ARROW); if(p != null){ PropertyDesignerExtension ext = DesignerExtensionUtil.getPropertyExtension(p); if(ext != null){ arrowLabel = ext.getDisplayName(); } }*/ } if(StringUtil.isNotEmpty(moveToLabel)){ createLabel(moveToLabel + ":", null, getLabelToolTipText(IExtLibAttrNames.EXT_LIB_ATTR_MOVE_TO)); DCCompositeCombo combo = createComboComputed(IExtLibAttrNames.EXT_LIB_ATTR_MOVE_TO, DesignerDELookup.getXPagesLookup(getExtraData().getDesignerProject()), createControlGDFill(getNumLeftColumns() - 1), true, true, "moveTo.id", null); // $NON-NLS-1$ try { String params = IExtLibTagLib.EXT_LIB_NAMESPACE_URI + "," + IExtLibTagNames.EXT_LIB_TAG_APPLICATION_PAGE + "," + IExtLibAttrNames.EXT_LIB_ATTR_PAGE_NAME; // $NON-NLS-1$ PropertyEditor pe = EditorRegistry.getInstance().createEditor("com.ibm.designer.domino.xsp.attrvalpicker", params); // $NON-NLS-1$ if(pe != null){ initPropertyEditor(pe, IExtLibAttrNames.EXT_LIB_ATTR_MOVE_TO); combo.setPropertyEditor(pe); } } catch(NodeException ne) { ExtLibToolingLogger.EXT_LIB_TOOLING_LOGGER.error(ne, ne.toString()); } } if(StringUtil.isNotEmpty(moveToLabel)){ createLabel(hrefLabel + ":", null, getLabelToolTipText(IExtLibAttrNames.EXT_LIB_ATTR_HREF)); createDCTextComputed(IExtLibAttrNames.EXT_LIB_ATTR_HREF, createControlGDFill(getNumLeftColumns() - 1), "href.id"); // $NON-NLS-1$ } if(StringUtil.isNotEmpty(transisitionLabel)){ createLabel(transisitionLabel + ":", null, getLabelToolTipText(IExtLibAttrNames.EXT_LIB_ATTR_TRANSITION)); createComboComputed(IExtLibAttrNames.EXT_LIB_ATTR_TRANSITION, new StringLookup(new String[]{IExtLibAttrNames.EXT_LIB_ATTR_VAL_SLIDE, IExtLibAttrNames.EXT_LIB_ATTR_VAL_FADE, IExtLibAttrNames.EXT_LIB_ATTR_VAL_FLIP}, new String[]{"Slide", "Fade", "Flip"}), // $NLX-ToolBarButtonBasicsPanel.Slide-1$ $NLX-ToolBarButtonBasicsPanel.Fade-2$ $NLX-ToolBarButtonBasicsPanel.Flip-3$ createControlGDFill(getNumLeftColumns() - 1), true, false, "transition.id", "None"); // $NON-NLS-1$ $NLX-ToolBarButtonBasicsPanel.None-2$ } /* if(StringUtil.isNotEmpty(arrowLabel)){ Control c = createDCCheckboxComputed(IExtLibAttrNames.EXT_LIB_ATTR_ARROW, String.valueOf(true), arrowLabel, null); handleTooltip(c, getLabelToolTipText(IExtLibAttrNames.EXT_LIB_ATTR_ARROW)); } */ } /* (non-Javadoc) * @see com.ibm.designer.ide.xsp.components.api.panels.XSPBasicsPanel#getValueAttr() */ @Override protected String getValueAttr() { return XSPAttributeNames.XSP_ATTR_LABEL; } }