Package com.iizigo.db.editor
Class CustomSQLSourceViewer
- java.lang.Object
- org.eclipse.jface.viewers.Viewer
- org.eclipse.jface.viewers.ContentViewer
- org.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
- com.iizigo.db.editor.CustomSQLSourceViewer
- All Implemented Interfaces:
java.util.EventListener,org.eclipse.jface.action.IMenuListener,org.eclipse.jface.util.IPropertyChangeListener,org.eclipse.jface.viewers.IInputProvider,org.eclipse.jface.viewers.IInputSelectionProvider,org.eclipse.jface.viewers.ISelectionChangedListener,org.eclipse.jface.viewers.ISelectionProvider,org.eclipse.swt.events.DisposeListener,org.eclipse.swt.internal.SWTEventListener
public class CustomSQLSourceViewer extends org.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewerCustomized SQL source viewer for undo/redo, etc, to be well-integrated with iizi.- Author:
- Christopher Mindus
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearSQLInput()Clears the text entry field and re-parses.booleandoRefresh(boolean doPerform)Refreshes SQL and graphs.java.lang.StringgetLastKnownProperSource()Last known good SQL.org.eclipse.jface.text.source.SourceViewergetSourceViewer()Gets the source viewer.java.lang.StringgetSQLInput()Gets the SQL statement from the text field, without parsing, etc.voidmenuAboutToShow(org.eclipse.jface.action.IMenuManager menu)Menu shown.voidrefreshSource()Refreshes the source from the statement.booleanreparse()Called for re-parse.voidsetSQLInput(java.lang.String inputSQL, boolean isDirty)Sets the input SQL when parsing failed.voidsetTextDirty(boolean dirty)Let the source view know that the text is dirty from action such as dropping a table in the Graph view.Methods inherited from class org.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
addAction, createActions, forceReparse, getAction, getControl, getDocumentProvider, getDomainModel, getFileSQLStr, getParseRequired, getSegments, getSelection, getText, getTextChanged, handleDispose, initDBContext, inputChanged, isEditable, isReparseRunning, isRootStatement, isTextChanged, noUnsupportedReparse, propertyChange, refresh, refreshSource, revertToDefaultSource, revertToInitialSource, revertToLastKnownProperSource, selectionChanged, setAction, setContentChangeListener, setEditable, setFileSQLStr, setParseRequired, setSelection, setSQLBuilder, setTextChanged, updateAction, widgetDisposed
Methods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, getLabelProvider, handleLabelProviderChanged, hookControl, labelProviderChanged, setContentProvider, setInput, setLabelProvider
Method Detail
menuAboutToShow
public void menuAboutToShow(org.eclipse.jface.action.IMenuManager menu)
Menu shown.- Specified by:
menuAboutToShowin interfaceorg.eclipse.jface.action.IMenuListener- Overrides:
menuAboutToShowin classorg.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
getSourceViewer
public org.eclipse.jface.text.source.SourceViewer getSourceViewer()
Gets the source viewer.- Returns:
- The JFace source viewer.
refreshSource
public void refreshSource()
Refreshes the source from the statement. This is blocked only until doNiceSQL is set.- Overrides:
refreshSourcein classorg.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
doRefresh
public boolean doRefresh(boolean doPerform)
Refreshes SQL and graphs.- Parameters:
doPerform- Flag to refresh or just test to see if refresh will do something.- Returns:
- true to enable the refresh button, false to disable it.
reparse
public boolean reparse()
Called for re-parse.- Overrides:
reparsein classorg.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
getLastKnownProperSource
public java.lang.String getLastKnownProperSource()
Last known good SQL.- Overrides:
getLastKnownProperSourcein classorg.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
clearSQLInput
public void clearSQLInput()
Clears the text entry field and re-parses.
setSQLInput
public void setSQLInput(java.lang.String inputSQL, boolean isDirty)Sets the input SQL when parsing failed.- Parameters:
inputSQL- The SQL string, can contain errors.isDirty- Reset or set dirty flag.
getSQLInput
public java.lang.String getSQLInput()
Gets the SQL statement from the text field, without parsing, etc.- Returns:
- The statement from the JFace viewer.
setTextDirty
public void setTextDirty(boolean dirty)
Let the source view know that the text is dirty from action such as dropping a table in the Graph view. FYI: the TextListener should have detected the change but did not. This is a work-around solution.- Overrides:
setTextDirtyin classorg.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer- Parameters:
dirty- whether or not the text is dirty