[BACK]Return to xdeb.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / parse

Diff for /OpenXM_contrib2/asir2000/parse/xdeb.c between version 1.2 and 1.16

version 1.2, 2000/02/08 04:47:12 version 1.16, 2016/08/24 00:52:51
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2000/parse/xdeb.c,v 1.1.1.1 1999/12/03 07:39:12 noro Exp $ */  /*
 #if defined(VISUAL)   * Copyright (c) 1994-2000 FUJITSU LABORATORIES LIMITED
    * All rights reserved.
    *
    * FUJITSU LABORATORIES LIMITED ("FLL") hereby grants you a limited,
    * non-exclusive and royalty-free license to use, copy, modify and
    * redistribute, solely for non-commercial and non-profit purposes, the
    * computer program, "Risa/Asir" ("SOFTWARE"), subject to the terms and
    * conditions of this Agreement. For the avoidance of doubt, you acquire
    * only a limited right to use the SOFTWARE hereunder, and FLL or any
    * third party developer retains all rights, including but not limited to
    * copyrights, in and to the SOFTWARE.
    *
    * (1) FLL does not grant you a license in any way for commercial
    * purposes. You may use the SOFTWARE only for non-commercial and
    * non-profit purposes only, such as academic, research and internal
    * business use.
    * (2) The SOFTWARE is protected by the Copyright Law of Japan and
    * international copyright treaties. If you make copies of the SOFTWARE,
    * with or without modification, as permitted hereunder, you shall affix
    * to all such copies of the SOFTWARE the above copyright notice.
    * (3) An explicit reference to this SOFTWARE and its copyright owner
    * shall be made on your publication or presentation in any form of the
    * results obtained by use of the SOFTWARE.
    * (4) In the event that you modify the SOFTWARE, you shall notify FLL by
    * e-mail at risa-admin@sec.flab.fujitsu.co.jp of the detailed specification
    * for such modification or the source code of the modified part of the
    * SOFTWARE.
    *
    * THE SOFTWARE IS PROVIDED AS IS WITHOUT ANY WARRANTY OF ANY KIND. FLL
    * MAKES ABSOLUTELY NO WARRANTIES, EXPRESSED, IMPLIED OR STATUTORY, AND
    * EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS
    * FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT OF THIRD PARTIES'
    * RIGHTS. NO FLL DEALER, AGENT, EMPLOYEES IS AUTHORIZED TO MAKE ANY
    * MODIFICATIONS, EXTENSIONS, OR ADDITIONS TO THIS WARRANTY.
    * UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, TORT, CONTRACT,
    * OR OTHERWISE, SHALL FLL BE LIABLE TO YOU OR ANY OTHER PERSON FOR ANY
    * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
    * DAMAGES OF ANY CHARACTER, INCLUDING, WITHOUT LIMITATION, DAMAGES
    * ARISING OUT OF OR RELATING TO THE SOFTWARE OR THIS AGREEMENT, DAMAGES
    * FOR LOSS OF GOODWILL, WORK STOPPAGE, OR LOSS OF DATA, OR FOR ANY
    * DAMAGES, EVEN IF FLL SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF
    * SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY. EVEN IF A PART
    * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
    * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
    * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
    *
    * $OpenXM: OpenXM_contrib2/asir2000/parse/xdeb.c,v 1.15 2015/08/14 13:51:56 fujimoto Exp $
   */
   #if defined(VISUAL) || defined(__MINGW32__)
 #if defined(VISUAL_LIB)  #if defined(VISUAL_LIB)
 #include <stdio.h>  #include <stdio.h>
 #include <stdlib.h>  #include <stdlib.h>
