static Ihandle* resetSetupUI() { Ihandle *dupControlsBox = IupHbox( rstButton = IupButton("RST next packet", NULL), inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Chance(%):"), chanceInput = IupText(NULL), NULL ); IupSetAttribute(chanceInput, "VISIBLECOLUMNS", "4"); IupSetAttribute(chanceInput, "VALUE", "0"); IupSetCallback(chanceInput, "VALUECHANGED_CB", uiSyncChance); IupSetAttribute(chanceInput, SYNCED_VALUE, (char*)&chance); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&resetInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&resetOutbound); IupSetCallback(rstButton, "ACTION", resetSetRSTNextButtonCb); IupSetAttribute(rstButton, "PADDING", "4x"); // enable by default to avoid confusing IupSetAttribute(inboundCheckbox, "VALUE", "ON"); IupSetAttribute(outboundCheckbox, "VALUE", "ON"); if (parameterized) { setFromParameter(inboundCheckbox, "VALUE", NAME"-inbound"); setFromParameter(outboundCheckbox, "VALUE", NAME"-outbound"); setFromParameter(chanceInput, "VALUE", NAME"-chance"); } return dupControlsBox; }
static Ihandle* dropSetupUI() { Ihandle *dropControlsBox = IupHbox( inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Chance(%):"), chanceInput = IupText(NULL), NULL ); IupSetAttribute(chanceInput, "VISIBLECOLUMNS", "4"); IupSetAttribute(chanceInput, "VALUE", "10.0"); IupSetCallback(chanceInput, "VALUECHANGED_CB", uiSyncChance); IupSetAttribute(chanceInput, SYNCED_VALUE, (char*)&chance); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&dropInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&dropOutbound); // enable by default to avoid confusing IupSetAttribute(inboundCheckbox, "VALUE", "ON"); IupSetAttribute(outboundCheckbox, "VALUE", "ON"); if (parameterized) { setFromParameter(inboundCheckbox, "VALUE", NAME"-inbound"); setFromParameter(outboundCheckbox, "VALUE", NAME"-outbound"); setFromParameter(chanceInput, "VALUE", NAME"-chance"); } return dropControlsBox; }
static Ihandle* tamperSetupUI() { Ihandle *dupControlsBox = IupHbox( checksumCheckbox = IupToggle("Redo Checksum", NULL), inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Chance(%):"), chanceInput = IupText(NULL), NULL ); IupSetAttribute(chanceInput, "VISIBLECOLUMNS", "4"); IupSetAttribute(chanceInput, "VALUE", "10.0"); IupSetCallback(chanceInput, "VALUECHANGED_CB", uiSyncChance); IupSetAttribute(chanceInput, SYNCED_VALUE, (char*)&chance); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&tamperInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&tamperOutbound); // sync doChecksum IupSetCallback(checksumCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(checksumCheckbox, SYNCED_VALUE, (char*)&doChecksum); // enable by default to avoid confusing IupSetAttribute(inboundCheckbox, "VALUE", "ON"); IupSetAttribute(outboundCheckbox, "VALUE", "ON"); IupSetAttribute(checksumCheckbox, "VALUE", "ON"); return dupControlsBox; }
static Ihandle* capSetupUI() { Ihandle *capControlsBox = IupHbox( inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Bandwidth Cap(kb/s):"), kpsInput = IupText(NULL), NULL ); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&capInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&capOutbound); IupSetAttribute(kpsInput, "VISIBLECOLUMNS", "4"); IupSetAttribute(kpsInput, "VALUE", "32.0"); IupSetCallback(kpsInput, "VALUECHANGED_CB", (Icallback)uiSyncFixed); IupSetAttribute(kpsInput, SYNCED_VALUE, (char*)&kps); IupSetAttribute(kpsInput, FIXED_MAX, CAP_MAX); IupSetAttribute(kpsInput, FIXED_MIN, CAP_MIN); // enable by default to avoid confusing IupSetAttribute(inboundCheckbox, "VALUE", "ON"); IupSetAttribute(outboundCheckbox, "VALUE", "ON"); if (parameterized) { setFromParameter(inboundCheckbox, "VALUE", NAME"-inbound"); setFromParameter(outboundCheckbox, "VALUE", NAME"-outbound"); setFromParameter(kpsInput, "VALUE", NAME"-kps"); } return capControlsBox; }
int main(int argc, char **argv) { Ihandle *male, *female, *exclusive, *frame, *dialog; IupOpen(&argc, &argv); male = IupToggle ("Male", ""); female = IupToggle ("Female", ""); exclusive = IupRadio ( IupVbox ( male, female, NULL ) ); IupSetHandle("male", male); IupSetHandle("female", female); IupSetAttribute(exclusive, IUP_VALUE, "female"); IupSetAttribute(exclusive, IUP_TIP, "Two state button - Exclusive - RADIO"); frame = IupFrame ( exclusive ); IupSetAttribute (frame, IUP_TITLE, "Gender"); dialog = IupDialog ( IupHbox ( IupFill(), frame, IupFill(), NULL ) ); IupSetAttributes(dialog, "SIZE=140, TITLE=IupRadio, RESIZE=NO, MINBOX=NO, MAXBOX=NO"); IupShow(dialog); IupMainLoop(); IupDestroy(dialog); IupClose(); return 0; }
static void uiSetupModule(Module *module, Ihandle *parent) { Ihandle *groupBox, *toggle, *controls, *icon; groupBox = IupHbox( icon = IupLabel(NULL), toggle = IupToggle(module->displayName, NULL), IupFill(), controls = module->setupUIFunc(), NULL ); IupSetAttribute(groupBox, "EXPAND", "HORIZONTAL"); IupSetAttribute(groupBox, "ALIGNMENT", "ACENTER"); IupSetAttribute(controls, "ALIGNMENT", "ACENTER"); IupAppend(parent, groupBox); // set controls as attribute to toggle and enable toggle callback IupSetCallback(toggle, "ACTION", (Icallback)uiToggleControls); IupSetAttribute(toggle, CONTROLS_HANDLE, (char*)controls); IupSetAttribute(toggle, SYNCED_VALUE, (char*)module->enabledFlag); IupSetAttribute(controls, "ACTIVE", "NO"); // startup as inactive IupSetAttribute(controls, "NCGAP", "4"); // startup as inactive // set default icon IupSetAttribute(icon, "IMAGE", "none_icon"); IupSetAttribute(icon, "PADDING", "4x"); module->iconHandle = icon; // parameterize toggle if (parameterized) { setFromParameter(toggle, "VALUE", module->shortName); } }
void TabsTest(void) { Ihandle *box, *frm1, *frm2, *dlg, *tabs; tabs = CreateTabs(1); box = IupHbox(tabs, frm1 = IupFrame(IupRadio(IupVbox(IupToggle("TOP", "cbType"), IupToggle("LEFT", "cbType"), IupToggle("BOTTOM", "cbType"), IupToggle("RIGHT", "cbType"), NULL))), frm2 = IupFrame(IupRadio(IupVbox(IupToggle("HORIZONTAL", "cbOrientation"), IupToggle("VERTICAL", "cbOrientation"), NULL))), IupVbox(IupSetAttributes(IupButton("Add Tab", "cbAddTab"), "TIP=\"Button Tip\""), IupButton("Insert Tab", "cbInsertTab"), IupButton("Remove Tab", "cbRemoveTab"), IupToggle("Inactive", "cbInactive"), IupButton("VALUEPOS=0", "cbValuePos"), NULL), NULL); IupSetAttribute(frm1, "MARGIN", "5x5"); IupSetAttribute(frm2, "MARGIN", "5x5"); IupSetAttribute(frm1, "GAP", "0"); IupSetAttribute(frm2, "GAP", "0"); IupSetAttribute(frm1, "TITLE", "Type"); IupSetAttribute(frm2, "TITLE", "Orientation"); IupSetAttribute(box, "MARGIN", "10x10"); IupSetAttribute(box, "GAP", "10"); dlg = IupDialog(box); IupSetAttribute(dlg, "TITLE", "IupTabs Test"); IupSetAttribute(dlg, "APP_TABS", (char*)tabs); // IupSetAttribute(box, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BACKGROUND", "200 10 80"); // IupSetAttributeHandle(dlg, "BACKGROUND", load_image_LogoTecgraf()); // IupSetAttribute(dlg, "FGCOLOR", "10 200 80"); // IupSetAttribute(dlg, "BGCOLOR", "173 177 194"); // Motif BGCOLOR for documentation // IupSetAttribute(dlg,"COMPOSITED","NO"); IupMap(dlg); IupSetAttribute(dlg, "SIZE", NULL); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupSetFunction("cbOrientation", (Icallback)cbOrientation); IupSetFunction("cbType", (Icallback)cbType); IupSetFunction("cbAddTab", (Icallback)cbAddTab); IupSetFunction("cbInsertTab", (Icallback)cbInsertTab); IupSetFunction("cbRemoveTab", (Icallback)cbRemoveTab); IupSetFunction("cbInactive", (Icallback)cbInactive); IupSetFunction("cbChildButton", (Icallback)cbChildButton); IupSetFunction("cbValuePos", (Icallback)cbValuePos); }
int item_find_action_cb(Ihandle* item_find) { Ihandle* dlg = (Ihandle*)IupGetAttribute(item_find, "FIND_DIALOG"); if (!dlg) { Ihandle* multitext = IupGetDialogChild(item_find, "MULTITEXT"); Ihandle *box, *bt_next, *bt_close, *txt, *find_case; txt = IupText(NULL); IupSetAttribute(txt, "NAME", "FIND_TEXT"); IupSetAttribute(txt, "VISIBLECOLUMNS", "20"); find_case = IupToggle("Case Sensitive", NULL); IupSetAttribute(find_case, "NAME", "FIND_CASE"); bt_next = IupButton("Find Next", NULL); IupSetAttribute(bt_next, "PADDING", "10x2"); IupSetCallback(bt_next, "ACTION", (Icallback)find_next_action_cb); bt_close = IupButton("Close", NULL); IupSetCallback(bt_close, "ACTION", (Icallback)find_close_action_cb); IupSetAttribute(bt_close, "PADDING", "10x2"); box = IupVbox( IupLabel("Find What:"), txt, find_case, IupSetAttributes(IupHbox( IupFill(), bt_next, bt_close, NULL), "NORMALIZESIZE=HORIZONTAL"), NULL); IupSetAttribute(box, "MARGIN", "10x10"); IupSetAttribute(box, "GAP", "5"); dlg = IupDialog(box); IupSetAttribute(dlg, "TITLE", "Find"); IupSetAttribute(dlg, "DIALOGFRAME", "Yes"); IupSetAttributeHandle(dlg, "DEFAULTENTER", bt_next); IupSetAttributeHandle(dlg, "DEFAULTESC", bt_close); IupSetAttributeHandle(dlg, "PARENTDIALOG", IupGetDialog(item_find)); /* Save the multiline to acess it from the callbacks */ IupSetAttribute(dlg, "MULTITEXT", (char*)multitext); /* Save the dialog to reuse it */ IupSetAttribute(item_find, "FIND_DIALOG", (char*)dlg); } /* centerparent first time, next time reuse the last position */ IupShowXY(dlg, IUP_CURRENT, IUP_CURRENT); return IUP_DEFAULT; }
static Ihandle* dupSetupUI() { Ihandle *dupControlsBox = IupHbox( IupLabel("Count:"), countInput = IupText(NULL), inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Chance(%):"), chanceInput = IupText(NULL), NULL ); IupSetAttribute(chanceInput, "VISIBLECOLUMNS", "4"); IupSetAttribute(chanceInput, "VALUE", "10.0"); IupSetCallback(chanceInput, "VALUECHANGED_CB", uiSyncChance); IupSetAttribute(chanceInput, SYNCED_VALUE, (char*)&chance); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&dupInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&dupOutbound); // sync count IupSetAttribute(countInput, "VISIBLECOLUMNS", "3"); IupSetAttribute(countInput, "VALUE", STR(COPIES_COUNT)); IupSetCallback(countInput, "VALUECHANGED_CB", (Icallback)uiSyncInteger); IupSetAttribute(countInput, SYNCED_VALUE, (char*)&count); IupSetAttribute(countInput, INTEGER_MAX, COPIES_MAX); IupSetAttribute(countInput, INTEGER_MIN, COPIES_MIN); // enable by default to avoid confusing IupSetAttribute(inboundCheckbox, "VALUE", "ON"); IupSetAttribute(outboundCheckbox, "VALUE", "ON"); if (parameterized) { setFromParameter(inboundCheckbox, "VALUE", NAME"-inbound"); setFromParameter(outboundCheckbox, "VALUE", NAME"-outbound"); setFromParameter(chanceInput, "VALUE", NAME"-chance"); setFromParameter(countInput, "VALUE", NAME"-count"); } return dupControlsBox; }
static Ihandle *BWLimiterSetupUI() { Ihandle *BWLimiterControlsBox = IupHbox( IupLabel("Max BW(Kb):"), BWmaxInput = IupText(NULL), inboundCheckbox = IupToggle("Inbound", NULL), outboundCheckbox = IupToggle("Outbound", NULL), IupLabel("Q Size(Kb):"), BWQueueSize = IupText(NULL), NULL ); // sync BWLimiter packet number IupSetAttribute(BWmaxInput, "VISIBLECOLUMNS", "3"); IupSetAttribute(BWmaxInput, "VALUE", STR(BW_DEFAULT)); IupSetCallback(BWmaxInput, "VALUECHANGED_CB", (Icallback)uiSyncInteger); IupSetAttribute(BWmaxInput, SYNCED_VALUE, (char*)&BWMaxValue); IupSetAttribute(BWmaxInput, INTEGER_MAX, BW_MAX); IupSetAttribute(BWmaxInput, INTEGER_MIN, BW_MIN); IupSetCallback(inboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(inboundCheckbox, SYNCED_VALUE, (char*)&BWLimiterInbound); IupSetCallback(outboundCheckbox, "ACTION", (Icallback)uiSyncToggle); IupSetAttribute(outboundCheckbox, SYNCED_VALUE, (char*)&BWLimiterOutbound); // sync BWLimiter packet number IupSetAttribute(BWQueueSize, "VISIBLECOLUMNS", "3"); IupSetAttribute(BWQueueSize, "VALUE", STR(BW_QUEUESIZE_DEFAULT)); IupSetCallback(BWQueueSize, "VALUECHANGED_CB", (Icallback)uiSyncInteger); IupSetAttribute(BWQueueSize, SYNCED_VALUE, (char*)&BWQueueSizeValue); IupSetAttribute(BWQueueSize, INTEGER_MAX, BW_QUEUESIZE_MAX); IupSetAttribute(BWQueueSize, INTEGER_MIN, BW_QUEUESIZE_MIN); return BWLimiterControlsBox; }
static Ihandle* CreateTabs(int tab) { Ihandle *vboxA, *vboxB, *vboxG, *text, *button, *vboxC, *vboxD,*vboxE, *vboxF, *vboxH, *vboxI, *tabs; text = IupText(NULL); IupSetAttribute(text, "NAME", "ATEXT"); button = IupButton("Button EEEFOCUS", "cbChildButton"); IupSetAttribute(button, "NAME", "EEEEEBUTTON"); // if (tab) // to test Tabs inside Tabs // vboxA = IupVbox(CreateTabs(0), NULL); // else vboxA = IupFrame(IupVbox(IupFill(), IupLabel("Label AAA"), IupButton("Button AAA", "cbChildButton"), //NULL)); text, IupToggle("Button TTTT", "cbChildButton"), IupVal(NULL), IupSetAttributes(IupProgressBar(), "VALUE=0.5"), NULL)); vboxB = IupFrame(IupVbox(IupLabel("Label BBB"), IupButton("Button BBB", "cbChildButton"), NULL)); vboxC = IupFrame(IupVbox(IupLabel("Label CCC"), IupButton("Button CCC", "cbChildButton"), NULL)); vboxD = IupFrame(IupVbox(IupLabel("Label DDD"), IupButton("Button DDD", "cbChildButton"), NULL)); vboxE = IupVbox(IupFill(), IupLabel("Label EEE"), IupButton("Button EEE", "cbChildButton"), button, IupButton("Button EEE", "cbChildButton"), NULL); vboxF = IupVbox(IupLabel("Label FFF"), IupButton("Button FFF", "cbChildButton"), NULL); vboxG = IupVbox(IupLabel("Label GGG"), IupButton("Button GGG", "cbChildButton"), NULL); vboxH = IupVbox(IupLabel("Label HHH"), IupButton("Button HHH", "cbChildButton"), NULL); vboxI = IupVbox(IupLabel("Canvas"), IupCanvas(NULL), NULL); IupSetAttribute(vboxA, "TABTITLE", "A"); IupSetAttributeHandle(vboxA, "TABIMAGE", load_image_LogoTecgraf()); // IupSetAttribute(vboxB, "TABTITLE", "&BB"); // IupSetAttribute(vboxC, "TABTITLE", "CCC"); IupStoreAttribute(vboxC, "TABIMAGE", IupGetAttribute(vboxA, "TABIMAGE")); IupSetAttribute(vboxD, "TABTITLE", "DDDD"); IupSetAttribute(vboxE, "TABTITLE", "&EEEEE"); IupSetAttribute(vboxF, "TABTITLE", "FFFFFF"); IupSetAttribute(vboxG, "TABTITLE", "GGGGGGG"); IupSetAttribute(vboxH, "TABTITLE", "HHHHHHHH"); IupSetAttribute(vboxI, "TABTITLE", "Canvas"); IupSetAttribute(vboxA, "TITLE", "TABS A"); IupSetAttribute(vboxB, "TITLE", "TABS BB"); IupSetAttribute(vboxC, "TITLE", "TABS CCC"); // IupSetAttribute(vboxC, "ACTIVE", "NO"); IupSetAttribute(vboxF, "TABSIZE", "100"); IupSetAttribute(vboxI, "BGCOLOR", "32 192 32"); tabs = IupTabs(vboxA, vboxB, vboxC, vboxD, vboxE, vboxF, vboxG, vboxH, vboxI, NULL); IupSetAttribute(tabs, "TABTITLE1", "&BB"); //IupSetCallback(tabs, "TABCHANGE_CB", (Icallback)cbTabChange); IupSetCallback(tabs, "TABCHANGEPOS_CB", (Icallback)cbTabChangePos); IupSetCallback(tabs, "RIGHTCLICK_CB", (Icallback)cbTabRightButton); //IupSetAttributeHandle(tabs, "TABIMAGE1", load_image_LogoTecgraf()); IupSetAttributeHandle(tabs, "TABIMAGE1", load_image_TestImage()); IupSetAttribute(tabs, "TABVISIBLE2", "NO"); // In Windows, must be set before map // IupSetAttribute(tabs, "MULTILINE", "YES"); // IupSetAttribute(tabs, "TABTYPE", "LEFT"); // IupSetAttribute(tabs, "TABTYPE", "RIGHT"); // IupSetAttribute(tabs, "TABTYPE", "BOTTOM"); // IupSetAttribute(tabs, "TABORIENTATION", "VERTICAL"); IupSetAttribute(tabs, "SHOWCLOSE", "YES"); // IupSetAttribute(tabs, "ALIGNMENT", "NW"); // IupSetAttribute(tabs, "ALIGNMENT", "NORTH"); // IupSetAttribute(tabs, "ALIGNMENT", "WEST"); // IupSetAttribute(tabs, "ALIGNMENT", "EAST"); // IupSetAttribute(tabs, "ALIGNMENT", "SOUTH"); // IupSetAttribute(tabs, "ALIGNMENT", "SE"); // IupSetAttribute(tabs, "BACKGROUND", "10 150 200"); // IupSetAttribute(tabs, "BGCOLOR", "92 92 255"); // IupSetAttribute(tabs, "FGCOLOR", "250 0 0"); // IupSetAttribute(tabs, "FONT", "Helvetica, Italic 16"); IupSetAttribute(tabs, "TIP", "IupTabs Tip"); // IupSetAttribute(tabs, "TIPFONT", "SYSTEM"); // IupSetAttribute(tabs, "TIPBGCOLOR", "255 128 128"); // IupSetAttribute(tabs, "TIPFGCOLOR", "0 92 255"); // IupSetAttribute(tabs, "EXPAND", "YES"); IupSetAttribute(tabs, "MARGIN", "0x0"); /* for children */ IupSetAttribute(tabs, "RASTERSIZE", "300x200"); /* initial size */ // Windows Only //IupSetAttribute(tabs, "TIPBALLOON", "YES"); //IupSetAttribute(tabs, "TIPBALLOONTITLE", "Tip Title"); //IupSetAttribute(tabs, "TIPBALLOONTITLEICON", "2"); //IupSetAttribute(tabs, "TIPDELAY", "5000"); //IupSetCallback(tabs, "K_ANY", (Icallback)k_any); //IupSetCallback(tabs, "HELP_CB", (Icallback)help_cb); //IupSetCallback(tabs, "GETFOCUS_CB", (Icallback)getfocus_cb); //IupSetCallback(tabs, "KILLFOCUS_CB", (Icallback)killfocus_cb); //IupSetCallback(tabs, "ENTERWINDOW_CB", (Icallback)enterwindow_cb); //IupSetCallback(tabs, "LEAVEWINDOW_CB", (Icallback)leavewindow_cb); return tabs; }
void TextTest(void) { int formatting = 0; Ihandle *dlg, *mltline, *text, *opt, *btn_def_enter, *btn_def_esc, *btn_active, *btn_overwrite, *btn_append, *btn_insert, *btn_caret, *btn_clip, *btn_key, *btn_readonly, *btn_tabsize, *btn_selection, *btn_selectedtext, *btn_nc, *btn_value, *lbl, *formattag, *btn_remformat; // IupSetGlobal("UTF8AUTOCONVERT", "NO"); text = IupText (NULL); IupSetAttribute(text, "EXPAND", "HORIZONTAL"); // IupSetAttribute(text, "VALUE", "Single Line Text"); IupSetAttribute(text, "CUEBANNER", "Enter Attribute Value Here"); IupSetAttribute(text, "NAME", "text"); IupSetAttribute(text, "TIP", "Attribute Value"); // IupSetAttribute(text, "FORMATTING", "YES"); opt = IupToggle("Set/Get", NULL); IupSetAttribute (opt, "VALUE", "ON"); IupSetHandle ("text2multi", opt); mltline = IupMultiLine(NULL); // mltline = IupText(NULL); // IupSetAttribute(mltline, "MULTILINE", "YES"); IupSetAttribute(mltline, "NAME", "mltline"); IupSetCallback(mltline, "DROPFILES_CB", (Icallback)dropfiles_cb); IupSetCallback(mltline, "BUTTON_CB", (Icallback)button_cb); // IupSetCallback(mltline, "MOTION_CB", (Icallback)motion_cb); IupSetCallback(mltline, "HELP_CB", (Icallback)help_cb); IupSetCallback(mltline, "GETFOCUS_CB", (Icallback)getfocus_cb); IupSetCallback(mltline, "KILLFOCUS_CB", (Icallback)killfocus_cb); IupSetCallback(mltline, "ENTERWINDOW_CB", (Icallback)enterwindow_cb); IupSetCallback(mltline, "LEAVEWINDOW_CB", (Icallback)leavewindow_cb); IupSetCallback(mltline, "ACTION", (Icallback)action); // IupSetCallback(mltline, "VALUECHANGED_CB", (Icallback)valuechanged_cb); // IupSetCallback(mltline, "K_ANY", (Icallback)k_any); IupSetCallback(mltline, "K_F2", (Icallback)k_f2); // IupSetCallback(mltline, "CARET_CB", (Icallback)caret_cb); // IupSetAttribute(mltline, "WORDWRAP", "YES"); // IupSetAttribute(mltline, "BORDER", "NO"); // IupSetAttribute(mltline, "AUTOHIDE", "YES"); // IupSetAttribute(mltline, "BGCOLOR", "255 0 128"); // IupSetAttribute(mltline, "FGCOLOR", "0 128 192"); // IupSetAttribute(mltline, "PADDING", "15x15"); if (IupGetInt(NULL, "UTF8MODE")) IupSetAttribute(mltline, "VALUE", "First Line\nSecond Line Big Big Big\nThird Line\nmore\nmore\n(çãõáóé)"); // UTF-8 else { char* txt = "First Line\nSecond Line Big Big Big\nThird Line\nmore\nmore\n(ηγυασι)"; //int len = strlen(txt); IupSetAttribute(mltline, "VALUE", txt); // Windows-1252 } IupSetAttribute(mltline, "TIP", "First Line\nSecond Line\nThird Line"); // IupSetAttribute(mltline, "FONT", "Helvetica, 14"); // IupSetAttribute(mltline, "MASK", IUP_MASK_FLOAT); // IupSetAttribute(mltline, "FILTER", "UPPERCASE"); // IupSetAttribute(mltline, "ALIGNMENT", "ACENTER"); // IupSetAttribute(mltline, "CANFOCUS", "NO"); // IupSetAttribute(mltline, "SCROLLBAR", "NO"); // IupSetAttribute(mltline, "NOHIDESEL", "Yes"); /* Turns on multiline expand and text horizontal expand */ IupSetAttribute(mltline, "SIZE", "80x40"); IupSetAttribute(mltline, "EXPAND", "YES"); // IupSetAttribute(mltline, "FONT", "Courier, 16"); // IupSetAttribute(mltline, "FONT", "Arial, 12"); // IupSetAttribute(mltline, "FORMATTING", "YES"); formatting = 1; if (formatting) /* just to make easier to comment this section */ { /* formatting before Map */ IupSetAttribute(mltline, "FORMATTING", "YES"); formattag = IupUser(); IupSetAttribute(formattag, "ALIGNMENT", "CENTER"); IupSetAttribute(formattag, "SPACEAFTER", "10"); IupSetAttribute(formattag, "FONTSIZE", "24"); IupSetAttribute(formattag, "SELECTION", "3,1:3,50"); IupSetAttribute(mltline, "ADDFORMATTAG_HANDLE", (char*)formattag); formattag = IupUser(); IupSetAttribute(formattag, "BGCOLOR", "255 128 64"); IupSetAttribute(formattag, "UNDERLINE", "SINGLE"); IupSetAttribute(formattag, "WEIGHT", "BOLD"); IupSetAttribute(formattag, "SELECTION", "3,7:3,11"); IupSetAttribute(mltline, "ADDFORMATTAG_HANDLE", (char*)formattag); } /* Creates buttons */ btn_append = IupButton ("&APPEND", NULL); btn_insert = IupButton ("INSERT", NULL); btn_caret = IupButton ("CARET", NULL); btn_readonly = IupButton ("READONLY", NULL); btn_selection = IupButton ("SELECTION", NULL); btn_selectedtext = IupButton ("SELECTEDTEXT", NULL); btn_nc = IupButton ("NC", NULL); btn_value = IupButton ("VALUE", NULL); btn_tabsize = IupButton ("TABSIZE", NULL); btn_clip = IupButton ("CLIPBOARD", NULL); btn_key = IupButton ("KEY", NULL); btn_def_enter = IupButton ("Default Enter", NULL); btn_def_esc = IupButton ("Default Esc", NULL); btn_active = IupButton("ACTIVE", NULL); btn_remformat = IupButton("REMOVEFORMATTING", NULL); btn_overwrite = IupButton("OVERWRITE", NULL); IupSetAttribute(btn_append, "TIP", "First Line\nSecond Line\nThird Line"); /* Registers callbacks */ IupSetCallback(btn_append, "ACTION", (Icallback) btn_append_cb); IupSetCallback(btn_insert, "ACTION", (Icallback) btn_insert_cb); IupSetCallback(btn_caret, "ACTION", (Icallback) btn_caret_cb); IupSetCallback(btn_readonly, "ACTION", (Icallback) btn_readonly_cb); IupSetCallback(btn_selection, "ACTION", (Icallback) btn_selection_cb); IupSetCallback(btn_selectedtext, "ACTION", (Icallback) btn_selectedtext_cb); IupSetCallback(btn_nc, "ACTION", (Icallback) btn_nc_cb); IupSetCallback(btn_value, "ACTION", (Icallback) btn_value_cb); IupSetCallback(btn_tabsize, "ACTION", (Icallback) btn_tabsize_cb); IupSetCallback(btn_clip, "ACTION", (Icallback) btn_clip_cb); IupSetCallback(btn_key, "ACTION", (Icallback) btn_key_cb); IupSetCallback(btn_def_enter, "ACTION", (Icallback) btn_def_enter_cb); IupSetCallback(btn_def_esc, "ACTION", (Icallback) btn_def_esc_cb); IupSetCallback(btn_active, "ACTION", (Icallback) btn_active_cb); IupSetCallback(btn_remformat, "ACTION", (Icallback) btn_remformat_cb); IupSetCallback(btn_overwrite, "ACTION", (Icallback) btn_overwrite_cb); lbl = IupLabel("&Multiline:"); IupSetAttribute(lbl, "PADDING", "2x2"); /* Creates dlg */ dlg = IupDialog(IupVbox(lbl, mltline, IupHbox (text, opt, NULL), IupHbox (btn_append, btn_insert, btn_caret, btn_readonly, btn_selection, NULL), IupHbox (btn_selectedtext, btn_nc, btn_value, btn_tabsize, btn_clip, btn_key, NULL), IupHbox (btn_def_enter, btn_def_esc, btn_active, btn_remformat, btn_overwrite, NULL), NULL)); IupSetCallback(dlg, "K_cO", (Icallback)file_open); IupSetAttribute(dlg, "TITLE", "IupText Test"); IupSetAttribute(dlg, "MARGIN", "10x10"); IupSetAttribute(dlg, "GAP", "5"); IupSetAttributeHandle(dlg, "DEFAULTENTER", btn_def_enter); IupSetAttributeHandle(dlg, "DEFAULTESC", btn_def_esc); IupSetAttribute(dlg, "SHRINK", "YES"); if (formatting) /* just to make easier to comment this section */ { IupMap(dlg); /* formatting after Map */ formattag = IupUser(); IupSetAttribute(formattag, "ITALIC", "YES"); IupSetAttribute(formattag, "STRIKEOUT", "YES"); IupSetAttribute(formattag, "SELECTION", "2,1:2,12"); IupSetAttribute(mltline, "ADDFORMATTAG_HANDLE", (char*)formattag); if (1) { int count = IupGetInt(mltline, "COUNT"); IupSetAttribute(mltline, "APPEND", "Append Test"); formattag = IupUser(); IupSetAttribute(formattag, "FGCOLOR", "0 128 64"); IupSetfAttribute(formattag, "SELECTIONPOS", "%d:%d", count+1, IupGetInt(mltline, "COUNT")); IupSetAttribute(mltline, "ADDFORMATTAG_HANDLE", (char*)formattag); } } /* Shows dlg in the center of the screen */ IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupSetFocus(mltline); }
Ihandle* IupCreatev(const char *name, void **params) { Iclass *ic = NULL; char lower[30]; int size = 0; assert(name); if(name == NULL) return NULL; size = (int)strlen(name); size++; assert(size < 30 && size > 0); /* invalid name */ if(size > 30 || size <= 0) return NULL; while(size--) lower[size] = (char)tolower(name[size]); if(iupStrEqual(lower, "dialog")) return IupDialog(params? params[0] : NULL); else if(iupStrEqual(lower, "canvas")) return IupCanvas(NULL); else if(iupStrEqual(lower, "button")) return IupButton(NULL, NULL); else if(iupStrEqual(lower, "toggle")) return IupToggle(NULL, NULL); else if(iupStrEqual(lower, "label")) return IupLabel(NULL); else if(iupStrEqual(lower, "frame")) return IupFrame(NULL); else if(iupStrEqual(lower, "list")) return IupList(NULL); else if(iupStrEqual(lower, "multiline")) return IupMultiLine(NULL); else if(iupStrEqual(lower, "text")) return IupText(NULL); else if(iupStrEqual(lower, "user")) return IupUser(); else if(iupStrEqual(lower, "fill")) return IupFill(); else if(iupStrEqual(lower, "separator")) return IupSeparator(); else if(iupStrEqual(lower, "item")) return IupItem(NULL, NULL); else if(iupStrEqual(lower, "hbox")) return IupHboxv((Ihandle**)params); else if(iupStrEqual(lower, "zbox")) return IupZboxv((Ihandle**)params); else if(iupStrEqual(lower, "vbox")) return IupVboxv((Ihandle**)params); else if(iupStrEqual(lower, "menu")) return IupMenuv((Ihandle**)params); else if(iupStrEqual(lower, "radio")) return IupRadio(params[0]); else if(iupStrEqual(lower, "submenu")) return IupSubmenu(NULL, params? params[0] : NULL); /* Not accepted: image color IupGetFile IupListDialog IupMessage IupScanf IupAlarm */ ic = iupCpiGetClass(lower); return iupCpiCreate(ic, params); }
static Ihandle* CreateTabs(int tab) { Ihandle *vboxA, *vboxB, *vboxG, *text, *button, *vboxC, *vboxD,*vboxE, *vboxF, *vboxH, *vboxI, *tabs; text = IupText(NULL); IupSetAttribute(text, "NAME", "ATEXT"); button = IupButton("Button EEEFOCUS", "cbChildButton"); IupSetAttribute(button, "NAME", "EEEEEBUTTON"); // if (tab) // to test Tabs inside Tabs // vboxA = IupVbox(CreateTabs(0), NULL); // else vboxA = IupBackgroundBox(IupVbox(IupFill(), IupSetAttributes(IupLabel("Label AAA"), "EXPAND=HORIZONTAL"), IupButton("Button AAA", "cbChildButton"), //NULL)); text, IupToggle("Button TTTT", "cbChildButton"), IupVal(NULL), IupSetAttributes(IupProgressBar(), "VALUE=0.5"), NULL)); vboxB = IupBackgroundBox(IupVbox(IupLabel("Label BBB"), IupButton("Button BBB", "cbChildButton"), NULL)); vboxC = IupBackgroundBox(IupVbox(IupLabel("Label CCC"), IupButton("Button CCC", "cbChildButton"), NULL)); vboxD = IupBackgroundBox(IupVbox(IupLabel("Label DDD"), IupButton("Button DDD", "cbChildButton"), NULL)); vboxE = IupBackgroundBox(IupVbox(IupFill(), IupLabel("Label EEE"), IupButton("Button EEE", "cbChildButton"), button, IupButton("Button EEE", "cbChildButton"), NULL)); vboxF = IupBackgroundBox(IupVbox(IupLabel("Label FFF"), IupButton("Button FFF", "cbChildButton"), NULL)); vboxG = IupBackgroundBox(IupVbox(IupLabel("Label GGG"), IupButton("Button GGG", "cbChildButton"), NULL)); vboxH = IupBackgroundBox(IupVbox(IupLabel("Label HHH"), IupButton("Button HHH", "cbChildButton"), NULL)); vboxI = IupBackgroundBox(IupVbox(IupLabel("Canvas"), IupCanvas(NULL), NULL)); IupSetAttribute(vboxA, "TABTITLE", "Aj"); IupSetAttributeHandle(vboxA, "TABIMAGE", load_image_LogoTecgraf()); // IupSetAttribute(vboxB, "TABTITLE", "BB"); // IupSetAttribute(vboxC, "TABTITLE", "CCC"); IupStoreAttribute(vboxC, "TABIMAGE", IupGetAttribute(vboxA, "TABIMAGE")); IupSetAttribute(vboxD, "TABTITLE", "DDDD"); IupSetAttribute(vboxE, "TABTITLE", "EEEjj"); IupSetAttribute(vboxF, "TABTITLE", "FFFFff"); IupSetAttribute(vboxG, "TABTITLE", "GGGG ggg"); IupSetAttribute(vboxH, "TABTITLE", "HHHHHHHH"); IupSetAttribute(vboxI, "TABTITLE", "Canvas (зг)"); IupSetAttribute(vboxA, "TITLE", "TABS A"); IupSetAttribute(vboxB, "TITLE", "TABS BB"); IupSetAttribute(vboxC, "TITLE", "TABS CCC"); // IupSetAttribute(vboxC, "ACTIVE", "NO"); IupSetAttribute(vboxF, "TABSIZE", "100"); IupSetAttribute(vboxI, "BGCOLOR", "32 192 32"); tabs = IupFlatTabs(vboxA, vboxB, vboxC, vboxD, vboxE, vboxF, vboxG, vboxH, vboxI, NULL); IupSetAttribute(tabs, "TABTITLE1", "BB"); //IupSetCallback(tabs, "TABCHANGE_CB", (Icallback)cbTabChange); IupSetCallback(tabs, "TABCHANGEPOS_CB", (Icallback)cbTabChangePos); IupSetCallback(tabs, "RIGHTCLICK_CB", (Icallback)cbTabRightButton); //IupSetAttributeHandle(tabs, "TABIMAGE1", load_image_LogoTecgraf()); IupSetAttributeHandle(tabs, "TABIMAGE1", load_image_TestImage()); IupSetAttribute(tabs, "TABVISIBLE2", "NO"); IupSetAttribute(tabs, "TABACTIVE3", "NO"); // IupSetAttribute(tabs, "TABSHIGHCOLOR", "192 0 0"); IupSetAttribute(tabs, "TABTIP4", "Tip Tab4"); /* like Office 2016 */ if (0) { IupSetAttribute(tabs, "FORECOLOR", "192 0 0"); IupSetAttribute(tabs, "TABSBACKCOLOR", "192 0 0"); IupSetAttribute(tabs, "HIGHCOLOR", "255 128 128"); IupSetAttribute(tabs, "CLOSEHIGHCOLOR", "255 128 128"); IupSetAttribute(tabs, "TABSFORECOLOR", "255 255 255"); IupSetAttribute(tabs, "SHOWLINES", "NO"); } // IupSetAttribute(tabs, "EXTRABUTTONS", "3"); // IupSetAttribute(tabs, "EXTRATITLE1", "Button1"); // IupSetAttribute(tabs, "EXTRATITLE2", "But2"); // IupSetAttribute(tabs, "EXTRATIP2", "Tip But2"); // IupSetAttribute(tabs, "EXTRATITLE3", "3"); // IupSetStrAttribute(tabs, "EXTRAIMAGE3", IupGetAttribute(tabs, "TABIMAGE1")); // IupSetAttribute(tabs, "EXPANDBUTTON", "Yes"); // IupSetAttribute(tabs, "SHOWCLOSE", "yes"); // IupSetAttribute(tabs, "TABSPADDING", "10x50"); // IupSetAttribute(tabs, "TABSFONTSIZE", "36"); // IupSetAttribute(tabs, "TABSTEXTORIENTATION", "90"); IupSetAttribute(tabs, "TABFONTSTYLE4", "Bold"); // IupSetAttribute(tabs, "BACKGROUND", "10 150 200"); // IupSetAttribute(tabs, "BGCOLOR", "92 92 255"); // IupSetAttribute(tabs, "FGCOLOR", "250 0 0"); // IupSetAttribute(tabs, "FONT", "Helvetica, Italic 16"); IupSetAttribute(tabs, "TIP", "IupFlatTabs Tip"); // IupSetAttribute(tabs, "TIPFONT", "SYSTEM"); // IupSetAttribute(tabs, "TIPBGCOLOR", "255 128 128"); // IupSetAttribute(tabs, "TIPFGCOLOR", "0 92 255"); // IupSetAttribute(tabs, "EXPAND", "YES"); IupSetAttribute(tabs, "MARGIN", "0x0"); /* for children */ IupSetAttribute(tabs, "RASTERSIZE", "500x200"); /* initial size */ //IupSetCallback(tabs, "K_ANY", (Icallback)k_any); //IupSetCallback(tabs, "HELP_CB", (Icallback)help_cb); //IupSetCallback(tabs, "GETFOCUS_CB", (Icallback)getfocus_cb); //IupSetCallback(tabs, "KILLFOCUS_CB", (Icallback)killfocus_cb); //IupSetCallback(tabs, "ENTERWINDOW_CB", (Icallback)enterwindow_cb); //IupSetCallback(tabs, "LEAVEWINDOW_CB", (Icallback)leavewindow_cb); IupSetCallback(tabs, "EXTRABUTTON_CB", (Icallback)extrabutton_cb); return tabs; }
void func_1 (void) { Ihandle *_cbox, *_cnv_1, *dlg, *img, *_frm_1, *_frm_2, *_frm_3, *hbox, *_ctrl_1, *_list_1, *_list_2, *_list_3, *_text_1, *_ml_1; img = IupImage(32,32, img_bits1); IupSetHandle ("img1", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "BGCOLOR"); IupSetAttribute (img, "2", "255 0 0"); img = IupImage(32,32, img_bits2); IupSetHandle ("img2", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "0 255 0"); IupSetAttribute (img, "2", "BGCOLOR"); IupSetAttribute (img, "3", "255 0 0"); _frm_1 = IupFrame( IupVbox( IupSetAttributes(IupButton("Button Text", "action"), "BGCOLOR=\"255 128 0\", CINDEX=1"), IupSetAttributes(IupButton("", "action"), "BGCOLOR=\"255 128 0\", CINDEX=1"), IupSetAttributes(IupButton("", "action"), "IMAGE=img1,BGCOLOR=\"255 128 0\", CINDEX=2"), IupSetAttributes(IupButton("", "action"), "IMAGE=img1,BGCOLOR=\"255 128 0\", IMPRESS=img2,CINDEX=3"), NULL)); IupSetAttribute(_frm_1,IUP_TITLE,"IupButton"); IupSetAttribute(_frm_1,"CX","10"); IupSetAttribute(_frm_1,"CY","180"); _frm_2 = IupFrame( IupVbox( IupSetAttributes(IupLabel("Label Text"), "CINDEX=1,FONT=HELVETICA_ITALIC_14"), IupSetAttributes(IupLabel(""), "SEPARATOR=HORIZONTAL,CINDEX=2"), IupSetAttributes(IupLabel(""), "IMAGE=img1,CINDEX=3"), NULL)); IupSetAttribute(_frm_2,IUP_TITLE,"IupLabel"); IupSetAttribute(_frm_2,"CX","200"); IupSetAttribute(_frm_2,"CY","250"); _frm_3 = IupFrame( IupVbox( IupSetAttributes(IupToggle("Toggle Text", "action"), "VALUE=ON,CINDEX=1,FONT=HELVETICA_ITALIC_14"), IupSetAttributes(IupToggle("", "action"), "IMAGE=img1,IMPRESS=img2,CINDEX=2"), IupSetAttributes(IupFrame(IupRadio(IupVbox( IupSetAttributes(IupToggle("Toggle Text", "action"), "CINDEX=3"), IupSetAttributes(IupToggle("Toggle Text", "action"), "CINDEX=4"), NULL))), "TITLE=IupRadio"), NULL)); IupSetAttribute(_frm_3,IUP_TITLE,"IupToggle"); IupSetAttribute(_frm_3,"CX","400"); IupSetAttribute(_frm_3,"CY","250"); IupSetAttribute(_frm_3,"RASTERSIZE","150x150"); _text_1 = IupText( "action"); IupSetAttribute(_text_1,IUP_VALUE,"IupText Text"); IupSetAttribute(_text_1,IUP_SIZE,"80x"); IupSetAttribute(_text_1,"CINDEX","1"); IupSetAttribute(_text_1,"CX","10"); IupSetAttribute(_text_1,"CY","100"); _ml_1 = IupMultiLine( "action"); IupSetAttribute(_ml_1,IUP_VALUE,"IupMultiline Text\nSecond Line\nThird Line"); IupSetAttribute(_ml_1,IUP_SIZE,"80x60"); IupSetAttribute(_ml_1,"CINDEX","1"); IupSetAttribute(_ml_1,"CX","200"); IupSetAttribute(_ml_1,"CY","100"); _list_1 = IupList( "action"); IupSetAttribute(_list_1,IUP_VALUE,"1"); IupSetAttribute(_list_1,"1","Item 1 Text"); IupSetAttribute(_list_1,"2","Item 2 Text"); IupSetAttribute(_list_1,"3","Item 3 Text"); IupSetAttribute(_list_1,"CINDEX","1"); IupSetAttribute(_list_1,"CX","10"); IupSetAttribute(_list_1,"CY","10"); _list_2 = IupList( "action"); IupSetAttribute(_list_2,IUP_DROPDOWN,"YES"); IupSetAttribute(_list_2,IUP_VALUE,"2"); IupSetAttribute(_list_2,"1","Item 1 Text"); IupSetAttribute(_list_2,"2","Item 2 Text"); IupSetAttribute(_list_2,"3","Item 3 Text"); IupSetAttribute(_list_2,"CINDEX","2"); IupSetAttribute(_list_2,"CX","200"); IupSetAttribute(_list_2,"CY","10"); _list_3 = IupList( "action"); IupSetAttribute(_list_3,"EDITBOX","YES"); IupSetAttribute(_list_3,IUP_VALUE,"3"); IupSetAttribute(_list_3,"1","Item 1 Text"); IupSetAttribute(_list_3,"2","Item 2 Text"); IupSetAttribute(_list_3,"3","Item 3 Text"); IupSetAttribute(_list_3,"CINDEX","3"); IupSetAttribute(_list_3,"CX","400"); IupSetAttribute(_list_3,"CY","10"); _cnv_1 = IupCanvas( "do_nothing"); IupSetAttribute(_cnv_1,IUP_RASTERSIZE,"100x100"); IupSetAttribute(_cnv_1,IUP_POSX,"0.0"); IupSetAttribute(_cnv_1,IUP_POSY,"0.0"); IupSetAttribute(_cnv_1,IUP_BGCOLOR,"128 255 0"); IupSetAttribute(_cnv_1,"CX","400"); IupSetAttribute(_cnv_1,"CY","150"); _ctrl_1 = IupVal(NULL); IupSetAttribute(_ctrl_1,"CX","600"); IupSetAttribute(_ctrl_1,"CY","200"); // _cbox = IupCbox( _cbox = IupCboxBuilder( _text_1, _ml_1, _list_1, _list_2, _list_3, _cnv_1, _ctrl_1, createtree(), create_mat(), _frm_1, _frm_2, _frm_3, NULL); IupSetAttribute(_cbox,IUP_SIZE,"560x200"); hbox = IupHbox( IupSetAttributes(IupFill(), "SIZE=10"), IupVbox( IupSetAttributes(IupFill(), "SIZE=10"), IupFrame(_cbox), IupSetAttributes(IupLabel("Label Text"), "FONT=HELVETICA_ITALIC_14"), NULL), NULL); dlg = IupDialog(hbox); IupSetHandle("dlg",dlg); IupSetAttribute(dlg,IUP_TITLE,"Cbox Test"); IupSetAttribute(dlg,"COMPOSITED","YES"); /* improves a lot the redrawing */ // IupSetAttribute(dlg,"FONT","HELVETICA_ITALIC_14"); }
void FlatTabsTest(void) { Ihandle *box, *frm1, *frm2, *dlg, *tabs; tabs = CreateTabs(1); box = IupHbox(tabs, #if 0 frm1 = IupFrame(IupRadio(IupVbox(IupToggle("TOP", "cbType"), IupToggle("LEFT", "cbType"), IupToggle("BOTTOM", "cbType"), IupToggle("RIGHT", "cbType"), NULL))), frm2 = IupFrame(IupRadio(IupVbox(IupToggle("HORIZONTAL", "cbOrientation"), IupToggle("VERTICAL", "cbOrientation"), NULL))), #endif IupVbox(IupSetAttributes(IupButton("Add Tab", "cbAddTab"), "TIP=\"Button Tip\""), IupButton("Insert Tab", "cbInsertTab"), IupButton("Remove Tab", "cbRemoveTab"), IupButton("UnHide All Tabs", "cbUnHideAllTabs"), IupButton("Enable All Tabs", "cbEnableAllTabs"), IupToggle("Inactive", "cbInactive"), IupButton("Test", "cbTest"), NULL), NULL); #if 0 IupSetAttribute(frm1, "MARGIN", "5x5"); IupSetAttribute(frm2, "MARGIN", "5x5"); IupSetAttribute(frm1, "GAP", "0"); IupSetAttribute(frm2, "GAP", "0"); IupSetAttribute(frm1, "TITLE", "Type"); IupSetAttribute(frm2, "TITLE", "Orientation"); #endif IupSetAttribute(box, "MARGIN", "10x10"); IupSetAttribute(box, "GAP", "10"); dlg = IupDialog(box); IupSetAttribute(dlg, "TITLE", "IupFlatTabs Test"); IupSetAttribute(dlg, "APP_TABS", (char*)tabs); // IupSetAttribute(box, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BACKGROUND", "200 10 80"); // IupSetAttributeHandle(dlg, "BACKGROUND", load_image_LogoTecgraf()); // IupSetAttribute(dlg, "FGCOLOR", "10 200 80"); IupMap(dlg); IupSetAttribute(dlg, "SIZE", NULL); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupSetFunction("cbOrientation", (Icallback)cbOrientation); IupSetFunction("cbType", (Icallback)cbType); IupSetFunction("cbAddTab", (Icallback)cbAddTab); IupSetFunction("cbInsertTab", (Icallback)cbInsertTab); IupSetFunction("cbRemoveTab", (Icallback)cbRemoveTab); IupSetFunction("cbInactive", (Icallback)cbInactive); IupSetFunction("cbChildButton", (Icallback)cbChildButton); IupSetFunction("cbTest", (Icallback)cbTest); IupSetFunction("cbRemoveThisTab", (Icallback)cbRemoveThisTab); IupSetFunction("cbUnHideAllTabs", (Icallback)cbUnHideAllTabs); IupSetFunction("cbEnableAllTabs", (Icallback)cbEnableAllTabs); IupSetFunction("cbHideThisTab", (Icallback)cbHideThisTab); IupSetFunction("cbDisableThisTab", (Icallback)cbDisableThisTab); }
Ihandle *IupQuakeSetToggle(char *title, char *key, char *val1, char *val2, int checked) { Ihandle *tmp = IupToggle(title, "ACTION"); IupStoreAttribute(tmp, "VALUE", (checked ? "ON" : "OFF")); return tmp; }
int main(int argc, char **argv) { char string_size [ 45 ]; Ihandle *dlg; Ihandle *img_x, *img_cursor; Ihandle *lbl, *lbl_size; Ihandle *btn; Ihandle *tgl, *tgl_radio_1, *tgl_radio_2; Ihandle *frm_lbl, *frm_btn, *frm_tgl, *frm_tgl_radio; IupOpen(&argc, &argv); img_x = IupImage ( 11, 11, pixmap_x ); IupSetAttribute ( img_x, "1", "0 1 0"); IupSetAttribute ( img_x, "2", "255 0 0"); IupSetAttribute ( img_x, "3", "255 255 0"); IupSetHandle ( "img_x", img_x ); img_cursor = IupImage ( 32, 32, pixmap_cursor ); IupSetAttribute ( img_cursor, "1", "255 0 0" ); IupSetAttribute ( img_cursor, "2", "128 0 0" ); IupSetAttribute ( img_cursor, "HOTSPOT", "21:10" ); IupSetHandle ( "img_cursor", img_cursor ); btn = IupButton ( "Dummy", "" ); IupSetAttribute ( btn, "IMAGE", "img_x" ); lbl = IupLabel ( "Dummy" ); IupSetAttribute ( lbl, "IMAGE", "img_x" ); tgl = IupToggle ( "Dummy", NULL ); IupSetAttribute ( tgl, "IMAGE", "img_x" ); tgl_radio_1 = IupToggle ( "Dummy", NULL ); tgl_radio_2 = IupToggle ( "Dummy", NULL ); IupSetAttribute ( tgl_radio_1, "IMAGE", "img_x" ); IupSetAttribute ( tgl_radio_2, "IMAGE", "img_x" ); sprintf ( string_size, "\"X\" image width = %s; \"X\" image height = %s", IupGetAttribute ( img_x, "WIDTH" ), IupGetAttribute ( img_x, "HEIGHT" ) ); lbl_size = IupLabel ( string_size ); frm_btn = IupFrame ( btn ); frm_lbl = IupFrame ( lbl ); frm_tgl = IupFrame ( tgl ); frm_tgl_radio = IupFrame ( IupRadio ( IupVbox ( tgl_radio_1, tgl_radio_2, NULL ) ) ); IupSetAttributes ( frm_btn, "TITLE=button, SIZE=EIGHTHxEIGHTH" ); IupSetAttributes ( frm_lbl, "TITLE=label , SIZE=EIGHTHxEIGHTH" ); IupSetAttributes ( frm_tgl, "TITLE=toggle, SIZE=EIGHTHxEIGHTH" ); IupSetAttributes ( frm_tgl_radio, "TITLE=radio, SIZE=EIGHTHxEIGHTH" ); dlg = IupDialog ( IupVbox ( IupHbox ( frm_btn, frm_lbl, frm_tgl, frm_tgl_radio, NULL ), IupFill(), IupHbox ( IupFill(), lbl_size, IupFill(), NULL ), NULL ) ); IupSetAttributes ( dlg, "TITLE=\"IupImage Example\", SIZE=HALFxQUARTER, CURSOR=img_cursor" ); IupShowXY ( dlg, IUP_CENTER, IUP_CENTER ); IupMainLoop(); IupClose(); return EXIT_SUCCESS; }
void func_1 (void) { Ihandle *_cbox, *_cnv_1, *dlg, *img, *_frm_1, *_frm_2, *_frm_3, *hbox, *_ctrl_1, *_list_1, *_list_2, *_list_3, *_text_1, *_ml_1; img = IupImage(32,32, img_bits1); IupSetHandle ("img1", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "BGCOLOR"); IupSetAttribute (img, "2", "255 0 0"); img = IupImage(32,32, img_bits2); IupSetHandle ("img2", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "0 255 0"); IupSetAttribute (img, "2", "BGCOLOR"); IupSetAttribute (img, "3", "255 0 0"); _frm_1 = IupFrame( IupVbox( IupSetAttributes(IupButton("Button Text", NULL), "CINDEX=1"), IupSetAttributes(IupButton("", NULL), "IMAGE=img1,CINDEX=2"), IupSetAttributes(IupButton("", NULL), "IMAGE=img1,IMPRESS=img2,CINDEX=3"), NULL)); IupSetAttribute(_frm_1,"TITLE","IupButton"); IupSetAttribute(_frm_1,"CX","10"); IupSetAttribute(_frm_1,"CY","180"); _frm_2 = IupFrame( IupVbox( IupSetAttributes(IupLabel("Label Text"), "CINDEX=1"), IupSetAttributes(IupLabel(""), "SEPARATOR=HORIZONTAL,CINDEX=2"), IupSetAttributes(IupLabel(""), "IMAGE=img1,CINDEX=3"), NULL)); IupSetAttribute(_frm_2,"TITLE","IupLabel"); IupSetAttribute(_frm_2,"CX","200"); IupSetAttribute(_frm_2,"CY","250"); _frm_3 = IupFrame( IupVbox( IupSetAttributes(IupToggle("Toggle Text", NULL), "VALUE=ON,CINDEX=1"), IupSetAttributes(IupToggle("", NULL), "IMAGE=img1,IMPRESS=img2,CINDEX=2"), IupSetAttributes(IupFrame(IupRadio(IupVbox( IupSetAttributes(IupToggle("Toggle Text", NULL), "CINDEX=3"), IupSetAttributes(IupToggle("Toggle Text", NULL), "CINDEX=4"), NULL))), "TITLE=IupRadio"), NULL)); IupSetAttribute(_frm_3,"TITLE","IupToggle"); IupSetAttribute(_frm_3,"CX","400"); IupSetAttribute(_frm_3,"CY","250"); _text_1 = IupText( NULL); IupSetAttribute(_text_1,"VALUE","IupText Text"); IupSetAttribute(_text_1,"SIZE","80x"); IupSetAttribute(_text_1,"CINDEX","1"); IupSetAttribute(_text_1,"CX","10"); IupSetAttribute(_text_1,"CY","100"); _ml_1 = IupMultiLine( NULL); IupSetAttribute(_ml_1,"VALUE","IupMultiline Text\nSecond Line\nThird Line"); IupSetAttribute(_ml_1,"SIZE","80x60"); IupSetAttribute(_ml_1,"CINDEX","1"); IupSetAttribute(_ml_1,"CX","200"); IupSetAttribute(_ml_1,"CY","100"); _list_1 = IupList( NULL); IupSetAttribute(_list_1,"VALUE","1"); IupSetAttribute(_list_1,"1","Item 1 Text"); IupSetAttribute(_list_1,"2","Item 2 Text"); IupSetAttribute(_list_1,"3","Item 3 Text"); IupSetAttribute(_list_1,"CINDEX","1"); IupSetAttribute(_list_1,"CX","10"); IupSetAttribute(_list_1,"CY","10"); _list_2 = IupList( NULL); IupSetAttribute(_list_2,"DROPDOWN","YES"); IupSetAttribute(_list_2,"VALUE","2"); IupSetAttribute(_list_2,"1","Item 1 Text"); IupSetAttribute(_list_2,"2","Item 2 Text"); IupSetAttribute(_list_2,"3","Item 3 Text"); IupSetAttribute(_list_2,"CINDEX","2"); IupSetAttribute(_list_2,"CX","200"); IupSetAttribute(_list_2,"CY","10"); _list_3 = IupList( NULL); IupSetAttribute(_list_3,"EDITBOX","YES"); IupSetAttribute(_list_3,"VALUE","3"); IupSetAttribute(_list_3,"1","Item 1 Text"); IupSetAttribute(_list_3,"2","Item 2 Text"); IupSetAttribute(_list_3,"3","Item 3 Text"); IupSetAttribute(_list_3,"CINDEX","3"); IupSetAttribute(_list_3,"CX","400"); IupSetAttribute(_list_3,"CY","10"); _cnv_1 = IupCanvas( NULL); IupSetAttribute(_cnv_1,"RASTERSIZE","100x100"); IupSetAttribute(_cnv_1,"POSX","0"); IupSetAttribute(_cnv_1,"POSY","0"); IupSetAttribute(_cnv_1,"BGCOLOR","128 255 0"); IupSetAttribute(_cnv_1,"CX","400"); IupSetAttribute(_cnv_1,"CY","150"); _ctrl_1 = IupVal(NULL); IupSetAttribute(_ctrl_1,"CX","600"); IupSetAttribute(_ctrl_1,"CY","200"); _cbox = IupCbox( _text_1, _ml_1, _list_1, _list_2, _list_3, _cnv_1, _ctrl_1, createtree(), create_mat(), _frm_1, _frm_2, _frm_3, NULL); IupSetAttribute(_cbox,"SIZE","480x200"); hbox = IupSetAttributes(IupHbox(_cbox, NULL), "MARGIN=10x10"); dlg = IupDialog(hbox); IupSetHandle("dlg",dlg); IupSetAttribute(dlg,"TITLE","Cbox Test"); }
void SampleTest(void) { Ihandle *mnu, *_hbox_1, *_cnv_1, *_vbox_1, *dlg, *img, *_frm_1, *_frm_2, *_frm_3, *_frm_4, *_frm_5, *pbar, *val, *tabs, *_list_1, *_list_2, *_list_3, *_text_1, *_ml_1; //img = IupImage(32,32, img_bits1); //IupSetHandle ("img1", img); //IupSetAttribute (img, "0", "0 0 0"); //IupSetAttribute (img, "1", "BGCOLOR"); //IupSetAttribute (img, "2", "255 0 0"); //img = load_image_Tecgraf(); //IupSetHandle ("img1", img); img = IupImage(32,32, img_bits2); IupSetHandle ("img2", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "0 255 0"); IupSetAttribute (img, "2", "BGCOLOR"); IupSetAttribute (img, "3", "255 0 0"); mnu = IupMenu( IupSubmenu("IupSubmenu 1", IupMenu( IupSetAttributes(IupItem("IupItem 1 Checked", NULL), "VALUE=ON"), IupSeparator(), IupSetAttributes(IupItem("IupItem 2 Disabled", NULL), "ACTIVE=NO"), NULL)), IupItem("IupItem 3", NULL), IupItem("IupItem 4", NULL), NULL); IupSetHandle("mnu",mnu); _frm_1 = IupFrame( IupVbox( IupSetAttributes(IupButton("Button Text", NULL), "PADDING=5x5"), IupSetAttributes(IupButton("Text", NULL), "IMAGE=img1, PADDING=5x5"), IupSetAttributes(IupButton(NULL, NULL), "IMAGE=img1"), IupSetAttributes(IupButton("", NULL), "IMAGE=img1,IMPRESS=img2"), NULL)); IupSetAttribute(_frm_1,"TITLE","IupButton"); _frm_2 = IupFrame( IupVbox( IupLabel("Label Text"), IupSetAttributes(IupLabel(NULL), "SEPARATOR=HORIZONTAL"), IupSetAttributes(IupLabel(NULL), "IMAGE=img1"), NULL)); IupSetAttribute(_frm_2,"TITLE","IupLabel"); _frm_3 = IupFrame( IupVbox( IupSetAttributes(IupToggle("Toggle Text", NULL), "VALUE=ON"), // IupSetAttributes(IupToggle(NULL, NULL), "VALUE=ON,IMAGE=img1,IMPRESS=img2"), IupSetAttributes(IupToggle(NULL, NULL), "VALUE=ON,IMAGE=img1"), IupSetAttributes(IupFrame(IupRadio(IupVbox( IupToggle("Toggle Text", NULL), IupToggle("Toggle Text", NULL), NULL))), "TITLE=IupRadio"), NULL)); IupSetAttribute(_frm_3,"TITLE","IupToggle"); _text_1 = IupText( NULL); IupSetAttribute(_text_1,"VALUE","Single Line Text"); IupSetAttribute(_text_1,"SIZE","80x"); _ml_1 = IupMultiLine( NULL); IupSetAttribute(_ml_1,"VALUE","Multiline Text\nSecond Line\nThird Line"); IupSetAttribute(_ml_1,"EXPAND","YES"); IupSetAttribute(_ml_1,"SIZE","80x40"); _frm_4 = IupFrame(IupVbox( _text_1, _ml_1, NULL)); IupSetAttribute(_frm_4,"TITLE","IupText"); _list_1 = IupList( NULL); // IupSetAttribute(_list_1,"EXPAND","YES"); IupSetAttribute(_list_1,"VALUE","1"); IupSetAttribute(_list_1,"1","Item 1 Text"); IupSetAttribute(_list_1,"2","Item 2 Text"); IupSetAttribute(_list_1,"3","Item 3 Text"); _list_2 = IupList( NULL); IupSetAttribute(_list_2,"DROPDOWN","YES"); // IupSetAttribute(_list_2,"EXPAND","YES"); IupSetAttribute(_list_2,"VALUE","2"); IupSetAttribute(_list_2,"1","Item 1 Text"); IupSetAttribute(_list_2,"2","Item 2 Text"); IupSetAttribute(_list_2,"3","Item 3 Text"); _list_3 = IupList( NULL); IupSetAttribute(_list_3,"EDITBOX","YES"); // IupSetAttribute(_list_3,"EXPAND","YES"); IupSetAttribute(_list_3,"VALUE","3"); IupSetAttribute(_list_3,"1","Item 1 Text"); IupSetAttribute(_list_3,"2","Item 2 Text"); IupSetAttribute(_list_3,"3","Item 3 Text"); _frm_5 = IupFrame(IupVbox( _list_1, _list_2, _list_3, NULL)); IupSetAttribute(_frm_5,"TITLE","IupList"); _hbox_1 = IupHbox( _frm_1, _frm_2, _frm_3, _frm_4, _frm_5, NULL); val = IupVal(NULL); pbar = IupGauge(); IupSetAttribute(pbar, "VALUE", "0.5"); tabs = IupTabs(IupVbox(NULL), IupVbox(NULL), IupVbox(NULL), NULL); IupSetAttribute(tabs,"TABTITLE0","Tab Title 0"); IupSetAttribute(tabs,"TABTITLE1","Tab Title 1"); //IupSetAttributeHandle(tabs,"TABIMAGE1", load_image_LogoTecgraf()); IupSetAttribute(tabs,"TABTITLE2","Tab Title 2"); IupSetAttribute(tabs,"RASTERSIZE","300x50"); // IupSetAttribute(tabs,"PADDING","5x5"); _cnv_1 = IupCanvas(NULL); IupSetAttribute(_cnv_1,"BGCOLOR","128 255 0"); IupSetAttribute(_cnv_1,"SCROLLBAR","HORIZONTAL"); IupSetAttribute(_cnv_1,"EXPAND","HORIZONTAL"); IupSetAttribute(_cnv_1,"RASTERSIZE","x100"); _vbox_1 = IupVbox( _hbox_1, IupHbox(IupSetAttributes(IupFrame(IupHbox(val, NULL)), "TITLE=IupVal"), IupSetAttributes(IupFrame(IupHbox(pbar, NULL)), "TITLE=IupGauge"), IupSetAttributes(IupFrame(IupHbox(tabs, NULL)), "TITLE=IupTabs"), NULL), IupSetAttributes(IupFrame(IupHbox(_cnv_1, NULL)), "TITLE=IupCanvas"), NULL); IupSetAttribute(_vbox_1,"MARGIN","5x5"); IupSetAttribute(_vbox_1,"GAP","5"); dlg = IupDialog(_vbox_1); IupSetHandle("dlg",dlg); IupSetAttribute(dlg,"MENU","mnu"); IupSetAttribute(dlg,"TITLE","IupDialog Title"); // IupSetAttribute(dlg,"COMPOSITED","NO"); /* Windows Only */ // IupSetAttribute(dlg, "BGCOLOR", "173 177 194"); // Motif BGCOLOR for documentation // IupSetAttribute(_vbox_1, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BACKGROUND", "200 10 80"); // IupSetAttribute(dlg, "FONT", "Helvetica, 24"); // IupSetAttribute(dlg, "FONT", "-*-helvetica-*-r-*-*-18-*-*-*-*-*-*-*"); // IupSetAttribute(box, "FGCOLOR", "255 0 0"); IupShow(dlg); }
void ScrollBoxTest(void) { Ihandle *mnu, *_hbox_1, *_cnv_1, *_vbox_1, *dlg, *img, *_vbox_2, *_frm_1, *_frm_2, *_frm_3, *_frm_4, *_frm_5, *pbar, *val, *tabs, *_list_1, *_list_2, *_list_3, *_text_1, *_ml_1, *tree; //img = IupImage(32,32, img_bits1); //IupSetHandle ("img1", img); //IupSetAttribute (img, "0", "0 0 0"); //IupSetAttribute (img, "1", "BGCOLOR"); //IupSetAttribute (img, "2", "255 0 0"); img = load_image_Tecgraf(); IupSetHandle ("img1", img); img = IupImage(32,32, img_bits2); IupSetHandle ("img2", img); IupSetAttribute (img, "0", "0 0 0"); IupSetAttribute (img, "1", "0 255 0"); IupSetAttribute (img, "2", "BGCOLOR"); IupSetAttribute (img, "3", "255 0 0"); mnu = IupMenu( IupSubmenu("IupSubmenu 1", IupMenu( IupSetAttributes(IupItem("IupItem 1 Checked", NULL), "VALUE=ON"), IupSeparator(), IupSetAttributes(IupItem("IupItem 2 Disabled", NULL), "ACTIVE=NO"), NULL)), IupItem("IupItem 3", NULL), IupItem("IupItem 4", NULL), NULL); IupSetHandle("mnu",mnu); _frm_1 = IupFrame( IupVbox( set_callbacks(IupSetAttributes(IupButton("Button Text", NULL), "PADDING=5x5, TIP=\"Button TIP\"")), IupSetCallbacks(set_callbacks(IupSetAttributes(IupButton("Text", NULL), "IMAGE=img1, PADDING=5x5")),"ACTION", action1_cb, NULL), IupSetCallbacks(set_callbacks(IupSetAttributes(IupButton(NULL, NULL), "IMAGE=img1")),"ACTION", action2_cb, NULL), IupSetCallbacks(set_callbacks(IupSetAttributes(IupButton("", NULL), "IMAGE=img1,IMPRESS=img2")),"ACTION", action3_cb, NULL), IupSetCallbacks(set_callbacks(IupSetAttributes(IupButton(NULL, NULL), "BGCOLOR=\"255 0 128\", SIZE=20x10")),"ACTION", action3_cb, NULL), NULL)); IupSetAttribute(_frm_1,"TITLE","IupButton"); _frm_2 = IupFrame( IupVbox( IupSetAttributes(IupLabel("Label Text"), "TIP=\"Label TIP\""), IupSetAttributes(IupLabel(NULL), "SEPARATOR=HORIZONTAL, NAME=SAMP_SEP"), IupSetAttributes(IupLabel(NULL), "IMAGE=img1"), NULL)); IupSetAttribute(_frm_2,"TITLE","IupLabel"); _frm_3 = IupFrame( IupVbox( set_callbacks(IupSetAttributes(IupToggle("Toggle Text", NULL), "VALUE=ON, TIP=\"Toggle TIP\"")), set_callbacks(IupSetAttributes(IupToggle(NULL, NULL), "VALUE=ON,IMAGE=img1,IMPRESS=img2")), set_callbacks(IupSetAttributes(IupToggle(NULL, NULL), "VALUE=ON,IMAGE=img1")), IupSetAttributes(IupFrame(IupRadio(IupVbox( set_callbacks(IupToggle("Toggle Text", NULL)), set_callbacks(IupToggle("Toggle Text", NULL)), NULL))), "TITLE=IupRadio"), NULL)); IupSetAttribute(_frm_3,"TITLE","IupToggle"); _text_1 = IupText( NULL); IupSetAttribute(_text_1,"VALUE","Single Line Text"); IupSetAttribute(_text_1,"SIZE","80x"); IupSetAttribute(_text_1,"TIP","Text TIP"); _ml_1 = IupMultiLine( NULL); IupSetAttribute(_ml_1,"VALUE","Multiline Text\nSecond Line\nThird Line"); IupSetAttribute(_ml_1,"EXPAND","YES"); IupSetAttribute(_ml_1,"SIZE","80x40"); IupSetAttribute(_ml_1,"TIP","Multiline TIP"); _frm_4 = IupFrame(IupVbox( set_callbacks(_text_1), set_callbacks(_ml_1), NULL)); IupSetAttribute(_frm_4,"TITLE","IupText"); _list_1 = IupList( NULL); // IupSetAttribute(_list_1,"EXPAND","YES"); IupSetAttribute(_list_1,"VALUE","1"); IupSetAttribute(_list_1,"1","Item 1 Text"); IupSetAttribute(_list_1,"2","Item 2 Text"); IupSetAttribute(_list_1,"3","Item 3 Text"); IupSetAttribute(_list_1,"TIP","List 1"); _list_2 = IupList( NULL); IupSetAttribute(_list_2,"DROPDOWN","YES"); // IupSetAttribute(_list_2,"EXPAND","YES"); IupSetAttribute(_list_2,"VALUE","2"); IupSetAttribute(_list_2,"1","Item 1 Text"); IupSetAttribute(_list_2,"2","Item 2 Text"); IupSetAttribute(_list_2,"3","Item 3 Text"); IupSetAttribute(_list_2,"TIP","List 2"); _list_3 = IupList( NULL); IupSetAttribute(_list_3,"EDITBOX","YES"); // IupSetAttribute(_list_3,"EXPAND","YES"); IupSetAttribute(_list_3,"VALUE","3"); IupSetAttribute(_list_3,"1","Item 1 Text"); IupSetAttribute(_list_3,"2","Item 2 Text"); IupSetAttribute(_list_3,"3","Item 3 Text"); IupSetAttribute(_list_3,"TIP","List 3"); _frm_5 = IupFrame(IupVbox( set_callbacks(_list_1), set_callbacks(_list_2), set_callbacks(_list_3), NULL)); IupSetAttribute(_frm_5,"TITLE","IupList"); _hbox_1 = IupHbox( _frm_1, _frm_2, _frm_3, _frm_4, _frm_5, NULL); val = IupVal(NULL); IupSetAttribute(val,"TIP","Valuator TIP"); set_callbacks(val); pbar = IupProgressBar(); IupSetAttribute(pbar, "VALUE", "0.5"); IupSetAttribute(pbar,"TIP","ProgressBar TIP"); set_callbacks(pbar); tabs = IupTabs(IupVbox(IupLabel("Tab0"), NULL), IupVbox(IupLabel("Tab1"), NULL), IupVbox(IupLabel("Tab2"), NULL), NULL); IupSetAttribute(tabs,"TABTITLE0","Tab Title 0"); IupSetAttribute(tabs,"TABTITLE1","Tab Title 1"); IupSetAttributeHandle(tabs,"TABIMAGE1", load_image_LogoTecgraf()); IupSetAttribute(tabs,"TABTITLE2","Tab Title 2"); IupSetAttribute(tabs,"RASTERSIZE","300x50"); IupSetAttribute(tabs,"TIP","Tabs TIP"); // IupSetAttribute(tabs,"PADDING","5x5"); set_callbacks(tabs); tree = IupTree(); IupSetAttribute(tree, "SHOWRENAME", "YES"); IupSetAttribute(tree,"RASTERSIZE","300x150"); IupSetAttribute(tree,"TIP","Tree TIP"); IupSetAttribute(tree,"EXPAND","NO"); set_callbacks(tree); _cnv_1 = IupCanvas(NULL); IupSetAttribute(_cnv_1,"BGCOLOR","128 255 0"); IupSetAttribute(_cnv_1,"SCROLLBAR","YES"); // IupSetAttribute(_cnv_1,"EXPAND","HORIZONTAL"); IupSetAttribute(_cnv_1,"EXPAND","NO"); IupSetAttribute(_cnv_1,"RASTERSIZE","200x100"); IupSetAttribute(_cnv_1,"TIP","Canvas TIP"); // IupSetAttribute(_cnv_1,"CANFOCUS","NO"); set_callbacks(_cnv_1); _vbox_1 = IupVbox( _hbox_1, IupHbox(IupSetAttributes(IupFrame(IupHbox(val, NULL)), "TITLE=IupVal"), IupSetAttributes(IupFrame(IupHbox(pbar, NULL)), "TITLE=IupProgressBar"), IupSetAttributes(IupFrame(IupHbox(tabs, NULL)), "TITLE=IupTabs"), NULL), IupHbox(IupSetAttributes(IupFrame(IupHbox(_cnv_1, NULL)), "TITLE=IupCanvas"), IupSetAttributes(IupFrame(IupHbox(tree, NULL)), "TITLE=IupTree"), NULL), IupHbox(IupSetAttributes(IupFrame(IupHbox(create_matrix(), NULL)), "TITLE=IupMatrix"), NULL), NULL); IupSetAttribute(_vbox_1,"MARGIN","5x5"); IupSetAttribute(_vbox_1,"GAP","5"); // _vbox_2 = IupVbox(IupSetAttributes(IupScrollBox(_vbox_1), "RASTERSIZE=400x300"), NULL); _vbox_2 = IupVbox(IupScrollBox(_vbox_1), NULL); IupSetAttribute(_vbox_2,"MARGIN","20x20"); dlg = IupDialog(_vbox_2); IupSetHandle("dlg",dlg); IupSetAttribute(dlg,"MENU","mnu"); IupSetAttribute(dlg,"TITLE","IupDialog Title"); // IupSetAttribute(dlg,"COMPOSITED","YES"); /* Windows Only */ // IupSetAttribute(dlg, "OPACITY", "192"); // IupSetAttribute(dlg, "RESIZE", "NO"); // IupSetAttribute(dlg, "BGCOLOR", "173 177 194"); // Motif BGCOLOR for documentation // IupSetAttribute(_vbox_1, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BACKGROUND", "200 10 80"); //IupSetGlobal("DLGBGCOLOR", "92 92 255"); //IupSetGlobal("TXTFGCOLOR", "255 92 92"); //IupSetGlobal("TXTBGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "FONT", "Helvetica, 24"); // IupSetAttribute(dlg, "FONT", "-*-helvetica-*-r-*-*-18-*-*-*-*-*-*-*"); // IupSetAttribute(box, "FGCOLOR", "255 0 0"); //IupSetAttribute(dlg,"RASTERSIZE","1000x800"); IupSetAttribute(dlg,"RASTERSIZE","400x300"); IupSetCallback(dlg, "RESIZE_CB", (Icallback)resize_cb); IupMap(dlg); IupSetAttribute(tree, "TITLE0", "Figures"); IupSetAttribute(tree, "ADDLEAF0", "Other"); /* new id=1 */ IupSetAttribute(tree, "ADDBRANCH1", "triangle"); /* new id=2 */ IupSetAttribute(tree, "ADDLEAF2", "equilateral"); /* ... */ IupSetAttribute(tree, "ADDLEAF3", "isoceles"); IupSetAttribute(tree, "ADDLEAF4", "scalenus"); IupShow(dlg); IupSetAttribute(dlg,"RASTERSIZE", NULL); }
static void CreateToggle(void) { lua_pushusertag(IupToggle(luaL_opt_string(1, NULL), NULL), iuplua_tag); }
/* main */ int main(int argc, char **argv) { Ihandle *vboxr[MAXPLOT+1]; /* tabs containing the plots */ Ihandle *dlg, *vboxl, *hbox, *lbl1, *lbl2, *lbl3, *bt1, *boxinfo, *boxdial1, *boxdial2, *f1, *f2; int ii; IupOpen(&argc, &argv); // init IUP IupControlsOpen(); // init the addicional controls library (we use IupTabs) IupPPlotOpen(); // init IupPPlot library // cdInitGdiPlus(); // create plots for (ii=0; ii<MAXPLOT; ii++) plot[ii] = IupPPlot(); // left panel: plot control // Y zooming dial1 = IupDial("VERTICAL"); lbl1 = IupLabel("+"); lbl2 = IupLabel("-"); boxinfo = IupVbox(lbl1, IupFill(), lbl2, NULL); boxdial1 = IupHbox(boxinfo, dial1, NULL); IupSetAttribute(boxdial1, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "SIZE", "20x52"); IupSetAttribute(boxinfo, "GAP", "2"); IupSetAttribute(boxinfo, "MARGIN", "4"); IupSetAttribute(boxinfo, "EXPAND", "YES"); IupSetAttribute(lbl1, "EXPAND", "NO"); IupSetAttribute(lbl2, "EXPAND", "NO"); IupSetAttribute(dial1, "ACTIVE", "NO"); IupSetAttribute(dial1, "SIZE", "20x52"); IupSetCallback(dial1, "BUTTON_PRESS_CB", (Icallback)dial1_btndown_cb); IupSetCallback(dial1, "MOUSEMOVE_CB", (Icallback)dial1_btnup_cb); IupSetCallback(dial1, "BUTTON_RELEASE_CB", (Icallback)dial1_btnup_cb); tgg1 = IupToggle("Y Autoscale", NULL); IupSetCallback(tgg1, "ACTION", (Icallback)tgg1_cb); IupSetAttribute(tgg1, "VALUE", "ON"); f1 = IupFrame( IupVbox(boxdial1, tgg1, NULL) ); IupSetAttribute(f1, "TITLE", "Y Zoom"); // X zooming dial2 = IupDial("HORIZONTAL"); lbl1 = IupLabel("-"); lbl2 = IupLabel("+"); boxinfo = IupHbox(lbl1, IupFill(), lbl2, NULL); boxdial2 = IupVbox(dial2, boxinfo, NULL); IupSetAttribute(boxdial2, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "SIZE", "64x16"); IupSetAttribute(boxinfo, "GAP", "2"); IupSetAttribute(boxinfo, "MARGIN", "4"); IupSetAttribute(boxinfo, "EXPAND", "HORIZONTAL"); IupSetAttribute(lbl1, "EXPAND", "NO"); IupSetAttribute(lbl2, "EXPAND", "NO"); IupSetAttribute(dial2, "ACTIVE", "NO"); IupSetAttribute(dial2, "SIZE", "64x16"); IupSetCallback(dial2, "BUTTON_PRESS_CB", (Icallback)dial2_btndown_cb); IupSetCallback(dial2, "MOUSEMOVE_CB", (Icallback)dial2_btnup_cb); IupSetCallback(dial2, "BUTTON_RELEASE_CB", (Icallback)dial2_btnup_cb); tgg2 = IupToggle("X Autoscale", NULL); IupSetCallback(tgg2, "ACTION", (Icallback)tgg2_cb); f2 = IupFrame( IupVbox(boxdial2, tgg2, NULL) ); IupSetAttribute(f2, "TITLE", "X Zoom"); lbl1 = IupLabel(""); IupSetAttribute(lbl1, "SEPARATOR", "HORIZONTAL"); tgg3 = IupToggle("Vertical Grid", NULL); IupSetCallback(tgg3, "ACTION", (Icallback)tgg3_cb); tgg4 = IupToggle("Horizontal Grid", NULL); IupSetCallback(tgg4, "ACTION", (Icallback)tgg4_cb); lbl2 = IupLabel(""); IupSetAttribute(lbl2, "SEPARATOR", "HORIZONTAL"); tgg5 = IupToggle("Legend", NULL); IupSetCallback(tgg5, "ACTION", (Icallback)tgg5_cb); lbl3 = IupLabel(""); IupSetAttribute(lbl3, "SEPARATOR", "HORIZONTAL"); bt1 = IupButton("Export PDF", NULL); IupSetCallback(bt1, "ACTION", (Icallback)bt1_cb); vboxl = IupVbox(f1, f2, lbl1, tgg3, tgg4, lbl2, tgg5, lbl3, bt1, NULL); IupSetAttribute(vboxl, "GAP", "4"); IupSetAttribute(vboxl, "EXPAND", "NO"); // right panel: tabs with plots for (ii=0; ii<MAXPLOT; ii++) { vboxr[ii] = IupVbox(plot[ii], NULL); // each plot a tab IupSetfAttribute(vboxr[ii], "TABTITLE", "Plot %d", ii); // name each tab } vboxr[MAXPLOT] = NULL; // mark end of vector tabs = IupTabsv(vboxr); // create tabs IupSetCallback(tabs, "TABCHANGE_CB", (Icallback)tabs_tabchange_cb); // dialog hbox = IupHbox(vboxl, tabs, NULL); IupSetAttribute(hbox, "MARGIN", "4x4"); IupSetAttribute(hbox, "GAP", "10"); dlg = IupDialog(hbox); IupSetAttributes(dlg, "SIZE=500x240" ); IupSetAttribute(dlg, "TITLE", "IupPPlot Example"); InitPlots(); // It must be able to be done independent of dialog Mapping tabs_tabchange_cb(tabs, vboxr[0]); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupSetAttribute(dlg, "SIZE", NULL); IupMainLoop(); IupClose(); return EXIT_SUCCESS; }
void MglPlotTest(void) { static Ihandle *dlg = NULL; if (!dlg) { Ihandle *vboxr[MAXPLOT+1]; /* tabs containing the plots */ Ihandle *vboxl, *hbox, *lbl1, *lbl2, *lbl3, *bt1, *boxinfo, *boxdial1, *boxdial2, *f1, *f2; int ii; IupControlsOpen(); IupMglPlotOpen(); /* init IupMGLPlot library */ IupSetGlobal("MGLFONTS", "../etc/mglfonts"); /* create plots */ for (ii=0; ii<MAXPLOT; ii++) { plot[ii] = IupMglPlot(); IupSetAttribute(plot[ii], "OPENGL", "Yes"); } /* left panel: plot control Y zooming */ dial1 = IupDial("VERTICAL"); lbl1 = IupLabel("+"); lbl2 = IupLabel("-"); boxinfo = IupVbox(lbl1, IupFill(), lbl2, NULL); boxdial1 = IupHbox(boxinfo, dial1, NULL); IupSetAttribute(boxdial1, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "SIZE", "20x52"); IupSetAttribute(boxinfo, "GAP", "2"); IupSetAttribute(boxinfo, "MARGIN", "4"); IupSetAttribute(boxinfo, "EXPAND", "YES"); IupSetAttribute(lbl1, "EXPAND", "NO"); IupSetAttribute(lbl2, "EXPAND", "NO"); IupSetAttribute(dial1, "ACTIVE", "NO"); IupSetAttribute(dial1, "SIZE", "20x52"); IupSetCallback(dial1, "BUTTON_PRESS_CB", (Icallback)dial1_btndown_cb); IupSetCallback(dial1, "MOUSEMOVE_CB", (Icallback)dial1_btnup_cb); IupSetCallback(dial1, "BUTTON_RELEASE_CB", (Icallback)dial1_btnup_cb); tgg1 = IupToggle("Y Autoscale", NULL); IupSetCallback(tgg1, "ACTION", (Icallback)tgg1_cb); IupSetAttribute(tgg1, "VALUE", "ON"); f1 = IupFrame( IupVbox(boxdial1, tgg1, NULL) ); IupSetAttribute(f1, "TITLE", "Y Zoom"); /* X zooming */ dial2 = IupDial("HORIZONTAL"); lbl1 = IupLabel("-"); lbl2 = IupLabel("+"); boxinfo = IupHbox(lbl1, IupFill(), lbl2, NULL); boxdial2 = IupVbox(dial2, boxinfo, NULL); IupSetAttribute(boxdial2, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "ALIGNMENT", "ACENTER"); IupSetAttribute(boxinfo, "SIZE", "64x16"); IupSetAttribute(boxinfo, "GAP", "2"); IupSetAttribute(boxinfo, "MARGIN", "4"); IupSetAttribute(boxinfo, "EXPAND", "HORIZONTAL"); IupSetAttribute(lbl1, "EXPAND", "NO"); IupSetAttribute(lbl2, "EXPAND", "NO"); IupSetAttribute(dial2, "ACTIVE", "NO"); IupSetAttribute(dial2, "SIZE", "64x16"); IupSetCallback(dial2, "BUTTON_PRESS_CB", (Icallback)dial2_btndown_cb); IupSetCallback(dial2, "MOUSEMOVE_CB", (Icallback)dial2_btnup_cb); IupSetCallback(dial2, "BUTTON_RELEASE_CB", (Icallback)dial2_btnup_cb); tgg2 = IupToggle("X Autoscale", NULL); IupSetCallback(tgg2, "ACTION", (Icallback)tgg2_cb); f2 = IupFrame( IupVbox(boxdial2, tgg2, NULL) ); IupSetAttribute(f2, "TITLE", "X Zoom"); lbl1 = IupLabel(""); IupSetAttribute(lbl1, "SEPARATOR", "HORIZONTAL"); tgg3 = IupToggle("Vertical Grid", NULL); IupSetCallback(tgg3, "ACTION", (Icallback)tgg3_cb); tgg4 = IupToggle("Horizontal Grid", NULL); IupSetCallback(tgg4, "ACTION", (Icallback)tgg4_cb); tgg6 = IupToggle("Box", NULL); IupSetCallback(tgg6, "ACTION", (Icallback)tgg6_cb); lbl2 = IupLabel(""); IupSetAttribute(lbl2, "SEPARATOR", "HORIZONTAL"); tgg5 = IupToggle("Legend", NULL); IupSetCallback(tgg5, "ACTION", (Icallback)tgg5_cb); lbl3 = IupLabel(""); IupSetAttribute(lbl3, "SEPARATOR", "HORIZONTAL"); bt1 = IupButton("Export", NULL); IupSetCallback(bt1, "ACTION", (Icallback)bt1_cb); vboxl = IupVbox(f1, f2, lbl1, tgg3, tgg4, tgg6, lbl2, tgg5, lbl3, bt1, NULL); IupSetAttribute(vboxl, "GAP", "4"); IupSetAttribute(vboxl, "EXPAND", "NO"); /* right panel: tabs with plots */ for (ii=0; ii<MAXPLOT; ii++) { vboxr[ii] = IupVbox(plot[ii], NULL); /* each plot a tab */ IupSetfAttribute(vboxr[ii], "TABTITLE", "Plot %d", ii); /* name each tab */ IupSetHandle(IupGetAttribute(vboxr[ii], "TABTITLE"), vboxr[ii]); } vboxr[MAXPLOT] = NULL; /* mark end of vector */ tabs = IupTabsv(vboxr); IupSetCallback(tabs, "TABCHANGE_CB", (Icallback)tabs_tabchange_cb); hbox = IupHbox(vboxl, tabs, NULL); IupSetAttribute(hbox, "MARGIN", "4x4"); IupSetAttribute(hbox, "GAP", "10"); dlg = IupDialog(hbox); IupSetAttribute(dlg, "TITLE", "IupMglPlot Example"); InitPlots(); /* It must be able to be done independent of dlg Mapping */ tabs_tabchange_cb(tabs, vboxr[0]); } IupSetAttribute(dlg, "SIZE", "300x"); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupSetAttribute(dlg, "SIZE", NULL); }