public class AwtWidgetMng extends GralMng.ImplAccess
Modifier and Type | Class and Description |
---|---|
protected class |
AwtWidgetMng.AwtMngFocusListener
Universal focus listener to register which widgets were in focus in its order,
to set htmlHelp and to invoke the
GralWidget.setActionFocused(GralUserAction) . |
Modifier and Type | Field and Description |
---|---|
protected AwtWidgetMng.AwtMngFocusListener |
focusListener
The package private universal focus listener.
|
(package private) AwtGralMouseListener.MouseListenerGralAction |
mouseStdAction
The standard listener or action for mouse events, able to assign to all widgets which does not need an extra mouse behaviour.
|
(package private) AwtProperties |
propertiesGuiAwt |
(package private) java.awt.event.KeyListener |
XXXXX_mainKeyListener |
mng
Constructor and Description |
---|
AwtWidgetMng(AwtProperties propertiesGui,
LogMessage log)
Creates an instance.
|
Modifier and Type | Method and Description |
---|---|
void |
add(GralTable<?> table) |
GralCurveView |
addCurveViewY(java.lang.String sName,
int nrofXvalues,
GralCurveView.CommonCurve common) |
void |
addFocusAction(GralWidget widgetInfo,
GralUserAction action,
java.lang.String sCmdEnter,
java.lang.String sCmdRelease) |
GralWidget |
addFocusAction(java.lang.String sName,
GralUserAction action,
java.lang.String sCmdEnter,
java.lang.String sCmdRelease) |
GralHtmlBox |
addHtmlBox(java.lang.String name)
Adds a text box for showing or editing a text in multi lines.
|
java.lang.Object |
addImage(java.lang.String sName,
java.io.InputStream imageStream,
int height,
int width,
java.lang.String sCmd) |
GralWidget |
addSlider(java.lang.String sName,
GralUserAction action,
java.lang.String sShowMethod,
java.lang.String sDataPath) |
GralTabbedPanel |
addTabbedPanel(java.lang.String namePanel,
GralPanelActivated_ifc user,
int properties) |
GralTable |
addTable(java.lang.String sName,
int height,
int[] columnWidths) |
GralWidget |
addText(java.lang.String sText,
char size,
int color)
Deprecated.
|
(package private) GralRectangle |
calcPositionOfWindow(GralPos posWindow)
Calculates the position as absolute value on screen from a given position inside a panel.
|
GralRectangle |
calcWidgetPosAndSize(GralPos pos,
int widthwidgetNat,
int heigthWidgetNat)
Calculates the bounds of a widget with a given pos independent of this
GralMng.ImplAccess.pos() . |
(package private) GralRectangle |
calcWidgetPosAndSizeAwt(GralPos pos,
java.awt.Component component,
int widthwidgetNat,
int heigthWidgetNat)
Calculates the bounds of a SWT component with a given position independent of
GralMng.ImplAccess.pos() . |
GralPanelContent |
createCompositeBox(java.lang.String name)
Creates a box inside the current panel to hold some widgets.
|
protected GralMenu |
createContextMenu(GralWidget widg)
Creates the context menu for the given widget for right-mouse pressing.
|
GralFileDialog_ifc |
createFileDialog() |
GralPanelContent |
createGridPanel(java.lang.String namePanel,
GralColor backGround,
int xG,
int yG,
int xS,
int yS)
Creates an independent grid panel which is managed by this.
|
void |
createImplWidget_Gthread(GralWidget widgg) |
protected GralMenu |
createMenuBar(GralWindow windg)
Creates the menu bar for the given window.
|
void |
createSubWindow(GralWindow windowGral) |
GralWindow |
createWindow(java.lang.String name,
java.lang.String title,
int windPros) |
java.awt.Color |
getColorImpl(GralColor color)
Gets the color of the graphic implementation (swt.Color, swing.TODO)
Either the implementation color instance is stored already in the GralColor,
or it will be created, stored in GralColor and returned here.
|
java.awt.Container |
getCurrentPanel() |
(package private) GralRectangle |
getPixelUseableAreaOfWindow(GralWidget widgg) |
java.lang.String |
getValueFromWidget(GralWidget widgetDescr) |
java.awt.Container |
getWidgetsPanel(GralWidget widg) |
void |
redrawWidget(java.lang.String sName)
Forces the redrawing for all set samples.
|
boolean |
remove(GralPanelContent compositeBox) |
void |
resizeWidget(GralWidget widgd,
int xSizeParent,
int ySizeParent)
Forces the resizing of the given widged.
|
(package private) void |
setBounds_(GralPos pos,
java.awt.Component component)
Places a current component with knowledge of the current positions and the spreads of the component on graphic.
|
protected void |
setPosAndSize_(GralPos pos,
java.awt.Component component) |
(package private) void |
setPosAndSizeAwt(GralPos posP,
java.awt.Component component,
int widthwidgetNat,
int heigthWidgetNat)
Set bounds of a AWT component with a given position.
|
void |
setSampleCurveViewY(java.lang.String sName,
float[] values)
Adds a sampling value set.
|
boolean |
showContextMenuGthread(GralWidget widg)
Shows the context menu of any widget independent of the internal right-mouse invocation.
|
(package private) void |
stop() |
protected GralMenu |
XXXaddPopupMenu(java.lang.String sName) |
protected void |
XXXsetPosAndSize_(java.awt.Component component,
int widthwidgetNat,
int heigthWidgetNat) |
boolean |
XXXsetWindowsVisible(GralWindow_ifc window,
GralPos atPos)
Sets a given and registered window visible at the given position and size or set it invisible.
|
indexNameWidgets, listVisiblePanels_add, pos, sCurrPanel, userMainKeyAction
final AwtProperties propertiesGuiAwt
final AwtGralMouseListener.MouseListenerGralAction mouseStdAction
java.awt.event.KeyListener XXXXX_mainKeyListener
protected AwtWidgetMng.AwtMngFocusListener focusListener
public AwtWidgetMng(AwtProperties propertiesGui, LogMessage log)
guiContainer
- The container where the elements are stored in.width
- in display-units for the window's width, the number of pixel depends from param displaySize.height
- in display-units for the window's height, the number of pixel depends from param displaySize.displaySize
- character 'A' to 'E' to determine the size of the content
(font size, pixel per cell). 'A' is the smallest, 'E' the largest size. Default: use 'C'.public java.awt.Container getCurrentPanel()
getCurrentPanel
in class GralMng.ImplAccess
public java.awt.Container getWidgetsPanel(GralWidget widg)
public void createImplWidget_Gthread(GralWidget widgg)
createImplWidget_Gthread
in class GralMng.ImplAccess
public GralHtmlBox addHtmlBox(java.lang.String name)
addHtmlBox
in class GralMng.ImplAccess
sName
- The registering namewidth
- Number of grid units for lengtheditable
- true than edit-able, false to show contentprompt
- If not null, than a description label is shownpromptStylePosition
- Position and size of description label:
upper case letter: normal font, lower case letter: small font
'l' left, 't' top (above field)public GralCurveView addCurveViewY(java.lang.String sName, int nrofXvalues, GralCurveView.CommonCurve common)
addCurveViewY
in class GralMng.ImplAccess
public GralWidget addFocusAction(java.lang.String sName, GralUserAction action, java.lang.String sCmdEnter, java.lang.String sCmdRelease)
addFocusAction
in class GralMng.ImplAccess
public void addFocusAction(GralWidget widgetInfo, GralUserAction action, java.lang.String sCmdEnter, java.lang.String sCmdRelease)
addFocusAction
in class GralMng.ImplAccess
public java.lang.Object addImage(java.lang.String sName, java.io.InputStream imageStream, int height, int width, java.lang.String sCmd)
addImage
in class GralMng.ImplAccess
public GralWidget addSlider(java.lang.String sName, GralUserAction action, java.lang.String sShowMethod, java.lang.String sDataPath)
addSlider
in class GralMng.ImplAccess
public GralTable addTable(java.lang.String sName, int height, int[] columnWidths)
addTable
in class GralMng.ImplAccess
@Deprecated public GralWidget addText(java.lang.String sText, char size, int color)
addText
in class GralMng.ImplAccess
protected GralMenu XXXaddPopupMenu(java.lang.String sName)
XXXaddPopupMenu
in class GralMng.ImplAccess
protected GralMenu createContextMenu(GralWidget widg)
GralMng.ImplAccess
GralWidget.getContextMenu()
whereby an existing
context menu is stored in the GralWidget.contextMenu
association.
The widget have to be set to panel already, an implementation widget have to be existing.
It means GralWidget#getWidgetImplementation()
should be return that instance
where the menu is to be added.
This method is package protected because it should only be called internally.createContextMenu
in class GralMng.ImplAccess
protected GralMenu createMenuBar(GralWindow windg)
GralMng.ImplAccess
GralWindow.getMenuBar()
whereby an existing
menu bar is stored in the GralWindow.menuBarGral
association.createMenuBar
in class GralMng.ImplAccess
windg
- The windowpublic GralPanelContent createCompositeBox(java.lang.String name)
GralMng.ImplAccess
createCompositeBox
in class GralMng.ImplAccess
public GralFileDialog_ifc createFileDialog()
createFileDialog
in class GralMng.ImplAccess
public GralPanelContent createGridPanel(java.lang.String namePanel, GralColor backGround, int xG, int yG, int xS, int yS)
GralMng.ImplAccess
createGridPanel
in class GralMng.ImplAccess
public GralTabbedPanel addTabbedPanel(java.lang.String namePanel, GralPanelActivated_ifc user, int properties)
addTabbedPanel
in class GralMng.ImplAccess
public GralWindow createWindow(java.lang.String name, java.lang.String title, int windPros)
createWindow
in class GralMng.ImplAccess
public void createSubWindow(GralWindow windowGral)
createSubWindow
in class GralMng.ImplAccess
GralRectangle calcPositionOfWindow(GralPos posWindow)
posWindow
- contains any GralPos.panel
. Its absolute position will be determined.
from that position and size the absolute postion will be calculate, with this given grid positions
inside the panel.GralRectangle getPixelUseableAreaOfWindow(GralWidget widgg)
public boolean remove(GralPanelContent compositeBox)
remove
in class GralMng.ImplAccess
public java.awt.Color getColorImpl(GralColor color)
GralMng.ImplAccess
getColorImpl
in class GralMng.ImplAccess
color
- The Color.public java.lang.String getValueFromWidget(GralWidget widgetDescr)
getValueFromWidget
in class GralMng.ImplAccess
public void redrawWidget(java.lang.String sName)
GralMng.ImplAccess
redrawWidget
in class GralMng.ImplAccess
sName
- The name of the widget.public void resizeWidget(GralWidget widgd, int xSizeParent, int ySizeParent)
GralMng.ImplAccess
resizeWidget
in class GralMng.ImplAccess
widgd
- the widgetpublic void setSampleCurveViewY(java.lang.String sName, float[] values)
GralMng.ImplAccess
setSampleCurveViewY
in class GralMng.ImplAccess
sName
- The registered namevalues
- The values.void setBounds_(GralPos pos, java.awt.Component component)
component
- The component to place.protected void setPosAndSize_(GralPos pos, java.awt.Component component)
protected void XXXsetPosAndSize_(java.awt.Component component, int widthwidgetNat, int heigthWidgetNat)
component
- widthwidgetNat
- heigthWidgetNat
- NOTE: 2015-07-13: This method is set to unused because it uses the mng-position additional to the constructor of GralWidget.
This is the old concept which is in conflict with the usuage there.void setPosAndSizeAwt(GralPos posP, java.awt.Component component, int widthwidgetNat, int heigthWidgetNat)
posP
- The Position for the component.component
- The AWT-widget.widthwidgetNat
- The natural size of the component.heigthWidgetNat
- The natural size of the component.public GralRectangle calcWidgetPosAndSize(GralPos pos, int widthwidgetNat, int heigthWidgetNat)
GralMng.ImplAccess.pos()
.
This method is a part of the implementing GralMng because the GralPos is not implemented for
any underlying graphic system and the #propertiesGuiSwt
are used.
It is possible to tune the bounds after calculation, for example to enhance the width if a text
is larger then the intended position.calcWidgetPosAndSize
in class GralMng.ImplAccess
pos
- The position.widthwidgetNat
- The natural size of the component.heigthWidgetNat
- The natural size of the component.GralRectangle calcWidgetPosAndSizeAwt(GralPos pos, java.awt.Component component, int widthwidgetNat, int heigthWidgetNat)
GralMng.ImplAccess.pos()
.
This method is package-private for SWT-implementation.
It is possible to tune the bounds after calculation, for example to enhance the width if a text
is larger then the intended position.pos
- The position.component
- The SWT-widget.widthwidgetNat
- The natural size of the component.heigthWidgetNat
- The natural size of the component.public boolean showContextMenuGthread(GralWidget widg)
GralMng.ImplAccess
showContextMenuGthread
in class GralMng.ImplAccess
widg
- The widget.void stop()
public boolean XXXsetWindowsVisible(GralWindow_ifc window, GralPos atPos)
GralMng.ImplAccess
org.vishia.gral.ifc.GralMngBuild_ifc#createWindow(String, boolean)
in the build phase of the gui. It can be hidden because it is not necessary to show and operate with them.
In a adequate phase of operate it can be shown and focused.
GralPos.panel
. To get a position instance,
you can set a position invoking
GralMngBuild_ifc.selectPanel(String)
GralMngBuild_ifc.setPosition(float, float, float, float, int, char)
GralMngBuild_ifc.getPositionInPanel()
.
GralPos.x
etc.
It is possible too to change the Panel which relates to the position. Then the grid managing instance
have to be known via the GralMngBuild_ifc
to select a panel.
The panels may be moved or resized. With the knowledge of the relative position of the window in respect to a panel
of the parent window, the window can be placed onto a proper position of the whole display.XXXsetWindowsVisible
in class GralMng.ImplAccess
window
- the instance of the window wrapper.atPos
- If null then hide the window. If not null then show the window.
The position and size of the window is given related to any panel of any other window.