13 #include "uicmddrivermod.h" 28 namespace File {
class Path; }
34 class IdentifierManager;
35 class ExprInterpreter;
36 class WildcardManager;
40 if ( drv_.logStream().isOK() ) drv_.logStream() 43 mLogStrm << "[" << Time::getTimeString() << "]\t" 45 #define mParseMsgStrm(tag) \ 46 if ( !drv_.streamBlocked(true,tag) ) \ 47 mLogStrm << "\t" << (tag) << " [parse]: " 49 #define mParseStrm(warn) mParseMsgStrm( warn ? "WARN" : "ERROR" ) 50 #define mParseErrStrm mParseStrm( false ) 51 #define mParseWarnStrm mParseStrm( true ) 53 #define mWinMsgStrm(tag) \ 54 if ( !drv_.streamBlocked(false,tag) ) \ 55 mLogStrm << "\t" << (tag) << " [" << drv_.curWinTitle() << "]:\n\t\t" 57 #define mWinStrm(warn) mWinMsgStrm( warn ? "WARN " : "ERROR" ) 58 #define mWinErrStrm mWinStrm( false ) 59 #define mWinWarnStrm mWinStrm( true ) 80 : line_(line), gotoidx_(-1)
106 enum FlowStackTag { IfTag, ElseTag, DefTag, DoTag, DoWhileTag, ForTag };
117 bool getActionsFromFile(
const char*);
118 bool insertActionsFromFile(
const char*);
122 void pause(
bool yn=
true);
128 static const char* defaultLogFilename();
146 void setSleep(
float time,
148 void setWait(
float time,
151 static bool nowExecuting();
167 void exitApplCB( CallBacker* );
171 bool doLocalAction(
uiObject* localenv,
const char* actstr);
172 bool tryAction(
const char* identname,
const char* actstr);
174 void prepareForResume();
175 void prepareForAbort();
182 void finishActivate();
183 void waitForClearance();
187 bool didInterceptSucceed(
const char* objnm);
188 const MenuInfo& interceptedMenuInfo()
const;
217 void updateLogStrm();
225 bool insertProcedure(
int defidx);
227 void moveActionIdx(
int nrlines);
232 void jump(
int extralines=0);
235 void mkThread(CallBacker*);
236 bool doAction(
const char*);
254 bool verifyWinAssert(
const char* newwinstr=0);
258 bool verifyWinState(
const char* newwinstr=0,
266 static const char* locateCmdMark(
const char* actstr);
276 bool activityStopped(
bool checkprocessing=
true,
277 bool checktimers=
true);
279 bool waitForTimers();
280 bool waitForProcessing();
284 void storeModalStatus();
291 void activateDone(CallBacker* activator);
292 void timerStartsCB(CallBacker* timer);
293 void timerStoppedCB(CallBacker* timer);
294 void timerShootsCB(CallBacker* timer);
295 void timerShotCB(CallBacker* timer);
297 void forceQtToCatchUp();
311 void dynamicMenuInterceptor(CallBacker*);
312 bool dispatchDynamicMenu(
uiMenu*);
314 void interactCB(CallBacker*);
315 void executeFinishedCB(CallBacker*);
316 void killTaskRunnerCB(CallBacker*);
329 const char* curWinTitle(
int aliasnr=0)
const;
331 bool streamBlocked(
bool parse,
const char* tag);
336 void preProcSubstitutionErrMsg(
const int,
const int,
339 void checkFlowErrMsg(
const int,
const char*,
const char*);
340 void checkFlowStackErrMsg(
TypeSet<int>,
enum FlowStackTag);
342 {
return tr(
"ended in the middle of",
"something"); }
#define mExpClass(module)
Definition: commondefs.h:157
int wildmodalclosedstamp_
Definition: cmddriver.h:281
User interface main window.
Definition: uimainwin.h:34
Interface for several file and directory related services.
Definition: file.h:29
ObjectSet< Action > actions_
Definition: cmddriver.h:221
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
bool openQDlg() const
Definition: cmddriver.h:273
od_ostream & logStream()
Definition: cmddriver.h:328
OD class for stream write common access to the user log file, or std::cout in batch progs...
Definition: od_ostream.h:25
float pendingsleep_
Definition: cmddriver.h:245
Threads::Thread * execthr_
Definition: cmddriver.h:197
bool goingToChangeUiObj() const
Definition: cmddriver.h:243
BufferString winstatewin_
Definition: cmddriver.h:256
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:51
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:51
float regularsleep_
Definition: cmddriver.h:246
Command Drive
Definition: canvascommands.h:20
const char * outputDir() const
Definition: cmddriver.h:125
uiMainWin::ActModalTyp activetype_
Definition: cmddriver.h:68
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool winassertsafe_
Definition: cmddriver.h:253
void abort()
Definition: cmddriver.h:121
int gotoidx_
Definition: cmddriver.h:84
const uiString errMsg() const
Definition: cmddriver.h:123
RecoveryTag
Definition: cmddriver.h:153
int tryoutval_
Definition: cmddriver.h:211
BufferString winassertion_
Definition: cmddriver.h:251
bool isCaseSensitive() const
Definition: cmddriver.h:142
ExprInterpreter & exprInterpreter()
Definition: cmddriver.h:214
ObjectSet< const CallBacker > timeoutlist_
Definition: cmddriver.h:323
Definition: command.h:184
Definition: searchkey.h:55
WinStateType winstatetype_
Definition: cmddriver.h:257
bool curactjumped_
Definition: cmddriver.h:233
File::Path & outfp_
Definition: cmddriver.h:199
const uiObject * localSearchEnv() const
Definition: cmddriver.h:169
InterceptStatus
Definition: cmddriver.h:302
Definition: cmddriver.h:99
uiString errmsg_
Definition: cmddriver.h:196
int lastmove_
Definition: cmddriver.h:229
bool abort_
Definition: cmddriver.h:177
od_ostream & logstream_
Definition: cmddriver.h:198
Definition: cmddriver.h:99
OnErrorTag onerror_
Definition: cmddriver.h:261
Threads::Lock cmddrvlock_
Definition: cmddriver.h:275
ActModalTyp
Definition: uimainwin.h:153
Action(const char *line)
Definition: cmddriver.h:79
Definition: cmddriver.h:136
od
Definition: strattransl.h:15
ExprInterpreter * eip_
Definition: cmddriver.h:213
bool casesensitive_
Definition: cmddriver.h:238
The base class for most UI elements.
Definition: uiobj.h:35
File pathname tools.
Definition: filepath.h:35
Definition: uistring.h:88
int lastActionIdxMove() const
Definition: cmddriver.h:228
Set of BufferString objects.
Definition: bufstringset.h:25
IdentifierManager * idm_
Definition: cmddriver.h:204
int prevnrproc_
Definition: cmddriver.h:289
#define mDeclareEnumUtils(enm)
Some utilities surrounding the often needed enum <-> string table.
Definition: enums.h:188
const InteractSpec * interactspec_
Definition: cmddriver.h:318
Definition: interpretexpr.h:22
void setLogMode(LogModeTag tag)
Definition: cmddriver.h:134
LogModeTag
Definition: cmddriver.h:133
bool pause_
Definition: cmddriver.h:178
Class to help setup a callback handling.
Definition: notify.h:121
SeparString with backquotes as separators, use in most ascii files.
Definition: separstr.h:131
void setCaseSensitive(bool yn)
Definition: cmddriver.h:139
bool uiobjchange_
Definition: cmddriver.h:242
const uiMainWin * topWin(bool ignorecmddriverwins=false) const
float regularwait_
Definition: cmddriver.h:249
BufferString logfnm_
Definition: cmddriver.h:194
WinStateType
Definition: cmddriver.h:99
OnErrorTag
Definition: cmddriver.h:136
Is the base class for all threads. Start it by creating it and give it the function or CallBack to ex...
Definition: thread.h:290
Definition: cmddriver.h:302
void setRecoveryStep(RecoveryTag rt)
Definition: cmddriver.h:264
void setOutputDir(const char *od)
Definition: cmddriver.h:126
Definition: cmddriverbasics.h:196
Definition: cmddriver.h:133
ObjectSet< const char > tryoutstack_
Definition: cmddriver.h:210
Definition: cmddriver.h:99
uiObject * localsearchenv_
Definition: cmddriver.h:239
const uiMainWin * applWin() const
Definition: cmddriver.h:165
const uiString sCheckFlowStackStr()
Definition: cmddriver.h:341
int insertidx_
Definition: cmddriver.h:85
ObjectSet< const CallBacker > timerlist_
Definition: cmddriver.h:322
WindowStack winstack_
Definition: cmddriver.h:269
BufferString line_
Definition: cmddriver.h:83
bool resume_
Definition: cmddriver.h:179
void skipGreyOuts(bool yn=true)
Definition: cmddriver.h:140
InterceptStatus interceptstatus_
Definition: cmddriver.h:304
Holds data to use and close an iostream.
Definition: strmdata.h:29
float pendingwait_
Definition: cmddriver.h:248
uiMainWin * activewin_
Definition: cmddriver.h:69
bool operator!=(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:60
BufferString outdir_
Definition: cmddriver.h:193
Definition: identifierman.h:21
IdentifierManager & identifierMan()
Definition: cmddriver.h:205
int curActionIdx() const
Definition: cmddriver.h:224
BufferStringSet signatures_
Definition: cmddriver.h:72
const uiMainWin * curWin() const
Definition: cmddriver.h:270
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
RecoveryTag recoverystep_
Definition: cmddriver.h:263
int nrmodalwins_
Definition: cmddriver.h:71
bool openqdialog_
Definition: cmddriver.h:272
Definition: uitaskrunner.h:24
Notifier< CmdDriver > executeFinished
Definition: cmddriver.h:159
BufferString cmdfnm_
Definition: cmddriver.h:195
bool greyOutsSkipped() const
Definition: cmddriver.h:144
BufferString errmsg_
Definition: horizontracker.h:117
Definition: cmdfunction.h:26
int interceptonoff_
Definition: cmddriver.h:307
LogModeTag logmode_
Definition: cmddriver.h:218
bool skipgreyouts_
Definition: cmddriver.h:241
CmdDriver & drv_
Definition: cmddriver.h:192
WildcardManager & wildcardMan()
Definition: cmddriver.h:202
uiMainWin * applWin()
Definition: cmddriver.h:164
void setOnError(OnErrorTag tag)
Definition: cmddriver.h:137
void setLogFileName(const char *fnm)
Definition: cmddriver.h:130
ObjectSet< const CallBacker > activatorlist_
Definition: cmddriver.h:321
uiMainWin * applwin_
Definition: cmddriver.h:163
OnErrorTag onError() const
Definition: cmddriver.h:143
Notifier< CmdDriver > interactRequest
Definition: cmddriver.h:158
Definition: cmddriverbasics.h:177
Definition: cmddriver.h:76
bool interceptmenu_
Definition: cmddriver.h:308
InterceptMode interceptmode_
Definition: cmddriver.h:306
ModalStatus prevmodalstat_
Definition: cmddriver.h:288
uiTaskRunner * uitaskrunner_
Definition: cmddriver.h:70
Definition: cmddriver.h:62
MenuInfo interceptmenuinfo_
Definition: cmddriver.h:309
int actionidx_
Definition: cmddriver.h:222
FileMultiString interceptmenupath_
Definition: cmddriver.h:305
const char * logFileName() const
Definition: cmddriver.h:129
WildcardManager * wcm_
Definition: cmddriver.h:201
BufferStringSet wildmodalsignatures_
Definition: cmddriver.h:285
Definition: cmddriver.h:99
bool winassertcs_
Definition: cmddriver.h:252
void clearLog()
Definition: cmddriver.h:131
InterceptMode
Definition: cmddriver.h:156
Definition: cmddriver.h:102
ModalStatus curmodalstat_
Definition: cmddriver.h:287
Definition: cmddriver.h:99