org.eclipse.datatools.sqltools.sqlbuilder.views
Class CustomSashForm

java.lang.Object
  extended by org.eclipse.swt.widgets.Widget
      extended by org.eclipse.swt.widgets.Control
          extended by org.eclipse.swt.widgets.Scrollable
              extended by org.eclipse.swt.widgets.Composite
                  extended by org.eclipse.swt.custom.SashForm
                      extended by org.eclipse.datatools.sqltools.sqlbuilder.views.CustomSashForm
All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable

public class CustomSashForm
extends org.eclipse.swt.custom.SashForm

A SashForm that allows hide/restore controls on sash. It only works with one sash (two children). It doesn't make sense for the arrows when there is more than one sash. Things get confusing for a restore position.


Nested Class Summary
static interface CustomSashForm.ICustomSashFormListener
           
 
Field Summary
static int NO_HIDE_DOWN
          Custom style bits.
static int NO_HIDE_LEFT
          Custom style bits.
static int NO_HIDE_RIGHT
          Custom style bits.
static int NO_HIDE_UP
          Custom style bits.
 
Fields inherited from class org.eclipse.swt.custom.SashForm
SASH_WIDTH
 
Fields inherited from class org.eclipse.swt.widgets.Composite
embeddedHandle
 
Fields inherited from class org.eclipse.swt.widgets.Widget
handle
 
Constructor Summary
CustomSashForm(org.eclipse.swt.widgets.Composite parent, int style)
          Constructor for CustomSashForm.
CustomSashForm(org.eclipse.swt.widgets.Composite parent, int style, int customStyle)
          Constructor taking a custom style too.
 
Method Summary
 void addCustomSashFormListener(CustomSashForm.ICustomSashFormListener listener)
          Adds a custom sashform listener.
 int getRestoreWeight()
           
 org.eclipse.swt.graphics.Point[] getSavedSizes()
           
 void hideDown()
          Call to set to hide down
 void hideLeft()
          Call to set to hide left
 void hideRight()
          Call to set to hide right
 void hideUp()
          Call to set to hide up
 boolean isNoHideDown()
          Returns the noHideDown setting for vertical CustomSashForm.
 boolean isNoHideLeft()
          Returns the noHideLeft setting for horizontal CustomSashForm.
 boolean isNoHideRight()
          Returns the noHideRight setting for horizontal CustomSashForm.
 boolean isNoHideUp()
          Returns the noHideUp setting for vertical CustomSashForm.
 void layout(boolean changed)
           
 void removeCustomSashFormListener(CustomSashForm.ICustomSashFormListener listener)
          Removes the custom sashform listener.
 void setNoHideDown(boolean bHide)
          Sets the noHideDown setting for vertical CustomSashForm.
 void setNoHideLeft(boolean bHide)
          Sets the noHideLeft setting for horizontal CustomSashForm.
 void setNoHideRight(boolean bHide)
          Sets the noHideRight setting for horizontal CustomSashForm.
 void setNoHideUp(boolean bHide)
          Sets the noHideUp setting for vertical CustomSashForm.
 void setRestoreWeight(int weight)
           
 void setSashBorders(boolean[] sashBorders)
          Set the need sash borders for the controls.
 
Methods inherited from class org.eclipse.swt.custom.SashForm
getMaximizedControl, getOrientation, getSashWidth, getStyle, getWeights, setBackground, setForeground, setLayout, setMaximizedControl, setOrientation, setSashWidth, setToolTipText, setWeights
 
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, computeSize, drawBackground, getBackgroundMode, getChildren, getClientArea, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayoutDeferred, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getBorderWidth, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTraverseListener, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setRegion, setSize, setSize, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, dispose, getData, getData, getDisplay, getListeners, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, reskin, setData, setData, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NO_HIDE_LEFT

public static final int NO_HIDE_LEFT
Custom style bits. They set whether hide to one side of the other is not permitted. For example, if NO_HIDE_UP, then there will be only one arrow. When not hidden, it will point down (and will do a hide down), and when hidden down, it will point up (and will do a restore to the previous weight). There won't be a hide to the top arrow.

