void AG_ButtonValign(AG_Button *bu, enum ag_text_valign va) { AG_ObjectLock(bu); bu->valign = va; if (bu->lbl != NULL) { AG_LabelValign(bu->lbl, va); } AG_ObjectUnlock(bu); }
/* Set the label text (C string). */ void AG_ButtonTextS(AG_Button *bu, const char *label) { AG_ObjectLock(bu); if (bu->surface != -1) { AG_ButtonSurface(bu, NULL); } if (bu->lbl == NULL) { bu->lbl = AG_LabelNewS(bu, 0, label); AG_LabelJustify(bu->lbl, bu->justify); AG_LabelValign(bu->lbl, bu->valign); } else { AG_LabelTextS(bu->lbl, label); } AG_ObjectUnlock(bu); AG_Redraw(bu); }
AG_Label *AGOL_Settings::CreateOdamexPathLabel(void *parent) { AG_Label *oplabel; string oppath; oplabel = AG_LabelNewS(parent, AG_LABEL_FRAME | AG_LABEL_EXPAND, ""); AG_LabelValign(oplabel, AG_TEXT_MIDDLE); GuiConfig::Read("OdamexPath", oppath); if(oppath.size()) AG_LabelTextS(oplabel, oppath.c_str()); AG_ButtonNewFn(parent, 0, "Browse", EventReceiver, "%p", RegisterEventHandler((EVENT_FUNC_PTR)&AGOL_Settings::OnBrowseOdamexPath)); return oplabel; }
AG_Button * AG_ButtonNewS(void *parent, Uint flags, const char *label) { AG_Button *bu; bu = Malloc(sizeof(AG_Button)); AG_ObjectInit(bu, &agButtonClass); if (label != NULL) { bu->lbl = AG_LabelNewS(bu, 0, label); AG_LabelJustify(bu->lbl, bu->justify); AG_LabelValign(bu->lbl, bu->valign); } bu->flags |= flags; if (flags & AG_BUTTON_HFILL) { AG_ExpandHoriz(bu); } if (flags & AG_BUTTON_VFILL) { AG_ExpandVert(bu); } AG_ObjectAttach(parent, bu); return (bu); }