static void init_tree_nodes(void) { Ihandle* tree = IupGetHandle("tree"); // IupSetAttribute(tree, "AUTOREDRAW", "No"); #if 0 /* create from bottom to top */ /* the current node is the ROOT */ //IupSetAttribute(tree, "VALUE", "0"); IupSetAttribute(tree, "TITLE", "Figures"); /* title of the root, id=0 */ IupSetAttribute(tree, "ADDBRANCH", "3D"); /* 3D=1 */ IupSetAttribute(tree, "ADDLEAF", "2D"); /* add to the root, so it will be before "3D", now 2D=1, 3D=2 */ IupSetAttribute(tree, "ADDBRANCH", "parallelogram"); /* id=1 */ IupSetAttribute(tree, "ADDLEAF1", "diamond"); IupSetAttribute(tree, "ADDLEAF1", "square"); IupSetAttribute(tree, "ADDBRANCH", "triangle"); IupSetAttribute(tree, "ADDLEAF1", "scalenus"); IupSetAttribute(tree, "ADDLEAF1", "isoceles"); IupSetAttribute(tree, "ADDLEAF1", "equilateral"); IupSetAttribute(tree, "ADDLEAF", "Other (чущ)"); #else /* create from top to bottom */ 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"); IupSetAttribute(tree, "STATE2", "collapsed"); IupSetAttribute(tree, "INSERTBRANCH2","parallelogram"); /* same depth as id=2, new id=6 */ IupSetAttribute(tree, "ADDLEAF6", "square"); IupSetAttribute(tree, "ADDLEAF7", "diamond"); IupSetAttribute(tree, "INSERTLEAF6","2D"); /* new id=9 */ IupSetAttribute(tree, "INSERTBRANCH9","3D"); #endif IupSetAttribute(tree, "TOGGLEVALUE2", "ON"); IupSetAttribute(tree, "TOGGLEVALUE6", "ON"); IupSetAttribute(tree, "TOGGLEVALUE9", "NOTDEF"); IupSetAttribute(tree, "TOGGLEVALUE2", "OFF"); // IupSetAttribute(tree, "AUTOREDRAW", "Yes"); IupSetAttribute(tree, "MARKED1", "Yes"); IupSetAttribute(tree, "MARKED8", "Yes"); IupSetAttribute(tree, "VALUE", "6"); IupSetAttribute(tree, "RASTERSIZE", NULL); /* remove the minimum size limitation */ IupSetAttribute(tree, "COLOR8", "92 92 255"); // IupSetAttribute(tree, "TITLEFONT8", "Courier, 14"); IupSetAttributeHandle(tree, "IMAGE8", load_image_LogoTecgraf()); IupSetAttributeHandle(tree, "IMAGE7", load_image_TestImage()); IupSetAttribute(tree, "IMAGE6", IupGetAttribute(tree, "IMAGE8")); }
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); }
int main(int argc, char **argv) { Ihandle *dlg, *list1, *list2, *list3, *list4, *box1, *box2, *box3, *box4, *lbl, *bt1, *bt2, *bt3, *bt4, *btok, *btcancel, *txt1, *txt2; IupOpen(&argc, &argv); bt1 = IupButton("(1)Drop+Edit", NULL); IupSetCallback(bt1, "ACTION", (Icallback)bt_cb); bt2 = IupButton("(2)Drop", NULL); IupSetCallback(bt2, "ACTION", (Icallback)bt_cb); bt3 = IupButton("(3)List+Edit", NULL); IupSetCallback(bt3, "ACTION", (Icallback)bt_cb); bt4 = IupButton("(4)List", NULL); IupSetCallback(bt4, "ACTION", (Icallback)bt_cb); list1 = IupList(NULL); IupSetCallback(list1, "ACTION", (Icallback)list_cb); list2 = IupList(NULL); IupSetCallback(list2, "ACTION", (Icallback)list_cb); list3 = IupList(NULL); IupSetCallback(list3, "ACTION", (Icallback)list_cb); list4 = IupList(NULL); IupSetCallback(list4, "ACTION", (Icallback)list_cb); IupSetAttributes(list1, "1=\"US$ 1000\", 2=\"US$ 2000\", 3=\"US$ 30000000\", 4=\"US$ 4000\", 5=\"US$ 5000\", 6=\"US$ 6000\", 7=\"US$ 7000\"," "EXPAND=HORIZONTAL, EDITBOX=YES, DROPDOWN=YES, VISIBLEITEMS=5, SHOWIMAGE=YES"); IupSetAttributeHandle(list1, "IMAGE1", load_image_LogoTecgraf()); IupSetAttributeHandle(list1, "IMAGE2", load_image_LogoTecgraf()); IupSetAttributeHandle(list1, "IMAGE3", load_image_Tecgraf()); IupSetAttributeHandle(list1, "IMAGE4", load_image_LogoTecgraf()); IupSetAttributes(list2, "1=\"R$ 1000\", 2=\"R$ 2000\", 3=\"R$ 3000\", 4=\"R$ 4000\", 5=\"R$ 5000\", 6=\"R$ 6000\", 7=\"R$ 7000\"," "EXPAND=HORIZONTAL, DROPDOWN=YES, VISIBLEITEMS=5, SHOWIMAGE=YES"); IupSetAttributeHandle(list2, "IMAGE1", load_image_LogoTecgraf()); IupSetAttributeHandle(list2, "IMAGE2", load_image_LogoTecgraf()); IupSetAttributeHandle(list2, "IMAGE3", load_image_Tecgraf()); IupSetAttributeHandle(list2, "IMAGE4", load_image_LogoTecgraf()); IupSetAttributes(list3, "1=\"Char A\", 2=\"Char B\", 3=\"Char CCCCC\", 4=\"Char D\", 5=\"Char F\", 6=\"Char G\", 7=\"Char H\"," "EXPAND=YES, EDITBOX=YES, XXX_SPACING=4, SHOWIMAGE=YES"); IupSetAttributeHandle(list3, "IMAGE1", load_image_Test()); //IupSetAttributeHandle(list3, "IMAGE3", load_image_Test()); IupSetAttributeHandle(list3, "IMAGE5", load_image_Test()); IupSetAttributeHandle(list3, "IMAGE7", load_image_Test()); IupSetAttributeHandle(list1, "IMAGE3", load_image_Tecgraf()); IupSetAttributes(list4, "1=\"Number 1\", 2=\"Number 2\", 3=\"Number 3\", 4=\"Number 4\", 5=\"Number 5\", 6=\"Number 6\", 7=\"Number 7\"," "EXPAND=YES"); /* DRAG AND DROP TESTS ////////////////////////////////////*/ IupSetAttribute(list1, "DROPTARGET", "YES"); IupSetAttribute(list1, "DROPTYPES", "TEXT,STRING"); IupSetCallback (list1, "DROPDATA_CB", (Icallback)testDropData_cb); IupSetCallback (list1, "DROPMOTION_CB", (Icallback)testDropMotion_cb); IupSetAttribute(list1, "NAME", "list1"); IupSetAttribute(list2, "DROPTARGET", "YES"); IupSetAttribute(list2, "DROPTYPES", "TEXT,STRING"); IupSetCallback (list2, "DROPDATA_CB", (Icallback)testDropData_cb); IupSetCallback (list2, "DROPMOTION_CB", (Icallback)testDropMotion_cb); IupSetAttribute(list2, "NAME", "list2"); IupSetAttribute(list3, "DROPTARGET", "YES"); IupSetAttribute(list3, "DROPTYPES", "STRING"); IupSetCallback (list3, "DROPDATA_CB", (Icallback)testDropData_cb); IupSetCallback (list3, "DROPMOTION_CB", (Icallback)testDropMotion_cb); IupSetAttribute(list3, "NAME", "list3"); IupSetAttribute(list4, "DRAGSOURCE", "YES"); IupSetAttribute(list4, "DRAGTYPES", "TEXT"); IupSetCallback (list4, "DRAGBEGIN_CB", (Icallback)testDragBegin_cb); IupSetCallback (list4, "DRAGDATASIZE_CB", (Icallback)testDragDataSize_cb); IupSetCallback (list4, "DRAGDATA_CB", (Icallback)testDragData_cb); IupSetCallback (list4, "DRAGEND_CB", (Icallback)testDragEnd_cb); IupSetAttribute(list4, "DRAGCURSOR", "Tecgraf"); IupSetAttribute(list4, "NAME", "list4"); txt1 = IupText(NULL); IupSetAttribute(txt1, "MULTILINE", "YES"); IupSetAttribute(txt1, "RASTERSIZE", "150x90"); IupSetAttribute(txt1, "VALUE", "Drop Text Here"); IupSetAttribute(txt1, "DROPTARGET", "YES"); IupSetAttribute(txt1, "DROPTYPES", "TEXT"); IupSetCallback (txt1, "DROPDATA_CB", (Icallback)testDropData_cb); IupSetCallback (txt1, "DROPMOTION_CB", (Icallback)testDropMotion_cb); IupSetAttribute(txt1, "NAME", "txt1"); txt2 = IupText(NULL); IupSetAttribute(txt2, "MULTILINE", "YES"); IupSetAttribute(txt2, "RASTERSIZE", "150x90"); IupSetAttribute(txt2, "VALUE", "Drag Text From Here"); IupSetAttribute(txt2, "DRAGSOURCE", "YES"); IupSetAttribute(txt2, "DRAGTYPES", "TEXT,STRING"); IupSetAttribute(txt2, "DRAGSOURCEMOVE", "Yes"); IupSetCallback (txt2, "DRAGBEGIN_CB", (Icallback)testDragBegin_cb); IupSetCallback (txt2, "DRAGDATASIZE_CB", (Icallback)testDragDataSize_cb); IupSetCallback (txt2, "DRAGDATA_CB", (Icallback)testDragData_cb); IupSetCallback (txt2, "DRAGEND_CB", (Icallback)testDragEnd_cb); IupSetAttribute(txt2, "NAME", "txt2"); /*////////////////////////////////////////////////////////*/ IupSetAttribute(bt1, "_LIST", (char*)list1); IupSetAttribute(bt2, "_LIST", (char*)list2); IupSetAttribute(bt3, "_LIST", (char*)list3); IupSetAttribute(bt4, "_LIST", (char*)list4); IupSetAttribute(list1, "_BUTTON", (char*)bt1); IupSetAttribute(list2, "_BUTTON", (char*)bt2); IupSetAttribute(list3, "_BUTTON", (char*)bt3); IupSetAttribute(list4, "_BUTTON", (char*)bt4); IupSetAttribute(bt1, "BGCOLOR", "192 192 192"); IupSetAttribute(bt2, "BGCOLOR", "192 192 192"); IupSetAttribute(bt3, "BGCOLOR", "192 192 192"); IupSetAttribute(bt4, "BGCOLOR", "192 192 192"); IupSetCallback(list1, "GETFOCUS_CB", (Icallback)getfocus_cb); IupSetCallback(list1, "KILLFOCUS_CB", (Icallback)killfocus_cb); IupSetCallback(list2, "GETFOCUS_CB", (Icallback)getfocus_cb); IupSetCallback(list2, "KILLFOCUS_CB", (Icallback)killfocus_cb); IupSetCallback(list3, "GETFOCUS_CB", (Icallback)getfocus_cb); IupSetCallback(list3, "KILLFOCUS_CB", (Icallback)killfocus_cb); IupSetCallback(list4, "GETFOCUS_CB", (Icallback)getfocus_cb); IupSetCallback(list4, "KILLFOCUS_CB", (Icallback)killfocus_cb); IupSetCallback(list1, "EDIT_CB", (Icallback)edit_cb); IupSetCallback(list3, "EDIT_CB", (Icallback)edit_cb); /* IupSetAttribute(list3, "READONLY", "YES"); */ box1 = IupVbox(list1, bt1, txt1, txt2, NULL); box2 = IupVbox(list2, bt2, NULL); box3 = IupVbox(list3, bt3, NULL); box4 = IupVbox(list4, bt4, NULL); lbl = IupLabel(""); IupSetAttribute(lbl, "EXPAND", "HORIZONTAL"); btok = IupButton("OK", NULL); IupSetCallback(btok, "ACTION", (Icallback)btclose_cb); IupSetHandle("btok", btok); btcancel = IupButton("Cancel", "btclose_cb"); IupSetCallback(btcancel, "ACTION", (Icallback)btclose_cb); IupSetHandle("btcancel", btcancel); IupSetAttribute(btok, "_LIST1", (char*)list1); IupSetAttribute(btok, "_LIST2", (char*)list2); IupSetAttribute(btok, "_LIST3", (char*)list3); IupSetAttribute(btok, "_LIST4", (char*)list4); dlg = IupDialog(IupSetAttributes(IupVbox(IupHbox(box1, box2, box3, box4, NULL), lbl, btok, btcancel, NULL),"MARGIN=10x10, GAP=10")); IupSetAttribute(dlg, "TITLE", "IupList Example"); IupSetAttribute(dlg, "_LABEL", (char*)lbl); IupSetAttribute(dlg, "DEFAULTENTER", "btok"); IupSetAttribute(dlg, "DEFAULTESC", "btcancel"); // IupSetAttribute(IupGetChild(dlg, 0), "BGCOLOR", "92 92 255"); // IupSetAttribute(dlg, "BACKGROUND", "200 10 80"); // IupSetAttribute(dlg, "BGCOLOR", "92 92 255"); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); IupMainLoop(); IupClose(); return EXIT_SUCCESS; }
int main(int argc, char* argv[]) { Ihandle *dlg, *canvas, *menu, *menu_file, *menu_edit, *menu_help, *menu_create; /* Initializes IUP */ IupOpen(&argc, &argv); IupSetHandle("image_tec", load_image_LogoTecgraf()); IupSetHandle("image_test", load_image_Test()); IupSetHandle("image_test_pressed", load_image_Test_pressed()); /* Creates menu create */ menu_create = IupMenu( IupItem("Line", "item_cb"), IupItem("Circle", "item_cb"), IupSetCallbacks(IupSubmenu("Triangle", IupSetAttributes(IupMenu( IupSetCallbacks(IupSetAttributes(IupItem("Equilateral", "item_cb"), "VALUE=ON"), "HIGHLIGHT_CB", highlight_cb, NULL), IupSetCallbacks(IupItem("Isoceles", "item_cb"), "HIGHLIGHT_CB", highlight_cb, NULL), IupSetCallbacks(IupItem("Scalenus", "item_cb"), "HIGHLIGHT_CB", highlight_cb, NULL), NULL), "RADIO=YES")), "HIGHLIGHT_CB", highlight_cb, NULL), NULL); IupSetCallbacks(menu_create, "OPEN_CB", open_cb, "MENUCLOSE_CB", menuclose_cb, NULL); // IupSetAttribute(menu_create, "BGCOLOR", "92 92 255"); /* Creates three menus that will be inside submenus */ menu_file = IupMenu( IupSetAttributes(IupItem("Item with Image \tCtrl+M", "item_cb"), "IMAGE=image_tec"), IupSetCallbacks(IupSetAttributes(IupItem("Toggle using &VALUE", NULL), "VALUE=ON, KEY=KcV"), "ACTION", item_toggle_cb, NULL), IupSetAttributes(IupItem("Auto &Toggle Text", "item_cb"), "AUTOTOGGLE=YES"), IupSetAttributes(IupItem("Auto &Toggle Image", "item_cb"), "AUTOTOGGLE=YES, IMAGE=image_test, IMPRESS=image_test_pressed"), IupItem("Big Image", "item_cb"), IupSeparator(), IupSetCallbacks(IupItem("Exit (Destroy)", NULL), "ACTION", item_destroy_cb, NULL), IupSetCallbacks(IupItem("E&xit (Close)", NULL), "ACTION", item_close_cb, NULL), NULL); menu_edit = IupMenu( IupSetCallbacks(IupItem("Active Next", NULL), "ACTION", item_active_cb, NULL), IupSetCallbacks(IupItem("Rename Next", NULL), "ACTION", item_rename_cb, NULL), IupSetCallbacks(IupItem("Set Next Image", NULL), "ACTION", item_image_cb, NULL), IupSetAttributes(IupItem("Item w/ Acc\tCtrl+A", "item_cb"), "IMAGE=dummy"), IupSeparator(), IupSetAttributes(IupSubmenu("Create", menu_create), "IMAGE=image_tec"), NULL); menu_help = IupMenu( IupSetCallbacks(IupItem("Append", NULL), "ACTION", item_add_cb, "HELP_CB", item_help_cb, NULL), IupSetCallbacks(IupItem("Insert", NULL), "ACTION", item_insert_cb, "HELP_CB", item_help_cb, NULL), IupSetCallbacks(IupItem("Remove", NULL), "ACTION", item_remove_cb, "HELP_CB", item_help_cb, NULL), IupSeparator(), NULL); IupSetAttributeHandle(IupGetChild(menu_file, 4), "TITLEIMAGE", load_image_Tecgraf()); IupSetCallbacks(menu_edit, "OPEN_CB", open_cb, "MENUCLOSE_CB", menuclose_cb, NULL); /* Creates main menu with file menu */ menu = IupMenu( IupSetCallbacks(IupSetAttributes(IupSubmenu("Submenu", menu_file), "KEY=K_S, IMAGE=image_tec"), "HIGHLIGHT_CB", highlight_cb, NULL), IupSetCallbacks(IupSubmenu("&Edit", menu_edit), "HIGHLIGHT_CB", highlight_cb, NULL), IupSubmenu("Help", menu_help), IupSetCallbacks(IupSetAttributes(IupItem("Item", "item_cb"), "KEY=K_I, IMAGE=image_tec"), "HIGHLIGHT_CB", highlight_cb, NULL), NULL); /* Registers callbacks */ IupSetFunction("item_cb", item_cb); //IupSetAttribute(menu, "BGCOLOR", "92 92 255"); //IupSetAttribute(menu, "BGCOLOR", "173 177 194"); // Motif BGCOLOR for documentation canvas = IupCanvas(NULL); IupSetCallback(canvas, "BUTTON_CB", (Icallback)button); IupSetCallback(canvas, "K_m", (Icallback)k_m); // IupSetCallback(canvas, "KILLFOCUS_CB", killfocus); // IupSetCallback(canvas, "GETFOCUS_CB", getfocus); dlg = IupDialog(canvas); IupSetAttributeHandle(dlg, "MENU", menu); IupSetAttributes(dlg, "TITLE=\"IupMenu Test\", SIZE=QUARTERxQUARTER"); /* Shows dlg in the center of the screen */ IupShowXY(dlg, IUP_CENTER, IUP_CENTER); /* Initializes IUP main loop */ IupMainLoop(); /* Finishes IUP */ IupClose (); /* Program finished sucessfully */ return 0; }
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; }
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; }