LibMB 1.12
|
a simple independent popup menu widget, used mainly for application launchers etc. More...
Typedefs | |
typedef struct _menu | MBMenuMenu |
Opaque type for a menu. | |
typedef struct _menuitem | MBMenuItem |
Opaque type for a menu item. | |
typedef struct _mbmemu | MBMenu |
Opaque type for a 'top level' menu. | |
typedef void(* | MBMenuActivateCB) (MBMenuItem *item) |
Callback for an activated menu item. | |
Enumerations | |
enum | MBMenuColorElement |
Used to set various menu elements colours. | |
enum | MBMenuItemAddFlags |
Used to specify how an item is added to a menu. | |
Functions | |
MBMenu * | mb_menu_new (Display *dpy, int screen) |
Creates a new toplevel mbmenu instance. | |
Bool | mb_menu_set_font (MBMenu *mbmenu, char *font_desc) |
Sets the font used by the referenced menu. | |
Bool | mb_menu_set_default_icons (MBMenu *mbmenu, char *folder, char *app) |
Sets the default icons to be uses when not supplied by an individual item. | |
void | mb_menu_set_icon_size (MBMenu *mbmenu, int size) |
Sets the icon dimention in pixels used by the referenced menu instance. | |
void | mb_menu_set_col (MBMenu *mbmenu, MBMenuColorElement element, char *col_spec) |
Sets the font used by the referenced menu instance. | |
void | mb_menu_set_trans (MBMenu *mbmenu, int trans) |
Sets the menu's transparency level. | |
MBMenuMenu * | mb_menu_get_root_menu (MBMenu *mbmenu) |
Gets the top level MBMenu menu. | |
Bool | mb_menu_get_root_menu_size (MBMenu *mbmenu, int *width, int *height) |
Gets the top level MBMenu menu size. | |
void | mb_menu_add_seperator_to_menu (MBMenu *mbmenu, MBMenuMenu *menu, int flags) |
Adds a seperator to a menu. | |
MBMenuMenu * | mb_menu_add_path (MBMenu *mbmenu, char *path, char *icon_path, int flags) |
Adds single or multiple new menus to an mbmenu instance. | |
void | mb_menu_remove_menu (MBMenu *mbmenu, MBMenuMenu *menu) |
Removes a menu and all of its sub menus. | |
void | mb_menu_free (MBMenu *mbmenu) |
Free's a mbmenu toplevel instance. | |
Bool | mb_menu_is_active (MBMenu *mbmenu) |
Checks to see if specified menu intance is active ( ie popped up ) | |
void | mb_menu_activate (MBMenu *mbmenu, int x, int y) |
Checks to see if specified menu intance is active ( ie popped up ) | |
void | mb_menu_deactivate (MBMenu *mbmenu) |
Deactivates ( hides ) a mbmenu instance. | |
void | mb_menu_handle_xevent (MBMenu *mbmenu, XEvent *xevent) |
Processes an X Event. | |
MBMenuItem * | mb_menu_new_item (MBMenu *mbmenu, MBMenuMenu *menu, char *title, MBMenuActivateCB activate_callback, void *user_data, MBMenuItemAddFlags flags) |
Adds a new menu item to a menu. | |
void | mb_menu_item_icon_set (MBMenu *mbmenu, MBMenuItem *item, MBPixbufImage *img) |
Adds a new menu item to a menu. | |
void * | mb_menu_item_get_user_data (MBMenuItem *item) |
Gets any user data attatched to a menu item. | |
void | mb_menu_item_remove (MBMenu *mbmenu, MBMenuMenu *menu, MBMenuItem *item) |
Removes a menu item. | |
void | mb_menu_dump (MBMenu *mbmenu, MBMenuMenu *menu) |
Dumps an mbmenu menu structure to stdout. | |
a simple independent popup menu widget, used mainly for application launchers etc.
NOTE: Its planned that one day in the future this will be superceded by matchbox-tk.
void mb_menu_activate | ( | MBMenu * | mbmenu, |
int | x, | ||
int | y ) |
Checks to see if specified menu intance is active ( ie popped up )
mbmenu | mb menu instance |
x | x co-ord ( relative to root window origin ) to activate menu |
y | y co-ord ( relative to root window origin ) to activate menu |
MBMenuMenu * mb_menu_add_path | ( | MBMenu * | mbmenu, |
char * | path, | ||
char * | icon_path, | ||
int | flags ) |
Adds single or multiple new menus to an mbmenu instance.
mbmenu | MBMenu instance |
path | |
icon_path | |
flags | can be 0 or MBMENU_PREPEND to prepend the seperator rather than append the seperator to the menu. |
void mb_menu_add_seperator_to_menu | ( | MBMenu * | mbmenu, |
MBMenuMenu * | menu, | ||
int | flags ) |
Adds a seperator to a menu.
mbmenu | MBMenu instance |
menu | The menu to add the seperator too. |
flags | can be 0 or MBMENU_PREPEND to prepend the seperator rather than append the seperator to the menu. |
void mb_menu_deactivate | ( | MBMenu * | mbmenu | ) |
Deactivates ( hides ) a mbmenu instance.
mbmenu | mb menu instance |
void mb_menu_dump | ( | MBMenu * | mbmenu, |
MBMenuMenu * | menu ) |
Dumps an mbmenu menu structure to stdout.
mbmenu | mb menu instance |
menu | menu to dump |
void mb_menu_free | ( | MBMenu * | mbmenu | ) |
Free's a mbmenu toplevel instance.
mbmenu | mbmenu instance |
MBMenuMenu * mb_menu_get_root_menu | ( | MBMenu * | mbmenu | ) |
Gets the top level MBMenu menu.
This menu is automatically created on initialisation
mbmenu | mb menu instance |
Bool mb_menu_get_root_menu_size | ( | MBMenu * | mbmenu, |
int * | width, | ||
int * | height ) |
Gets the top level MBMenu menu size.
mbmenu | mb menu instance |
width | pointer to populate width int |
height | pointer to populate height int |
void mb_menu_handle_xevent | ( | MBMenu * | mbmenu, |
XEvent * | xevent ) |
Processes an X Event.
mbmenu | mb menu instance |
xevent | Xevent to process |
Bool mb_menu_is_active | ( | MBMenu * | mbmenu | ) |
Checks to see if specified menu intance is active ( ie popped up )
mbmenu | mb menu instance |
void * mb_menu_item_get_user_data | ( | MBMenuItem * | item | ) |
Gets any user data attatched to a menu item.
item | menu item |
void mb_menu_item_icon_set | ( | MBMenu * | mbmenu, |
MBMenuItem * | item, | ||
MBPixbufImage * | img ) |
Adds a new menu item to a menu.
mbmenu | mb menu instance |
item | menu item |
img | mbpixbuf image to set use as item image |
void mb_menu_item_remove | ( | MBMenu * | mbmenu, |
MBMenuMenu * | menu, | ||
MBMenuItem * | item ) |
Removes a menu item.
mbmenu | mbmenu instance |
menu | the menu to remove from |
item | the menu item |
MBMenu * mb_menu_new | ( | Display * | dpy, |
int | screen ) |
Creates a new toplevel mbmenu instance.
dpy | X Display |
screen | X Screen |
MBMenuItem * mb_menu_new_item | ( | MBMenu * | mbmenu, |
MBMenuMenu * | menu, | ||
char * | title, | ||
MBMenuActivateCB | activate_callback, | ||
void * | user_data, | ||
MBMenuItemAddFlags | flags ) |
Adds a new menu item to a menu.
mbmenu | mb menu instance |
menu | menu to add the item too |
title | menu item title |
activate_callback | function to call when menu is clicked. |
user_data | user data to attach to item. |
flags | specify how the item is added to the menu |
void mb_menu_remove_menu | ( | MBMenu * | mbmenu, |
MBMenuMenu * | menu ) |
Removes a menu and all of its sub menus.
mbmenu | mb menu instance |
menu | menu to remove |
void mb_menu_set_col | ( | MBMenu * | mbmenu, |
MBMenuColorElement | element, | ||
char * | col_spec ) |
Sets the font used by the referenced menu instance.
mbmenu | mb menu instance |
element | Which part of the menu to set color |
col_spec | Color specification in the form #RRGGBB |
Bool mb_menu_set_default_icons | ( | MBMenu * | mbmenu, |
char * | folder, | ||
char * | app ) |
Sets the default icons to be uses when not supplied by an individual item.
mbmenu | mb menu instance |
folder | icon filename for folders |
app | icon filename for items |
Bool mb_menu_set_font | ( | MBMenu * | mbmenu, |
char * | font_desc ) |
Sets the font used by the referenced menu.
mbmenu | mb menu instance |
font_desc | font to load |
void mb_menu_set_icon_size | ( | MBMenu * | mbmenu, |
int | size ) |
Sets the icon dimention in pixels used by the referenced menu instance.
If set to zero, icons will not be used by the menu.
mbmenu | mb menu instance |
size | Icon dimention in pixels |
void mb_menu_set_trans | ( | MBMenu * | mbmenu, |
int | trans ) |
Sets the menu's transparency level.
The Transparency is a HACK!, use at your own risk, its unsupported.
mbmenu | mb menu instance |
trans | Transparency level |