home *** CD-ROM | disk | FTP | other *** search
- /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
- *
- * The contents of this file are subject to the Netscape Public License
- * Version 1.0 (the "NPL"); you may not use this file except in
- * compliance with the NPL. You may obtain a copy of the NPL at
- * http://www.mozilla.org/NPL/
- *
- * Software distributed under the NPL is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
- * for the specific language governing rights and limitations under the
- * NPL.
- *
- * The Initial Developer of this code under the NPL is Netscape
- * Communications Corporation. Portions created by Netscape are
- * Copyright (C) 1998 Netscape Communications Corporation. All Rights
- * Reserved.
- */
- /*-----------------------------------------*/
- /* */
- /* Name: ButtonTest.c */
- /* Description: Test for XfeButton widget. */
- /* Author: Ramiro Estrugo <ramiro@netscape.com> */
- /* */
- /*----------------------------------------------------------------------*/
-
-
- #include <Xfe/XfeTest.h>
-
- static Widget create_button (Widget,String);
- static void install_large_pixmaps (Widget);
- static void install_small_pixmaps (Widget);
- static void change_pixmap (Widget);
- static void change_label (Widget);
- static void button_callback (Widget,XtPointer,XtPointer);
- static void menu_item_cb (Widget,XtPointer,XtPointer);
-
- static Widget _button_target = NULL;
-
- static String labels[] =
- {
- "Label One",
- "A",
- "This is a long label",
- "",
- "The previous one was blank",
- "Label Four",
- "First Line\nSecond Line\nThird Line",
- "-=-=-=-= What ? #$!&*",
- };
-
- #define CMP(s1,s2) (strcmp((s1),(s2)) == 0)
-
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec file_items[] =
- {
- { "Open", XfeMENU_PUSH },
- { "Save", XfeMENU_PUSH },
- { "------------", XfeMENU_SEP },
- { "Exit", XfeMENU_PUSH, XfeExitCallback },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec button_type_items[] =
- {
- { "TypePush", XfeMENU_RADIO, menu_item_cb },
- { "TypeToggle", XfeMENU_RADIO, menu_item_cb },
- { "TypeNone", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec button_layout_items[] =
- {
- { "LayoutLabelOnly", XfeMENU_RADIO, menu_item_cb },
- { "LayoutLabelOnBottom", XfeMENU_RADIO, menu_item_cb },
- { "LayoutLabelOnLeft", XfeMENU_RADIO, menu_item_cb },
- { "LayoutLabelOnRight", XfeMENU_RADIO, menu_item_cb },
- { "LayoutLabelOnTop", XfeMENU_RADIO, menu_item_cb },
- { "LayoutPixmapOnly", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec button_trigger_items[] =
- {
- { "TriggerAnywhere", XfeMENU_RADIO, menu_item_cb },
- { "TriggerEither", XfeMENU_RADIO, menu_item_cb },
- { "TriggerNeither", XfeMENU_RADIO, menu_item_cb },
- { "TriggerLabel", XfeMENU_RADIO, menu_item_cb },
- { "TriggerPixmap", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec modifiers_items[] =
- {
- { "None", XfeMENU_RADIO, menu_item_cb },
- { "Any", XfeMENU_RADIO, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "Shift", XfeMENU_RADIO, menu_item_cb },
- { "Control", XfeMENU_RADIO, menu_item_cb },
- { "Alt", XfeMENU_RADIO, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "Mod1", XfeMENU_RADIO, menu_item_cb },
- { "Mod2", XfeMENU_RADIO, menu_item_cb },
- { "Mod3", XfeMENU_RADIO, menu_item_cb },
- { "Mod4", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec button_boolean_items[] =
- {
- { "TraversalOn", XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "RaiseOnEnter", XfeMENU_TOGGLE, menu_item_cb },
- { "FillOnEnter", XfeMENU_TOGGLE, menu_item_cb },
- { "FillOnArm" , XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "EmulateMotif", XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "Armed", XfeMENU_TOGGLE, menu_item_cb },
- { "Raised", XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "Sensitive", XfeMENU_TOGGLE, menu_item_cb },
- { "PretendSensitive", XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "Selected", XfeMENU_TOGGLE, menu_item_cb },
- { "------------", XfeMENU_SEP },
- { "UsePreferredWidth", XfeMENU_TOGGLE, menu_item_cb },
- { "UsePreferredHeight", XfeMENU_TOGGLE, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec misc_items[] =
- {
- { "ChangePixmap", XfeMENU_PUSH, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec label_items[] =
- {
- { "ChangeLabel", XfeMENU_PUSH, menu_item_cb },
- { "Modifiers", XfeMENU_PANE, NULL, modifiers_items },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec dimension_items[] =
- {
- { "0", XfeMENU_RADIO, menu_item_cb },
- { "1", XfeMENU_RADIO, menu_item_cb },
- { "2", XfeMENU_RADIO, menu_item_cb },
- { "3", XfeMENU_RADIO, menu_item_cb },
- { "4", XfeMENU_RADIO, menu_item_cb },
- { "5", XfeMENU_RADIO, menu_item_cb },
- { "6", XfeMENU_RADIO, menu_item_cb },
- { "7", XfeMENU_RADIO, menu_item_cb },
- { "8", XfeMENU_RADIO, menu_item_cb },
- { "9", XfeMENU_RADIO, menu_item_cb },
- { "10", XfeMENU_RADIO, menu_item_cb },
- { "20", XfeMENU_RADIO, menu_item_cb },
- { "30", XfeMENU_RADIO, menu_item_cb },
- { "40", XfeMENU_RADIO, menu_item_cb },
- { "50", XfeMENU_RADIO, menu_item_cb },
- { "100", XfeMENU_RADIO, menu_item_cb },
- { "200", XfeMENU_RADIO, menu_item_cb },
- { "300", XfeMENU_RADIO, menu_item_cb },
- { "400", XfeMENU_RADIO, menu_item_cb },
- { "500", XfeMENU_RADIO, menu_item_cb },
- { "1000", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec margin_items[] =
- {
- { "MarginLeft", XfeMENU_PANE, NULL, dimension_items },
- { "MarginRight", XfeMENU_PANE, NULL, dimension_items },
- { "MarginTop", XfeMENU_PANE, NULL, dimension_items },
- { "MarginBottom", XfeMENU_PANE, NULL, dimension_items },
- { "------------", XfeMENU_SEP },
- { "MarginAll" , XfeMENU_PANE, NULL, dimension_items },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec shadow_type_items[] =
- {
- { "ShadowIn", XfeMENU_RADIO, menu_item_cb },
- { "ShadowOut", XfeMENU_RADIO, menu_item_cb },
- { "ShadowEtchedIn", XfeMENU_RADIO, menu_item_cb },
- { "ShadowEtchedOut", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec alignment_items[] =
- {
- { "AlignmentBeginning", XfeMENU_RADIO, menu_item_cb },
- { "AlignmentCenter", XfeMENU_RADIO, menu_item_cb },
- { "AlignmentEnd", XfeMENU_RADIO, menu_item_cb },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec enumeration_items[] =
- {
- { "ButtonType", XfeMENU_PANE, NULL, button_type_items },
- { "ButtonLayout", XfeMENU_PANE, NULL, button_layout_items },
- { "ButtonTrigger", XfeMENU_PANE, NULL, button_trigger_items },
- { "------------", XfeMENU_SEP },
- { "ShadowType", XfeMENU_PANE, NULL, shadow_type_items },
- { "------------", XfeMENU_SEP },
- { "LabelAlignment", XfeMENU_PANE, NULL, alignment_items },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec dimensions_items[] =
- {
- { "Width", XfeMENU_PANE, NULL, dimension_items },
- { "Height", XfeMENU_PANE, NULL, dimension_items },
- { "------------", XfeMENU_SEP },
- { "HighlightThickness", XfeMENU_PANE, NULL, dimension_items },
- { "ShadowThickness", XfeMENU_PANE, NULL, dimension_items },
- { "------------", XfeMENU_SEP },
- { "Margins", XfeMENU_PANE, NULL, margin_items },
- { "RaiseBorderThickness", XfeMENU_PANE, NULL, dimension_items },
- { "Spacing", XfeMENU_PANE, NULL, dimension_items },
- { "------------", XfeMENU_SEP },
- { "ArmOffset", XfeMENU_PANE, NULL, dimension_items },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec xm_primitive_items[] =
- {
- { "Open", XfeMENU_PUSH },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuItemRec xfe_primitive_items[] =
- {
- { "Open", XfeMENU_PUSH },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
- static XfeMenuPaneRec pane_items[] =
- {
- { "File", file_items },
- { "XfePrimitive", xfe_primitive_items },
- { "Enumeration", enumeration_items },
- { "Dimensions", dimensions_items },
- { "Boolean", button_boolean_items },
- { "Misc", misc_items },
- { "Label", label_items },
- { NULL }
- };
- /*----------------------------------------------------------------------*/
-
- static Widget _main_form;
- static Widget _menu_bar;
-
- /*----------------------------------------------------------------------*/
- int
- main(int argc,char *argv[])
- {
- Widget frame;
-
- XfeAppCreateSimple("ButtonTest",&argc,argv,"MainFrame",&frame,&_main_form);
-
- _button_target = create_button(_main_form,"ButtonTarget");
-
- _menu_bar = XfeMenuBarCreate(_main_form,"MenuBar",
- pane_items,
- (XtPointer) _button_target,NULL,0);
-
- install_large_pixmaps(_button_target);
-
- XtPopup(frame,XtGrabNone);
-
- XfeAppMainLoop();
-
- return 0;
- }
- /*----------------------------------------------------------------------*/
- static Widget
- create_button(Widget parent,String name)
- {
- Widget w;
-
- w = XtVaCreateManagedWidget(name,
- xfeButtonWidgetClass,
- parent,
- NULL);
-
- XtAddCallback(w,XmNactivateCallback,button_callback,NULL);
- XtAddCallback(w,XmNarmCallback,button_callback,NULL);
- XtAddCallback(w,XmNdisarmCallback,button_callback,NULL);
- XtAddCallback(w,XmNselectionChangedCallback,button_callback,NULL);
- /* XtAddCallback(w,XmNenterCallback,button_callback,NULL); */
- /* XtAddCallback(w,XmNleaveCallback,button_callback,NULL); */
-
- return w;
- }
- /*----------------------------------------------------------------------*/
- static void
- install_large_pixmaps(Widget w)
- {
- if (!XfeIsAlive(w))
- {
- return;
- }
-
- XtVaSetValues(
- w,
- XmNpixmap, XfeGetPixmap(w,"task_browser"),
- XmNpixmapMask, XfeGetMask(w,"task_browser"),
- XmNarmedPixmap, XfeGetPixmap(w,"task_browser_armed"),
- XmNarmedPixmapMask, XfeGetMask(w,"task_browser_armed"),
- XmNraisedPixmap, XfeGetPixmap(w,"task_browser_raised"),
- XmNraisedPixmapMask, XfeGetMask(w,"task_browser_raised"),
- NULL);
- }
- /*----------------------------------------------------------------------*/
- static void
- install_small_pixmaps(Widget w)
- {
- if (!XfeIsAlive(w))
- {
- return;
- }
-
- XtVaSetValues(
- w,
- XmNpixmap, XfeGetPixmap(w,"task_small_browser"),
- XmNpixmapMask, XfeGetMask(w,"task_small_browser"),
- XmNarmedPixmap, XfeGetPixmap(w,"task_small_browser_armed"),
- XmNarmedPixmapMask, XfeGetMask(w,"task_small_browser_armed"),
- XmNraisedPixmap, XfeGetPixmap(w,"task_small_browser_raised"),
- XmNraisedPixmapMask, XfeGetMask(w,"task_small_browser_raised"),
- NULL);
- }
- /*----------------------------------------------------------------------*/
- static void
- change_pixmap(Widget w)
- {
- static Boolean toggle = True;
-
- if (!XfeIsAlive(w))
- {
- return;
- }
-
- if (toggle)
- {
- install_small_pixmaps(w);
- }
- else
- {
- install_large_pixmaps(w);
- }
-
- toggle = !toggle;
- }
- /*----------------------------------------------------------------------*/
- static void
- change_label(Widget w)
- {
- static Cardinal i = 0;
-
- if (!XfeIsAlive(w))
- {
- return;
- }
-
- XfeSetXmStringPSZ(w,
- XmNlabelString,
- XmFONTLIST_DEFAULT_TAG,
- labels[i % XtNumber(labels)]);
-
- i++;
- }
- /*----------------------------------------------------------------------*/
- static void
- menu_item_cb(Widget w,XtPointer client_data,XtPointer call_data)
- {
- String name = XtName(w);
- String parent_name = XtName(XtParent(w));
- Arg av[20];
- Cardinal ac = 0;
-
- printf("menu_item_cb(%s,%s)\n",name,parent_name);
-
- if (!XfeIsAlive(_button_target))
- {
- return;
- }
-
- /* Modifiers */
- if (CMP(parent_name,"Modifiers"))
- {
- if (CMP(name,"None"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,None); ac++;
- }
- else if (CMP(name,"Any"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,AnyModifier); ac++;
- }
- else if (CMP(name,"Shift"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,ShiftMask); ac++;
- }
- else if (CMP(name,"Control"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,ControlMask); ac++;
- }
- else if (CMP(name,"Alt"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,Mod1Mask); ac++;
- }
- else if (CMP(name,"Mod1"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,Mod1Mask); ac++;
- }
- else if (CMP(name,"Mod2"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,Mod2Mask); ac++;
- }
- else if (CMP(name,"Mod3"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,Mod3Mask); ac++;
- }
- else if (CMP(name,"Mod4"))
- {
- XtSetArg(av[ac],XmNselectionModifiers,Mod4Mask); ac++;
- }
- }
- else if (strcmp(name,"TypePush") == 0)
- {
- XtSetArg(av[ac],XmNbuttonType,XmBUTTON_PUSH); ac++;
- }
- else if (strcmp(name,"TypeToggle") == 0)
- {
- XtSetArg(av[ac],XmNbuttonType,XmBUTTON_TOGGLE); ac++;
- }
- else if (strcmp(name,"TypeNone") == 0)
- {
- XtSetArg(av[ac],XmNbuttonType,XmBUTTON_NONE); ac++;
- }
- else if (strcmp(name,"RaiseOnEnter") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNraiseOnEnter);
- }
- else if (strcmp(name,"TraversalOn") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNtraversalOn);
- }
- else if (strcmp(name,"EmulateMotif") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNemulateMotif);
- }
- else if (strcmp(name,"Armed") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNarmed);
- }
- else if (strcmp(name,"Raised") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNraised);
- }
- else if (strcmp(name,"Selected") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNselected);
- }
- else if (strcmp(name,"PretendSensitive") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNpretendSensitive);
- }
- else if (strcmp(name,"Sensitive") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNsensitive);
- }
- else if (strcmp(name,"UsePreferredWidth") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNusePreferredWidth);
- }
- else if (strcmp(name,"UsePreferredHeight") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNusePreferredHeight);
- }
- else if (strcmp(name,"FillOnEnter") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNfillOnEnter);
- }
- else if (strcmp(name,"FillOnArm") == 0)
- {
- XfeResourceToggleBoolean(_button_target,XmNfillOnArm);
- }
- else if (strcmp(name,"LayoutLabelOnly") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_LABEL_ONLY); ac++;
- }
- else if (strcmp(name,"LayoutLabelOnBottom") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_LABEL_ON_BOTTOM); ac++;
- }
- else if (strcmp(name,"LayoutLabelOnLeft") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_LABEL_ON_LEFT); ac++;
- }
- else if (strcmp(name,"LayoutLabelOnRight") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_LABEL_ON_RIGHT); ac++;
- }
- else if (strcmp(name,"LayoutLabelOnTop") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_LABEL_ON_TOP); ac++;
- }
- else if (strcmp(name,"LayoutPixmapOnly") == 0)
- {
- XtSetArg(av[ac],XmNbuttonLayout,XmBUTTON_PIXMAP_ONLY); ac++;
- }
- else if (strcmp(name,"TriggerAnywhere") == 0)
- {
- XtSetArg(av[ac],XmNbuttonTrigger,XmBUTTON_TRIGGER_ANYWHERE); ac++;
- }
- else if (strcmp(name,"TriggerEither") == 0)
- {
- XtSetArg(av[ac],XmNbuttonTrigger,XmBUTTON_TRIGGER_EITHER); ac++;
- }
- else if (strcmp(name,"TriggerNeither") == 0)
- {
- XtSetArg(av[ac],XmNbuttonTrigger,XmBUTTON_TRIGGER_NEITHER); ac++;
- }
- else if (strcmp(name,"TriggerLabel") == 0)
- {
- XtSetArg(av[ac],XmNbuttonTrigger,XmBUTTON_TRIGGER_LABEL); ac++;
- }
- else if (strcmp(name,"TriggerPixmap") == 0)
- {
- XtSetArg(av[ac],XmNbuttonTrigger,XmBUTTON_TRIGGER_PIXMAP); ac++;
- }
- else if (strcmp(name,"ShadowIn") == 0)
- {
- XtSetArg(av[ac],XmNshadowType,XmSHADOW_IN); ac++;
- }
- else if (strcmp(name,"ShadowOut") == 0)
- {
- XtSetArg(av[ac],XmNshadowType,XmSHADOW_OUT); ac++;
- }
- else if (strcmp(name,"ShadowEtchedIn") == 0)
- {
- XtSetArg(av[ac],XmNshadowType,XmSHADOW_ETCHED_IN); ac++;
- }
- else if (strcmp(name,"ShadowEtchedOut") == 0)
- {
- XtSetArg(av[ac],XmNshadowType,XmSHADOW_ETCHED_OUT); ac++;
- }
- else if (strcmp(name,"AlignmentBeginning") == 0)
- {
- XtSetArg(av[ac],XmNlabelAlignment,XmALIGNMENT_BEGINNING); ac++;
- }
- else if (strcmp(name,"AlignmentCenter") == 0)
- {
- XtSetArg(av[ac],XmNlabelAlignment,XmALIGNMENT_CENTER); ac++;
- }
- else if (strcmp(name,"AlignmentEnd") == 0)
- {
- XtSetArg(av[ac],XmNlabelAlignment,XmALIGNMENT_END); ac++;
- }
-
- if (strcmp(parent_name,"MarginLeft") == 0)
- {
- XtSetArg(av[ac],XmNmarginLeft,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"MarginRight") == 0)
- {
- XtSetArg(av[ac],XmNmarginRight,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"MarginTop") == 0)
- {
- XtSetArg(av[ac],XmNmarginTop,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"MarginBottom") == 0)
- {
- XtSetArg(av[ac],XmNmarginBottom,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"MarginAll") == 0)
- {
- XtSetArg(av[ac],XmNmarginLeft,atoi(name)); ac++;
- XtSetArg(av[ac],XmNmarginRight,atoi(name)); ac++;
- XtSetArg(av[ac],XmNmarginTop,atoi(name)); ac++;
- XtSetArg(av[ac],XmNmarginBottom,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"Width") == 0)
- {
- XtSetArg(av[ac],XmNwidth,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"Height") == 0)
- {
- XtSetArg(av[ac],XmNheight,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"ShadowThickness") == 0)
- {
- XtSetArg(av[ac],XmNshadowThickness,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"HighlightThickness") == 0)
- {
- XtSetArg(av[ac],XmNhighlightThickness,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"RaiseBorderThickness") == 0)
- {
- XtSetArg(av[ac],XmNraiseBorderThickness,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"Spacing") == 0)
- {
- XtSetArg(av[ac],XmNspacing,atoi(name)); ac++;
- }
- else if (strcmp(parent_name,"ArmOffset") == 0)
- {
- XtSetArg(av[ac],XmNarmOffset,atoi(name)); ac++;
- }
- else if (strcmp(name,"ChangePixmap") == 0)
- {
- change_pixmap(_button_target);
- }
- else if (strcmp(name,"ChangeLabel") == 0)
- {
- change_label(_button_target);
- }
-
- if (ac)
- {
- XtSetValues(_button_target,av,ac);
- }
- }
- /*----------------------------------------------------------------------*/
- static void
- button_callback(Widget button,XtPointer client_data,XtPointer call_data)
- {
- XfeButtonCallbackStruct * data = (XfeButtonCallbackStruct *) call_data;
- String rname;
-
- switch(data->reason)
- {
- case XmCR_ARM: rname = "Arm"; break;
- case XmCR_DISARM: rname = "Disarm"; break;
- case XmCR_ACTIVATE: rname = "Activate"; break;
- case XmCR_ENTER: rname = "Enter"; break;
- case XmCR_LEAVE: rname = "Leave"; break;
- case XmCR_RAISE: rname = "Raise"; break;
- case XmCR_LOWER: rname = "Lower"; break;
- case XmCR_SELECTION_CHANGED: rname = "SelectionChanged"; break;
- }
-
- printf("%s(%s)\n",rname,XtName(button));
- }
- /*----------------------------------------------------------------------*/
-