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:
EventListener,IMenuListener,IPropertyChangeListener,IInputProvider,IInputSelectionProvider,ISelectionChangedListener,ISelectionProvider,DisposeListener,SWTEventListener
public class CustomSQLSourceViewer extends org.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
Customized SQL source viewer for undo/redo, etc, to be well-integrated with IIZI.
- Author:
- Christopher Mindus
Field Summary
Fields inherited from class org.eclipse.datatools.sqltools.sqlbuilder.views.source.SQLSourceViewer
actions, configuration, currentSelection, document, documentProvider, qListener, reparseRunning, sourceViewer, sqlbuilder, sqlDomainModel, textChangedFields inherited from class org.eclipse.jface.viewers.Viewer
WIDGET_DATA_KEYMethod Summary
Modifier and TypeMethodDescriptionvoidClears the text entry field and re-parses.booleandoRefresh(boolean doPerform) Refreshes SQL and graphs.Last known good SQL.Gets the source viewer.Gets the SQL statement from the text field, without parsing, etc.voidmenuAboutToShow(IMenuManager menu) Menu shown.voidRefreshes the source from the statement.booleanreparse()Called for re-parse.voidsetSQLInput(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, widgetDisposedMethods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, getLabelProvider, handleLabelProviderChanged, hookControl, labelProviderChanged, setContentProvider, setInput, setLabelProviderMethods inherited from class org.eclipse.jface.viewers.Viewer
addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, scrollDown, scrollUp, setData, setSelection
Method Details
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
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
Sets the input SQL when parsing failed.- Parameters:
inputSQL- The SQL string, can contain errors.isDirty- Reset or set dirty flag.
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