Line 42  void show_debug_window(int on)
Line 90  void show_debug_window(int on)
 {}  {}
 #endif  #endif
 #else /* VISUAL */  #else /* VISUAL */
 #if DO_PLOT  #if defined(DO_PLOT)
 /*  /*
  *      xdeb.c --- Asir Debug interface.   *      xdeb.c --- Asir Debug interface.
  *   *
Line 53  void show_debug_window(int on)
Line 101  void show_debug_window(int on)
 #include <X11/Shell.h>  #include <X11/Shell.h>
 #include <X11/Xaw/Dialog.h>  #include <X11/Xaw/Dialog.h>
 #include        <stdio.h>  #include        <stdio.h>
   #include <stdlib.h>
   
 static XrmOptionDescRec options[] = {  static XrmOptionDescRec options[] = {
         {"-reverse","*reverse",XrmoptionNoArg,"on"},          {"-reverse","*reverse",XrmoptionNoArg,"on"},
Line 66  static String fallback[] = {
Line 115  static String fallback[] = {
 };  };
   
 static void Done();  static void Done();
   static void Quit();
 static void SetSelected();  static void SetSelected();
   static void SetDismiss();
   
 static XtActionsRec actions_table[] = {  static XtActionsRec actions_table[] = {
         {"done",Done},          {"done",Done},
           {"quit",Quit},
 };  };
   
 char debug_cmd[BUFSIZ];  char debug_cmd[BUFSIZ];
Line 81  static Display *display;
Line 133  static Display *display;
   
 void get_cmd();  void get_cmd();
   
 static void Done(w,e,p,n)  static void Done(Widget w,XEvent *e,String *p,Cardinal *n)
 Widget w;  
 XEvent *e;  
 String *p;  
 Cardinal *n;  
 {  {
         SetSelected(w,0,0);          SetSelected(w,0,0);
 }  }
   
 static void SetSelected(w,cld,cad)  static void SetSelected(Widget w,XtPointer cld,XtPointer cad)
 Widget w;  
 XtPointer cld,cad;  
 {  {
         Arg             arg[5];          Arg             arg[5];
         char *cmd;          char *cmd;
Line 104  XtPointer cld,cad;
Line 150  XtPointer cld,cad;
         XtSetValues(cmdwin, arg, 1);          XtSetValues(cmdwin, arg, 1);
 }  }
   
 init_cmdwin()  static void SetDismiss(Widget w,XtPointer cld,XtPointer cad)
 {  {
         Arg             arg[5];          Arg             arg[5];
           char *cmd;
   
           done = 1;
           cmd = XawDialogGetValueString(cmdwin);
           strcpy(debug_cmd,"quit");
           XtSetArg(arg[0], XtNvalue, "");
           XtSetValues(cmdwin, arg, 1);
   }
   
   static Atom wm_delete_window;
   static void Quit(Widget w, XEvent *ev, String *params,Cardinal *nparams)
   {
           XBell(XtDisplay(w),0);
   }
   
   void init_cmdwin()
   {
           Arg             arg[5];
         int argc=0;          int argc=0;
         char *argv[1];          char *argv[1];
         int n;          int n;
         char *d;          char *d;
           char hostname[BUFSIZ],title[BUFSIZ];
         extern char displayname[];          extern char displayname[];
         extern int do_server_in_X11;          extern int do_server_in_X11;
           static int is_init = 0;
   
           if ( is_init )
                   return;
         if ( !displayname[0] ) {          if ( !displayname[0] ) {
                 d = (char *)getenv("DISPLAY");                  d = (char *)getenv("DISPLAY");
                 if ( d )                  if ( d )
Line 121  init_cmdwin()
Line 189  init_cmdwin()
                 else                  else
                         do_server_in_X11 = 0;                          do_server_in_X11 = 0;
         }          }
           gethostname(hostname, BUFSIZ);
           sprintf(title,"Asir debugger:%s",hostname);
         if ( displayname[0] ) {          if ( displayname[0] ) {
                 argv[0] = 0;                  argv[0] = 0;
                 XtToolkitInitialize();                  XtToolkitInitialize();
                 app_con = XtCreateApplicationContext();                  app_con = XtCreateApplicationContext();
                 XtAppAddActions(app_con,actions_table, XtNumber(actions_table));                  XtAppAddActions(app_con,actions_table, XtNumber(actions_table));
                 XtAppSetFallbackResources(app_con,fallback);                  XtAppSetFallbackResources(app_con,fallback);
                 display = XtOpenDisplay(app_con,displayname,"ox_asir_debug_window","ox_asir_debug_window",                  display = XtOpenDisplay(app_con,displayname,title,title,
                         options,XtNumber(options),&argc,argv);                          options,XtNumber(options),&argc,argv);
                 toplevel = XtAppCreateShell(0,"ox_asir_debug_window",applicationShellWidgetClass,                  toplevel = XtAppCreateShell(0,title,applicationShellWidgetClass,
                         display,0,0);                          display,0,0);
                 XtSetArg(arg[0],XtNiconName,"ox_asir_debug_window");                  n = 0;
                   wm_delete_window = XInternAtom(XtDisplay(toplevel), "WM_DELETE_WINDOW",
                           False);
   
                   XtSetArg(arg[n],XtNiconName,title); n++;
                   XtSetArg(arg[n], XtNwidth, 360); n++;
                 mainwin = XtCreatePopupShell("shell",topLevelShellWidgetClass,                  mainwin = XtCreatePopupShell("shell",topLevelShellWidgetClass,
                         toplevel,arg,1);                          toplevel,arg,n);
                   XtOverrideTranslations(mainwin,
                                           XtParseTranslationTable("<Message>WM_PROTOCOLS: quit()"));
         /*          /*
          *      Command line           *      Command line
          */           */
                 cmdwin = XtCreateManagedWidget("cmdwin", dialogWidgetClass,                  cmdwin = XtCreateManagedWidget("cmdwin", dialogWidgetClass,
                         mainwin, NULL, 0);                          mainwin, NULL, 0);
                 XawDialogAddButton(cmdwin,"OK",SetSelected,"OK");                  XawDialogAddButton(cmdwin,"Execute",SetSelected,"Execute");
                   XawDialogAddButton(cmdwin,"Dismiss",SetDismiss,"Dismiss");
                 n = 0;                  n = 0;
                 XtSetArg(arg[n], XtNlabel, "Command : "); n++;                  XtSetArg(arg[n], XtNlabel, "Command : "); n++;
                 XtSetArg(arg[n], XtNvalue, ""); n++;                  XtSetArg(arg[n], XtNvalue, ""); n++;
                 XtSetValues(cmdwin, arg, n);                  XtSetValues(cmdwin, arg, n);
                 XtRealizeWidget(mainwin);                  XtRealizeWidget(mainwin);
                   XSetWMProtocols(XtDisplay(mainwin),XtWindow(mainwin),
                           &wm_delete_window,1);
         }          }
           is_init = 1;
 }  }
   
 show_debug_window(on)  void show_debug_window(int on)
 int on;  
 {  {
         XEvent ev;          XEvent ev;
   
           init_cmdwin();
         if ( mainwin ) {          if ( mainwin ) {
                 if ( on )                  if ( on )
                         XtPopup(mainwin,XtGrabNone);                          XtPopup(mainwin,XtGrabNone);
Line 166  int on;
Line 247  int on;
         }          }
 }  }
   
 get_line(buf)  void get_line(char *buf)
 char *buf;  
 {  {
         XEvent ev;          XEvent ev;
   
Line 179  char *buf;
Line 259  char *buf;
         strcpy(buf,debug_cmd);          strcpy(buf,debug_cmd);
 }  }
 #else /* DO_PLOT */  #else /* DO_PLOT */
 init_cmdwin() {}  void init_cmdwin() {}
   
 show_debug_window(on)  void show_debug_window(int on)
 int on;  
 {}  {}
   
 get_line(buf)  void get_line(buf)
 char *buf;  char *buf;
 {}  {}
 #endif /* DO_PLOT */  #endif /* DO_PLOT */

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.16

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>