PANEL - v14
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>, ob=<i>, ot=<i>, ol=<i>, or=<i>,dock, open, clos, dock=<i>
autohide,window=<id>,topmost
or
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>,open, clos, container={tab|page},window=<id>
combined with
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, t=<text>, pageof=<i>, open, clos, tabbed, autohide
Function
Creates an control bar (panel) including toolbar, statusbar, dialogbar, tabbed bar or paged bar which can contains menu control options.
The list of parameters below represents an overview of the command; Specific examples of various panel types including the ability to dock or undock, float or not, themes etc. the prototype syntax is detailed in the sections below and detailed in the UI Framework Guide
Parameters
|
on |
Create a new panel. |
|
|
|
|
off |
Remove a panel from the screen. |
|
|
|
|
p=<i> |
To specify the panel index. A value between 1 and 96 Update from v12 |
|
|
P=96 was reserved exclusively for creation of Tabbed panel object containers. In UI Framework V14 all panels can be tabbed containers using the container and tabbed primers. |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
|
|
|
r=<i> |
Number of rows. (maximum width/height for panels extended to the dimensions of Eagle frame) |
|
|
|
|
c=<i> |
Number of columns. (maximum width/height for panels extended to the dimensions of Eagle frame) |
|
|
|
|
vr=<i> |
Number of visible rows. (maximum width/height for panels extended to the dimensions of Eagle frame) |
|
|
|
|
vc=<i> |
Number of visible columns. (maximum width/height for panels extended to the dimensions of Eagle frame) |
|
|
|
|
t=<text> |
Panel title. |
|
j=<i> |
Floating Control Bar (Standard or Tab Container): Position (x, y) on the screen in normalized units between 0 and 1 or in pixel unit. If j is not specified the default values are the center of the application frame. Docked Tool Bar: Docking position (x, y) specified with J=<x_value>,<y_value>, defined in pixels. If j is not specified the default values are (-1, -1) = new row/column Cascade toolbars: Using J parameter there is the possibility of managing the layout on "pulldown" toolbars. These are horizontal or vertical toolbars that appear attached the button from which they have been called. The n1 determinates if the pulldown perpendicular (-2) or parallel (-3) to the calling button. The n2 defines the number of rows/columns. Not used in Tab Page. |
|
|
|
|
mod=<i> |
Standard Control Bar: Is 0 if the panel widget is child of the non graphic widget hierarchy; this means that the panel widget is still present also after a DIALOG OFF command. It is 1 if the panel widget is child of the graphic widget hierarchy; this means that the panel widget is iconized when a DIALOG OFF command is executed and de-iconized as soon the graphic area is restored via a DIALOG ON command. Tab Container : Specifies the type of container; the value between 1 and 16. Not used in Tab Page. |
|
pin=<i> |
To specify the type of panel, can be of one of the following types: • floating dialog • fixed dialog • dockable/floating dialog • dockable/floating toolbar • status bar • floating (only) toolbar • floating (only) dialog • pulldown toolbar Permitted values are: 0,1,-2,-3,-4,-5,-6,-7,-8-,-9,-10,-11,-14,-17,-18-,19,-20,-21,-22,-23,-37,-38,-39,-40, and the differences between each possibility can be found below in the UI Framework documentation. Not used in Tab Page. |
|
|
|
|
name=<i> |
If equal to 1 then the resource name is: panel_<i> |
|
|
where i is the panel index, otherwise, equal to 0, the resource name is: panel |
|
|
Not used in Tab Page. |
|
|
The default is 1 to remain compatible with previous versions. |
|
|
|
|
att=<i> |
To link the current panel to an existing one. Not used in Tab Page. |
|
|
|
|
dock=<i> |
This parameter, if specified, permits blocking vertical or horizontal docking when the docking mechanism is the same as in the Tool Bar: 0 = no block for docking, docking everywhere 1 = block horizontal docking, only vertical docking permitted 2 = block vertical docking, only horizontal docking permitted Usable only in Tool Bar and FixedSize Bar |
|
|
|
|
pageof<i> |
Represents the id of the Tab Container in which the Tab Page will be added. |
|
|
Not used in Standard Panels and Tab Container. |
|
|
|
|
ot=<i> ob=<i> ol=<i> or=<i>
|
The offset of the current panel origin from the bottom (ob), top (ot), left (ol) or right (or) of the 'attached to' panel. |
|
open |
To 'show' a closed panel. When using this primer the only other primer available is j= to reposition the panel. |
|
clos |
To close the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
|
|
|
|
container= |
To set a specific panel as “Tab Container” Not used in Standard Panels and Tab Pages |
|
|
|
|
tabbed= |
To set a specific panel as “Tab Page”. Not used in Standard Panels and Tab Containers |
|
|
|
|
col1 |
Used when the Tab style is “OneNote” (mod=2,6,10,14), to set the first color for the background of the Tab Page (more details in the UI Framework documentation.) |
|
|
|
|
col2 |
Used when the Tab style is “OneNote”(mod=2,6,10,14),, to set the second color for the background of the Tab Page (more details in the UI Framework documentation.) Not used in Standard Panels and Tab Pages |
|
|
|
|
autohide |
Enable the auto-hiding feature. (Applicable only to PANEL of PIN= -7,-8,-9,-10,-17,-18,-19 or-20) Refer to Auto-hiding of Panels for detailed information. |
|
|
|
|
window=<id> |
Associate a panel (toolbar and dialogbar) to a GWINDOW. Note does not apply to status bar of type pin -6. Default if unset is to attach to main Eagle window. Note also that some other panel primer options may not be relevant or available when using this option, refer to the GUI guide for detailed examples of usage. |
|
|
|
|
topmost |
The given panel is created with the attribute of "always on top" status. |
Specific Panel Types
StatusBar Panel (ControlBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, pin=-6,
open, clos
|
Parameter |
Description |
|
on |
Create a Statusbar panel. |
|
off |
Remove the bar from the screen and restore the "empty" default statusbar. |
|
p=<i> |
To specify the panel index. A value between 1 and 96 |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Width of the status bar. Value must be >0, but each values are adjusted with the auto-fitting algorithm |
|
c=<i> |
Height of the status bar. |
|
vr=<i> |
Visible width of the status bar. Value must be >0, but each values are adjusted with the auto-fitting algorithm |
|
vc=<i> |
Visible height of the status bar. |
|
pin=-6 |
To specify the type of panel, can be of one of the following types: • status bar The only permitted value for Statusbar is -6. The other possibilities and details can be found in the UI Framework documentation. |
|
open |
To 'show' a closed panel. When using this primer the only other primer available is j= to reposition the panel. |
|
clos |
To close the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
EXAMPLES - Link to examples for Status Bar
Toolbar Panel (ControlBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>,dock, open, clos, topmost
|
Parameter |
Description |
|
on |
Create a new Toolbar panel. |
|
off |
Remove a toolbar panel from the screen. |
|
p=<i> |
To specify the panel index (ID). A value between 1 and 96 |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Number of rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
c=<i> |
Number of columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vr=<i> |
Floating Tool Bar: Used to specify the number of rows defining the layout of a floating toolbar |
|
vc=<i> |
Floating Tool Bar: Used to specify the number of columns defining the layout of a floating toolbar |
|
t-<text> |
Panel title. |
|
j=<n1>,<n2> |
Floating Tool Bar: Position (x, y) on the screen in normalized units between 0 and 1 or in pixel unit. If j is not specified the default values are the center of the application frame. Docked Tool Bar: Docking position (x, y) specified with J=<x_value>,<y_value>, defined in pixels. If j is not specified the default values are (-1, -1) = new row/column Cascade toolbars: Using J parameter there is the possibility of managing the layout on "pulldown" toolbars. These are horizontal or vertical toolbars that appear attached the button from which they have been called. The n1 determinates if the pulldown perpendicular (-2) or parallel (-3) to the calling button. The n2 defines the number of rows/columns. |
|
mod=<i> |
Is 0 if the panel widget is child of the non graphic widget hierarchy; this means that the panel widget is still present also after a DIALOG OFF command. It is 1 if the panel widget is child of the graphic widget hierarchy; this means that the panel widget is iconized when a DIALOG OFF command is executed and de-iconized as soon the graphic area is restored via a DIALOG ON command. |
|
pin=<i> |
Specify the type of panel, can be of one of the following types: • dockable/floating toolbar • floating (only) toolbar • pulldown toolbar Permitted values for toolbars are:,-2,-3,-4,-5,-14. |
|
name=<i> |
If equal to 1 then the resource name is, panel_<i>, where “i“ is the panel index, otherwise, equal to 0, the resource name is panel. |
|
att=<i> |
If set to -1 panel PIN option setting will define whether or not a panel is floating/dockable and to which extremity of the container windows it should be docked. |
|
dock =<i> |
This parameter, if specified, allow to block the vertical or the horizontal docking when the docking mechanism is the same of in Tool Bar: |
|
open |
To 'show' a hidden panel. |
|
clos |
Hide the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
|
w=<gwindow_id> |
Associate a panel (toolbar and dialogbar) to a GWINDOW. |
|
topmost |
The given panel is created with the attribute of "always on top" status. |
EXAMPLES - Link to examples for Tool Bar
Fixed Sized Dialog Panel (DialogBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>,vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>, open, clos, topmost
|
Parameter |
Description |
|
on |
Create a new Dialog panel. |
|
off |
Remove a Dialog panel from the screen. |
|
p=<i> |
To specify the panel index (ID). A value between 1 and 96 |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Number of rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
c=<i> |
Number of columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vr=<i> |
Number of visible rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vc=<i> |
Number of visible columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
t-<text> |
Panel title. |
|
j=<n1>,<n2> |
Floating Fixed Size Bar: Position (x, y) on the screen in normalized units between 0 and 1 or in pixel unit. If j is not specified the default values are the center of the application frame. |
|
mod=<i> |
Is 0 if the panel widget is child of the non graphic widget hierarchy; this means that the panel widget is still present also after a DIALOG OFF command. It is 1 if the panel widget is child of the graphic widget hierarchy; this means that the panel widget is iconized when a DIALOG OFF command is executed and de-iconized as soon the graphic area is restored via a DIALOG ON command. |
|
pin=<i> |
Specify the type of panel which can be only a dockable/floating fixedsize dialog bar. Permitted values for this type of Panel are:-37,-38,-39,-40. |
|
name=<i> |
If equal to 1 then the resource name is, panel_<i>, where “i“ is the panel index, otherwise, equal to 0, the resource name is panel. |
|
att=<i> |
If set to -1 panel PIN option setting will define whether or not a panel is floating/dockable and to which extremity of the container windows it should be docked. |
|
dock =<i> |
This parameter, if specified, allow to block the vertical or the horizontal docking when the docking mechanism is the same as FixedSize Bar: 0 = no block for docking, docking everywhere 1 = block horizontal docking, only vertical docking permitted 2 = block vertical docking, only horizontal docking permitted |
|
open |
To 'show' a hidden panel. |
|
clos
|
Hide the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
|
w=<gwindow_id> |
Associate a panel (toolbar and dialogbar) to a GWINDOW. |
|
topmost |
The given panel is created with the attribute of "always on top" status. |
EXAMPLES - Link to examples for Fixed Size Dialog
Tabbed Container Panel (DialogBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>, vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>, open, clos, container, topmost
|
Parameter |
Description |
|
on |
Create a new Container panel. |
|
off |
Remove a Container panel from the screen. |
|
p=<i> |
To specify the panel index (ID). A value between 1 and 96 |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Number of rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
c=<i> |
Number of columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vr=<i> |
Number of visible rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vc=<i> |
Number of visible columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
t-<text> |
Panel title. |
|
j=<n1>,<n2> |
Floating Control Bar : Position (x, y) on the screen in normalized units between 0 and 1 or in pixel unit. If j is not specified the default values are the center of the application frame. |
|
mod=<i> |
Specifies the type of container; the value between 1 and 16. |
|
pin=<i> |
To specify the type of panel, can be of one of the following types: • floating dialog • fixed dialog • dockable/floating dialog • floating (only) dialog Permitted values are: 0,1,-7,-8-,-9,-10,-11,-17,-18-,19,-20,-21,-22, and the differences between each possibilities are detailed in the GUI Guide Documentation |
|
name=<i> |
If equal to 1 then the resource name is, panel_<i>, where “i“ is the panel index, otherwise, equal to 0, the resource name is panel. |
|
att=<i> |
If set to -1 panel PIN option setting will define whether or not a panel is floating/dockable and to which extremity of the container windows it should be docked. |
|
open |
To 'show' a hidden panel. |
|
clos |
Hide the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
|
container |
Set a specific panel as “Tab Container”, according with PIN value. |
|
w=<gwindow_id> |
Associate a panel (toolbar and dialogbar) to a GWINDOW. |
|
topmost |
The given panel is created with the attribute of "always on top" status. |
EXAMPLES - Link to examples for Tabbed Container
Tabbed Page Panel (TabbedBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>, vr=<i>, vc=<i>, t=<text>, pageof=<i>, open, tabbed
|
Parameter |
Description |
|
on |
Create a new Container panel. |
|
off |
Remove a Container panel from the screen. |
|
p=<i> |
To specify the panel index (ID). A value between 1 and 96 |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Number of rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
c=<i> |
Number of columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vr=<i> |
Number of visible rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vc=<i> |
Number of visible columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
t-<text> |
Panel title and separated with a “#” the path name of an icon to insert in the tab; the complete syntax is : t=‘title#path/icon.bmp’ |
|
pageof=<i> |
Represents the id of the Tab Container in which the Tab Page will be added. |
|
open |
To 'show' a hidden panel. |
|
tabbed |
Set a specific panel as “Tab Page”. |
|
col2=r,g,b |
Used when the Tab style is “OneNote”(mod=2,6,10,14),, to set the first color for the background of the Tab Page (more details below). In the form =(R, G, B), where R, G and B are three integer between 0 and 255. |
|
col2=r,g,b |
Used when the Tab style is “OneNote” (mod=2,6,10,14), to set the second color for the background of the Tab Page (more details below) . In the form =(R, G, B), where R, G and B are three integer between 0 and 255. |
EXAMPLES - Link to examples for Tabbed Bar
Page Container Panel (PagedBar)
panel {on|off}, p=<i>, u=<i>, r=<i>, c=<i>, vr=<i>, vc=<i>, t=<text>, j=<n1>,<n2>, mod=<i>, pin=<i>, name=<i>, att=<i>, open, clos, container=page
|
Parameter |
Description |
|
on |
Initiate a new panel. |
|
off |
Remove a panel from the screen. |
|
p=<i> |
To specify the panel index (ID). A value between 1 and 96. |
|
u=<i> |
Is the unit in pixel of the menu grid ( default is 16). |
|
r=<i> |
Number of rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
c=<i> |
Number of columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vr=<i> |
Number of visible rows. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
vc=<i> |
Number of visible columns. (Note, The maximum width/height for panels extended to the dimensions of the Eagle frame). |
|
t=<text> |
Panel title. |
|
j=<n1>,<n2> |
Position (x, y) on the screen in normalized units between 0 and 1 or in pixel unit. If j is not specified the default values are the center of the application frame. |
|
pin=<i> |
Specifies the style of container; the value between 1 and 6:
|
|
pin=<i> |
Specify the type of panel, can be of one of the following types:
Permitted values are : 0,1,-7,-8-,-9,-10,-11,-17,-18-,19,-20,-21,-22 |
|
name |
If equal to 1 then the resource name is, panel_<i>, where “i“ is the panel index, otherwise, equal to 0, the resource name is panel. |
|
att=<i> |
If set to -1 panel PIN option setting will define whether or not a panel is floating/dockable and to which extremity of the container windows it should be docked. |
|
open |
To SHOW an hidden panel. |
|
clos |
To HIDE the panel without destroying it. The panel is held in memory for successive use. (This corresponds to an unmanaged widget call). When using this primer no other primers are available. |
|
container=page |
Set a specific panel as “Page Container”, according to PIN value. |
EXAMPLES - Link to examples for Page Bar
Notes
Update Note References
If the primer vr or vc or both are specified then vertical and/or horizontal scroll bars are defined on the right and bottom sides of the panel.
The ability to add external custom controls to standard Eagle panels (mixed mode) is possible. This is enabled by a numeric function for the LET command, called PANEL(<i>,<j>), which returns the windows handle of the panel <i> or of the button <j> defined in the panel <i>.Update from 11.9.4 (b01)
Remembering the location of panels and restoring them to the same position at which they were closed is possible. A panel can be repositioned in the same place that it was before it was last closed. This is possible for panels in which the name has been defined, that is, the primer NAME=<value>. <value> is an integer that represents the unique ID of the panel. If the programmer wants to overwrite this behaviour thereby resetting the volatile entries in the file named with the following rule:
PANEL_value_X=
PANEL_value_Y=
Where value is the one defined for the NAME= parameter. Example: PANEL P=1, .. .. .. , NAME=10007
this is the only change required in existing macros. To reset:
ENV PANEL_10007_X=’’
ENV PANEL_10007_Y=’’
Updates from 11.9.4 (b01)
Warm restart When creating a toolbar or a dialog (negative PIN) it is possible to also specify the position with J=x,y where x and y are expressed in screen pixel coordinates. This is useful to precisely position a toolbar one after another on the same bar, or to insert a toolbar or a dialog in between already created toolbars and dialogs. Update from v12.2.0
Note:This functionality is complimented by the (LET) INFOGUI and (LET) INFOPANEL functions which can be used to achieve a "warm" startup for the user interface, that is, display various toolbars and dialogs exactly as the user left them when Eagle previously exited previous.
Example:
PANEL ON,P=1,U=1, .... PIN=-5,J=400,0, ....
differing from:
PANEL ON,P=1,U=1, .... PIN=-5, ....
Right-click on a toolbar executes the macro defined in the environment variable TOOLBAR_CONTEXT_ACTION and returns the correct MN, BN and VB. Update from v12.3.3 (b01)
The Panels can have a defined command file to execute when closing, refer to the graphics section of Eagle Customization. When a panel (toolbar, dialog or std panel) is closed (PANEL OFF), Eagle now fires a message whose value can be read from the INI file in the variable CLOSE_CUSTOM_MESSAGE. A variable in the INI/Registry CLOSE_CUSTOM_MESSAGE sets the value of the message to be fired when a panel, dialog or toolbar is destroyed. The default value is 61210.Update from v12.0.1
The execution of the “close button” of a Panel event cause the polling to exit and returning a BN (button number) value set to – 1 to inform about the special event occurred. Update from v12.4.5
See also
NOTAT, options, polling, click, UI Framework, Eagle Customization.