DRDE/APIG/include/mdCommander.h

58 lines
1.4 KiB
C
Raw Normal View History

#ifndef MD_CHARGUI
#define MD_CHARGUI
2014-01-13 01:29:22 +00:00
#define MAX_CMDS 20
class mdCommander {
2014-01-13 01:29:22 +00:00
bool acceptingInput,deleted[MAX_CMDS];
bool EPPmode; // RFC 9
int activeCommands, argsNow[MAX_CMDS], cmdNow, cmdsNow, mdStdDevIdx;
std::string currentDevice;
2014-01-13 01:29:22 +00:00
int row,col;
int commandsNow[MAX_CMDS]; // type index into cmdNames
char *commandArgs[MAX_CMDS][MAX_CMD_ARGS];
char wwork[1024];
public:
2014-01-13 01:29:22 +00:00
mdCommander() {mdStdDevIdx=0; cmdsNow=0; cmdNow = 0;}
~mdCommander() {}
2014-01-13 01:29:22 +00:00
void say(char *what) ;
2014-01-11 19:34:15 +00:00
void acMainMenu();
2014-01-13 01:29:22 +00:00
void check(bool run);
void create(bool run);
void doHeader();
void driver();
2014-01-13 01:29:22 +00:00
void digestibleLines();
2014-01-11 19:34:15 +00:00
void eppMainMenu();
2014-01-13 01:29:22 +00:00
void flushCommand(int which,bool allowsZero);
void greet();
void help();
2014-01-13 01:29:22 +00:00
void info(bool run);
bool isValidCmd(int which,bool isX)
{ if (which == 0 && !isX) return false;
if (which > cmdsNow) return false;
if (!isX && which < 1) return false;
if (which && deleted[which-1]) return false;
return true;
}
void poll(bool run);
void prompt(bool forStrings);
void queryTransfer(bool run);
void renew(bool run);
void sendCommand(int which);
void showCommand(bool all);
void trash(bool run);
void transfer(bool run);
void update(bool run);
bool editingCommand(bool run);
bool runCommand(bool all);
};
#endif