Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
AG_TOOLBAR(3)	       FreeBSD Library Functions Manual		 AG_TOOLBAR(3)

NAME
     AG_Toolbar	-- agar	button toolbar widget

SYNOPSIS
     #include <agar/core.h>
     #include <agar/gui.h>

DESCRIPTION
     The AG_Toolbar widget is a	specialized container for a set	of buttons
     which allows single or multiple selections.  The buttons may be arranged
     in	multiple rows.

INHERITANCE HIERARCHY
     AG_Object(3) -> AG_Widget(3) -> AG_Box(3) -> AG_Toolbar.

INITIALIZATION
     AG_Toolbar	* AG_ToolbarNew(AG_Widget *parent, enum	ag_toolbar_type, int
     nRows, Uint flags)

     void AG_ToolbarRow(AG_Toolbar *toolbar, int row_name)

     AG_Button * AG_ToolbarButton(AG_Toolbar *toolbar, const char *text, int
     enable_default, void (*fn)(AG_Event *), const char	*fnArgs, ...)

     AG_Button * AG_ToolbarButtonIcon(AG_Toolbar *toolbar, AG_Surface *icon,
     int enable_default, void (*fn)(AG_Event *), const char *fnArgs, ...)

     void AG_ToolbarSeparator(AG_Toolbar *toolbar)

     void AG_ToolbarSelect(AG_Toolbar *toolbar,	AG_Button *button)

     void AG_ToolbarDeselect(AG_Toolbar	*toolbar, AG_Button *button)

     void AG_ToolbarSelectOnly(AG_Toolbar *toolbar, AG_Button *button)

     void AG_ToolbarSelectAll(AG_Toolbar *toolbar)

     void AG_ToolbarDeselectAll(AG_Toolbar *toolbar) The AG_ToolbarNew() func-
     tion allocates, initializes, and attaches a new AG_Toolbar	widget.	 Ac-
     ceptable flags include:

     AG_TOOLBAR_HOMOGENOUS     Scale the buttons so that they cover the	whole
			       toolbar area, instead of	using their preferred
			       sizes.

     AG_TOOLBAR_STICKY	       Buttons should preserve their state, and	only
			       one button can be selected at any given time.

     AG_TOOLBAR_MULTI_STICKY   Button should preserve their state but multiple
			       buttons can be selected.

     AG_TOOLBAR_HFILL	       Expand horizontally in parent (equivalent to
			       invoking	AG_ExpandHoriz(3)).

     AG_TOOLBAR_VFILL	       Expand vertically in parent (equivalent to in-
			       voking AG_ExpandVert(3)).

     AG_TOOLBAR_EXPAND	       Shorthand for
			       AG_TOOLBAR_HFILL|AG_TOOLBAR_VFILL.

     NOTE: It is not necessary to invoke AG_ExpandHoriz(3) on horizontal tool-
     bars or AG_ExpandVert(3) on vertical toolbars, they are expanded by de-
     fault.

     AG_ToolbarRow() specifies the row number for all subsequent operations.

     The AG_ToolbarButton() function creates a new button displaying the given
     text and attaches it to the current row.  If the enable_default argument
     is	1, the button is enabled by default.  The arguments fn and fnArg spec-
     ify the event handler function (see AG_Event(3) for details).  The	call-
     back function will	be invoked whenever the	user clicks on the button.

     The AG_ToolbarButtonIcon()	variant	creates	a button displaying a given
     surface instead of	a label, usually an icon.

     AG_ToolbarSeparator() creates a separator of appropriate orientation in
     the current row.

     The functions AG_ToolbarSelect() and AG_ToolbarDeselect() are used	to en-
     able or disable a given button.  AG_ToolbarSelectOnly() enables the given
     button, disabling any other button	that is	currently active.
     AG_ToolbarSelectAll() enables all attached	buttons	and
     AG_ToolbarDeselectAll() disables all attached buttons.

EVENTS
     The AG_Toolbar widget does	not generate any event.

STRUCTURE DATA
     For the AG_Toolbar	object:

     AG_Box *rows[]   Containers for the rows (read-only).  Widgets can	be at-
		      tached manually to those containers with
		      AG_ObjectAttach(3) if AG_ToolbarButton() is not suit-
		      able.

     int nRows	      Number of	rows (read-only).

     int nButtons     Total button count (read-only).

     int curRow	      Current row, as selected by AG_ToolbarRow() (read-only).

SEE ALSO
     AG_Box(3),	AG_Button(3), AG_Event(3), AG_Intro(3),	AG_Surface(3),
     AG_Widget(3), AG_Window(3)

HISTORY
     The AG_Toolbar widget first appeared in Agar 1.1.

FreeBSD	13.0		      September	11, 2006		  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | INHERITANCE HIERARCHY | INITIALIZATION | EVENTS | STRUCTURE DATA | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=AG_Toolbar&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help