Laxkit
0.0.7.1
|
Simple class for a button pops up a menu instead of toggling itself in and out. More...
Public Member Functions | |
MenuButton (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int xx, int yy, int ww, int hh, int brder, anXWindow *prev, unsigned long nowner, const char *nsendmes, int nid=-1, MenuInfo *menu=NULL, int absorb=1, const char *nlabel=NULL, const char *filename=NULL, LaxImage *img=NULL, int npad=0, int ngap=0) | |
virtual | ~MenuButton () |
virtual const char * | whattype () |
virtual int | LBDown (int x, int y, unsigned int wstate, int count, const LaxMouse *d) |
Any left click down brings up the menu, rather than the default Button::LBDown(). | |
virtual int | SetMenu (MenuInfo *menu, int absorb) |
virtual void | makePopup (int mouseid) |
Create the Popup MenuSelector. Called from LBDown(). | |
Public Member Functions inherited from Laxkit::Button | |
Button (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int xx, int yy, int ww, int hh, int brder, anXWindow *prev, unsigned long nowner, const char *nsendmes, int nid=-1, const char *nlabel=NULL, const char *filename=NULL, LaxImage *img=NULL, int npad=-1, int ngap=-1) | |
virtual | ~Button () |
Calls dec_count() on images. | |
virtual int | SetGraphic (int newthing, int newwidth, int newheight) |
Use a graphic instead of an image. | |
virtual int | SetIcon (const char *filename, int makebw=0) |
Return 0 on success, else nonzero error. | |
virtual int | SetIcon (LaxImage *img, int makebw=0) |
Return 0 on success, 1 otherwise. If makebw, then make a black and white copy too. | |
virtual const char * | Label (unsigned int which) |
Pass in something like BUTTON_OK or BUTTON_CANCEL. | |
virtual const char * | Label (const char *nlabel) |
Change the label to nlabel, and set needtodraw. | |
virtual const char * | Label () |
Return what is the current label. | |
virtual void | draw () |
virtual void | WrapToExtent (int which) |
Set win_w (if which&1) and win_h (if which&2) to the extent of the icon/label. | |
virtual LaxFiles::Attribute * | dump_out_atts (LaxFiles::Attribute *att, int what, anObject *context) |
virtual void | dump_in_atts (LaxFiles::Attribute *att, int flag, anObject *context) |
Public Member Functions inherited from Laxkit::ButtonBase | |
ButtonBase (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int xx, int yy, int ww, int hh, int brder, anXWindow *prev, unsigned long nowner, const char *nsendmes, int nid=0) | |
virtual | ~ButtonBase () |
Detaches button from a button group, if any. | |
virtual int | Grayed () |
Return anXWindow::Grayed()|(state==LAX_GRAY). | |
virtual int | Grayed (int g) |
virtual int | LBUp (int x, int y, unsigned int wstate, const LaxMouse *d) |
virtual int | WheelDown (int x, int y, unsigned int wstate, int count, const LaxMouse *d) |
For Momentary buttons, send() with direction=1. | |
virtual int | WheelUp (int x, int y, unsigned int wstate, int count, const LaxMouse *d) |
For Momentary buttons, send() with direction=-1. | |
virtual int | MouseMove (int x, int y, unsigned int state, const LaxMouse *d) |
virtual int | CharInput (unsigned int ch, const char *buffer, int len, unsigned int state, const LaxKeyboard *d) |
Sends on enter. | |
virtual int | Event (const EventData *e, const char *mes) |
On enter or leave, swap oldstate and newstate. | |
virtual int | send (int deviceid, int direction) |
Send a SimpleMessage with type==LAX_ButtonEvent. | |
virtual void | Refresh () |
virtual void | drawon () |
virtual void | drawoff () |
virtual void | drawgrayed () |
virtual void | drawother () |
virtual int | toggle () |
If state==LAX_ON, make LAX_OFF and vice versa, and set needtodraw=1. Returns state. Does net send. | |
virtual int | State (int newstate) |
Set the state to newstate (if a button is not currently pressed). Typically LAX_ON or LAX_OFF. | |
virtual int | State () |
Return the state. | |
Public Member Functions inherited from Laxkit::anXWindow | |
anXWindow (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int xx, int yy, int ww, int hh, int brder, anXWindow *prev, unsigned long nowner, const char *nsend) | |
Constructor. | |
virtual | ~anXWindow () |
anXWindow destructor. Its X window should have been XDestroy'd before here. | |
virtual const char * | WindowTitle (int which=0) |
Return basically the name of the window. | |
virtual void | WindowTitle (const char *newtitle) |
Change the title of the window. This text would usually be displayed in the bar provided by a window manager. | |
virtual const char * | tooltip (int mouseid=0) |
By default, return win_tooltip. | |
virtual const char * | tooltip (const char *newtooltip) |
Replace the current tooltip, return the current tooltip (after replacing). | |
virtual anXWindow * | findChildWindowByTitle (const char *title) |
Find the first immediate child window that has win_title==title. | |
virtual anXWindow * | findChildWindowByName (const char *name) |
Find the first immediate child window that has win_name==name. | |
virtual int | preinit () |
virtual int | init () |
Empty placeholeder. Just returns 0. | |
virtual int | close () |
Called by anXApp from anXApp::destroywindow() when a window is to be destroyed. | |
virtual int | Idle (int tid=0) |
anXWindow::Idle() is an empty placeholeder. Just returns 1. | |
virtual Displayer * | MakeCurrent () |
virtual int | Needtodraw () |
Default is to return needtodraw. | |
virtual void | Needtodraw (int nntd) |
If 0, then the window does not need refreshing. Otherwise it does. | |
virtual int | deletenow () |
Return whether the window is allowed to be deleted. | |
virtual int | setWinStyle (unsigned int stylebit, int newvalue) |
Control various window related basic styling of win_style. | |
virtual int | getWinStyle (unsigned int stylebit) |
Currently, simply return win_style&stylebit. | |
virtual void | installColors (WindowColors *newcolors) |
Dec_count old and inc_count new. | |
virtual ShortcutHandler * | GetShortcuts () |
Return a ShortcutHandler that contains stacks of bound shortcuts and possible window actions. | |
virtual int | PerformAction (int action_number) |
virtual int | ExposeChange (ScreenEventData *e) |
Default behavior on Expose events is to call Needtodraw(1). | |
virtual int | DeviceChange (const DeviceEventData *e) |
virtual int | KeyUp (unsigned int ch, unsigned int state, const LaxKeyboard *kb) |
Called when a key is released. | |
virtual int | ButtonDown (int button, int x, int y, unsigned int state, int count, const LaxMouse *m) |
virtual int | ButtonUp (int button, int x, int y, unsigned int state, const LaxMouse *m) |
virtual int | MBDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
Default is just to return 1. | |
virtual int | MBUp (int x, int y, unsigned int state, const LaxMouse *d) |
Default is just to return 1. | |
virtual int | RBDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
Default is just to return 1. | |
virtual int | RBUp (int x, int y, unsigned int state, const LaxMouse *d) |
Default is just to return 1. | |
virtual int | FocusOn (const FocusChangeData *e) |
Increment win_active, and highlights the window's border, if the event refers to this window. | |
virtual int | FocusOff (const FocusChangeData *e) |
Decrements win_active, and de-highlights the window's border if win_active==0, if event is a real focus off. | |
virtual int | MoveResize (int nx, int ny, int nw, int nh) |
Move and resize the window. | |
virtual int | Resize (int nw, int nh) |
Resize with new nw, and nh. | |
virtual void | contentChanged () |
Windows may call this when their contents change. | |
virtual void | selectionChanged () |
Windows may call this when their selections change. | |
virtual anXWindow * | GetController () |
Return the window most relevant for tab control loops. | |
virtual int | SelectNextControl (const LaxDevice *d) |
Transfer focus to nextcontrol. | |
virtual int | SelectPrevControl (const LaxDevice *d) |
Transfer the focus to prevcontrol. | |
virtual void | ControlActivation (int on) |
Do special activation or not when controls are activated by tabbing. | |
virtual int | AddPrevControl (anXWindow *prev) |
virtual int | AddNextControl (anXWindow *next) |
virtual int | ConnectControl (anXWindow *towhat, int after=1) |
Connect towhat to this. Used for tab loops. | |
virtual int | CloseControlLoop () |
Close a tab loop. | |
virtual void | SetOwner (anXWindow *nowner, const char *mes=NULL, unsigned int send_mask=0) |
Set the new owner and control message. | |
virtual void | SetOwner (unsigned long nowner_id, const char *mes=NULL, unsigned int send_mask=0) |
virtual void | dump_out (FILE *f, int indent, int what, anObject *context) |
Simple dumping function. | |
Public Member Functions inherited from Laxkit::Tagged | |
virtual int | HasTag (const char *tag, int casematters) |
Return whether the tag exists. | |
virtual int | NumberOfTags () |
Return the number of tags, strangely enough. | |
virtual const char * | GetTag (int i) |
Return const pointer to the tag text for tag number i, where i==0 is the first tag. | |
virtual char * | GetAllTags () |
Return a new char[] with a space separated list of all the tags. | |
virtual int | InsertTags (const char *tags, int casematters) |
Insert tags from a string such as 'tag1 tag2 tag3 "tag with spaces" tag4'. | |
virtual int | InsertTag (const char *tag, int casematters) |
Insert tag if it doesn't exist already. | |
virtual int | RemoveTag (const char *tag) |
The tag must be an exact match. | |
virtual int | RemoveTag (int i) |
Remove tag number i. i must be in range [0..NumberOfTags()-1]. | |
virtual void | FlushTags () |
Public Member Functions inherited from LaxFiles::DumpUtility | |
virtual void | dump_in (FILE *f, int indent, int what, Laxkit::anObject *loadcontext, Attribute **att) |
Read in a file segment as an Attribute, and pass parsing duties to dump_in_atts. | |
virtual | ~DumpUtility () |
Empty virtual destructor. | |
Public Member Functions inherited from Laxkit::aDrawable | |
aDrawable (Drawable d=0) | |
virtual int | DrawableType () |
virtual int | ValidDrawable () |
Public Attributes | |
unsigned long | menubutton_style |
Public Attributes inherited from Laxkit::Button | |
int | pad |
int | gap |
int | labelstyle |
Public Attributes inherited from Laxkit::ButtonBase | |
unsigned int | highlight |
unsigned int | shadow |
int | bevel |
Public Attributes inherited from Laxkit::anXWindow | |
WindowColors * | win_colors |
anXApp * | app |
char * | win_name |
An arbitrary string to be used as an id. | |
char * | win_title |
The title of the window. | |
anXWindow * | win_parent |
int | win_screen |
unsigned long | win_style |
int | win_x |
int | win_y |
int | win_w |
int | win_h |
unsigned int | win_border |
int | win_pointer_shape |
Identifier for a stock mouse shape. | |
char | win_on |
Nonzero if the window is mapped. | |
char | win_active |
Should be positive when the window has a keyboard focus, 0 otherwise. | |
unsigned long | win_owner |
Who gets control messages from this window. | |
unsigned int | win_owner_send_mask |
char * | win_sendthis |
The type of message that gets sent to owner. | |
anXWindow * | nextcontrol |
anXWindow * | prevcontrol |
Public Attributes inherited from Laxkit::Tagged | |
int | sorttags |
Protected Attributes | |
MenuInfo * | menuinfo |
Protected Attributes inherited from Laxkit::Button | |
LaxImage * | image |
LaxImage * | bwimage |
int | thing |
int | thingw |
int | thingh |
char * | label |
Protected Attributes inherited from Laxkit::ButtonBase | |
int | mousein |
The number of mice in the button, so 0 if none. | |
int | state |
int | oldstate |
int | id |
ButtonBase * | nextbutton |
ButtonBase * | prevbutton |
ButtonDownInfo | buttondown |
unsigned int | button_style |
Protected Attributes inherited from Laxkit::anXWindow | |
char * | win_tooltip |
Convenience variable to hold the window's tooltip, if any. | |
int | needtodraw |
RefPtrStack< anXWindow > | _kids |
Stack of children of the window. | |
Protected Attributes inherited from Laxkit::Tagged | |
PtrStack< char > | list_of_tags |
Simple class for a button pops up a menu instead of toggling itself in and out.
Laxkit::MenuButton::MenuButton | ( | anXWindow * | parnt, |
const char * | nname, | ||
const char * | ntitle, | ||
unsigned long | nstyle, | ||
int | xx, | ||
int | yy, | ||
int | ww, | ||
int | hh, | ||
int | brder, | ||
anXWindow * | prev, | ||
unsigned long | nowner, | ||
const char * | nsendmes, | ||
int | nid = -1 , |
||
MenuInfo * | menu = NULL , |
||
int | absorb = 1 , |
||
const char * | nlabel = NULL , |
||
const char * | filename = NULL , |
||
LaxImage * | img = NULL , |
||
int | npad = 0 , |
||
int | ngap = 0 |
||
) |
Does not call inc_count() on the image.
References Laxkit::anObject::inc_count(), Laxkit::Button::SetGraphic(), Laxkit::anXWindow::setWinStyle(), and Laxkit::Button::WrapToExtent().
|
virtual |
Dec_count menuinfo.
References Laxkit::anObject::dec_count().
Return 0 for success, 1 for error.
References Laxkit::anObject::dec_count(), and Laxkit::anObject::inc_count().
Referenced by Laxkit::FileDialog::BuildBookmarks().