Class CalculatorButtonsComposite
- java.lang.Object
-
- org.eclipse.swt.widgets.Widget
-
- org.eclipse.swt.widgets.Control
-
- org.eclipse.swt.widgets.Scrollable
-
- org.eclipse.swt.widgets.Composite
-
- org.eclipse.nebula.widgets.opal.calculator.CalculatorButtonsComposite
-
- All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable
class CalculatorButtonsComposite extends org.eclipse.swt.widgets.CompositeThis composite contains all buttons
-
-
Field Summary
Fields Modifier and Type Field Description private CalculatorButtonsBehaviourEnginebehaviourEngineprivate org.eclipse.swt.graphics.ColordarkBlueColorprivate org.eclipse.swt.graphics.ColordarkRedColorprivate org.eclipse.swt.widgets.LabeldisplayAreaprivate CalculatorEngineengineprivate org.eclipse.swt.events.KeyListenerkeyListenerprivate static java.lang.StringLABEL_BACKprivate static java.lang.StringLABEL_Cprivate static java.lang.StringLABEL_CEprivate java.util.List<org.eclipse.swt.events.ModifyListener>modifyListenersprivate booleanreadyToEnterNewNumber
-
Constructor Summary
Constructors Constructor Description CalculatorButtonsComposite(org.eclipse.swt.widgets.Composite parent, int style)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddKeyListeners()Add key listenersvoidaddModifyListener(org.eclipse.swt.events.ModifyListener listener)Adds the listener to the collection of listeners who will be notified when the receiver's text is modified, by sending it one of the messages defined in theModifyListenerinterface.private org.eclipse.swt.widgets.ButtoncreateButton(java.lang.String label, org.eclipse.swt.graphics.Color color)private voidcreateButtons()Create all buttonsprivate voidcreateDigitButton(int digit)(package private) voidfireModifyListeners()Fire the modify listeners(package private) org.eclipse.swt.widgets.LabelgetDisplayArea()(package private) org.eclipse.swt.events.KeyListenergetKeyListener()(package private) booleanisReadyToEnterNewNumber()voidremoveModifyListener(org.eclipse.swt.events.ModifyListener listener)Removes the listener from the collection of listeners who will be notified when the receiver's text is modified.(package private) voidsetDisplayArea(org.eclipse.swt.widgets.Label text)(package private) voidsetReadyToEnterNewNumber(boolean newValue)-
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList
-
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar
-
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isAutoScalable, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
-
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString
-
-
-
-
Field Detail
-
LABEL_C
private static final java.lang.String LABEL_C
- See Also:
- Constant Field Values
-
LABEL_CE
private static final java.lang.String LABEL_CE
- See Also:
- Constant Field Values
-
LABEL_BACK
private static final java.lang.String LABEL_BACK
- See Also:
- Constant Field Values
-
darkRedColor
private final org.eclipse.swt.graphics.Color darkRedColor
-
darkBlueColor
private final org.eclipse.swt.graphics.Color darkBlueColor
-
engine
private final CalculatorEngine engine
-
displayArea
private org.eclipse.swt.widgets.Label displayArea
-
keyListener
private org.eclipse.swt.events.KeyListener keyListener
-
modifyListeners
private final java.util.List<org.eclipse.swt.events.ModifyListener> modifyListeners
-
behaviourEngine
private final CalculatorButtonsBehaviourEngine behaviourEngine
-
readyToEnterNewNumber
private boolean readyToEnterNewNumber
-
-
Method Detail
-
createButtons
private void createButtons()
Create all buttons
-
createDigitButton
private void createDigitButton(int digit)
-
createButton
private org.eclipse.swt.widgets.Button createButton(java.lang.String label, org.eclipse.swt.graphics.Color color)
-
addKeyListeners
private void addKeyListeners()
Add key listeners
-
addModifyListener
public void addModifyListener(org.eclipse.swt.events.ModifyListener listener)
Adds the listener to the collection of listeners who will be notified when the receiver's text is modified, by sending it one of the messages defined in theModifyListenerinterface.- Parameters:
listener- the listener which should be notified- Throws:
java.lang.IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the listener is null
org.eclipse.swt.SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
ModifyListener,removeModifyListener(org.eclipse.swt.events.ModifyListener)
-
fireModifyListeners
void fireModifyListeners()
Fire the modify listeners
-
getKeyListener
org.eclipse.swt.events.KeyListener getKeyListener()
- Returns:
- the keyListener
-
getDisplayArea
org.eclipse.swt.widgets.Label getDisplayArea()
- Returns:
- the text
-
removeModifyListener
public void removeModifyListener(org.eclipse.swt.events.ModifyListener listener)
Removes the listener from the collection of listeners who will be notified when the receiver's text is modified.- Parameters:
listener- the listener which should no longer be notified- Throws:
java.lang.IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the listener is null
org.eclipse.swt.SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
ModifyListener,addModifyListener(org.eclipse.swt.events.ModifyListener)
-
setDisplayArea
void setDisplayArea(org.eclipse.swt.widgets.Label text)
- Parameters:
text- the text to set
-
setReadyToEnterNewNumber
void setReadyToEnterNewNumber(boolean newValue)
-
isReadyToEnterNewNumber
boolean isReadyToEnterNewNumber()
-
-