=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/plot/ox_plot_xevent.c,v retrieving revision 1.9 retrieving revision 1.12 diff -u -p -r1.9 -r1.12 --- OpenXM_contrib2/asir2000/plot/ox_plot_xevent.c 2000/11/07 06:06:40 1.9 +++ OpenXM_contrib2/asir2000/plot/ox_plot_xevent.c 2001/08/22 09:19:21 1.12 @@ -45,7 +45,7 @@ * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. * - * $OpenXM: OpenXM_contrib2/asir2000/plot/ox_plot_xevent.c,v 1.8 2000/10/24 01:53:53 takayama Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/plot/ox_plot_xevent.c,v 1.11 2000/11/09 02:30:44 noro Exp $ */ #include "ca.h" #include "parse.h" @@ -149,7 +149,7 @@ XButtonEvent *ev; case Button1: e.x = ev->x; e.y = ev->y; draw_frame0(can->window,spos,e); - if ( !busy ) { + if ( !busy && can->mode != MODE_INTERACTIVE ) { if ( can->mode == MODE_PLOT ) plot_resize(can,spos,e); else @@ -643,7 +643,7 @@ static XtResource resources[] = { offset(DashPixel),XtRPixel,(XtPointer)&dashPixel}, }; -init_plot_display(argc,argv) +int init_plot_display(argc,argv) int argc; char **argv; { @@ -652,7 +652,9 @@ char **argv; unsigned int tmp; for ( ac = argc, av = argv; ac; ac--, av++ ) - if ( index(*av,':') ) + if ( !strcmp(*av,"nox") ) + return 0; + else if ( index(*av,':') ) dname = *av; XtToolkitInitialize(); app_con = XtCreateApplicationContext(); @@ -660,7 +662,7 @@ char **argv; options,XtNumber(options),&argc,argv); if ( !display ) { fprintf(stderr,"Can't open display\n"); - exit(1); + return 0; } toplevel = XtAppCreateShell(0,"Plot",applicationShellWidgetClass, display,0,0); @@ -681,6 +683,7 @@ char **argv; create_gc(); create_font(); create_cursors(); + return 1; } static char *scalefont = "*-8-80-*"; @@ -704,12 +707,14 @@ create_gc() { scaleGC = XCreateGC(display,rootwin,0,NULL); xorGC = XCreateGC(display,rootwin,0,NULL); colorGC = XCreateGC(display,rootwin,0,NULL); + cdrawGC = XCreateGC(display,rootwin,0,NULL); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,drawGC); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,dashGC); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,clearGC); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,scaleGC); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,xorGC); XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,colorGC); + XCopyGC(display,DefaultGC(display,scrn),(1L<<(GCLastBit+1))-1,cdrawGC); XSetForeground(display,drawGC,forePixel); XSetForeground(display,scaleGC,forePixel); XSetForeground(display,clearGC,backPixel); @@ -724,6 +729,18 @@ create_gc() { color.red = 0xffff; color.green = color.blue = 0; XAllocColor(display,DefaultColormap(display,scrn),&color); XSetForeground(display,colorGC,color.pixel); +} + +set_drawcolor(c) +unsigned int c; +{ + XColor color = {0,0x0,0x0,0x0,DoRed|DoGreen|DoBlue,0}; + + color.red = (c&0xff0000)>>8; + color.green = (c&0xff00); + color.blue = (c&0xff)<<8; + XAllocColor(display,DefaultColormap(display,scrn),&color); + XSetForeground(display,cdrawGC,color.pixel); } create_cursors() {