public abstract class BaseMergeEditor extends oracle.jdevimpl.compare.BaseCompareEditor implements ViewEditListener, DynamicStatusProvider, oracle.ide.ceditor.find.FindableEditor
_addin, ATTRIBUTE_BACKGROUND_COLOR, ATTRIBUTE_CUSTOM_HORIZONTAL_SCROLLBAR, ATTRIBUTE_CUSTOM_VERTICAL_SCROLLBAR, ATTRIBUTE_DELAY_PALETTE_LOAD, ATTRIBUTE_HORIZONTAL_BLOCK_INCREMENT, ATTRIBUTE_HORIZONTAL_SCROLLBAR_POLICY, ATTRIBUTE_HORIZONTAL_UNIT_INCREMENT, ATTRIBUTE_MENU_ID, ATTRIBUTE_OLD_EDITOR, ATTRIBUTE_SCROLLABLE, ATTRIBUTE_VERTICAL_BLOCK_INCREMENT, ATTRIBUTE_VERTICAL_SCROLLBAR_POLICY, ATTRIBUTE_VERTICAL_UNIT_INCREMENT, CUSTOM_BORDER, PROPERTY_FIXED_BOTTOM_MARGIN, PROPERTY_FIXED_LEFT_MARGIN, PROPERTY_FIXED_RIGHT_MARGIN, PROPERTY_FIXED_TOP_MARGIN, PROPERTY_SCROLLABLE_LEFT_MARGIN, PROPERTY_SCROLLABLE_TOP_MARGIN
EMPTY_SELECTION, PROJECT_PROP, VISIBLE_PROP, WORKSPACE_PROP
Constructor and Description |
---|
BaseMergeEditor() |
Modifier and Type | Method and Description |
---|---|
protected Context |
_getContext() |
void |
addChangeListener(javax.swing.event.ChangeListener l) |
void |
close() |
protected void |
compareViewStatusChanged() |
protected Command |
createEditCommand(ViewEdit viewEdit) |
protected CompareModel |
createMergeModel(Context context)
Creates a merge compare model, based on the current editor context.
|
protected abstract CompareModel |
createMergeModelImpl(Context context)
Creates a merge compare model, based on the current editor context (implementor).
|
protected java.io.Reader |
createReader()
Creates a
Reader on the node URL. |
protected void |
deinstallUndoableEditListener()
De-installs view-specific undoable edit listeners.
|
java.awt.Component |
getBottomComponent() |
protected boolean |
getClientSideMergeSetting() |
CompareView |
getCompareView() |
protected Controller |
getControllerImpl() |
javax.swing.JComponent[] |
getCustomCells()
Get an array of custom cells to add to a StatusBar.
|
java.lang.Object |
getEditorAttribute(java.lang.String attribute) |
BasicEditorPane |
getFocusedEditorPane()
Fetches the focused (active) editor pane embedded in the editor.
|
protected java.awt.Component |
getGUIImpl() |
HelpInfo |
getHelpInfo() |
protected java.net.URL |
getRealURL() |
protected java.net.URL |
getRealURL(Context context) |
protected abstract <T> T |
getSaveResultForNode() |
protected java.net.URL |
getSaveURL(Context context) |
protected java.lang.String |
getSuffixAsType(java.net.URL url) |
Toolbar |
getToolbar()
Get the toolbar associated with this view.
|
protected void |
initializeMergeContextCS(Context context) |
protected void |
initializeMergeModel(CompareModel mergeModel) |
protected void |
initializeMergeView(CompareView mergeView)
Intializes the merge compare view.
|
protected void |
initializeToolbar(Toolbar toolbar)
Initializes the toolbar instance with actions for the merge editor.
|
protected void |
initializeToolbarImpl(Toolbar toolbar)
Initializes the toolbar instance with specific actions for the merge editor.
|
protected void |
installUndoableEditListener()
Installs view-specific undoable edit listeners.
|
boolean |
isCompleteState()
Asks whether the editor is in 'complete state'.
|
boolean |
isDynamic() |
boolean |
isExpandable(javax.swing.JComponent cell)
Determine whether the given custom cell should expand to fill any extra
space beyond its minimum requirements.
|
protected boolean |
isMergeModelBasedOnFile() |
protected boolean |
isNodeDirty()
Asks if the node is 'dirty' according to the merge editor.
|
protected boolean |
isSaveEnabled() |
protected java.awt.Component |
layoutNorthComponent(Toolbar toolbar)
Lays out and returns the north-orientation component in the merge editor UI.
|
void |
moveToCompleteState()
Move the editor into a 'complete state' from which no more merge activity
can be performed.
|
void |
open()
Open this editor on the context set by a prior call to setContext.
|
void |
removeChangeListener(javax.swing.event.ChangeListener l) |
protected void |
reopen()
Reopens the node for merging, from a restart (if complete) or revert.
|
protected void |
resolveMergeStatus(java.net.URL realUrl) |
boolean |
restartMerge()
Restarts the merge task, subject to user confirmation.
|
boolean |
restartMergeImpl()
Restarts the merge task, without user confirmation.
|
protected abstract boolean |
restartMergeImpl(Context context)
Restarts the merge task, without user confirmation (implementor).
|
boolean |
saveMerge()
Deprecated.
only required for dynamic editor behaviors; merge editors
should now be statically registered against a derivative type of
BaseMergeNode . |
boolean |
saveMergeImpl()
Deprecated.
only required for dynamic editor behaviors; merge editors
should now be statically registered against a derivative type of
BaseMergeNode . |
protected boolean |
saveMergeImpl(Context context,
CompareModel compareModel)
Deprecated.
only required for dynamic editor behaviors; merge editors
should now be statically registered against a derivative type of
BaseMergeNode . |
void |
setContext(Context context)
Sets the current editor context.
|
protected void |
setProgressCancelable(boolean cancelable) |
protected boolean |
supportsDrawers() |
void |
update(java.lang.Object observed,
UpdateMessage change)
Notification message.
|
protected void |
updateMergeAttributes(TextBuffer mergeTextBuffer) |
protected void |
updateStatusLabel()
Updates the status label of the merge editor, describing the number of
conflicts and resolved differences.
|
protected abstract boolean |
validateContent(CompareModel compareModel)
Validate the content of the merged result.
|
void |
viewEditHappened(ViewEditEvent vee) |
addFixedCompareDrawer, augmentToolbarComponents, createLocalAction, createLocalAction, getGUI, getLocalAction, getLocalAction, hasCompareDrawers, hideAncillaryProgress, hidePopup, resolveGlobalAction, showAncillaryProgress, showPopup, showPopupImpl, stateDone, stateError, stateInProgress, updateFixedDrawerToolbars
addDrawer, getController, getDrawerViews, initializeGUI, persistDrawerStates, removeIfPresent, setSuppressPersistence, updateVisibleActions
addPreferredLayoutListener, addPropertyChangeListener, editorHidden, editorShown, firePropertyChangeEvent, getContext, getContextMenu, getDefaultFocusComponent, getDependentNodes, getDisplayName, getEditorAddin, getFixedBottomMargin, getFixedLeftMargin, getFixedRightMargin, getFixedTopMargin, getMiniToolbar, getPreferredLayoutBaseName, getPreferredLayoutURL, getScrollableLeftMargin, getScrollableTopMargin, getTabDescription, getTabIcon, getTabLabel, getTitleLabel, getType, initializeActiveLayout, initializeLayout, isReady, loadSettings, newId, prepareForSaving, removePreferredLayoutListener, removePropertyChangeListener, saveSettings, setEditorAddin, setEditorAttribute, setPreferredLayoutBaseName, setPreferredLayoutURL, setType
activate, addViewListener, addViewSelectionListener, addViewStateListener, deactivate, fireViewCollapsed, fireViewExpanded, fireViewSelectionChanged, getContext, getId, getSelection, getSelectionFromUI, getTabName, getViewWithoutDecoration, isVisible, loadLayout, loadManifestToolbar, loadManifestToolbar, owner, removeViewListener, removeViewSelectionListener, removeViewStateListener, saveLayout, scheduleUpdateSelection, setId, setOwner, setToolbarVisible, show, toString, updateSelection, updateSelectionImpl, updateTitle, updateToolbarActions, updateVisibleActions
public boolean isDynamic()
public void setContext(Context context)
Editor
setContext
in class Editor
protected final Context _getContext()
public CompareView getCompareView()
getCompareView
in interface oracle.jdevimpl.compare.CompareViewOwner
public void viewEditHappened(ViewEditEvent vee)
viewEditHappened
in interface ViewEditListener
vee
- protected void compareViewStatusChanged()
protected void updateStatusLabel()
public boolean restartMerge() throws java.io.IOException
true
if the restart succeeded.java.io.IOException
- if an I/O exception occurred restarting the merge task.public boolean restartMergeImpl() throws java.io.IOException
true
if the restart succeeded.java.io.IOException
- if an I/O exception occurred restarting the merge task.@Deprecated public boolean saveMerge() throws java.io.IOException
BaseMergeNode
.true
if the save succeeded.java.io.IOException
- if an I/O exception occurred saving merge results.protected java.net.URL getSaveURL(Context context)
protected boolean isMergeModelBasedOnFile()
protected final java.net.URL getRealURL()
protected final java.net.URL getRealURL(Context context)
@Deprecated public boolean saveMergeImpl() throws java.io.IOException
BaseMergeNode
.true
if the save succeeded.java.io.IOException
- if an I/O exception occurred saving merge results.public void moveToCompleteState()
public boolean isCompleteState()
true
if the editor is currently in the complete state.public java.awt.Component getBottomComponent()
getBottomComponent
in class Editor
public java.lang.Object getEditorAttribute(java.lang.String attribute)
getEditorAttribute
in class Editor
attribute
- takes values from ATTRIBUTE_ constants.public void open()
OpenAbortedException
open
in class Editor
Editor.setContext(oracle.ide.Context)
protected void resolveMergeStatus(java.net.URL realUrl)
protected void setProgressCancelable(boolean cancelable)
protected boolean getClientSideMergeSetting()
protected void initializeMergeContextCS(Context context) throws java.lang.Exception
java.lang.Exception
protected java.lang.String getSuffixAsType(java.net.URL url)
public HelpInfo getHelpInfo()
getHelpInfo
in interface Helpable
getHelpInfo
in class View
protected java.awt.Component getGUIImpl()
getGUIImpl
in class oracle.jdevimpl.compare.DrawerEditor
protected Controller getControllerImpl()
getControllerImpl
in class oracle.jdevimpl.compare.DrawerEditor
public Toolbar getToolbar()
getToolbar
in class View
protected boolean supportsDrawers()
supportsDrawers
in class oracle.jdevimpl.compare.DrawerEditor
public void update(java.lang.Object observed, UpdateMessage change)
public void addChangeListener(javax.swing.event.ChangeListener l)
addChangeListener
in interface DynamicStatusProvider
l
- public void removeChangeListener(javax.swing.event.ChangeListener l)
removeChangeListener
in interface DynamicStatusProvider
l
- public javax.swing.JComponent[] getCustomCells()
getCustomCells
in interface StatusProvider
StatusBar
public boolean isExpandable(javax.swing.JComponent cell)
isExpandable
in interface StatusProvider
cell
- StatusProvider.getCustomCells()
public BasicEditorPane getFocusedEditorPane()
getFocusedEditorPane
in interface BasicEditorPaneContainer
BasicEditorPane
that currently has focusprotected void installUndoableEditListener()
ViewEditListener
to the view.protected void deinstallUndoableEditListener()
ViewEditListener
from the view.protected java.awt.Component layoutNorthComponent(Toolbar toolbar)
toolbar
- the toolbar.protected void initializeToolbar(Toolbar toolbar)
SaveMergeCommand
and RestartMergeCommand
before calling initializeToolbarImpl(Toolbar)
.toolbar
- the toolbar.protected void initializeToolbarImpl(Toolbar toolbar)
SaveMergeCommand
and RestartMergeCommand
.toolbar
- the toolbar.protected void initializeMergeModel(CompareModel mergeModel)
protected void initializeMergeView(CompareView mergeView)
mergeView
- the merge compare view.protected CompareModel createMergeModel(Context context)
context
- the current context.CompareModel
.protected abstract <T> T getSaveResultForNode()
protected abstract CompareModel createMergeModelImpl(Context context)
context
- the current context.CompareModel
.protected abstract boolean restartMergeImpl(Context context) throws java.io.IOException
context
- the current context.true
if the restart succeeded.java.io.IOException
- if an I/O exception occurred restarting the merge task.protected void reopen()
@Deprecated protected boolean saveMergeImpl(Context context, CompareModel compareModel) throws java.io.IOException
BaseMergeNode
.context
- the current context.compareModel
- the merge compare model of the view.true
if the save succeeded.java.io.IOException
- if an I/O exception occurred saving merge results.protected boolean isNodeDirty()
true
if the file timestmap has changed.protected java.io.Reader createReader() throws java.io.IOException
Reader
on the node URL.java.io.IOException
- if an I/O exception occurred accessing the file.protected boolean isSaveEnabled()
protected abstract boolean validateContent(CompareModel compareModel) throws java.io.IOException
compareModel
- java.io.IOException
protected void updateMergeAttributes(TextBuffer mergeTextBuffer)