See Also:
Constant Field Values

NO_HIDE_UP

public static final int NO_HIDE_UP
Custom style bits. They set whether hide to one side of the other is not permitted. For example, if NO_HIDE_UP, then there will be only one arrow. When not hidden, it will point down (and will do a hide down), and when hidden down, it will point up (and will do a restore to the previous weight). There won't be a hide to the top arrow.

See Also:
Constant Field Values

NO_HIDE_RIGHT

public static final int NO_HIDE_RIGHT
Custom style bits. They set whether hide to one side of the other is not permitted. For example, if NO_HIDE_UP, then there will be only one arrow. When not hidden, it will point down (and will do a hide down), and when hidden down, it will point up (and will do a restore to the previous weight). There won't be a hide to the top arrow.

See Also:
Constant Field Values

NO_HIDE_DOWN

public static final int NO_HIDE_DOWN
Custom style bits. They set whether hide to one side of the other is not permitted. For example, if NO_HIDE_UP, then there will be only one arrow. When not hidden, it will point down (and will do a hide down), and when hidden down, it will point up (and will do a restore to the previous weight). There won't be a hide to the top arrow.

See Also:
Constant Field Values
Constructor Detail

CustomSashForm

public CustomSashForm(org.eclipse.swt.widgets.Composite parent,
                      int style)
Constructor for CustomSashForm.

Parameters:
parent -
style -

CustomSashForm

public CustomSashForm(org.eclipse.swt.widgets.Composite parent,
                      int style,
                      int customStyle)
Constructor taking a custom style too. Or in the Custom style bits defined above (e.g. NO_HIDE_RIGHT,...)

Method Detail

isNoHideUp

public boolean isNoHideUp()
Returns the noHideUp setting for vertical CustomSashForm.

Returns:

isNoHideDown

public boolean isNoHideDown()
Returns the noHideDown setting for vertical CustomSashForm.

Returns:

isNoHideLeft

public boolean isNoHideLeft()
Returns the noHideLeft setting for horizontal CustomSashForm.

Returns:

isNoHideRight

public boolean isNoHideRight()
Returns the noHideRight setting for horizontal CustomSashForm.

Returns:

setNoHideUp

public void setNoHideUp(boolean bHide)
Sets the noHideUp setting for vertical CustomSashForm.

Parameters:
bHide -

setNoHideDown

public void setNoHideDown(boolean bHide)
Sets the noHideDown setting for vertical CustomSashForm.

Parameters:
bHide -

setNoHideLeft

public void setNoHideLeft(boolean bHide)
Sets the noHideLeft setting for horizontal CustomSashForm.

Parameters:
bHide -

setNoHideRight

public void setNoHideRight(boolean bHide)
Sets the noHideRight setting for horizontal CustomSashForm.

Parameters:
bHide -

hideUp

public void hideUp()
Call to set to hide up


hideLeft

public void hideLeft()
Call to set to hide left


hideDown

public void hideDown()
Call to set to hide down


hideRight

public void hideRight()
Call to set to hide right


setSashBorders

public void setSashBorders(boolean[] sashBorders)
Set the need sash borders for the controls.


layout

public void layout(boolean changed)
Overrides:
layout in class org.eclipse.swt.widgets.Composite
See Also:
Composite.layout(boolean)

getRestoreWeight

public int getRestoreWeight()

setRestoreWeight

public void setRestoreWeight(int weight)

getSavedSizes

public org.eclipse.swt.graphics.Point[] getSavedSizes()

addCustomSashFormListener

public void addCustomSashFormListener(CustomSashForm.ICustomSashFormListener listener)
Adds a custom sashform listener. This listener will be removed when this control is disposed.

Parameters:
listener -
Since:
1.2.0

removeCustomSashFormListener

public void removeCustomSashFormListener(CustomSashForm.ICustomSashFormListener listener)
Removes the custom sashform listener.

Parameters:
listener -
Since:
1.2.0