Class ProductLineHeaderMenu
- java.lang.Object
-
- org.eclipse.swt.widgets.Widget
-
- org.eclipse.swt.widgets.Control
-
- org.eclipse.swt.widgets.Scrollable
-
- org.eclipse.swt.widgets.Composite
-
- net.ssehub.easy.producer.ui.productline_editor.AbstractHeaderMenu
-
- net.ssehub.easy.producer.ui.productline_editor.project_configuration.ProductLineHeaderMenu
-
- All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable
public class ProductLineHeaderMenu extends AbstractHeaderMenu
Header menu holding buttons for product line editor page.
This buttons allow the user to:- Validate constraints
- Pull the configuration from predecessors
- Add/remove predecessors
- Derive new member
- Author:
- EL-Sharkawy, Nowatzki
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classProductLineHeaderMenu.InputValidatorInput Validation class for the product creation dialog.private classProductLineHeaderMenu.ValidationListenerIReasonerListener for validating the variability model (perform satisfiability check).
-
Field Summary
Fields Modifier and Type Field Description private org.eclipse.swt.widgets.ButtonbtnCreateMemberprivate org.eclipse.swt.widgets.ButtonbtnManagePredecessorsprivate org.eclipse.swt.widgets.ButtonbtnPullConfigurationprivate org.eclipse.swt.widgets.ButtonbtnValidateProductlineprivate static org.eclipse.swt.graphics.ImageIMG_DERIVEprivate static org.eclipse.swt.graphics.ImageIMG_PULL_CONFIGprivate static org.eclipse.swt.graphics.ImageIMG_VALIDATEprivate static EASyLoggerFactory.EASyLoggerLOGGERprivate AbstractEASyEditorPagerelatedEditor
-
Constructor Summary
Constructors Constructor Description ProductLineHeaderMenu(org.eclipse.swt.widgets.Composite parent, ProductLineProject plp, AbstractEASyEditorPage relatedEditor)Sole constructor for this class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidcreateButtons()Creates the buttons.private voidcreateDeriveListener()Creates the Listener for the Derive New Product Node button.private voidcreatePredecessorListener()Creates the Listener for the Add Predecessor button.private voidcreatePullListener()Creates the Listener for the Pull Config button.private voidcreateValidateListener()Creates the Listener for the Validate button.private voiddisplayCreateAddPredecessorDialog()Creates a Dialog for choosing new predecessors.private voiddisplayCreateProductDialog()Displays the dialog for creating a new product.voidrevalidateButtons()Enables or disables the buttons, depending on whether a the related action is possible.-
Methods inherited from class net.ssehub.easy.producer.ui.productline_editor.AbstractHeaderMenu
close, getProductLineProject, setLayout
-
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, computeSize, 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, 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, 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
-
IMG_VALIDATE
private static final org.eclipse.swt.graphics.Image IMG_VALIDATE
-
IMG_PULL_CONFIG
private static final org.eclipse.swt.graphics.Image IMG_PULL_CONFIG
-
IMG_DERIVE
private static final org.eclipse.swt.graphics.Image IMG_DERIVE
-
LOGGER
private static final EASyLoggerFactory.EASyLogger LOGGER
-
btnValidateProductline
private org.eclipse.swt.widgets.Button btnValidateProductline
-
btnPullConfiguration
private org.eclipse.swt.widgets.Button btnPullConfiguration
-
btnManagePredecessors
private org.eclipse.swt.widgets.Button btnManagePredecessors
-
btnCreateMember
private org.eclipse.swt.widgets.Button btnCreateMember
-
relatedEditor
private AbstractEASyEditorPage relatedEditor
-
-
Constructor Detail
-
ProductLineHeaderMenu
public ProductLineHeaderMenu(org.eclipse.swt.widgets.Composite parent, ProductLineProject plp, AbstractEASyEditorPage relatedEditor)Sole constructor for this class.- Parameters:
parent- the parent controlplp- Current configured project holding the configuration.relatedEditor- The editor holding this menu, will be refreshed after some operations.- See Also:
IEASyEditorPage.refresh()
-
-
Method Detail
-
createButtons
private void createButtons()
Creates the buttons.
-
createValidateListener
private void createValidateListener()
Creates the Listener for the Validate button.
-
createPredecessorListener
private void createPredecessorListener()
Creates the Listener for the Add Predecessor button.
-
displayCreateAddPredecessorDialog
private void displayCreateAddPredecessorDialog()
Creates a Dialog for choosing new predecessors.
-
createPullListener
private void createPullListener()
Creates the Listener for the Pull Config button.
-
createDeriveListener
private void createDeriveListener()
Creates the Listener for the Derive New Product Node button.
-
displayCreateProductDialog
private void displayCreateProductDialog() throws InvalidProjectnameExceptionDisplays the dialog for creating a new product.- Throws:
InvalidProjectnameException
-
revalidateButtons
public void revalidateButtons()
Description copied from class:AbstractHeaderMenuEnables or disables the buttons, depending on whether a the related action is possible. This check should be performed whenever the page becomes activated.- Specified by:
revalidateButtonsin classAbstractHeaderMenu
-
-