Package com.iizigo.panel
Class PanelEditor
- All Implemented Interfaces:
IComplexOperationSelection,IActivationListener,IDraggingFix,IWorkbenchPartIZ,IPreviewThemeProvider,IPropertyEditorController,IPropUndoContext,IPropUndoRedo,IAdaptable,IExecutableExtension,ISelectionChangedListener,ISelectionProvider,IGotoMarker,IEditorPart,INavigationLocationProvider,IPersistable,IPersistableEditor,ISaveablePart,ISaveablesSource,IWorkbenchPart,IWorkbenchPart2,IWorkbenchPart3,IWorkbenchPartOrientation
public class PanelEditor extends PropEditorPart implements IComplexOperationSelection, IPreviewThemeProvider
The panel editor.
- Author:
- Christopher Mindus
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classClass holding a grid layout and components or indexes for the grid operations.Nested classes/interfaces inherited from class com.iizigo.editor.PropEditorPart
PropEditorPart.DragSourceDelegatorField Summary
FieldsFields inherited from class com.iizigo.editor.PropEditorPart
appUI, copyAction, copyFullPathAction, copyReferenceAction, cutAction, deleteAction, dslPaste, editedPropCnr, EMPTY, filePropCnr, fileResource, globalActionBars, ir, linkAction, moveAction, partSelection, pasteAction, pasteAfterAction, pasteBeforeAction, pasteLinkAction, printAction, propEventListener, redoAction, renameAction, restoreMemento, revertAction, rootPropCnr, saveAction, selectAllAction, selectionEnabler, tiPaste, toolBar, toolBar2, undoAction, updateSelectionAndStatesRunnerFields inherited from interface org.eclipse.ui.IEditorPart
PROP_DIRTY, PROP_INPUTFields inherited from interface org.eclipse.ui.IWorkbenchPart
PROP_TITLEConstructor Summary
ConstructorsMethod Summary
Modifier and TypeMethodDescriptionbooleanReturns if styles are displayed or not.static StringclearInternalBrowserCache(IPreferenceStore store, boolean force, Browser browser) Checks if clearing the browser cache is required due to a new iiziGo Build or a compression settings.protected voidcreateEditorComposite(Composite parent) Creates the Editor Main Composite.voiddispose()Disposes of the Panel Editor.voiddoComplexOperationSelection(GProp<?>[] props) Performs the selection of the components.static voidPerforms flashing of a component in all open editors.booleanOpens the property by selecting it in focus.booleanOpens the property by selecting it in focus.Gets the current language code.intGets the current drop mode: 0 = Horizontal insert, 1 = Vertical insert, 2 = Horizontal overwrite, 3 = Horizontal overwrite wrapping, 4 = Vertically overwrite.Gets the edited panel.Gets the selection of marks for drag-drop.Gets the theme information for the current editor used for the image preview.Returns the tree viewer for the panel editor.Gets the VirtualSpace of the edited panel.protected voidinitEditor(PropCnr cnr) The initialize editor method.voidonClose()Called when the part is being closed but is not yet disposed but hidden.protected voidCalled when verification listener gets called for verify, very commonly in a non-SWT thread.voidCalled when the folder settings are changed.voidAsks this part to take focus within the workbench.protected voidCalled just in the beginning of updateStates() before selections are processed.booleanperformClearCells(boolean useComponentSelection, boolean doit) Clears cells in a grid.protected booleanperformCopyFullPath(boolean doPerform) Copies the full path.protected booleanperformCopyReference(boolean doPerform) Copies the reference.booleanperformDeleteColumn(boolean useComponentSelection, boolean doit) Delete column.booleanperformDeleteRow(boolean useComponentSelection, boolean doit) Delete row.booleanperformInsertColumn(boolean isAfter, boolean useComponentSelection, boolean doit) Inserts a column before or after.booleanperformInsertRow(boolean isAfter, boolean useComponentSelection, boolean doit) Inserts a row before or after.voidPerforms Paste Before.voidPerforms Paste Before.protected voidPrint the window.protected voidsaveStateImpl(IMemento memento) Saves the state.protected voidSelection changes in the tree.voidsetDevice(GSimpleDevice dev) Sets the device to use in the panel editor without undo functionality.voidSets the fit-now zoom level.voidsetIncludeStyles(boolean on) Enables or disables viewing of styles.booleansetTreeSelection(GProp<?> prop) Sets the tree selection to the property in question.protected booleanReturns if the Copy path should be present or not.protected booleanReturns if the Copy reference should be present or not.protected voidCalled to update the states.protected voidInitializes the paste before/after validity.protected booleanProcessing of paste before/after is enabled.voidChecks if the browser is internal, and if so waits for the ClientSideEditor to start.Methods inherited from class com.iizigo.editor.PropEditorPart
addForDisposalAtDispose, addListener, addOpenFile, addSelectionChangedListener, addToolbar2PushButton, addToolbar2PushButton, addToolbar2Separator, addToolbarPushButton, addToolbarPushButton, addToolbarPushButton, addToolbarPushButton, addToolbarPushButton, addToolbarPushButton, addToolbarPushButton, addToolbarSeparator, addToolbarSeparator, closeFile, createCommonViewer, createEmptyNavigationLocation, createFilteredCommonViewer, createFilteredCommonViewer, createLicenseExceptionComposite, createMenu, createMenu, createNavigationLocation, createPartControl, doSave, doSaveAs, fireSelectionAndStates, getActiveEditor, getActiveEditor, getActivePart, getActiveSaveables, getAdapter, getCurrentTreeViewer, getEditors, getExtension, getLicenseException, getModuleModel, getMultiSelectionProvider, getPartComposite, getPartName, getRedoAction, getSaveables, getSelection, getSelectionEnabler, getShell, getSyntClipboardSelection, getTargetViewer, getTitleImage, getTitleToolTip, getTitleToolTip, getTopmostEditor, getUndoAction, getUndoContext, getUndoRedo, gotoMarker, hasInitError, init, invalidLicense, isDirty, isDisposed, isDragging, isSaveAsAllowed, isSaveOnCloseNeeded, onActivated, onCloseProject, onComponentFocus, onDragBegin, onDragEnd, onEditorActivated, onEditorReady, onFileClosed, onPartRenamed, performCollapseAll, performCopy, performCut, performDelete, performExpandAll, performLink, performMove, performPaste, performPasteLink, performRedo, performRename, performRevert, performSave, performSelectAll, performUndo, postAsyncUpdateStates, proceedInit, proceedInitProperty, refreshViewers, registerFormControl, registerViewer, registerViewer, removeListener, removePropertyValue, removeSelectionChangedListener, restoreMemento, restoreState, saveState, selectionChanged, setActionsUndoContext, setBlockViewerFocus, setFocus, setFocus, setInput, setPropertyAttrFlag, setPropertyError, setPropertyValue, setSelection, setTargetViewer, updateAllStates, updateStates, updateTitle, verifyDirtyStateChangedMethods inherited from class org.eclipse.ui.part.EditorPart
checkSite, getEditorInput, getEditorSite, setContentDescription, setInitializationData, setInputWithNotify, setPartNameMethods inherited from class org.eclipse.ui.part.WorkbenchPart
addPartPropertyListener, addPropertyListener, firePartPropertyChanged, firePropertyChange, getConfigurationElement, getContentDescription, getDefaultImage, getOrientation, getPartName, getPartProperties, getPartProperty, getSite, getTitle, removePartPropertyListener, removePropertyListener, setPartProperty, setSite, setTitle, setTitleImage, setTitleToolTip, showBusyMethods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObjectMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.iizigo.editor.complex.IComplexOperationSelection
getSelectionBefore, isDisposed, isReturningSelectionBeforeOperationMethods inherited from interface org.eclipse.ui.IWorkbenchPart
addPropertyListener, getSite, getTitle, removePropertyListenerMethods inherited from interface com.iizigo.editor.IWorkbenchPartIZ
onComponentFocused
Field Details
ID
The Part ID.
Constructor Details
PanelEditor
public PanelEditor()The Eclipse constructor.
Method Details
clearInternalBrowserCache
public static String clearInternalBrowserCache(IPreferenceStore store, boolean force, Browser browser) Checks if clearing the browser cache is required due to a new iiziGo Build or a compression settings.- Parameters:
store- The preference store.force- For clearing flag.browser- The browser component, null for Windows MSIE typically.- Returns:
- Message for cache cleared, null for
none.
initEditor
The initialize editor method.Subclasses may override this method.
- Overrides:
initEditorin classPropEditorPart- Parameters:
cnr- The property container being edited. Note: the real name of the property is in the parent FilePropCnr Atom.- Throws:
PartInitException- For initialization failures.
onClose
public void onClose()Called when the part is being closed but is not yet disposed but hidden.- Specified by:
onClosein interfaceIActivationListener- Overrides:
onClosein classPropEditorPart
saveStateImpl
Saves the state.- Overrides:
saveStateImplin classPropEditorPart- Parameters:
memento- The storage area for object's state.
getEditedPanel
Gets the edited panel.dispose
public void dispose()Disposes of the Panel Editor.- Specified by:
disposein interfaceIWorkbenchPart- Overrides:
disposein classPropEditorPart
onUpdateStates
protected void onUpdateStates()Called just in the beginning of updateStates() before selections are processed. Override as required.- Overrides:
onUpdateStatesin classPropEditorPart
onSetFocus
public void onSetFocus()Asks this part to take focus within the workbench. Parts must assign focus to one of the controls contained in the part's parent composite.- Overrides:
onSetFocusin classPropEditorPart
usePasteBeforeAfter
protected boolean usePasteBeforeAfter()Processing of paste before/after is enabled.- Overrides:
usePasteBeforeAfterin classPropEditorPart- Returns:
- true to handle before/after.
updateStatesPasteBeforeAfter
protected void updateStatesPasteBeforeAfter()Initializes the paste before/after validity.- Overrides:
updateStatesPasteBeforeAfterin classPropEditorPart
performPasteBefore
public void performPasteBefore()Performs Paste Before.- Overrides:
performPasteBeforein classPropEditorPart
performPasteAfter
public void performPasteAfter()Performs Paste Before.- Overrides:
performPasteAfterin classPropEditorPart
supportsCopyReference
protected boolean supportsCopyReference()Returns if the Copy reference should be present or not.- Overrides:
supportsCopyReferencein classPropEditorPart- Returns:
- false indicates no such item should be present, true for maybe, depending on selection.
supportsCopyFullPath
protected boolean supportsCopyFullPath()Returns if the Copy path should be present or not.- Overrides:
supportsCopyFullPathin classPropEditorPart- Returns:
- false indicates no such item should be present, true for maybe, depending on selection.
performCopyReference
protected boolean performCopyReference(boolean doPerform) Copies the reference.- Overrides:
performCopyReferencein classPropEditorPart- Parameters:
doPerform- Flag to perform the action or just testing it.- Returns:
- true for action enabled, false for disabled.
performCopyFullPath
protected boolean performCopyFullPath(boolean doPerform) Copies the full path.- Overrides:
performCopyFullPathin classPropEditorPart- Parameters:
doPerform- Flag to perform the action or just testing it.- Returns:
- true for action enabled, false for disabled.
onEditedPropertyChangedForVerify
Called when verification listener gets called for verify, very commonly in a non-SWT thread. This method does nothing by default and can be overridden to process the edited property container changes events.- Overrides:
onEditedPropertyChangedForVerifyin classPropEditorPart
onFolderSettingsChanged
public void onFolderSettingsChanged()Called when the folder settings are changed. This may result in a change of themes.getThemes
Gets the theme information for the current editor used for the image preview. Currently this consists of the desktop and mobile themes separated by commas.- Specified by:
getThemesin interfaceIPreviewThemeProvider- Returns:
- String consisting of the themes separated by commas, empty string means no theme (e.g. no mobile theme).
setDevice
Sets the device to use in the panel editor without undo functionality.- Parameters:
dev- The device to use.
waitForClientSideEditor
public void waitForClientSideEditor()Checks if the browser is internal, and if so waits for the ClientSideEditor to start. This operation should be done outside of the main UI thread. If the panel editor is external, no waiting is done. The maximum time to wait is 20 seconds.setFitNow
public void setFitNow()Sets the fit-now zoom level.getDropMode
public int getDropMode()Gets the current drop mode:- 0 = Horizontal insert,
- 1 = Vertical insert,
- 2 = Horizontal overwrite,
- 3 = Horizontal overwrite wrapping,
- 4 = Vertically overwrite.
createEditorComposite
Creates the Editor Main Composite.- Specified by:
createEditorCompositein classPropEditorPart- Parameters:
parent- The empty parent composite without initialized layout, with the widget background color.
setIncludeStyles
public void setIncludeStyles(boolean on) Enables or disables viewing of styles.areStylesIncluded
public boolean areStylesIncluded()Returns if styles are displayed or not.getTreeViewer
Returns the tree viewer for the panel editor.selectionChangedEx
Selection changes in the tree.- Overrides:
selectionChangedExin classPropEditorPart
getMarkedComponents
Gets the selection of marks for drag-drop.doComplexOperationSelection
Performs the selection of the components.- Specified by:
doComplexOperationSelectionin interfaceIComplexOperationSelection
updateStatesEx
protected void updateStatesEx()Called to update the states.- Overrides:
updateStatesExin classPropEditorPart
doOpen
Opens the property by selecting it in focus.- Overrides:
doOpenin classPropEditorPart
doOpen
Opens the property by selecting it in focus.- Overrides:
doOpenin classPropEditorPart- Parameters:
prop- The property to focus.index- The index in a multi-property.childName- Name of child property or null.- Returns:
- true for success, false for failure.
performPrint
protected void performPrint()Print the window.- Specified by:
performPrintin classPropEditorPart
performInsertRow
public boolean performInsertRow(boolean isAfter, boolean useComponentSelection, boolean doit) Inserts a row before or after.performInsertColumn
public boolean performInsertColumn(boolean isAfter, boolean useComponentSelection, boolean doit) Inserts a column before or after.performDeleteRow
public boolean performDeleteRow(boolean useComponentSelection, boolean doit) Delete row.performDeleteColumn
public boolean performDeleteColumn(boolean useComponentSelection, boolean doit) Delete column.performClearCells
public boolean performClearCells(boolean useComponentSelection, boolean doit) Clears cells in a grid.doFlash
Performs flashing of a component in all open editors.setTreeSelection
Sets the tree selection to the property in question. The first DesignerProp instance found is used.Note that this must be called from the SWT thread.
- Parameters:
prop- The property to select.- Returns:
- true For success, false for failure.
getVirtualSpace
Gets the VirtualSpace of the edited panel. If not yet assigned, a question will be asked to create a new VirtualSpace or assign an existing VirtualSpace.- Returns:
- The VirtualSpace, or null for none (user canceled operation).
getCurrentLanguageCode
Gets the current language code.- Returns:
- The language code, or null for default.