void GetString(char *label, char *str, int numch) { Panel in_panel; int x, y; in_buf=(char *)Malloc(numch+1); if (in_buf==NULL) return; /* not enuff mem */ in_numch= numch; *in_buf='\0'; x= (int)xv_get(tracesFrame,XV_X); y= (int)xv_get(tracesFrame,XV_Y); in_frame=(Frame)xv_create(tracesFrame, FRAME_CMD, FRAME_LABEL, "", FRAME_DONE_PROC, in_done_proc, XV_X, FrmWidth/2+x-150, XV_Y, FrmHeight/2+y-50, XV_HEIGHT, 100, XV_WIDTH, 300, NULL); in_panel=(Panel)xv_get(in_frame, FRAME_CMD_PANEL); in_text=(Panel_item)xv_create(in_panel, PANEL_TEXT, XV_X, 10, XV_Y, 40, PANEL_LAYOUT, PANEL_VERTICAL, PANEL_LABEL_STRING, label, PANEL_VALUE_DISPLAY_WIDTH, 280, PANEL_NOTIFY_PROC, in_notify_proc, NULL); xv_set(in_frame, XV_SHOW, TRUE, NULL); in_loop=1; (void)xv_window_loop(in_frame); in_loop=0; xv_destroy_safe(in_frame); strncpy(str, in_buf, numch); free(in_buf); }
/* * Create object `window1' in the specified instance. */ Xv_opaque SoundingChart_GUI_window1_window1_create(SoundingChart_GUI_window1_objects *ip, Xv_opaque owner) { extern Notify_value window_event_func(Xv_window, Event *, Notify_arg, Notify_event_type); Xv_opaque obj; obj = xv_create(owner, FRAME, XV_KEY_DATA, INSTANCE, ip, XV_WIDTH, 661, XV_HEIGHT, 597, XV_LABEL, "Base Window", FRAME_SHOW_FOOTER, FALSE, FRAME_SHOW_RESIZE_CORNER, TRUE, NULL); xv_set(obj, WIN_CONSUME_EVENTS, WIN_MOUSE_BUTTONS, LOC_MOVE, LOC_DRAG, LOC_WINENTER, LOC_WINEXIT, WIN_ASCII_EVENTS, WIN_LEFT_KEYS, WIN_RIGHT_KEYS, WIN_TOP_KEYS, NULL, NULL); notify_interpose_event_func(obj, (Notify_func) window_event_func, NOTIFY_SAFE); return obj; }
/************************************************************************ * * * Get a server image for one of the button labels * */ Server_image Win_rot::get_rot_image(Rottype rottype) { int i; Server_image image; char initname[1024]; char workbuf[1024]; for (i=0; rot_tbl[i].file; i++){ if (rot_tbl[i].rottype == rottype){ break; } } if (!rot_tbl[i].file){ STDERR_1("get_rot_image(): internal error, rottype=%d", rottype); exit(1); } (void)init_get_env_name(initname); (void)sprintf(workbuf, "%s/%s", initname, rot_tbl[i].file); image = (Server_image)xv_create(NULL, SERVER_IMAGE, SERVER_IMAGE_BITMAP_FILE, workbuf, NULL); if (image == NULL){ // Error STDERR_1("get_rot_image(): cannot create %s", workbuf); exit(1); } return image; }
/* * Create object `em_tp' in the specified instance. */ Xv_opaque eventman_em_bw_em_tp_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern Notify_value comment_text_proc(Xv_window, Event *, Notify_arg, Notify_event_type); Xv_opaque obj; obj = xv_create(owner, TEXTSW, XV_KEY_DATA, INSTANCE, ip, XV_X, 0, XV_Y, (int)xv_get(ip->em_cp, XV_Y) + (int)xv_get(ip->em_cp, XV_HEIGHT), XV_WIDTH, WIN_EXTEND_TO_EDGE, XV_HEIGHT, WIN_EXTEND_TO_EDGE, OPENWIN_SHOW_BORDERS, TRUE, NULL); gcm_initialize_colors(obj, "White", "Black"); xv_set(textsw_first(obj), WIN_CONSUME_EVENTS, WIN_MOUSE_BUTTONS, LOC_MOVE, LOC_DRAG, LOC_WINENTER, LOC_WINEXIT, WIN_ASCII_EVENTS, WIN_LEFT_KEYS, WIN_RIGHT_KEYS, WIN_TOP_KEYS, NULL, NULL); notify_interpose_event_func(textsw_first(obj), (Notify_func) comment_text_proc, NOTIFY_SAFE); return obj; }
int main() { Frame frame; frame = (Frame)xv_create(XV_NULL, FRAME, XV_NULL); xv_main_loop(frame); return 0; }
/************************************************************************ * * * Creator of zoom-routine. * * (This function can only be called once.) * * */ Zoom_routine::Zoom_routine(Gdev *gd) { WARNING_OFF(gd); WARNING_OFF(Sid); active = FALSE; //smooth_zooms = FALSE; // Create properties menu for Zoom props_menu = xv_create(NULL, MENU, MENU_GEN_PIN_WINDOW, Gtools::get_gtools_frame(), "Zoom Props", MENU_ITEM, MENU_STRING, "Zoom", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_ZOOM, NULL, MENU_ITEM, MENU_STRING, "Unzoom", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_UNZOOM, NULL, MENU_ITEM, MENU_STRING, "Bind", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_BIND, NULL, MENU_ITEM, MENU_STRING, "Tracking ...", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_TRACKING, NULL, MENU_ITEM, MENU_STRING, "Zoom factor ...", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_FACTOR, NULL, // MENU_ITEM, // MENU_STRING, "Color ...", // MENU_CLIENT_DATA, Z_COLOR, // NULL, MENU_ITEM, MENU_STRING, "Cursor Tolerance ...", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_APERTURE, NULL, MENU_ITEM, MENU_STRING, "Pixel Interpolation", MENU_NOTIFY_PROC, &Zoom_routine::menu_handler, MENU_CLIENT_DATA, Z_INTERPOLATE, NULL, NULL); // Assign the color to be the last gray value Zoomf::color = G_Get_Stcms2(gd) + G_Get_Sizecms2(gd) - 1; Zoomf::aperture = G_APERTURE; }
/************************************************************************ * * * Create info print-message window. * * */ static void msgprt_win_create(Wmsgprt *wmsg) { if (wmsg->owner == NULL) { STDERR("msgprt_win_create:Need a parent for this window"); return; } if (wmsg->wd == 0) wmsg->wd = 300; if (wmsg->ht == 0) wmsg->ht = 100; wmsg->popup = xv_create(wmsg->owner, FRAME_CMD, FRAME_LABEL, "Message-Window", XV_X, wmsg->x, XV_Y, wmsg->y, XV_WIDTH, wmsg->wd, XV_HEIGHT, wmsg->ht, FRAME_SHOW_RESIZE_CORNER, TRUE, NULL); /* Destroy the default created panel */ // (This causes an Xview warning when we set XV_SHOW) //xv_destroy_safe(xv_get(wmsg->popup,FRAME_CMD_PANEL)); wmsg->textsw = xv_create (wmsg->popup, TEXTSW, TEXTSW_INSERT_MAKES_VISIBLE, TEXTSW_ALWAYS, TEXTSW_DISABLE_LOAD, TRUE, TEXTSW_DISABLE_CD, TRUE, TEXTSW_BROWSING, TRUE, TEXTSW_MEMORY_MAXIMUM,1000000, /*TEXTSW_AGAIN_RECORDING, FALSE,*/ TEXTSW_IGNORE_LIMIT, TEXTSW_INFINITY, WIN_X, 0, WIN_Y, 0, WIN_WIDTH, WIN_EXTEND_TO_EDGE, WIN_HEIGHT, WIN_EXTEND_TO_EDGE, WIN_KBD_FOCUS, FALSE, /*WIN_IGNORE_KBD_EVENT, WIN_NO_EVENTS,*/ 0); }
initscreen() { if (xv_init(NULL)==NULL) return 0; frame=(Frame)xv_create(NULL,FRAME,XV_WIDTH,700,XV_HEIGHT,600, FRAME_SHOW_HEADER,FALSE, XV_SHOW,TRUE,NULL); canvas=(Canvas)xv_create(frame,CANVAS,CANVAS_REPAINT_PROC,updatescreen, CANVAS_X_PAINT_WINDOW,TRUE, XV_HEIGHT,SCREENDEPTH,XV_WIDTH,SCREENWIDTH, CANVAS_AUTO_EXPAND,FALSE,CANVAS_AUTO_SHRINK,FALSE, NULL); canvas_paintwin=(Xv_window)xv_get(canvas,CANVAS_NTH_PAINT_WINDOW,0); xcanvas=(Window)xv_get(canvas_paintwin,XV_XID); display=(Display*)xv_get(frame,XV_DISPLAY); screen=(Visual*)xv_get(frame,XV_VISUAL); gc=XCreateGC(display,DefaultRootWindow(display),0,GCvalues); notify_do_dispatch(); /* this should allow terminal input */ return 1; }
static Select_Info *initialize_Graph_Select_Reg(void){ Panel panel; Frame gsr_frame = NULL; Canvas gsr_cvs = NULL; Window gsr_win; Xv_Window window; Select_Info *ret_val = (Select_Info*)Malloc(sizeof(Select_Info)); gsr_frame = xv_create(tracesFrame, FRAME, XV_HEIGHT, gsrwin_h+40, XV_WIDTH, gsrwin_w, NULL); gsr_cvs = xv_create(gsr_frame, CANVAS, XV_X, 0, XV_Y, 40, CANVAS_REPAINT_PROC, redraw_gsrwin, CANVAS_RESIZE_PROC, resize_gsrwin, NULL); gsr_win = xv_get(canvas_paint_window(gsr_cvs), XV_XID); handle_colours(gsr_win); window = (Xv_Window)xv_get(gsr_cvs,CANVAS_NTH_PAINT_WINDOW,0); xv_set(window,WIN_EVENT_PROC,gsr_event_handle, WIN_CONSUME_EVENTS,WIN_MOUSE_BUTTONS,NULL, NULL); panel = (Panel)xv_create(gsr_frame, PANEL, XV_X, 0, XV_Y, 0, XV_HEIGHT, 40, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Quit", PANEL_NOTIFY_PROC, close_gsr_win, PANEL_CLIENT_DATA,gsr_frame, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Select All", PANEL_NOTIFY_PROC, gsr_select_all, XV_KEY_DATA, PANEL_SEL_REG,ret_val, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Deselect All", PANEL_NOTIFY_PROC, gsr_deselect_all, XV_KEY_DATA, PANEL_SEL_REG,ret_val, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Default Selection", PANEL_NOTIFY_PROC, gsr_default, XV_KEY_DATA, PANEL_SEL_REG,ret_val, NULL); init_selection_values(ret_val); ret_val->can = gsr_cvs; ret_val->board = gsr_frame; ret_val->wind = gsr_win; createGC(gsr_win, &ret_val->txtgc); fil_sel_reg(ret_val); return ret_val; }
static void InitSpPanel(Frame frame) { sp_frame = (Frame)xv_create(frame, FRAME, FRAME_LABEL, "Window Parameters", XV_X, FrmWidth/2+xv_get(tracesFrame,XV_X)-150, XV_Y, FrmHeight/2+xv_get(tracesFrame,XV_Y)-50, XV_HEIGHT, 150, XV_WIDTH, 370, NULL); sp_canvas= (Canvas)xv_create(sp_frame, CANVAS, XV_HEIGHT, 150, XV_WIDTH, 370, NULL); sp_panel = (Panel)xv_create(sp_canvas, PANEL, XV_HEIGHT, 150, XV_WIDTH, 370, NULL); choice= (Panel_item)xv_create(sp_panel, PANEL_CHOICE, XV_X, 80, XV_Y, 40, PANEL_CHOICE_STRINGS, "samples","seconds",NULL, PANEL_VALUE, 0, PANEL_LABEL_STRING, "Units:", PANEL_NOTIFY_PROC, choice_notify_proc, NULL); len_txt = (Panel_item)xv_create(sp_panel, PANEL_TEXT, XV_X, 30, XV_Y, 80, PANEL_VALUE_DISPLAY_WIDTH, 200, PANEL_LABEL_STRING, "Length: ", NULL); (void) xv_create(sp_panel, PANEL_BUTTON, XV_X, 300, XV_Y, 8, PANEL_LABEL_STRING, "Close", PANEL_NOTIFY_PROC, close_sp_panel, NULL); }
static Menu make_color_menu(void(*callback)(Menu, Menu_item)) { int i; Menu_item mi; Menu rtn; int ncolors = G_Get_Sizecms1(vsi.gdev); int ncols = 2; int nrows = 1 + (ncolors - 1) / ncols; rtn = (Menu)xv_create(NULL, MENU_COMMAND_MENU, MENU_NOTIFY_PROC, callback, MENU_NCOLS, ncols, MENU_NROWS, nrows, NULL); mi = (Menu_item)xv_create(NULL, MENUITEM, MENU_STRING, "Off", MENU_VALUE, (Xv_opaque)(-1), NULL); xv_set(rtn, MENU_APPEND_ITEM, mi, MENU_NCOLS, ncols, MENU_NROWS, nrows, NULL); for (i=0; i<ncolors; i++){ mi = (Menu_item)xv_create(NULL, MENUITEM, MENU_IMAGE, get_color_chip(i), MENU_VALUE, (Xv_opaque)i, NULL); xv_set(rtn, MENU_APPEND_ITEM, mi, MENU_NCOLS, ncols, MENU_NROWS, nrows, NULL); } return rtn; }
/* * Create object `data_msg' in the specified instance. */ Xv_opaque SoundingChart_GUI_config_pu_data_msg_create(SoundingChart_GUI_config_pu_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL_MESSAGE, XV_KEY_DATA, INSTANCE, ip, XV_X, 98, XV_Y, 8, PANEL_LABEL_STRING, "Data Message", PANEL_LABEL_BOLD, TRUE, NULL); return obj; }
/* * Create object `msg1' in the specified instance. */ Xv_opaque eventman_em_bw_msg1_create(eventman_em_bw_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL_MESSAGE, XV_KEY_DATA, INSTANCE, ip, XV_X, 160, XV_Y, 248, PANEL_LABEL_STRING, "Event Notes:", PANEL_LABEL_BOLD, TRUE, NULL); return obj; }
/* * Create object `time_msg' in the specified instance. */ Xv_opaque SoundingChart_GUI_window1_time_msg_create(SoundingChart_GUI_window1_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL_MESSAGE, XV_KEY_DATA, INSTANCE, ip, XV_X, 550, XV_Y, 8, PANEL_LABEL_STRING, "TIME String", PANEL_LABEL_BOLD, TRUE, NULL); return obj; }
/************************************************************************ * * * gen_pullright() is called in the following order: * * Pullright menu needs to be displayed. (MENU_PULLRIGHT) * * Menu is about to be dismissed (MENU_DISPLAY_DONE) * * User made a selection (before menu notify function) * * After the notify routine has been called. * * The above order is done whether or not the user makes a * * menu selection. * * Always return newly created menu. * * */ static Menu gen_pullright(Menu_item mi, Menu_generate op) { Menu menu; Menu_item new_item, old_item = mi; char buf[MAXPATHLEN]; if (op == MENU_DISPLAY) { menu = (Menu)xv_get(old_item, MENU_PARENT); (void)sprintf(buf, "%s/%s", xv_get(menu, MENU_CLIENT_DATA), xv_get(old_item, MENU_STRING)); /* get old menu and free it -- we're going to build another */ if (menu = (Menu)xv_get(old_item, MENU_PULLRIGHT)) { int j; Menu_item item; free((char *)xv_get(menu, MENU_CLIENT_DATA)); /* Destroy all items in the menu */ /* Note that these codes are needed because XView DOES NOT */ /* destroy all items in a menu although XView manual */ /* says it does. */ for (j=(int)xv_get(menu, MENU_NITEMS); j>0; j--) { item = (Menu_item)xv_get(menu, MENU_NTH_ITEM, j); xv_set(menu, MENU_REMOVE, j, NULL); xv_destroy(item); } xv_destroy(menu); } if (new_item = add_path_to_menu(buf, (u_long)xv_get(old_item, XV_KEY_DATA, KEY_ADDR_DATA))) { menu = (Menu)xv_get(new_item, MENU_PULLRIGHT); xv_destroy(new_item); return menu; } } if (!(menu = (Menu)xv_get(old_item, MENU_PULLRIGHT))) { menu = (Menu)xv_create(NULL, MENU, MENU_STRINGS, "Couldn't build a menu.", NULL, NULL); } return menu; }
static void InitPmotionFrame() { Panel panel; Menu menu; pm_frame= xv_create(tracesFrame, FRAME, XV_HEIGHT, pmwin_h+40, XV_WIDTH, pmwin_w, NULL); pm_cvs= xv_create(pm_frame, CANVAS, XV_X, 0, XV_Y, 40, CANVAS_REPAINT_PROC, redrawPmotion, NULL); pm_win= xv_get(canvas_paint_window(pm_cvs), XV_XID); createGC(pm_win, &pm_gc); panel= (Panel)xv_create(pm_frame, PANEL, XV_X, 0, XV_Y, 0, XV_HEIGHT, 40, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Quit", PANEL_NOTIFY_PROC, close_pmotion_win, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "redo", PANEL_NOTIFY_PROC, handle_particle_motion, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "next selection", PANEL_NOTIFY_PROC, next_motion, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Z-X", PANEL_NOTIFY_PROC, changeZX, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "Z-Y", PANEL_NOTIFY_PROC, changeZY, NULL); (void)xv_create(panel, PANEL_BUTTON, PANEL_LABEL_STRING, "X-Y", PANEL_NOTIFY_PROC, changeXY, NULL); }
/* * Create object `controls1' in the specified instance. */ Xv_opaque SoundingChart_GUI_window1_controls1_create(SoundingChart_GUI_window1_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL, XV_KEY_DATA, INSTANCE, ip, XV_X, 0, XV_Y, 0, XV_WIDTH, WIN_EXTEND_TO_EDGE, XV_HEIGHT, 32, WIN_BORDER, FALSE, NULL); return obj; }
/* * Create object `mailto_bt' in the specified instance. */ Xv_opaque eventman_em_bw_mailto_bt_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern void mail_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 168, XV_Y, 220, PANEL_LABEL_STRING, "Mail to...", PANEL_NOTIFY_PROC, mail_proc, NULL); return obj; }
/* * Create object `em_bw' in the specified instance. */ Xv_opaque eventman_em_bw_em_bw_create(eventman_em_bw_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, FRAME, XV_KEY_DATA, INSTANCE, ip, XV_WIDTH, 537, XV_HEIGHT, 449, XV_LABEL, "Event Manager", FRAME_SHOW_FOOTER, FALSE, FRAME_SHOW_RESIZE_CORNER, FALSE, NULL); return obj; }
/* * Create object `dismiss_bt' in the specified instance. */ Xv_opaque status_pu_status_pu_dismiss_bt_create(status_pu_status_pu_objects *ip, Xv_opaque owner) { extern void status_dismiss_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 466, XV_Y, 6, PANEL_LABEL_STRING, "Dismiss", PANEL_NOTIFY_PROC, status_dismiss_proc, NULL); return obj; }
/* * Create object `close_bt' in the specified instance. */ Xv_opaque eventman_em_bw_close_bt_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern void close_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 480, XV_Y, 8, PANEL_LABEL_STRING, "Close", PANEL_NOTIFY_PROC, close_proc, NULL); return obj; }
/* * Create object `clear_bt' in the specified instance. */ Xv_opaque SoundingChart_GUI_config_pu_clear_bt_create(SoundingChart_GUI_config_pu_objects *ip, Xv_opaque owner) { extern void clear_refs_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 8, XV_Y, 204, PANEL_LABEL_STRING, "Clear reference points", PANEL_NOTIFY_PROC, clear_refs_proc, NULL); return obj; }
int initZTScale(Frame frame) { ztscl_top_canvas= (Canvas)xv_create(frame, CANVAS, XV_X, 0, XV_Y, 0, XV_WIDTH, ZCvsWidth+ZTrkLabWidth+4, XV_HEIGHT, ZTSHEIGHT+1, XV_KEY_DATA, WHICH_TS, TOP_TS, CANVAS_REPAINT_PROC, RedrawZTScale, NULL); ztscl_bot_canvas= (Canvas)xv_create(frame, CANVAS, XV_X, 0, XV_Y, ZCvsHeight+ZTSHEIGHT-1, XV_WIDTH, ZCvsWidth+ZTrkLabWidth+4, XV_HEIGHT, ZTSHEIGHT+1, XV_KEY_DATA, WHICH_TS, BOTTOM_TS, CANVAS_REPAINT_PROC, RedrawZTScale, NULL); ztscl_top_win= (Window)xv_get(canvas_paint_window(ztscl_top_canvas), XV_XID); ztscl_bot_win= (Window)xv_get(canvas_paint_window(ztscl_bot_canvas), XV_XID); createGC(ztscl_top_win, &ztscl_gc); if(!Mode_ZDisplayTScale || !Mode_align) { xv_set(ztscl_top_canvas, XV_SHOW, FALSE, NULL); xv_set(ztscl_bot_canvas, XV_SHOW, FALSE, NULL); } }
/* * Create object `over_cp' in the specified instance. */ Xv_opaque over_pu_over_pu_over_cp_create(over_pu_over_pu_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL, XV_KEY_DATA, INSTANCE, ip, XV_X, 0, XV_Y, 0, XV_WIDTH, WIN_EXTEND_TO_EDGE, XV_HEIGHT, WIN_EXTEND_TO_EDGE, WIN_BORDER, FALSE, NULL); return obj; }
/************************************************************************ * * * Save volume image data. * * */ void VolData::set_data(Imginfo *imginfo, int newItem) { Imginfo *thisimage; char *fname = 0; detach_imginfo(vimage); if (!imginfo){ xv_set(extract_button, PANEL_INACTIVE, TRUE, NULL); xv_set(mip_button, PANEL_INACTIVE, TRUE, NULL); xv_set(pfname, PANEL_LABEL_STRING, "No Data", NULL); }else{ attach_imginfo(vimage, imginfo); nfast = vimage->GetFast(); nmedium = vimage->GetMedium(); nslow = vimage->GetSlow(); xv_set(front.first, PANEL_MAX_VALUE, nslow-1, NULL); xv_set(front.inc, PANEL_MAX_VALUE, nslow-1, NULL); xv_set(front.last, PANEL_MAX_VALUE, nslow-1, NULL); xv_set(top.first, PANEL_MAX_VALUE, nmedium-1, NULL); xv_set(top.inc, PANEL_MAX_VALUE, nmedium-1, NULL); xv_set(top.last, PANEL_MAX_VALUE, nmedium-1, NULL); xv_set(side.first, PANEL_MAX_VALUE, nfast-1, NULL); xv_set(side.inc, PANEL_MAX_VALUE, nfast-1, NULL); xv_set(side.last, PANEL_MAX_VALUE, nfast-1, NULL); xv_set(extract_button, PANEL_INACTIVE, FALSE, NULL); xv_set(mip_button, PANEL_INACTIVE, FALSE, NULL); vimage->st->GetValue("filename", fname); char *shortname; if (fname){ shortname = strdup(com_clip_len_front(fname, 43)); xv_set(pfname, PANEL_LABEL_STRING, shortname, NULL); } // The class variable vimage is temporarily holding this image, // but if we load another 3D data set, the Imginfo will be detached // from vimage and the memory freed. To keep it around, we // attach it to "thisimage", which is effectively stored in the // menu widget. attach_imginfo(thisimage, vimage); if (newItem){ Menu_item mi = (Menu_item)xv_create(NULL, MENUITEM, MENU_STRING, shortname, MENU_CLIENT_DATA, thisimage, NULL); xv_set(file_menu, MENU_APPEND_ITEM, mi, NULL); } } }
/* * Create object `rt_bt' in the specified instance. */ Xv_opaque eventman_em_bw_rt_bt_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern void gort_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 302, XV_Y, 8, PANEL_ITEM_COLOR, gcm_color_index("Cornflower Blue"), PANEL_LABEL_STRING, "GO REAL-TIME", PANEL_NOTIFY_PROC, gort_proc, NULL); return obj; }
/* * Create object `del_bt' in the specified instance. */ Xv_opaque eventman_em_bw_del_bt_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern void del_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 158, XV_Y, 182, PANEL_ITEM_COLOR, gcm_color_index("Red"), PANEL_LABEL_STRING, "Delete Event", PANEL_NOTIFY_PROC, del_proc, NULL); return obj; }
/* * Create object `save_bt' in the specified instance. */ Xv_opaque eventman_em_bw_save_bt_create(eventman_em_bw_objects *ip, Xv_opaque owner) { extern void save_proc(Panel_item, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_BUTTON, XV_KEY_DATA, INSTANCE, ip, XV_X, 8, XV_Y, 220, PANEL_ITEM_COLOR, gcm_color_index("Red"), PANEL_LABEL_STRING, "Save Changes", PANEL_NOTIFY_PROC, save_proc, NULL); return obj; }
/* * Create object `em_cp' in the specified instance. */ Xv_opaque eventman_em_bw_em_cp_create(eventman_em_bw_objects *ip, Xv_opaque owner) { Xv_opaque obj; obj = xv_create(owner, PANEL, XV_KEY_DATA, INSTANCE, ip, XV_X, 0, XV_Y, 0, XV_WIDTH, WIN_EXTEND_TO_EDGE, XV_HEIGHT, 271, WIN_BORDER, FALSE, NULL); gcm_initialize_colors(obj, "Gray", NULL); return obj; }
/* * Create object `over_pu_st' in the specified instance. */ Xv_opaque over_pu_over_pu_over_pu_st_create(over_pu_over_pu_objects *ip, Xv_opaque owner) { extern void over_pu_proc(Panel_item, unsigned int, Event *); Xv_opaque obj; obj = xv_create(owner, PANEL_TOGGLE, XV_KEY_DATA, INSTANCE, ip, XV_X, 2, XV_Y, 2, PANEL_CHOICE_NCOLS, 1, PANEL_LAYOUT, PANEL_HORIZONTAL, PANEL_NOTIFY_PROC, over_pu_proc, NULL); return obj; }