static void png_gui_setup(const Canvas *canvas, void *data) { PNG_UI_data *ui = (PNG_UI_data *) data; set_wait_cursor(); if (ui->frame == NULL) { Widget fr, rc; ui->frame = CreateDialog(app_shell, "PNG options"); fr = CreateFrame(ui->frame, "PNG options"); rc = CreateVContainer(fr); ui->interlaced = CreateToggleButton(rc, "Interlaced"); ui->transparent = CreateToggleButton(rc, "Transparent"); ui->compression = CreateSpinChoice(rc, "Compression:", 1, SPIN_TYPE_INT, (double) Z_NO_COMPRESSION, (double) Z_BEST_COMPRESSION, 1.0); CreateAACDialog(ui->frame, fr, set_png_setup_proc, ui); } update_png_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }
static void pnm_gui_setup(const Canvas *canvas, void *data) { PNM_UI_data *ui = (PNM_UI_data *) data; set_wait_cursor(); if (ui->frame == NULL) { Widget fr, rc; ui->frame = CreateDialog(app_shell, "PNM options"); fr = CreateFrame(ui->frame, "PNM options"); rc = CreateVContainer(fr); ui->format = CreateOptionChoiceVA(rc, "Format: ", "1-bit mono (PBM)", PNM_FORMAT_PBM, "8-bit grayscale (PGM)", PNM_FORMAT_PGM, "8-bit color (PPM)", PNM_FORMAT_PPM, NULL); ui->rawbits = CreateToggleButton(rc, "\"Rawbits\""); CreateAACDialog(ui->frame, fr, set_pnm_setup_proc, ui); } update_pnm_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }
void hpdf_gui_setup(const Canvas *canvas, void *data) { HPDF_UI_data *ui = (HPDF_UI_data *) data; set_wait_cursor(); if (ui->frame == NULL) { Widget fr, rc; OptionItem colorspace_ops[3] = { {HPDF_COLORSPACE_GRAYSCALE, "Grayscale"}, {HPDF_COLORSPACE_RGB, "RGB" }, {HPDF_COLORSPACE_CMYK, "CMYK" } }; ui->frame = CreateDialog(app_shell, "hPDF options"); fr = CreateFrame(ui->frame, "hPDF options"); rc = CreateVContainer(fr); ui->colorspace = CreateOptionChoice(rc, "Colorspace:", 1, 3, colorspace_ops); ui->compression = CreateToggleButton(rc, "Compression"); CreateAACDialog(ui->frame, fr, set_hpdf_setup_proc, ui); } update_hpdf_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }
static void jpg_gui_setup(const Canvas *canvas, void *data) { JPG_UI_data *ui = (JPG_UI_data *) data; set_wait_cursor(); if (ui->frame == NULL) { Widget rc, fr, rc1; ui->frame = CreateDialog(app_shell, "JPEG options"); rc = CreateVContainer(ui->frame); fr = CreateFrame(rc, "JPEG options"); rc1 = CreateVContainer(fr); ui->quality = CreateSpinChoice(rc1, "Quality:", 3, SPIN_TYPE_INT, 0.0, 100.0, 5.0); ui->optimize = CreateToggleButton(rc1, "Optimize"); ui->progressive = CreateToggleButton(rc1, "Progressive"); ui->grayscale = CreateToggleButton(rc1, "Grayscale"); fr = CreateFrame(rc, "JPEG advanced options"); rc1 = CreateVContainer(fr); ui->smoothing = CreateSpinChoice(rc1, "Smoothing:", 3, SPIN_TYPE_INT, 0.0, 100.0, 10.0); ui->baseline = CreateToggleButton(rc1, "Force baseline"); ui->dct = CreateOptionChoiceVA(rc, "DCT: ", "Fast integer", JPEG_DCT_IFAST, "Slow integer", JPEG_DCT_ISLOW, "Float", JPEG_DCT_FLOAT, NULL); CreateAACDialog(ui->frame, rc, set_jpg_setup_proc, ui); } update_jpg_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }
void pdf_gui_setup(const Canvas *canvas, void *data) { PDF_UI_data *ui = (PDF_UI_data *) data; set_wait_cursor(); if (ui->frame == NULL) { Widget fr, rc; OptionItem compat_ops[3] = { {PDF_1_3, "PDF-1.3"}, {PDF_1_4, "PDF-1.4"}, {PDF_1_5, "PDF-1.5"} }; OptionItem colorspace_ops[3] = { {PDF_COLORSPACE_GRAYSCALE, "Grayscale"}, {PDF_COLORSPACE_RGB, "RGB" }, {PDF_COLORSPACE_CMYK, "CMYK" } }; ui->frame = CreateDialog(app_shell, "PDF options"); fr = CreateFrame(ui->frame, "PDF options"); rc = CreateVContainer(fr); ui->compat = CreateOptionChoice(rc, "Compatibility:", 1, 3, compat_ops); ui->colorspace = CreateOptionChoice(rc, "Colorspace:", 1, 3, colorspace_ops); ui->compression = CreateSpinChoice(rc, "Compression:", 1, SPIN_TYPE_INT, 0.0, 9.0, 1.0); ui->fpprec = CreateSpinChoice(rc, "FP precision:", 1, SPIN_TYPE_INT, 4.0, 6.0, 1.0); CreateAACDialog(ui->frame, fr, set_pdf_setup_proc, ui); } update_pdf_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }
void raise_explorer(GUI *gui, Quark *q) { GraceApp *gapp = gui->P; set_wait_cursor(); if (!gui->eui) { ExplorerUI *eui; Widget menubar, menupane, panel, form, fr; eui = xmalloc(sizeof(ExplorerUI)); gui->eui = eui; eui->a_icon = XpmToPixmap(active_xpm); eui->h_icon = XpmToPixmap(hidden_xpm); eui->top = CreateDialog(app_shell, "Explorer"); menubar = CreateMenuBar(eui->top); WidgetManage(menubar); FormAddVChild(eui->top, menubar); menupane = CreateMenu(menubar, "File", 'F', FALSE); CreateMenuButtonA(menupane, "Close", 'C', "<Key>Escape", "Esc", destroy_dialog_cb, eui->top); menupane = CreateMenu(menubar, "Edit", 'E', FALSE); eui->edit_undo_bt = CreateMenuButtonA(menupane, "Undo", 'U', "Ctrl<Key>z", "Ctrl+Z", undo_cb, gapp); eui->edit_redo_bt = CreateMenuButtonA(menupane, "Redo", 'R', "Ctrl Shift<Key>z", "Ctrl+Shift+Z", redo_cb, gapp); menupane = CreateMenu(menubar, "Insert", 'I', FALSE); eui->insert_frame_bt = CreateMenuButton(menupane, "Frame", '\0', add_frame_cb, eui); WidgetSetSensitive(eui->insert_frame_bt, FALSE); eui->insert_graph_bt = CreateMenuButton(menupane, "Graph", '\0', add_graph_cb, eui); WidgetSetSensitive(eui->insert_graph_bt, FALSE); eui->insert_ssd_bt = CreateMenuButton(menupane, "SSData", '\0', add_ssd_cb, eui); WidgetSetSensitive(eui->insert_ssd_bt, FALSE); eui->insert_set_bt = CreateMenuButton(menupane, "Set", '\0', add_set_cb, eui); WidgetSetSensitive(eui->insert_set_bt, FALSE); eui->insert_axisgrid_bt = CreateMenuButton(menupane, "Axis grid", '\0', add_axisgrid_cb, eui); WidgetSetSensitive(eui->insert_axisgrid_bt, FALSE); eui->insert_axis_bt = CreateMenuButton(menupane, "Axis", '\0', add_axis_cb, eui); WidgetSetSensitive(eui->insert_axis_bt, FALSE); eui->insert_object_pane = CreateMenu(menupane, "Annotating objects", 'o', FALSE); WidgetSetSensitive(eui->insert_object_pane, FALSE); eui->insert_text_bt = CreateMenuButton(eui->insert_object_pane, "Text", '\0', add_object_cb, eui); eui->insert_line_bt = CreateMenuButton(eui->insert_object_pane, "Line", '\0', add_object_cb, eui); eui->insert_box_bt = CreateMenuButton(eui->insert_object_pane, "Box", '\0', add_object_cb, eui); eui->insert_arc_bt = CreateMenuButton(eui->insert_object_pane, "Arc", '\0', add_object_cb, eui); menupane = CreateMenu(menubar, "Options", 'O', FALSE); eui->instantupdate = CreateMenuToggle(menupane, "Instantaneous update", 'u', NULL, NULL); ToggleButtonSetState(eui->instantupdate, gui->instant_update); menupane = CreateMenu(menubar, "Help", 'H', TRUE); CreateMenuHelpButton(menupane, "On explorer", 'e', eui->top, "doc/UsersGuide.html#explorer"); panel = CreatePanedWindow(eui->top); form = CreateForm(panel); PlaceGridChild(panel, form, 0, 0); /* in case if CreatePanedWindow creates a grid */ eui->tree = CreateTree(form); AddTreeHighlightItemsCB(eui->tree, highlight_cb, eui); AddTreeContextMenuCB(eui->tree, menu_cb, eui); AddTreeDropItemsCB(eui->tree, drop_cb, eui); FormAddVChild(form, eui->tree); fr = CreateFrame(form, NULL); eui->idstr = CreateText(fr, "ID string:"); AddTextActivateCB(eui->idstr, text_explorer_cb, eui); FormAddVChild(form, fr); FormFixateVChild(fr); eui->scrolled_window = CreateScrolledWindow(panel); PlaceGridChild(panel, eui->scrolled_window, 1, 0); /* in case if CreatePanedWindow creates a grid */ PanedWindowSetMinWidth(form, 150); WidgetSetWidth(form, 250); WidgetManage(form); #ifdef HAVE_LESSTIF # if !defined(SF_BUG_993209_FIXED) && !defined(SF_BUG_993209_NOT_FIXED) # error "You should check whether SF bug #993209 is fixed in your version of LessTif." # error "Then define either SF_BUG_993209_FIXED or SF_BUG_993209_NOT_FIXED, accordingly." # error "See http://sourceforge.net/tracker/index.php?func=detail&aid=993209&group_id=8596&atid=108596." # endif # ifdef SF_BUG_993209_NOT_FIXED /* A dirty workaround */ eui->scrolled_window = CreateVContainer(eui->scrolled_window); # endif #endif eui->project_ui = create_project_ui(eui); WidgetUnmanage(eui->project_ui->top); eui->ssd_ui = create_ssd_ui(eui); WidgetUnmanage(eui->ssd_ui->top); eui->frame_ui = create_frame_ui(eui); WidgetUnmanage(eui->frame_ui->top); eui->graph_ui = create_graph_ui(eui); WidgetUnmanage(eui->graph_ui->top); eui->set_ui = create_set_ui(eui); WidgetUnmanage(eui->set_ui->top); eui->axisgrid_ui = create_axisgrid_ui(eui); WidgetUnmanage(eui->axisgrid_ui->top); eui->axis_ui = create_axis_ui(eui); WidgetUnmanage(eui->axis_ui->top); eui->object_ui = create_object_ui(eui); WidgetUnmanage(eui->object_ui->top); eui->atext_ui = create_atext_ui(eui); WidgetUnmanage(eui->atext_ui->top); eui->region_ui = create_region_ui(eui); WidgetUnmanage(eui->region_ui->top); eui->aacbuts = CreateAACDialog(eui->top, panel, explorer_aac, eui); WidgetManage(eui->tree); /* Menu popup */ eui->popup = CreatePopupMenu(eui->tree); eui->popup_hide_bt = CreateMenuButton(eui->popup, "Hide", '\0', hide_cb, eui); eui->popup_show_bt = CreateMenuButton(eui->popup, "Show", '\0', show_cb, eui); CreateMenuSeparator(eui->popup); eui->popup_delete_bt = CreateMenuButton(eui->popup, "Delete", '\0', delete_cb, eui); eui->popup_duplicate_bt = CreateMenuButton(eui->popup, "Duplicate", '\0', duplicate_cb, eui); /* Project menu popup */ eui->project_popup = CreatePopupMenu(eui->tree); eui->project_popup_show_bt = CreateMenuButton(eui->project_popup, "Show", '\0', project_show_cb, eui); CreateMenuSeparator(eui->project_popup); eui->project_popup_save_bt = CreateMenuButton(eui->project_popup, "Save", '\0', project_save_cb, eui); eui->project_popup_save_as_bt = CreateMenuButton(eui->project_popup, "Save as...", '\0', project_save_as_cb, eui); eui->project_popup_revert_to_saved_bt = CreateMenuButton(eui->project_popup, "Revert to saved", '\0', project_revert_to_saved_cb, eui); CreateMenuSeparator(eui->project_popup); eui->project_popup_close_bt = CreateMenuButton(eui->project_popup, "Close", '\0', project_close_cb, eui); init_quark_tree(eui); if (!q && gapp->gp) { select_quark_explorer(gproject_get_top(gapp->gp)); } } #ifdef QT_GUI /* TODO: use resources */ WidgetSetSize(gui->eui->top, 650, 600); #endif DialogRaise(gui->eui->top); if (q) { select_quark_explorer(q); } update_undo_buttons(gapp->gp); unset_wait_cursor(); }
void create_fonttool(TextStructure *cstext_parent) { static fonttool_ui *ui = NULL; if (ui == NULL) { ui = xmalloc(sizeof(fonttool_ui)); memset(ui, 0, sizeof(fonttool_ui)); ui->fonttool_panel = CreateDialog(app_shell, "Font tool"); ui->font_select = CreateFontChoice(ui->fonttool_panel, "Font:"); FormAddVChild(ui->fonttool_panel, ui->font_select->menu); ui->font_table = CreateTable("fontTable", ui->fonttool_panel, FONT_TOOL_ROWS, FONT_TOOL_COLS, 8, 16); TableFontInit(ui->font_table); TableSetDefaultColWidth(ui->font_table, 2); TableSetDefaultColAlignment(ui->font_table, ALIGN_BEGINNING); TableUpdateVisibleRowsCols(ui->font_table); AddTableDrawCellCB(ui->font_table, DrawCB, ui); AddTableEnterCellCB(ui->font_table, EnterCB, ui); AddOptionChoiceCB(ui->font_select, update_fonttool_cb, ui); FormAddVChild(ui->fonttool_panel, ui->font_table); ui->cstext = CreateCSText(ui->fonttool_panel, "CString:"); AddTextValidateCB(ui->cstext, EditStringCB, ui); ui->aac_buts = CreateAACDialog(ui->fonttool_panel, ui->cstext->form, fonttool_aac_cb, ui); FormFixateVChild(ui->cstext->form); update_fonttool_cb(NULL, 0, ui); } if (cstext_parent == ui->cstext) { /* avoid recursion */ return; } ui->cstext_parent = cstext_parent; if (ui->cstext_parent == NULL) { TextSetString(ui->cstext, ""); WidgetSetSensitive(ui->aac_buts[0], FALSE); WidgetSetSensitive(ui->aac_buts[1], FALSE); } else { char *s = TextGetString(ui->cstext_parent); int pos = TextGetCursorPos(ui->cstext_parent); TextSetString(ui->cstext, s); TextSetCursorPos(ui->cstext, pos); xfree(s); WidgetSetSensitive(ui->aac_buts[0], TRUE); WidgetSetSensitive(ui->aac_buts[1], TRUE); } DialogRaise(ui->fonttool_panel); }
static void ps_gui_setup(const Canvas *canvas, void *data) { PS_UI_data *ui = (PS_UI_data *) data; PS_data *ps = ui->ps; set_wait_cursor(); if (ui->frame == NULL) { char *title; Widget ps_setup_rc, fr, rc; OptionItem colorspace_ops[3] = { {PS_COLORSPACE_GRAYSCALE, "Grayscale"}, {PS_COLORSPACE_RGB, "RGB" }, {PS_COLORSPACE_CMYK, "CMYK" } }; OptionItem docdata_ops[3] = { {PS_DOCDATA_7BIT, "7bit" }, {PS_DOCDATA_8BIT, "8bit" }, {PS_DOCDATA_BINARY, "Binary"} }; OptionItem ops[3] = { {PS_MEDIA_FEED_AUTO, "Automatic" }, {PS_MEDIA_FEED_MATCH, "Match size"}, {PS_MEDIA_FEED_MANUAL, "Manual" } }; OptionItem font_ops[4] = { {PS_FONT_EMBED_NONE, "None" }, {PS_FONT_EMBED_BUT13, "All but 13 standard"}, {PS_FONT_EMBED_BUT35, "All but 35 standard"}, {PS_FONT_EMBED_ALL, "All" } }; if (ps->format == PS_FORMAT) { title = "PS options"; } else { title = "EPS options"; } ui->frame = CreateDialog(app_shell, title); ps_setup_rc = CreateVContainer(ui->frame); fr = CreateFrame(ps_setup_rc, "PS options"); rc = CreateVContainer(fr); ui->level2 = CreateToggleButton(rc, "PS Level 2"); ui->colorspace = CreateOptionChoice(rc, "Colorspace:", 1, 3, colorspace_ops); AddToggleButtonCB(ui->level2, colorspace_cb, ui->colorspace); ui->docdata = CreateOptionChoice(rc, "Document data:", 1, 3, docdata_ops); ui->fonts = CreateOptionChoice(rc, "Embed fonts:", 1, 4, font_ops); if (ps->format == EPS_FORMAT) { ui->printable = CreateToggleButton(rc, "Printable as standalone"); } if (ps->format == PS_FORMAT) { fr = CreateFrame(ps_setup_rc, "Page offsets (pt)"); rc = CreateHContainer(fr); ui->offset_x = CreateSpinChoice(rc, "X: ", 4, SPIN_TYPE_INT, -999.0, 999.0, 10.0); ui->offset_y = CreateSpinChoice(rc, "Y: ", 4, SPIN_TYPE_INT, -999.0, 999.0, 10.0); fr = CreateFrame(ps_setup_rc, "Hardware"); rc = CreateVContainer(fr); ui->feed = CreateOptionChoice(rc, "Media feed:", 1, 3, ops); ui->hwres = CreateToggleButton(rc, "Set hardware resolution"); } CreateAACDialog(ui->frame, ps_setup_rc, set_ps_setup_proc, ui); } update_ps_setup_frame(ui); DialogRaise(ui->frame); unset_wait_cursor(); }