Package com.iizigo.image
Class ImageDefinitionEditor
- java.lang.Object
- org.eclipse.core.commands.common.EventManager
- org.eclipse.ui.part.WorkbenchPart
- org.eclipse.ui.part.EditorPart
- com.iizigo.editor.PropEditorPart
- com.iizigo.image.ImageDefinitionEditor
- All Implemented Interfaces:
IActivationListener
,IDraggingFix
,IWorkbenchPartIZ
,ILayoutListener
,IPropertyEditorController
,IPropUndoContext
,IPropUndoRedo
,org.eclipse.core.runtime.IAdaptable
,org.eclipse.core.runtime.IExecutableExtension
,org.eclipse.jface.viewers.ISelectionChangedListener
,org.eclipse.jface.viewers.ISelectionProvider
,org.eclipse.ui.ide.IGotoMarker
,org.eclipse.ui.IEditorPart
,org.eclipse.ui.INavigationLocationProvider
,org.eclipse.ui.IPersistable
,org.eclipse.ui.IPersistableEditor
,org.eclipse.ui.ISaveablePart
,org.eclipse.ui.ISaveablesSource
,org.eclipse.ui.IWorkbenchPart
,org.eclipse.ui.IWorkbenchPart2
,org.eclipse.ui.IWorkbenchPart3
,org.eclipse.ui.part.IWorkbenchPartOrientation
public class ImageDefinitionEditor extends PropEditorPart implements ILayoutListener
The Image Definition Editor part.The following shows the class hierarchy:
Single Image Definition:
EditorImageDefinition [image] ! +-- EditorImageStyle [image] ! +-- EditorImageResolution [image] ! +-- EditorImageStyle [image]
Styled Image Definition:
EditorStyledImageDefinition [image] ! +-- EditorImageStyleLocation ! +-- EditorImageStylesResolution [image] ! +-- EditorImageStyleLocation
Multiple Images Definition:
EditorImagesDefinition [image] ! +-- EditorImageLocation ! +-- EditorImagesStyle [image] ! ! ! +-- EditorImageLocation ! +-- EditorImagesResolution [image] ! +-- EditorImageLocation ! +-- EditorImagesStyle [image] ! +-- EditorImageLocation
To cure the above "problem" of having many images defined with many locations, we can add e.g. an EditorStyleMatch that can be added to the EditorImageStyle, EditorImageStyleLocation and EditorImagesStyle containers in order to avoid having repeat the same input for "complex" items such as EditorImageStyle, but typically EditorImagesStyle that contains locations for all images!
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from class com.iizigo.editor.PropEditorPart
PropEditorPart.DragSourceDelegator
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ID
The Part ID.Fields 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, updateSelectionAndStatesRunner
Constructor Summary
Constructors Constructor Description ImageDefinitionEditor()
Eclipse constructor.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
createEditorComposite(org.eclipse.swt.widgets.Composite parent)
Creates the Editor Main Composite.void
dispose()
Disposes of editor.boolean
doOpen(GProp<?>[] props)
Opens the property by selecting it in focus.boolean
doOpen(GProp<?> prop, int index, java.lang.String childName)
Opens the property by selecting it in focus.protected void
initEditor(PropCnr cnr)
The initialize editor method.void
onClose()
Called when the part is being closed but is not yet disposed but hidden.protected void
onEditedPropertyChangedForVerify(GEvent event)
Called when verification listener gets called for verify, very commonly in a non-SWT thread.void
onLayout()
Layout required.protected void
performPrint()
Performs Print.protected void
restoreMemento()
Restores this editor's state using the given memento.protected void
saveStateImpl(org.eclipse.ui.IMemento memento)
Saves the state.protected void
selectionChangedEx(org.eclipse.jface.viewers.SelectionChangedEvent event)
Selection changes in the tree.protected void
updateStatesEx()
Updates the states.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, onSetFocus, onUpdateStates, performCollapseAll, performCopy, performCopyFullPath, performCopyReference, performCut, performDelete, performExpandAll, performLink, performMove, performPaste, performPasteAfter, performPasteBefore, performPasteLink, performRedo, performRename, performRevert, performSave, performSelectAll, performUndo, postAsyncUpdateStates, proceedInit, proceedInitProperty, refreshViewers, registerFormControl, registerViewer, registerViewer, removeListener, removePropertyValue, removeSelectionChangedListener, restoreState, saveState, selectionChanged, setActionsUndoContext, setBlockViewerFocus, setFocus, setFocus, setInput, setPropertyAttrFlag, setPropertyError, setPropertyValue, setSelection, setTargetViewer, supportsCopyFullPath, supportsCopyReference, updateAllStates, updateStates, updateStatesPasteBeforeAfter, updateTitle, usePasteBeforeAfter, verifyDirtyStateChanged
Methods inherited from class org.eclipse.ui.part.EditorPart
checkSite, getEditorInput, getEditorSite, setContentDescription, setInitializationData, setInputWithNotify, setPartName
Methods 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, showBusy
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.ui.IWorkbenchPart
addPropertyListener, getSite, getTitle, removePropertyListener
Methods inherited from interface com.iizigo.editor.IWorkbenchPartIZ
onComponentFocused
Method Detail
initEditor
protected void initEditor(PropCnr cnr) throws org.eclipse.ui.PartInitException
The initialize editor method.Subclasses may override this method.
- Overrides:
initEditor
in classPropEditorPart
- Parameters:
cnr
- The property container being edited. Note: the real name of the property is in the parent FilePropCnr Atom.- Throws:
org.eclipse.ui.PartInitException
- For initialization failures.
onClose
public void onClose()
Called when the part is being closed but is not yet disposed but hidden.- Specified by:
onClose
in interfaceIActivationListener
- Overrides:
onClose
in classPropEditorPart
restoreMemento
protected void restoreMemento()
Restores this editor's state using the given memento.- Overrides:
restoreMemento
in classPropEditorPart
saveStateImpl
protected void saveStateImpl(org.eclipse.ui.IMemento memento)
Saves the state.- Overrides:
saveStateImpl
in classPropEditorPart
- Parameters:
memento
- The storage area for object's state.
dispose
public void dispose()
Disposes of editor.- Specified by:
dispose
in interfaceorg.eclipse.ui.IWorkbenchPart
- Overrides:
dispose
in classPropEditorPart
onLayout
public void onLayout()
Layout required.- Specified by:
onLayout
in interfaceILayoutListener
performPrint
protected void performPrint()
Performs Print.- Specified by:
performPrint
in classPropEditorPart
updateStatesEx
protected void updateStatesEx()
Updates the states.- Overrides:
updateStatesEx
in classPropEditorPart
createEditorComposite
protected void createEditorComposite(org.eclipse.swt.widgets.Composite parent)
Creates the Editor Main Composite.- Specified by:
createEditorComposite
in classPropEditorPart
- Parameters:
parent
- The empty parent composite without initialized layout, with the widget background color.
onEditedPropertyChangedForVerify
protected void onEditedPropertyChangedForVerify(GEvent event)
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:
onEditedPropertyChangedForVerify
in classPropEditorPart
selectionChangedEx
protected void selectionChangedEx(org.eclipse.jface.viewers.SelectionChangedEvent event)
Selection changes in the tree.- Overrides:
selectionChangedEx
in classPropEditorPart
doOpen
public boolean doOpen(GProp<?>[] props)
Opens the property by selecting it in focus.- Overrides:
doOpen
in classPropEditorPart
doOpen
public boolean doOpen(GProp<?> prop, int index, java.lang.String childName)
Opens the property by selecting it in focus.- Overrides:
doOpen
in 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.