A spin button is a composite widget, it consists of an entry and a scroll button. A spin button is used to cycle through a series of string type inputs. The value is controled by a spin function of type
When the left mouse button is pressed over the arrow button, the spin functionchar *(func)(int old_idx, int new_idx, void *clientData);
func
will be called to compute the
next choice. The value will then be displayed in the entry
widget. Here is an example.
static char *months[]={"January", "Febrary", "March", "April", "May",
"June", "July", "August", "September", "October",
"November", "December"};
static char *spinFunc(int last, int current, void *data)
{
current %= 12;
if(current < 0) current += 12;
return(months[current]);
}
main(int ac, char **av)
{
EZ_Widget *spin;
EZ_Initialize(ac, av, 0);
spin = EZ_CreateWidget(EZ_WIDGET_SPIN_BUTTON, NULL,
EZ_SPIN_VALUE, 3, "April",
EZ_SPIN_FUNCTION, nextF, NULL,
0);
EZ_DisplayWidget(spin);
EZ_EventMainLoop();
}
Symbolic widget type | EZ_WIDGET_SPIN_BUTTON |
Default class name | "SpinButton" |
Default instance name | "spinButton" |
char *EZ_GetSpinButtonValue(EZ_Widget *spinButton);
void EZ_SetupSpinButton(EZ_Widget *spinBtn, char *value,
char *(nextValue)(int,int void *));
Screenshot
Resources
Config_Option ResourceName DefaultValue
EZ_NAME
EZ_CLASS class "Locator"
name "locator"
EZ_X x
EZ_Y y
EZ_WIDTH width
EZ_HEIGHT height
EZ_LOCATION location
EZ_SIZE size
EZ_GEOMETRY geometry
EZ_WIDTH_HINT widthHint
EZ_HEIGHT_HINT heightHint
EZ_SIZE_HINT sizeHint
EZ_BORDER_WIDTH borderWidth 2
EZ_BORDER_TYPE borderType sunken
EZ_FOCUS_PAD focusPad 2
EZ_EXPAND expand false
EZ_PROPAGATE propagate true
EZ_TRANSIENT transient false
EZ_CURSOR cursor "XC_left_ptr"
EZ_BUBBLE_STRING bubbleString null
EZ_MOTION_CALLBACK N/A null null
EZ_DESTROY_CALLBACK N/A null null
EZ_EVENT_HANDLER N/A null null
EZ_FOREGROUND foreground "black"
EZ_BACKGROUND background "gray74
EZ_BG_IMAGE_FILE bgImageFile null
EZ_BG_PIXMAP N/A none
EZ_SHAPED_WINDOW shapedWindow false
EZ_SHAPE_FILE shapeFile NULL
EZ_SHAPE_PIXMAP N/A NULL
EZ_BG_IMAGE_FILE_B bgImageFileB null
EZ_BG_PIXMAP_B N/A none
EZ_CLIENT_PTR_DATA N/A null
EZ_CLIENT_INT_DATA clientIntData 0
EZ_DND_DRAG_CURSOR dndDragCursor none
EZ_DND_BUBBLE_STRING dndBubbleString null
EZ_SPIN_VALUE spinValue 0, NULL
EZ_SPIN_FUNCTION N/A NULL,NULL