void TableSerializer::link(const String& s,BitFlags& f,int m) { int v=f.get(m)?1:0; link(s,v); if(type==READER) { f.set(m,v!=0); } }
void Clear() { ClearStruct(*static_cast<FarDialogItem*>(this)); ListPos=0; strHistory.Clear(); strMask.Clear(); strData.Clear(); ID=0; IFlags.ClearAll(); AutoCount=0; AutoPtr=nullptr; UserData=0; ObjPtr=nullptr; ListPtr=nullptr; UCData=nullptr; SelStart=0; SelEnd=0; }
void Handle(LogRecord& o) { if(o.m_nLevel==LOGLEVEL_WARNING) { m_nWrnCount++; } if(o.m_nLevel>LOGLEVEL_WARNING) { m_nErrCount++; } if(flags.get(FLAG_CACHED)) { m_aMsg.push_back(o); } else if(m_refData) { m_refData->Handle(o); } }
void ClearFlags(DWORD Flags) { VMFlags.Clear(Flags); }
void SetFlags(DWORD Flags) { VMFlags.Set(Flags); }
int Done() { return DialogMode.Check(DMODE_ENDLOOP); }
int GetModeMoving() {return DialogMode.Check(DMODE_ISCANMOVE);}
void SetModeMoving(int IsMoving) { DialogMode.Change(DMODE_ISCANMOVE,IsMoving);}
void SetAutocomplete(bool State) {State? ECFlags.Set(EC_ENABLEAUTOCOMPLETE) : ECFlags.Clear(EC_ENABLEAUTOCOMPLETE);}
void SetDialogMode(DWORD Flags) { DialogMode.Set(Flags); }
BOOL CheckFlags(DWORD NewFlags) { return Flags.Check(NewFlags); }
BOOL IsPluginsLoaded() { return Flags.Check(PSIF_PLUGINSLOADDED); }
void SkipFlags(DWORD NewFlags) { Flags.Clear(NewFlags); }
void SetFlags(DWORD NewFlags) { Flags.Set(NewFlags); }
bool CheckWorkFlags(DWORD flags) { return WorkFlags.Check(flags)==TRUE; }
BOOL CheckFlags(DWORD Flags) const { return VMFlags.Check(Flags); }
DWORD ChangeFlags(DWORD Flags,BOOL Status) {return VMFlags.Change(Flags,Status);}
bool CheckDialogMode(DWORD Flags) { return DialogMode.Check(Flags)!=FALSE; }
bool GetAutocomplete() {return ECFlags.Check(EC_ENABLEAUTOCOMPLETE) != 0;}
int IsMoving() {return DialogMode.Check(DMODE_DRAGGED);}