NEURON
fmenu.cpp File Reference
#include <../../nrnconf.h>
#include <stdlib.h>
#include "hoc.h"
#include <ctype.h>
#include "hocgetsym.h"

Go to the source code of this file.

Classes

struct  Menuitem
 

Macros

#define Ret(a)   hoc_ret(); hoc_pushx(a)
 
#define NUL   0
 
#define SPACE   '\040'
 
#define BEEP   Printf("\007")
 
#define MENU_VAR   1
 
#define MENU_ACTION   2
 
#define diag(s)   hoc_execerror(s, (char*)0);
 
#define chk(i)   {if (i < 0 || i >= maxmenus) diag("menu number out of range");}
 

Typedefs

typedef struct Menuitem Menuitem
 

Functions

static int cexecute (const char *)
 
static char * navigate (int)
 
static Menuitemappend ()
 
static void appendvar (int, const char *, const char *)
 
static void appendaction (int, const char *, const char *)
 
static void destroy (int)
 
static double enter (int, int, double, int, Menuitem *)
 
static void prval (int, int, int, double)
 
static void prs (int, int, int, const char *)
 
static void undisplay (int)
 
static void menu_manager (int nmenu)
 
void hoc_fmenu (void)
 
static void xcursor (int r, int c)
 
static int ibmgetc (void)
 
static Menuitemappend (int imenu)
 
static void display (int imenu)
 
static void clrscr (void)
 
void hoc_menu_cleanup (void)
 

Variables

static int egagrph = 0
 
static int current_menu = -1
 
static int maxmenus
 
static Menuitem ** menusfirst
 
static Menuitem ** menuslast
 
static Menuitem ** menuscurrent
 
static int first = 1
 

Macro Definition Documentation

◆ BEEP

#define BEEP   Printf("\007")

Definition at line 132 of file fmenu.cpp.

◆ chk

#define chk (   i)    {if (i < 0 || i >= maxmenus) diag("menu number out of range");}

Definition at line 189 of file fmenu.cpp.

◆ diag

#define diag (   s)    hoc_execerror(s, (char*)0);

Definition at line 188 of file fmenu.cpp.

◆ MENU_ACTION

#define MENU_ACTION   2

Definition at line 151 of file fmenu.cpp.

◆ MENU_VAR

#define MENU_VAR   1

Definition at line 150 of file fmenu.cpp.

◆ NUL

#define NUL   0

Definition at line 130 of file fmenu.cpp.

◆ Ret

#define Ret (   a)    hoc_ret(); hoc_pushx(a)

Definition at line 128 of file fmenu.cpp.

◆ SPACE

#define SPACE   '\040'

Definition at line 131 of file fmenu.cpp.

Typedef Documentation

◆ Menuitem

typedef struct Menuitem Menuitem

Function Documentation

◆ append() [1/2]

static Menuitem* append ( )
static

◆ append() [2/2]

static Menuitem* append ( int  imenu)
static

Definition at line 320 of file fmenu.cpp.

◆ appendaction()

static void appendaction ( int  imenu,
const char *  prompt,
const char *  command 
)
static

Definition at line 383 of file fmenu.cpp.

◆ appendvar()

static void appendvar ( int  imenu,
const char *  variable,
const char *  command 
)
static

Definition at line 357 of file fmenu.cpp.

◆ cexecute()

static int cexecute ( const char *  command)
static

Definition at line 639 of file fmenu.cpp.

◆ clrscr()

static void clrscr ( void  )
static

Definition at line 650 of file fmenu.cpp.

◆ destroy()

static void destroy ( int  imenu)
static

Definition at line 415 of file fmenu.cpp.

◆ display()

static void display ( int  imenu)
static

Definition at line 394 of file fmenu.cpp.

◆ enter()

static double enter ( int  row,
int  col,
double  defalt,
int  frstch,
Menuitem pnow 
)
static

Definition at line 554 of file fmenu.cpp.

◆ hoc_fmenu()

void hoc_fmenu ( void  )

Definition at line 211 of file fmenu.cpp.

◆ ibmgetc()

static int ibmgetc ( void  )
static

Definition at line 305 of file fmenu.cpp.

◆ menu_manager()

static void menu_manager ( int  nmenu)
static

Definition at line 190 of file fmenu.cpp.

◆ navigate()

static char * navigate ( int  imenu)
static

Definition at line 439 of file fmenu.cpp.

◆ prs()

static void prs ( int  oldnew,
int  row,
int  col,
const char *  string 
)
static

Definition at line 623 of file fmenu.cpp.

◆ prval()

static void prval ( int  oldnew,
int  row,
int  col,
double  val 
)
static

Definition at line 616 of file fmenu.cpp.

◆ undisplay()

static void undisplay ( int  imenu)
static

Definition at line 654 of file fmenu.cpp.

◆ xcursor()

static void xcursor ( int  r,
int  c 
)
static

Definition at line 284 of file fmenu.cpp.

Variable Documentation

◆ current_menu

int current_menu = -1
static

Definition at line 181 of file fmenu.cpp.

◆ egagrph

int egagrph = 0
static

Definition at line 122 of file fmenu.cpp.

◆ first

int first = 1
static

Definition at line 186 of file fmenu.cpp.

◆ maxmenus

int maxmenus
static

Definition at line 182 of file fmenu.cpp.

◆ menuscurrent

Menuitem** menuscurrent
static

Definition at line 185 of file fmenu.cpp.

◆ menusfirst

Menuitem** menusfirst
static

Definition at line 183 of file fmenu.cpp.

◆ menuslast

Menuitem** menuslast
static

Definition at line 184 of file fmenu.cpp.