static int GLCanvas(lua_State *L) { Ihandle *ih = IupGLCanvas(NULL); iuplua_plugstate(L, ih); iuplua_pushihandle_raw(L, ih); return 1; }
int main(int argc, char **argv) { Ihandle *canvas, *finale, *dg; IupOpen(&argc, &argv); IupGLCanvasOpen(); canvas = IupGLCanvas(NULL); IupSetCallback(canvas, "ACTION", (Icallback) redraw); IupSetAttribute(canvas, IUP_BUFFER, IUP_DOUBLE); IupSetAttribute(canvas, "RASTERSIZE", "123x200"); finale = IupHbox(IupFill(), canvas, IupFill(), NULL); dg = IupDialog(finale); IupSetAttribute(dg, "TITLE", "IupGLCanvas"); IupShow(dg); IupMainLoop(); IupClose(); return EXIT_SUCCESS; }
void TransferFunctionsViewer::BuildInterface () { m_iup_canvas = IupGLCanvas ("tfviewer_canvas"); IupSetCallback (m_iup_canvas, "ACTION", (Icallback)TransferFunctionsViewer::Action); IupSetCallback (m_iup_canvas, "BUTTON_CB", (Icallback)TransferFunctionsViewer::Button_CB); IupSetCallback (m_iup_canvas, "MOTION_CB", (Icallback)TransferFunctionsViewer::Motion_CB); IupSetAttribute (m_iup_canvas, IUP_BUFFER, IUP_DOUBLE); IupSetAttribute (m_iup_canvas, IUP_RASTERSIZE, "258x50"); IupSetAttribute (m_iup_canvas, IUP_RESIZE, IUP_NO); IupSetHandle ("tfviewer_canvas", m_iup_canvas); m_iup_sub_menu_file = IupSubmenu ("Arquivo", IupMenu(NULL)); m_iup_menu = IupMenu (m_iup_sub_menu_file, NULL); IupSetHandle ("TransferFunctionMenu", m_iup_menu); m_iup_main_dialog = IupDialog (m_iup_canvas); //IupSetAttribute (m_iup_main_dialog, "MENU", "TransferFunctionMenu"); IupSetAttribute (m_iup_main_dialog, "TITLE", "Transfer Function Visualization"); IupSetAttribute (m_iup_main_dialog, "BORDER", "NO"); IupSetAttribute (m_iup_main_dialog, "RESIZE", "NO"); IupMap (m_iup_main_dialog); IupRefresh (m_iup_main_dialog); if (!m_pixels) m_pixels = new float[258 * 50 * 4]; Redraw (); }
void GLCanvasCubeTest(void) { Ihandle *dlg, *canvas, *box; IupGLCanvasOpen(); box = IupVbox(NULL); IupSetAttribute(box, "MARGIN", "5x5"); canvas = IupGLCanvas(NULL); IupSetCallback(canvas, "ACTION", action); IupSetCallback(canvas, "BUTTON_CB", (Icallback)button_cb); IupSetCallback(canvas, "MOTION_CB", (Icallback)motion_cb); // IupSetAttribute(canvas, "BUFFER", "DOUBLE"); IupSetAttribute(canvas, "RASTERSIZE", "300x300"); IupAppend(box, canvas); dlg = IupDialog(IupSetAttributes(IupFrame(box), "TITLE=Test")); IupSetAttribute(dlg, "TITLE", "IupGLCanvas Test"); // IupSetAttribute(dlg, "COMPOSITED", "YES"); IupMap(dlg); IupGLMakeCurrent(canvas); // init(); printf("Vendor: %s\n", glGetString(GL_VENDOR)); printf("Renderer: %s\n", glGetString(GL_RENDERER)); printf("Version: %s\n", glGetString(GL_VERSION)); IupSetAttribute(canvas, "RASTERSIZE", NULL); IupShowXY(dlg, IUP_CENTER, IUP_CENTER); }
static void new_file(char* dialogtype, int preview) { Ihandle *dlg = IupFileDlg(); IupSetAttribute(dlg, "PARENTDIALOG", "_MAIN_DIALOG_TEST_"); IupSetAttribute(dlg, "DIALOGTYPE", dialogtype); IupSetAttribute(dlg, "TITLE", "IupFileDlg Test"); IupSetAttribute(dlg, "DIRECTORY", "/tecgraf/iup"); if (strcmp(dialogtype, "DIR")!=0) { IupSetAttributes(dlg, "FILTER = \"*.bmp\", FILTERINFO = \"Bitmap Files\""); IupSetAttribute(dlg, "EXTFILTER", "Text files|*.txt;*.doc|Image files|*.jpg;*.bmp;*.gif|"); // IupSetAttribute(dlg, "FILE", "/tecgraf/im/test.bmp"); IupSetAttribute(dlg, "FILE", "test.bmp"); } IupSetCallback(dlg, "HELP_CB", (Icallback)help_cb); // IupSetAttributes(dlg, "FILE = \"\\tecgraf\\iup\\test.bmp\""); // OK // IupSetAttributes(dlg, "FILE = \"/tecgraf/iup/test.bmp\""); // OK // IupSetAttributes(dlg, "FILE = \"test.bmp\", DIRECTORY = \"/tecgraf/iup\""); // OK // IupSetAttributes(dlg, "FILE = \"test.bmp\", DIRECTORY = \"\\tecgraf\\iup\""); // OK // IupSetAttribute(dlg, "NOCHANGEDIR", "NO"); // IupSetAttribute(dlg, "MULTIPLEFILES", "YES"); if (preview) { IupSetAttribute(dlg, "SHOWPREVIEW", "YES"); IupSetCallback(dlg, "FILE_CB", (Icallback)file_cb); #ifdef USE_OPENGL if (preview==2) { Ihandle* glcanvas = IupGLCanvas(NULL); IupSetAttribute(glcanvas, "BUFFER", "DOUBLE"); IupSetAttributeHandle(dlg, "PREVIEWGLCANVAS", glcanvas); } #endif } IupPopup(dlg, IUP_CURRENT, IUP_CURRENT); switch(IupGetInt(dlg, "STATUS")) { case 1: printf("OK\n"); printf(" New file - VALUE(%s)\n", IupGetAttribute(dlg, "VALUE")); break; case 0 : printf("OK\n"); printf(" File exists - VALUE(%s)\n", IupGetAttribute(dlg, "VALUE")); break; case -1 : printf("CANCEL\n"); break; } IupDestroy(dlg); }
Ihandle * createMainWindow(void) { Ihandle *bottomHbox, *mainVbox; Ihandle *lblTitle, *glCanvas; Ihandle *btnRandomLine, *btnClearLines, *btnClose; Ihandle *dialog; lblTitle = IupLabel(labTitle); IupSetAttribute(lblTitle, "EXPAND", "HORIZONTAL"); IupSetAttribute(lblTitle, "ALIGNMENT", "ALEFT:ACENTER"); IupSetAttribute(lblTitle, "FONTSIZE", "10"); glCanvas = IupGLCanvas(0); IupSetAttribute(glCanvas, "EXPAND", "YES"); IupSetAttribute(glCanvas, "BORDER", "NO"); IupSetAttribute(glCanvas, "CANFOCUS", "NO"); IupSetCallback(glCanvas, "ACTION", (Icallback) repaint_cb); btnRandomLine = IupButton("Generate Random Lines", 0); IupSetAttribute(btnRandomLine, "RASTERSIZE", "150x33"); IupSetCallback(btnRandomLine, "ACTION", (Icallback) btnRandLine_cb); btnClearLines = IupButton("Clear All Lines", 0); IupSetAttribute(btnClearLines, "RASTERSIZE", "100x33"); IupSetCallback(btnClearLines, "ACTION", (Icallback) btnClearLines_cb); btnClose = IupButton("Close", 0); IupSetAttribute(btnClose, "RASTERSIZE", "80x33"); IupSetCallback(btnClose, "ACTION", (Icallback) exit_cb); bottomHbox = IupHbox(btnRandomLine, btnClearLines, IupFill(), btnClose, 0); IupSetAttribute(bottomHbox, "EXPAND", "HORIZONTAL"); IupSetAttribute(bottomHbox, "NGAP", "5"); IupSetAttribute(bottomHbox, "NMARGIN", "0x5"); mainVbox = IupVbox(lblTitle, glCanvas, bottomHbox, 0); IupSetAttribute(mainVbox, "NMARGIN", "10x10"); IupSetAttribute(mainVbox, "NGAP", "10"); IupSetHandle(BTN_CLOSE, btnClose); IupSetHandle(GL_CANVAS, glCanvas); dialog = IupDialog(mainVbox); IupSetAttribute(dialog, "TITLE", "GL Labwork"); IupSetAttribute(dialog, "RASTERSIZE", "425x550"); IupSetAttribute(dialog, "SHRINK", "YES"); IupSetAttribute(dialog, "DEFAULTESC", BTN_CLOSE); IupSetHandle(MAIN_WINDOW, dialog); return dialog; }
// ------------------------------------------------------------------------------------------------- // ------------------------------------------------------------------------------------------------- void cCanvasDetailHandler::create_canvas_detach(int w, int h, VglCamera* camera) { cCanvasDetach *canvas; Ihandle *h_canvas, *dialog; h_canvas = IupGLCanvas("canvas_main"); dialog = IupDialog(h_canvas); IupSetfAttribute(h_canvas, IUP_RASTERSIZE, "%dx%d", w, h); IupSetAttribute(h_canvas, "SHAREDCONTEXT", "canvas_main"); IupSetAttribute(h_canvas, IUP_BUFFER, IUP_DOUBLE); IupSetAttribute(h_canvas, IUP_BORDER, IUP_NO); IupSetAttribute(h_canvas, IUP_DEPTH_SIZE, "16"); if(!m_title.empty()) IupSetAttribute(dialog, IUP_TITLE, m_title.c_str()); if(!m_icon.empty()) IupSetAttribute(dialog, IUP_ICON, m_icon.c_str()); if(!m_parent.empty()) IupSetAttribute(dialog, IUP_PARENTDIALOG, m_parent.c_str()); IupMap(dialog); canvas = new cCanvasDetach( h_canvas, m_canvas, camera, m_redraw_function, m_redraw_end_function, m_menu_popup_function, (void *)m_data); if(isAnimating && m_idle_function) canvas->add_idle(m_idle_function, m_idle_data, m_idle_repeat); canvas->set_dialog(dialog); m_vec_canvas_detach.push_back(canvas); m_vec_dialog.push_back(dialog); //GetDC(); // //wglCreateContextAttribsARB //wglCreateContext(); //wglShareLists(); IupShowXY(dialog, IUP_CENTERPARENT, IUP_CENTERPARENT); }
Ihandle* initDialog(void) { Ihandle* dialog; /* dialog containing the canvas */ canvas = IupGLCanvas(NULL); /* create _canvas */ IupSetAttribute(canvas,"RASTERSIZE","640x480"); /* define the initial size in pixels */ IupSetAttribute(canvas, "BUFFER","DOUBLE"); /* define that this OpenGL _canvas has double buffer (front and back) */ /* bind callback actions with callback functions */ IupSetCallback(canvas, "ACTION", (Icallback) repaint_cb); IupSetCallback(canvas, "RESIZE_CB",(Icallback) resize_cb); /* create the dialog and set its attributes */ dialog = IupDialog(canvas); IupSetAttribute(dialog, "TITLE", "IUP 3D OpenGL"); IupSetCallback(dialog, "CLOSE_CB", (Icallback) exit_cb); IupSetFunction("IDLE_ACTION", (Icallback)idle_cd); return dialog; }
void mainDialogCreate(void) { Ihandle *dialog, *box, *canvas; /* initialize interface */ /* canvas for the image */ canvas = IupGLCanvas("app_repaint_cb"); IupSetAttribute(canvas, "BORDER", "NO"); IupSetAttribute(canvas, "BUFFER", "DOUBLE"); /* use double buffer */ IupSetAttribute(canvas, "RESIZE_CB", "app_resize_cb"); /* configure the resize callback */ IupSetFunction("app_resize_cb", (Icallback)app_resize_cb); IupSetFunction("app_repaint_cb", (Icallback)app_repaint_cb); /* this is the most external box that puts together the toolbar, the two canvas and the status bar */ box = IupSetAttributes(IupHbox( canvas, NULL), "MARGIN=10x10"); /* create the dialog and set its attributes */ mainMenuCreate(); dialog = IupDialog(box); IupSetAttribute(dialog, "MENU", "app_menu"); /* configure the menu */ IupSetAttribute(dialog, "CLOSE_CB", "app_exit_cb"); IupSetAttribute(dialog, "TITLE", "IUPGLView"); IupSetAttribute(dialog, "RASTERSIZE", "680x380"); /* initial size */ IupSetAttribute(dialog, "SHRINK", "YES"); IupSetHandle("app_dialog", dialog); IupShowXY(dialog, IUP_CENTER, IUP_CENTER); }
int init(void) { Ihandle *dialog, *statusbar, *box; Ihandle *toolbar, *load, *save; /* creates the toolbar and its buttons */ load = IupButton("Load", "load_cb"); IupSetAttribute(load,"TIP","Carrega uma imagem."); //IupSetAttribute(load,"IMAGE","icon_lib_open"); IupSetFunction("load_cb", (Icallback)load_cb); save = IupButton("Save", "save_cb"); IupSetAttribute(save,"TIP","Salva no formato GIF."); //IupSetAttribute(save,"IMAGE","icon_lib_save"); toolbar = IupHbox( load, save, IupFill(), NULL); IupSetAttribute(toolbar, "ALIGNMENT", "ACENTER"); /* cria um canvas */ canvas = IupGLCanvas("repaint_cb"); IupSetAttribute(canvas,IUP_RASTERSIZE,"400x400"); IupSetAttribute(canvas, "RESIZE_CB", "resize_cb"); /* associa o evento de repaint a funccao repaint_cb */ IupSetFunction("repaint_cb", (Icallback) repaint_cb); IupSetFunction("save_cb", (Icallback)save_cb); IupSetFunction("resize_cb", (Icallback) resize_cb); IupSetFunction (IUP_IDLE_ACTION, (Icallback) NULL); /* the status bar is just a label to put some usefull information in run time */ label = IupLabel("status"); IupSetAttribute(label, "EXPAND", "HORIZONTAL"); IupSetAttribute(label, "FONT", "COURIER_NORMAL_10"); statusbar = IupSetAttributes(IupHbox( IupFrame(IupHbox(label, NULL)), NULL), "MARGIN=5x5"); /* this is the most external box that puts together the toolbar, the two canvas and the status bar */ box = IupVbox( toolbar, canvas, statusbar, NULL); /* create the dialog and set its attributes */ dialog = IupDialog(box); IupSetAttribute(dialog, "CLOSE_CB", "app_exit_cb"); IupSetAttribute(dialog, "TITLE", "CG2004: Trab. 2"); IupShowXY(dialog, IUP_CENTER, IUP_CENTER); return 1; }
Ihandle* create_main_dialog(Ihandle *config) { Ihandle *dlg, *vbox, *canvas, *menu; Ihandle *sub_menu_file, *file_menu, *item_exit, *item_new, *item_open, *item_save, *item_saveas, *item_revert; Ihandle *sub_menu_edit, *edit_menu, *item_copy, *item_paste; Ihandle *btn_copy, *btn_paste, *btn_new, *btn_open, *btn_save; Ihandle *sub_menu_help, *help_menu, *item_help, *item_about; Ihandle *sub_menu_view, *view_menu, *item_toolbar, *item_statusbar; Ihandle *statusbar, *toolbar, *recent_menu, *item_background; canvas = IupGLCanvas(NULL); IupSetAttribute(canvas, "NAME", "CANVAS"); IupSetAttribute(canvas, "DIRTY", "NO"); IupSetAttribute(canvas, "BUFFER", "DOUBLE"); IupSetCallback(canvas, "ACTION", (Icallback)canvas_action_cb); IupSetCallback(canvas, "DROPFILES_CB", (Icallback)dropfiles_cb); statusbar = IupLabel("(0, 0) = [0 0 0]"); IupSetAttribute(statusbar, "NAME", "STATUSBAR"); IupSetAttribute(statusbar, "EXPAND", "HORIZONTAL"); IupSetAttribute(statusbar, "PADDING", "10x5"); item_new = IupItem("&New\tCtrl+N", NULL); IupSetAttribute(item_new, "IMAGE", "IUP_FileNew"); IupSetCallback(item_new, "ACTION", (Icallback)item_new_action_cb); btn_new = IupButton(NULL, NULL); IupSetAttribute(btn_new, "IMAGE", "IUP_FileNew"); IupSetAttribute(btn_new, "FLAT", "Yes"); IupSetCallback(btn_new, "ACTION", (Icallback)item_new_action_cb); IupSetAttribute(btn_new, "TIP", "New (Ctrl+N)"); IupSetAttribute(btn_new, "CANFOCUS", "No"); item_open = IupItem("&Open...\tCtrl+O", NULL); IupSetAttribute(item_open, "IMAGE", "IUP_FileOpen"); IupSetCallback(item_open, "ACTION", (Icallback)item_open_action_cb); btn_open = IupButton(NULL, NULL); IupSetAttribute(btn_open, "IMAGE", "IUP_FileOpen"); IupSetAttribute(btn_open, "FLAT", "Yes"); IupSetCallback(btn_open, "ACTION", (Icallback)item_open_action_cb); IupSetAttribute(btn_open, "TIP", "Open (Ctrl+O)"); IupSetAttribute(btn_open, "CANFOCUS", "No"); item_save = IupItem("&Save\tCtrl+S", NULL); IupSetAttribute(item_save, "NAME", "ITEM_SAVE"); IupSetAttribute(item_save, "IMAGE", "IUP_FileSave"); IupSetCallback(item_save, "ACTION", (Icallback)item_save_action_cb); btn_save = IupButton(NULL, NULL); IupSetAttribute(btn_save, "IMAGE", "IUP_FileSave"); IupSetAttribute(btn_save, "FLAT", "Yes"); IupSetCallback(btn_save, "ACTION", (Icallback)item_save_action_cb); IupSetAttribute(btn_save, "TIP", "Save (Ctrl+S)"); IupSetAttribute(btn_save, "CANFOCUS", "No"); item_saveas = IupItem("Save &As...", NULL); IupSetAttribute(item_saveas, "NAME", "ITEM_SAVEAS"); IupSetCallback(item_saveas, "ACTION", (Icallback)item_saveas_action_cb); item_revert = IupItem("&Revert", NULL); IupSetAttribute(item_revert, "NAME", "ITEM_REVERT"); IupSetCallback(item_revert, "ACTION", (Icallback)item_revert_action_cb); item_exit = IupItem("E&xit", NULL); IupSetCallback(item_exit, "ACTION", (Icallback)item_exit_action_cb); item_copy = IupItem("&Copy\tCtrl+C", NULL); IupSetAttribute(item_copy, "NAME", "ITEM_COPY"); IupSetAttribute(item_copy, "IMAGE", "IUP_EditCopy"); IupSetCallback(item_copy, "ACTION", (Icallback)item_copy_action_cb); btn_copy = IupButton(NULL, NULL); IupSetAttribute(btn_copy, "IMAGE", "IUP_EditCopy"); IupSetAttribute(btn_copy, "FLAT", "Yes"); IupSetCallback(btn_copy, "ACTION", (Icallback)item_copy_action_cb); IupSetAttribute(btn_copy, "TIP", "Copy (Ctrl+C)"); IupSetAttribute(btn_copy, "CANFOCUS", "No"); item_paste = IupItem("&Paste\tCtrl+V", NULL); IupSetAttribute(item_paste, "NAME", "ITEM_PASTE"); IupSetAttribute(item_paste, "IMAGE", "IUP_EditPaste"); IupSetCallback(item_paste, "ACTION", (Icallback)item_paste_action_cb); btn_paste = IupButton(NULL, NULL); IupSetAttribute(btn_paste, "IMAGE", "IUP_EditPaste"); IupSetAttribute(btn_paste, "FLAT", "Yes"); IupSetCallback(btn_paste, "ACTION", (Icallback)item_paste_action_cb); IupSetAttribute(btn_paste, "TIP", "Paste (Ctrl+V)"); IupSetAttribute(btn_paste, "CANFOCUS", "No"); item_background = IupItem("&Background...", NULL); IupSetCallback(item_background, "ACTION", (Icallback)item_background_action_cb); item_toolbar = IupItem("&Toobar", NULL); IupSetCallback(item_toolbar, "ACTION", (Icallback)item_toolbar_action_cb); IupSetAttribute(item_toolbar, "VALUE", "ON"); item_statusbar = IupItem("&Statusbar", NULL); IupSetCallback(item_statusbar, "ACTION", (Icallback)item_statusbar_action_cb); IupSetAttribute(item_statusbar, "VALUE", "ON"); item_help = IupItem("&Help...", NULL); IupSetCallback(item_help, "ACTION", (Icallback)item_help_action_cb); item_about = IupItem("&About...", NULL); IupSetCallback(item_about, "ACTION", (Icallback)item_about_action_cb); recent_menu = IupMenu(NULL); file_menu = IupMenu( item_new, item_open, item_save, item_saveas, item_revert, IupSeparator(), IupSubmenu("Recent &Files", recent_menu), item_exit, NULL); edit_menu = IupMenu( item_copy, item_paste, NULL); view_menu = IupMenu( item_background, IupSeparator(), item_toolbar, item_statusbar, NULL); help_menu = IupMenu( item_help, item_about, NULL); IupSetCallback(file_menu, "OPEN_CB", (Icallback)file_menu_open_cb); IupSetCallback(edit_menu, "OPEN_CB", (Icallback)edit_menu_open_cb); sub_menu_file = IupSubmenu("&File", file_menu); sub_menu_edit = IupSubmenu("&Edit", edit_menu); sub_menu_view = IupSubmenu("&View", view_menu); sub_menu_help = IupSubmenu("&Help", help_menu); menu = IupMenu( sub_menu_file, sub_menu_edit, sub_menu_view, sub_menu_help, NULL); toolbar = IupHbox( btn_new, btn_open, btn_save, IupSetAttributes(IupLabel(NULL), "SEPARATOR=VERTICAL"), btn_copy, btn_paste, NULL); IupSetAttribute(toolbar, "MARGIN", "5x5"); IupSetAttribute(toolbar, "GAP", "2"); vbox = IupVbox( toolbar, canvas, statusbar, NULL); dlg = IupDialog(vbox); IupSetAttributeHandle(dlg, "MENU", menu); IupSetAttribute(dlg, "SIZE", "HALFxHALF"); IupSetCallback(dlg, "CLOSE_CB", (Icallback)item_exit_action_cb); IupSetCallback(dlg, "DROPFILES_CB", (Icallback)dropfiles_cb); IupSetCallback(dlg, "K_cN", (Icallback)item_new_action_cb); IupSetCallback(dlg, "K_cO", (Icallback)item_open_action_cb); IupSetCallback(dlg, "K_cS", (Icallback)item_save_action_cb); IupSetCallback(dlg, "K_cV", (Icallback)item_paste_action_cb); IupSetCallback(dlg, "K_cC", (Icallback)item_copy_action_cb); /* parent for pre-defined dialogs in closed functions (IupMessage and IupAlarm) */ IupSetAttributeHandle(NULL, "PARENTDIALOG", dlg); /* Initialize variables from the configuration file */ IupConfigRecentInit(config, recent_menu, config_recent_cb, 10); if (!IupConfigGetVariableIntDef(config, "MainWindow", "Toolbar", 1)) { IupSetAttribute(item_toolbar, "VALUE", "OFF"); IupSetAttribute(toolbar, "FLOATING", "YES"); IupSetAttribute(toolbar, "VISIBLE", "NO"); } if (!IupConfigGetVariableIntDef(config, "MainWindow", "Statusbar", 1)) { IupSetAttribute(item_statusbar, "VALUE", "OFF"); IupSetAttribute(statusbar, "FLOATING", "YES"); IupSetAttribute(statusbar, "VISIBLE", "NO"); } IupSetAttribute(dlg, "CONFIG", (char*)config); return dlg; }
int main(int argc, char** argv) { IupOpen(&argc, &argv); #ifdef USE_CONTEXTPLUS cdInitContextPlus(); #endif #ifdef USE_OPENGL IupGLCanvasOpen(); #endif simple_loadled(); #ifdef USE_OPENGL { Ihandle* dialog = IupGetHandle("SimpleDialog"); Ihandle* canvas = IupGetHandle("SimpleCanvas"); IupDestroy(canvas); canvas = IupGLCanvas("SimpleRepaint"); IupSetAttribute(canvas, "BUFFER", "DOUBLE"); IupSetHandle("SimpleCanvas", canvas); IupAppend(dialog, canvas); } #endif IupSetAttribute(IupGetHandle("SimpleDialog"), "SIZE", "HALFxHALF"); IupSetAttribute(IupGetHandle("SimpleDialog"), "PLACEMENT", "MAXIMIZED"); IupShow(IupGetHandle("SimpleDialog")); IupSetAttribute(IupGetHandle("SimpleDialog"), "SIZE", NULL); SimpleCreateCanvas((char*)IupGetHandle("SimpleCanvas")); IupSetFunction("cmdExit", (Icallback) cmdExit); IupSetFunction("SimplePlayClipboard", (Icallback) SimplePlayClipboard); IupSetFunction("SimplePlayCGMText", (Icallback) SimplePlayCGMText); IupSetFunction("SimplePlayCGMBin", (Icallback) SimplePlayCGMBin); IupSetFunction("SimplePlayMetafile", (Icallback) SimplePlayMetafile); IupSetFunction("SimplePlayWMF", (Icallback) SimplePlayWMF); IupSetFunction("SimplePlayEMF", (Icallback) SimplePlayEMF); IupSetFunction("SimpleDrawDebug", (Icallback) SimpleDrawDebug); IupSetFunction("SimpleDrawWindow", (Icallback) SimpleDrawWindow); IupSetFunction("SimpleDrawCGMText", (Icallback) SimpleDrawCGMText); IupSetFunction("SimpleDrawCGMBin", (Icallback) SimpleDrawCGMBin); IupSetFunction("SimpleDrawDXF", (Icallback) SimpleDrawDXF); IupSetFunction("SimpleDrawDGN", (Icallback) SimpleDrawDGN); IupSetFunction("SimpleDrawEMF", (Icallback) SimpleDrawEMF); IupSetFunction("SimpleDrawMetafile", (Icallback) SimpleDrawMetafile); IupSetFunction("SimpleDrawPDF", (Icallback) SimpleDrawPDF); IupSetFunction("SimpleDrawPS", (Icallback) SimpleDrawPS); IupSetFunction("SimpleDrawEPS", (Icallback) SimpleDrawEPS); IupSetFunction("SimpleDrawSVG", (Icallback) SimpleDrawSVG); IupSetFunction("SimpleDrawWMF", (Icallback)SimpleDrawWMF); IupSetFunction("SimpleDrawPPTX", (Icallback)SimpleDrawPPTX); IupSetFunction("SimpleDrawPrint", (Icallback)SimpleDrawPrint); IupSetFunction("SimpleDrawPrintDialog", (Icallback) SimpleDrawPrintDialog); IupSetFunction("SimpleDrawClipboardBitmap", (Icallback) SimpleDrawClipboardBitmap); IupSetFunction("SimpleDrawClipboardMetafile", (Icallback) SimpleDrawClipboardMetafile); IupSetFunction("SimpleDrawClipboardEMF", (Icallback) SimpleDrawClipboardEMF); IupSetFunction("SimpleDrawImage", (Icallback) SimpleDrawImage); IupSetFunction("SimpleDrawImageRGB", (Icallback) SimpleDrawImageRGB); IupSetFunction("SimpleDrawSimulate", (Icallback) SimpleDrawSimulate); #ifdef USE_OPENGL IupSetFunction("SimpleDrawGL", (Icallback) SimpleDrawGL); #endif IupSetFunction("SimpleNotXor", (Icallback) SimpleNotXor); IupSetFunction("SimpleXor", (Icallback) SimpleXor); IupSetFunction("SimpleReplace", (Icallback) SimpleReplace); IupSetFunction("SimpleClippingOff", (Icallback) SimpleClippingOff); IupSetFunction("SimpleClippingArea", (Icallback) SimpleClippingArea); IupSetFunction("SimpleClippingPolygon", (Icallback) SimpleClippingPolygon); IupSetFunction("SimpleClippingRegion", (Icallback) SimpleClippingRegion); IupSetFunction("SimpleContextPlus", (Icallback) SimpleContextPlus); IupSetFunction("SimpleTransform", (Icallback) SimpleTransform); IupSetFunction("SimpleAll", (Icallback) SimpleAll); IupSetFunction("SimpleTextAlign", (Icallback)SimpleTextAlign); IupSetFunction("SimpleTextFonts", (Icallback)SimpleTextFonts); IupSetFunction("SimpleTest", (Icallback) SimpleTest); IupSetFunction("SimpleRepaint", (Icallback) SimpleRepaint); SimpleDrawWindow(); #ifdef USE_OPENGL SimpleUpdateSize(NULL); IupUpdate(IupGetHandle("SimpleCanvas")); #endif IupMainLoop(); SimpleKillCanvas(); #ifdef USE_CONTEXTPLUS cdFinishContextPlus(); #endif IupClose(); return EXIT_SUCCESS; }