summaryrefslogtreecommitdiff
path: root/plugins/Actman/i_visual.inc
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Actman/i_visual.inc')
-rw-r--r--plugins/Actman/i_visual.inc1073
1 files changed, 0 insertions, 1073 deletions
diff --git a/plugins/Actman/i_visual.inc b/plugins/Actman/i_visual.inc
deleted file mode 100644
index ab32488165..0000000000
--- a/plugins/Actman/i_visual.inc
+++ /dev/null
@@ -1,1073 +0,0 @@
-{Dialog visual part, depends of Dialog window}
- procedure SHControl(ctrl,mode:dword);
- begin
- ShowWindow(GetDlgItem(Dialog,ctrl),mode);
- end;
-
- procedure SetupControls(group,mode:dword);
- begin
- case group of
- ACT_CONTACT: begin
- SHControl(IDC_STAT_CONTACT,mode);
- SHControl(IDC_CONTACTLIST ,mode);
- SHControl(IDC_CNT_KEEP ,mode);
- SHControl(IDC_CNT_FILTER ,mode);
- SHControl(IDC_STAT_FORMAT ,mode);
- SHControl(IDC_EDIT_FORMAT ,mode);
- SHControl(IDC_CNT_APPLY ,mode);
- SHControl(IDC_STAT_FHELP ,mode);
- end;
- ACT_SERVICE: begin
- SHControl(IDC_STAT_WPAR ,mode);
- SHControl(IDC_STAT_LPAR ,mode);
- SHControl(IDC_STAT_WPAR1 ,mode);
- SHControl(IDC_STAT_LPAR1 ,mode);
- SHControl(IDC_STAT_SERVICE,mode);
- SHControl(IDC_EDIT_SERVICE,mode);
- SHControl(IDC_SRV_SRVC ,mode);
- SHControl(IDC_FLAG_WPAR ,mode);
- SHControl(IDC_FLAG_LPAR ,mode);
-
- SHControl(IDC_RES_GROUP ,mode);
- SHControl(IDC_RES_POPUP ,mode);
- SHControl(IDC_RES_MESSAGE ,mode);
- SHControl(IDC_RES_INSERT ,mode);
-
- SHControl(IDC_SRV_RESULT ,mode);
- SHControl(IDC_SRV_RESSTAT ,mode);
-
- if mode=SW_SHOW then
- begin
-//!! Check parameter type
- if CB_GetData(GetDlgItem(Dialog,IDC_FLAG_WPAR))=ptStruct then
-// if SendDlgItemMessage(Dialog,IDC_FLAG_WPAR,CB_GETCURSEL,0,0)=ptStruct then
- begin
- SHControl(IDC_WSTRUCT ,SW_SHOW);
- SHControl(IDC_EDIT_WPAR,SW_HIDE);
- SHControl(IDC_SRV_WPAR ,SW_HIDE);
- end
- else
- begin
- SHControl(IDC_WSTRUCT ,SW_HIDE);
- SHControl(IDC_EDIT_WPAR,SW_SHOW);
- SHControl(IDC_SRV_WPAR ,SW_SHOW);
- end;
- if CB_GetData(GetDlgItem(Dialog,IDC_FLAG_LPAR))=ptStruct then
-// if SendDlgItemMessage(Dialog,IDC_FLAG_LPAR,CB_GETCURSEL,0,0)=ptStruct then
- begin
- SHControl(IDC_LSTRUCT ,SW_SHOW);
- SHControl(IDC_EDIT_LPAR,SW_HIDE);
- SHControl(IDC_SRV_LPAR ,SW_HIDE);
- end
- else
- begin
- SHControl(IDC_LSTRUCT ,SW_HIDE);
- SHControl(IDC_EDIT_LPAR,SW_SHOW);
- SHControl(IDC_SRV_LPAR ,SW_SHOW);
- end;
-
- case CB_GetData(GetDlgItem(Dialog,IDC_SRV_RESULT)) of
- sresHex: ;
- sresInt: SHControl(IDC_RES_SIGNED,SW_SHOW);
- sresString: begin
- SHControl(IDC_RES_UNICODE,SW_SHOW);
- SHControl(IDC_RES_FREEMEM,SW_SHOW);
- end;
- sresStruct: ;
- end;
-
- end
- else
- begin
- SHControl(IDC_WSTRUCT ,SW_HIDE);
- SHControl(IDC_LSTRUCT ,SW_HIDE);
- SHControl(IDC_SRV_WPAR ,SW_HIDE);
- SHControl(IDC_SRV_LPAR ,SW_HIDE);
- SHControl(IDC_EDIT_WPAR ,SW_HIDE);
- SHControl(IDC_EDIT_LPAR ,SW_HIDE);
- SHControl(IDC_RES_FREEMEM,SW_HIDE);
- SHControl(IDC_RES_UNICODE,SW_HIDE);
- SHControl(IDC_RES_SIGNED ,SW_HIDE);
- end;
- end;
- ACT_PROGRAM: begin
- SHControl(IDC_PROCESS_GROUP,mode);
- SHControl(IDC_PROGRAM ,mode);
- SHControl(IDC_EDIT_PROCTIME,mode);
- SHControl(IDC_EDIT_PRGPATH ,mode);
- SHControl(IDC_PRG_PRG ,mode);
- SHControl(IDC_EDIT_PRGARGS ,mode);
- SHControl(IDC_PRG_ARG ,mode);
- SHControl(IDC_STAT_PROCTIME,mode);
- SHControl(IDC_STAT_PRGPATH ,mode);
- SHControl(IDC_STAT_PRGARGS ,mode);
-
- SHControl(IDC_PRSTART_GROUP,mode);
- SHControl(IDC_FLAG_NORMAL ,mode);
- SHControl(IDC_FLAG_HIDDEN ,mode);
- SHControl(IDC_FLAG_MAXIMIZE,mode);
- SHControl(IDC_FLAG_MINIMIZE,mode);
-
- SHControl(IDC_FLAG_CURPATH,mode);
- SHControl(IDC_FLAG_CONTINUE,mode);
- SHControl(IDC_FLAG_PARALLEL,mode);
-
- if mode=SW_SHOW then
- begin
- if isVarsInstalled then
- SHControl(IDC_HLP_FVARS,SW_SHOW);
- end
- else
- SHControl(IDC_HLP_FVARS,SW_HIDE);
- end;
- ACT_TEXT: begin
- SHControl(IDC_FLAG_CLIP ,mode);
- SHControl(IDC_FLAG_MESSAGE,mode);
- SHControl(IDC_CLIP_COPYTO ,mode);
- SHControl(IDC_CLIP_PASTE ,mode);
- SHControl(IDC_CLIP_GROUP ,mode);
- SHControl(IDC_FILE_ENC ,mode);
-
- SHControl(IDC_FLAG_FILE ,mode);
- SHControl(IDC_FILE_PATH ,mode);
- SHControl(IDC_TXT_FILE ,mode);
- SHControl(IDC_FILE_FILEBTN,mode);
- SHControl(IDC_FILE_READ ,mode);
- SHControl(IDC_FILE_WRITE ,mode);
- SHControl(IDC_FILE_APPEND ,mode);
- SHControl(IDC_FILE_GROUP ,mode);
-
- SHControl(IDC_TXT_TEXT ,mode);
- SHControl(IDC_EDIT_INSERT ,mode);
- SHControl(IDC_STAT_INSERT ,mode);
-
- if mode=SW_SHOW then
- begin
- if isVarsInstalled then
- SHControl(IDC_HLP_VARS,SW_SHOW);
- end
- else
- SHControl(IDC_HLP_VARS,SW_HIDE);
- end;
- ACT_ADVANCE: begin
- SHControl(IDC_CONDITION,mode);
- SHControl(IDC_FLAG_GT ,mode);
- SHControl(IDC_FLAG_LT ,mode);
- SHControl(IDC_FLAG_EQ ,mode);
- SHControl(IDC_FLAG_NOP ,mode);
- SHControl(IDC_FLAG_NOT ,mode);
- SHControl(IDC_ADV_VALUE,mode);
- SHControl(IDC_STAT_VAL ,mode);
- SHControl(IDC_ADV_ASINT,mode);
-
- SHControl(IDC_OPERATION ,mode);
- SHControl(IDC_FLAG_BREAK,mode);
- SHControl(IDC_FLAG_JUMP ,mode);
- SHControl(IDC_FLAG_ANOP ,mode);
-
- SHControl(IDC_FLAG_MATH,mode);
- SHControl(IDC_ADV_OPER ,mode);
- SHControl(IDC_ADV_VAL2 ,mode);
- SHControl(IDC_ADV_VAL1 ,mode);
-
- if mode=SW_SHOW then
- begin
- if isVarsInstalled then
- SHControl(IDC_ADV_HVARS,SW_SHOW);
- end
- else
- SHControl(IDC_ADV_HVARS,SW_HIDE);
- SHControl(IDC_FLAG_VARS,mode);
- SHControl(IDC_ADV_VARS ,mode);
- end;
- ACT_CHAIN: begin
- SHControl(IDC_STAT_GROUPS,mode);
- SHControl(IDC_GROUP_LIST ,mode);
- end;
- ACT_RW: begin
- SHControl(IDC_STAT_CONTACT,mode);
- SHControl(IDC_CONTACTLIST ,mode);
-
- SHControl(IDC_RW_OPER ,mode);
- SHControl(IDC_RW_VAL ,mode);
- SHControl(IDC_RW_READ ,mode);
- SHControl(IDC_RW_WRITE ,mode);
- SHControl(IDC_RW_DELETE ,mode);
- SHControl(IDC_RW_STATM ,mode);
- SHControl(IDC_RW_MODULE ,mode);
- SHControl(IDC_RW_STATS ,mode);
- SHControl(IDC_RW_SETTING,mode);
- SHControl(IDC_RW_TVAR ,mode);
-
- if mode=SW_SHOW then
- begin
- if CB_GetData(GetDlgItem(Dialog,IDC_RW_DATATYPE))>2 then
- begin
- SHControl(IDC_RW_VALUE,SW_HIDE);
- SHControl(IDC_RW_TEXT ,SW_SHOW);
- end
- else
- begin
- SHControl(IDC_RW_VALUE,SW_SHOW);
- SHControl(IDC_RW_TEXT ,SW_HIDE);
- end
- end
- else
- begin
- SHControl(IDC_RW_VALUE,SW_HIDE);
- SHControl(IDC_RW_TEXT ,SW_HIDE);
- end;
- SHControl(IDC_RW_DATATYPE,mode);
-
- SHControl(IDC_RW_CURRENT,mode);
- SHControl(IDC_RW_PARAM ,mode);
- SHControl(IDC_RW_RESULT ,mode);
- SHControl(IDC_RW_MANUAL ,mode);
- SHControl(IDC_RW_LAST ,mode);
-
- SHControl(IDC_RW_MVAR ,mode);
- SHControl(IDC_RW_SVAR ,mode);
- end;
- ACT_MESSAGE: begin
- SHControl(IDC_MSG_KEEP ,mode);
- SHControl(IDC_MSG_STAT1 ,mode);
- SHControl(IDC_MSG_STAT2 ,mode);
- SHControl(IDC_MSG_TITLE ,mode);
- SHControl(IDC_MSG_TEXT ,mode);
- SHControl(IDC_MSG_BTNS ,mode);
- SHControl(IDC_MSGB_ARI ,mode);
- SHControl(IDC_MSGB_OK ,mode);
- SHControl(IDC_MSGB_OC ,mode);
- SHControl(IDC_MSGB_RC ,mode);
- SHControl(IDC_MSGB_YN ,mode);
- SHControl(IDC_MSGB_YNC ,mode);
- SHControl(IDC_MSG_ICONS ,mode);
- SHControl(IDC_MSGI_NONE ,mode);
- SHControl(IDC_MSGI_WARN ,mode);
- SHControl(IDC_MSGI_INFO ,mode);
- SHControl(IDC_MSGI_QUEST,mode);
- SHControl(IDC_MSGI_ERROR,mode);
-
- SHControl(IDC_MSG_TTL ,mode);
- SHControl(IDC_MSG_TXT ,mode);
- end;
- end;
- end;
-
- procedure SetButtonOnOff(ctrl,state:dword);
- begin
- CheckDlgButton(Dialog,ctrl,state);
- case ctrl of
- IDC_SRV_WPAR,
- IDC_SRV_LPAR,
- IDC_SRV_SRVC,
- IDC_PRG_PRG ,
- IDC_PRG_ARG ,
- IDC_TXT_FILE,
- IDC_TXT_TEXT,
- IDC_RW_MVAR ,
- IDC_RW_SVAR ,
- IDC_RW_TVAR ,
- IDC_MSG_TTL ,
- IDC_MSG_TXT : SetButtonIcon(GetDlgItem(Dialog,ctrl),checknames[state]);
- end;
- end;
-
- procedure ButtonOff(ctrl:dword); {$IFDEF MSWINDOWS}inline;{$ENDIF}
- begin
- SetButtonOnOff(ctrl,BST_UNCHECKED);
- end;
-
- procedure ButtonOn(ctrl:dword); {$IFDEF MSWINDOWS}inline;{$ENDIF}
- begin
- SetButtonOnOff(ctrl,BST_CHECKED);
- end;
-
- procedure TextClear(ctrl:dword);
- begin
- SetDlgItemTextW(Dialog,ctrl,nil);
- end;
-
- function FixParam(buf:PAnsiChar;flag:integer):integer;
- begin
- if lstrcmpia(buf,Translate('hContact' ))=0 then result:=ptCurrent
- else if lstrcmpia(buf,Translate('parameter'))=0 then result:=ptParam
- else if lstrcmpia(buf,Translate('result' ))=0 then result:=ptResult
- else if lstrcmpia(buf,Translate('structure'))=0 then result:=ptStruct
- else
- begin
- if (buf[0] in ['0'..'9']) or ((buf[0]='-') and (buf[1] in ['0'..'9'])) or
- ((buf[0]='$') and (buf[1] in sHexNum)) then
- result:=ptNumber
- else
- result:=ptString;
- end;
-
- CB_SelectData(Dialog,flag,result);
-// SendDlgItemMessage(Dialog,flag,CB_SETCURSEL,result,0);
- SendMessage(Dialog,WM_COMMAND,(CBN_SELCHANGE shl 16) or flag,GetDlgItem(Dialog,flag));
- end;
-
- procedure ReloadService;
- var
- pc:pAnsiChar;
- buf,buf1:array [0..MaxDescrLen] of AnsiChar;
- wnd:hwnd;
- i:integer;
-// bufw:array [0..MaxDescrLen] of WideChar;
- begin
- wnd:=GetDlgItem(Dialog,IDC_EDIT_SERVICE);
- SendMessageA(wnd,CB_GETLBTEXT,SendMessage(wnd,CB_GETCURSEL,0,0),tlparam(@buf));
- ApiCard.Service:=@buf;
-
- pc:=ApiCard.FillParams(GetDlgItem(Dialog,IDC_EDIT_WPAR),true);
- if pc<>nil then
- begin
- if GetDlgItemTextA(Dialog,IDC_EDIT_WPAR,buf1,SizeOf(buf1))>0 then
- case FixParam(@buf1,IDC_FLAG_WPAR) of
- ptStruct: begin
- mFreeMem(wstruct);
- StrDup(wstruct,StrScan(pc,'|')+1);
-// AnsiToWide(StrScan(pc,'|')+1,wstruct,MirandaCP);
- end;
- end;
- mFreeMem(pc);
- end;
-
- pc:=ApiCard.FillParams(GetDlgItem(Dialog,IDC_EDIT_LPAR),false);
- if pc<>nil then
- begin
- if GetDlgItemTextA(Dialog,IDC_EDIT_LPAR,buf1,SizeOf(buf1))>0 then
- case FixParam(@buf1,IDC_FLAG_LPAR) of
- ptStruct: begin
- mFreeMem(lstruct);
- StrDup(lstruct,StrScan(pc,'|')+1);
-// AnsiToWide(StrScan(pc,'|')+1,lstruct,MirandaCP);
- end;
- end;
- mFreeMem(pc);
- end;
-
- pc:=ApiCard.ResultType;
- i:=sresInt;
- if pc<>nil then
- begin
- if lstrcmpia(pc,'struct')=0 then i:=sresStruct
- else if lstrcmpia(pc,'hex' )=0 then i:=sresHex
- else if lstrcmpia(pc,'int')=0 then
- begin
- i:=sresInt;
- ButtonOff(IDC_RES_SIGNED);
- end
- else if lstrcmpia(pc,'signed')=0 then
- begin
- i:=sresInt;
- ButtonOn(IDC_RES_SIGNED);
- end
- else if lstrcmpia(pc,'str')=0 then
- begin
- i:=sresString;
- ButtonOff(IDC_RES_UNICODE);
- end
- else if lstrcmpia(pc,'wide')=0 then
- begin
- i:=sresString;
- ButtonOn(IDC_RES_UNICODE);
- end;
- mFreeMem(pc);
- end;
- CB_SelectData(Dialog,IDC_SRV_RESULT,i);
-
-// ApiCard.Show;
- end;
-
- procedure SelectActionType(group:dword);
- var
- i:integer;
- begin
- for i:=0 to ACT_MAXTYPE-1 do
- if ActIds[i].code=group then break;
- SendDlgItemMessage(Dialog,IDC_ACTION_TYPE,CB_SETCURSEL,i,0);
- end;
-
- procedure ClearControls(group:dword);
- begin
-//! SelectActionType(group);
- case group of
- ACT_CONTACT: begin
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),true);
- SendDlgItemMessage(Dialog,IDC_CONTACTLIST,CB_SETCURSEL,0,0);
- ButtonOff(IDC_CNT_KEEP);
- ButtonOff(IDC_CNT_FILTER);
- TextClear(IDC_EDIT_FORMAT);
- end;
- ACT_SERVICE: begin
- TextClear(IDC_EDIT_SERVICE);
- TextClear(IDC_EDIT_WPAR);
- TextClear(IDC_EDIT_LPAR);
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_WPAR),true);
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_LPAR),true);
-// SendDlgItemMessage(Dialog,IDC_FLAG_WPAR,CB_SETCURSEL,0,0);
-// SendDlgItemMessage(Dialog,IDC_FLAG_LPAR,CB_SETCURSEL,0,0);
- CB_SelectData(GetDlgItem(Dialog,IDC_FLAG_WPAR),ptNumber);
- CB_SelectData(GetDlgItem(Dialog,IDC_FLAG_LPAR),ptNumber);
-
- CB_SelectData(GetDlgItem(Dialog,IDC_SRV_RESULT),sresInt);
-
- SendMessage(GetDlgItem(Dialog,IDC_EDIT_WPAR),CB_RESETCONTENT,0,0);
- SendMessage(GetDlgItem(Dialog,IDC_EDIT_LPAR),CB_RESETCONTENT,0,0);
-
- ButtonOff(IDC_RES_POPUP);
- ButtonOff(IDC_RES_MESSAGE);
- ButtonOff(IDC_RES_INSERT);
-
- ButtonOff(IDC_RES_FREEMEM);
- ButtonOff(IDC_RES_UNICODE);
- ButtonOff(IDC_RES_SIGNED);
-
- ButtonOff(IDC_SRV_WPAR);
- ButtonOff(IDC_SRV_LPAR);
- ButtonOff(IDC_SRV_SRVC);
- end;
- ACT_PROGRAM: begin
- TextClear(IDC_EDIT_PROCTIME);
- TextClear(IDC_EDIT_PRGPATH);
- TextClear(IDC_EDIT_PRGARGS);
-
- ButtonOff(IDC_FLAG_NORMAL);
- ButtonOff(IDC_FLAG_HIDDEN);
- ButtonOff(IDC_FLAG_MINIMIZE);
- ButtonOff(IDC_FLAG_MAXIMIZE);
-
- ButtonOff(IDC_FLAG_CURPATH);
- ButtonOff(IDC_FLAG_CONTINUE);
- ButtonOff(IDC_FLAG_PARALLEL);
-
- ButtonOff(IDC_PRG_PRG);
- ButtonOff(IDC_PRG_ARG);
- end;
- ACT_TEXT: begin
- ButtonOff(IDC_FLAG_CLIP);
- ButtonOff(IDC_FLAG_MESSAGE);
- ButtonOff(IDC_CLIP_COPYTO);
- ButtonOff(IDC_CLIP_PASTE);
-
- ButtonOff(IDC_FLAG_FILE);
- TextClear(IDC_FILE_PATH);
- ButtonOff(IDC_FILE_READ);
- ButtonOff(IDC_FILE_WRITE);
- ButtonOff(IDC_FILE_APPEND);
-
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_INSERT ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_COPYTO ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_PASTE ),false);
-
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_ENC ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_PATH ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_FILEBTN),false);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_READ ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_WRITE ),false);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_APPEND ),false);
-
- TextClear(IDC_EDIT_INSERT);
-
- ButtonOff(IDC_TXT_FILE);
- ButtonOff(IDC_TXT_TEXT);
- end;
- ACT_ADVANCE: begin
- ButtonOff(IDC_FLAG_GT);
- ButtonOff(IDC_FLAG_LT);
- ButtonOff(IDC_FLAG_EQ);
- ButtonOff(IDC_FLAG_NOP);
- ButtonOff(IDC_FLAG_NOT);
- TextClear(IDC_ADV_VALUE);
-
- ButtonOff(IDC_FLAG_BREAK);
- ButtonOff(IDC_FLAG_JUMP);
- ButtonOff(IDC_FLAG_ANOP);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL2),false);
-
- ButtonOff(IDC_FLAG_MATH);
- SendDlgItemMessage(Dialog,IDC_ADV_OPER,CB_SETCURSEL,0,0);
- TextClear(IDC_ADV_VAL1);
- ButtonOff(IDC_ADV_ASINT);
-
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_OPER),false);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL1),false);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VARS),false);
-
- ButtonOff(IDC_FLAG_VARS);
- TextClear(IDC_ADV_VARS);
- end;
- ACT_CHAIN: begin
-// FillChainList(Dialog);
- SendDlgItemMessage(Dialog,IDC_GROUP_LIST,CB_SETCURSEL,0,0);
- end;
- ACT_RW: begin
- ButtonOff(IDC_RW_READ);
- ButtonOff(IDC_RW_WRITE);
- ButtonOff(IDC_RW_DELETE);
- SendDlgItemMessage(Dialog,IDC_CONTACTLIST,CB_SETCURSEL,0,0);
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),true);
- TextClear(IDC_CONTACTLIST);
- TextClear(IDC_RW_MODULE);
- TextClear(IDC_RW_SETTING);
- TextClear(IDC_RW_VALUE);
- TextClear(IDC_RW_TEXT);
-
- ButtonOff(IDC_RW_CURRENT);
- ButtonOff(IDC_RW_PARAM);
- ButtonOff(IDC_RW_RESULT);
- ButtonOff(IDC_RW_MANUAL);
- ButtonOff(IDC_RW_LAST);
-
- ButtonOff(IDC_RW_MVAR);
- ButtonOff(IDC_RW_SVAR);
- ButtonOff(IDC_RW_TVAR);
- end;
- ACT_MESSAGE: begin
- TextClear(IDC_MSG_TITLE);
- TextClear(IDC_MSG_TEXT);
- ButtonOff(IDC_MSG_KEEP);
- ButtonOff(IDC_MSGB_OK);
- ButtonOff(IDC_MSGB_OC);
- ButtonOff(IDC_MSGB_ARI);
- ButtonOff(IDC_MSGB_YNC);
- ButtonOff(IDC_MSGB_YN);
- ButtonOff(IDC_MSGB_RC);
- ButtonOff(IDC_MSGI_NONE);
- ButtonOff(IDC_MSGI_ERROR);
- ButtonOff(IDC_MSGI_QUEST);
- ButtonOff(IDC_MSGI_WARN);
- ButtonOff(IDC_MSGI_INFO);
-
- ButtonOff(IDC_MSG_TTL);
- ButtonOff(IDC_MSG_TXT);
- end;
- end;
- end;
-
- procedure ClearDialogData;
- begin
- ClearControls(ACT_CONTACT);
- ClearControls(ACT_SERVICE);
- ClearControls(ACT_PROGRAM);
- ClearControls(ACT_TEXT);
- ClearControls(ACT_ADVANCE);
- ClearControls(ACT_CHAIN);
- ClearControls(ACT_RW);
- ClearControls(ACT_MESSAGE);
- mFreeMem(wstruct);
- mFreeMem(lstruct);
- end;
-
- procedure SHWindows(exclude:dword=0);
- begin
- SetupControls(ACT_CONTACT,SW_HIDE);
- SetupControls(ACT_SERVICE,SW_HIDE);
- SetupControls(ACT_PROGRAM,SW_HIDE);
- SetupControls(ACT_TEXT ,SW_HIDE);
- SetupControls(ACT_ADVANCE,SW_HIDE);
- SetupControls(ACT_CHAIN ,SW_HIDE);
- SetupControls(ACT_RW ,SW_HIDE);
- SetupControls(ACT_MESSAGE,SW_HIDE);
-{
- if exclude<>ACT_CONTACT then SetupControls(ACT_CONTACT,SW_HIDE);
- if exclude<>ACT_SERVICE then SetupControls(ACT_SERVICE,SW_HIDE);
- if exclude<>ACT_PROGRAM then SetupControls(ACT_PROGRAM,SW_HIDE);
- if exclude<>ACT_TEXT then SetupControls(ACT_TEXT ,SW_HIDE);
- if exclude<>ACT_ADVANCE then SetupControls(ACT_ADVANCE,SW_HIDE);
- if exclude<>ACT_CHAIN then SetupControls(ACT_CHAIN ,SW_HIDE);
- if exclude<>ACT_RW then SetupControls(ACT_RW ,SW_HIDE);
-}
- case exclude of
- ACT_CONTACT,
- ACT_SERVICE,
- ACT_PROGRAM,
- ACT_TEXT ,
- ACT_ADVANCE,
- ACT_CHAIN ,
- ACT_RW ,
- ACT_MESSAGE: begin
- SetupControls(exclude,SW_SHOW);
- end;
- end;
- end;
-
- procedure SHActButtons(mode:integer);
- begin
- ShowWindow(GetDlgItem(Dialog,IDC_STAT_ACTION),mode);
- ShowWindow(GetDlgItem(Dialog,IDC_ACTION_TYPE),mode);
- end;
-
- procedure InitDef(exclude:dword=0);
- begin
- if exclude<>ACT_CONTACT then
- begin
- ButtonOn(IDC_CNT_FILTER);
- // do nothing
- end;
- if exclude<>ACT_SERVICE then
- begin
- CB_SelectData(Dialog,IDC_SRV_RESULT,sresInt);
- end;
- if exclude<>ACT_PROGRAM then
- begin
- ButtonOn(IDC_FLAG_PARALLEL);
- ButtonOn(IDC_FLAG_NORMAL);
- SetDlgItemInt(Dialog,IDC_EDIT_PROCTIME,0,false);
- end;
- if exclude<>ACT_TEXT then
- begin
- ButtonOn(IDC_FLAG_CLIP);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_COPYTO),true);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_PASTE ),true);
- ButtonOn(IDC_CLIP_COPYTO);
-
- ButtonOn(IDC_FILE_READ);
- // do nothing
- end;
- if exclude<>ACT_ADVANCE then
- begin
- ButtonOn(IDC_FLAG_NOP);
- ButtonOn(IDC_FLAG_ANOP);
- SetDlgItemInt(Dialog,IDC_ADV_VALUE,0,false);
- SetDlgItemInt(Dialog,IDC_ADV_VAL1 ,0,false);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL1),false);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL2),false);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_OPER),false);
-// SendDlgItemMessage(Dialog,IDC_ADV_OPER,CB_SETCURSEL,0,0);
- CB_SelectData(Dialog,IDC_ADV_OPER,ORD(aeNot));
- end;
- if exclude<>ACT_CHAIN then
- begin
-// FillChainList(Dialog);
- SendDlgItemMessage(Dialog,IDC_GROUP_LIST,CB_SETCURSEL,0,0);
- end;
- if exclude<>ACT_RW then
- begin
- ButtonOn(IDC_RW_READ);
- SetDlgItemInt(Dialog,IDC_RW_VALUE,0,false);
- ButtonOn(IDC_RW_MANUAL);
- EnableWindow(GetDlgItem(Dialog,IDC_RW_VALUE),true);
- EnableWindow(GetDlgItem(Dialog,IDC_RW_TEXT ),true);
- end;
- if exclude<>ACT_MESSAGE then
- begin
- ButtonOn(IDC_MSGB_OK);
- ButtonOn(IDC_MSGI_NONE);
- end;
- end;
-
- // set buttons by options
- procedure FillAction(CurAction:integer);
- var
- i:integer;
- bb:boolean;
- wnd:HWND;
- begin
- with NewActionList^[CurAction] do
- begin
- if (flags and ACF_ASSIGNED)=0 then
- exit;
- if actionType=0 then
- actionType:=ACT_CONTACT;
-
- InitDef(actionType);
- SelectActionType(actionType);
- case actionType of
-
- ACT_CONTACT: begin
- if (flags and ACF_KEEPONLY)<>0 then
- ButtonOn(IDC_CNT_KEEP);
- if fCLfilter then
- ButtonOn(IDC_CNT_FILTER);
- SetDlgItemTextW(Dialog,IDC_EDIT_FORMAT,fCLformat);
-
- SendDlgItemMessage(Dialog,IDC_CONTACTLIST,CB_SETCURSEL,
- FindContact(GetDlgItem(Dialog,IDC_CONTACTLIST),contact),0);
- end;
-
- ACT_SERVICE: begin
- if SendDlgItemMessageA(Dialog,IDC_EDIT_SERVICE,CB_SELECTSTRING,twparam(-1),tlparam(service))<>CB_ERR then
- ReloadService
- else
- SetDlgItemTextA(Dialog,IDC_EDIT_SERVICE,service);
-
- if (flags2 and ACF2_SRV_WPAR)<>0 then ButtonOn(IDC_SRV_WPAR);
- if (flags2 and ACF2_SRV_LPAR)<>0 then ButtonOn(IDC_SRV_LPAR);
- if (flags2 and ACF2_SRV_SRVC)<>0 then ButtonOn(IDC_SRV_SRVC);
-
- if (flags and ACF_MESSAGE)<>0 then ButtonOn(IDC_RES_MESSAGE);
- if (flags and ACF_POPUP )<>0 then ButtonOn(IDC_RES_POPUP);
- if (flags and ACF_INSERT )<>0 then ButtonOn(IDC_RES_INSERT);
-
- if (flags and ACF_HEX)<>0 then
- i:=sresHex
- else if (flags and ACF_STRUCT)<>0 then
- i:=sresStruct
- else if (flags and ACF_STRING)<>0 then
- begin
- i:=sresString;
- if (flags and ACF_UNICODE )<>0 then ButtonOn(IDC_RES_UNICODE);
- if (flags2 and ACF2_FREEMEM)<>0 then ButtonOn(IDC_RES_FREEMEM);
- end
- else
- begin
- i:=sresInt;
- if (flags and ACF_SIGNED)<>0 then
- ButtonOn(IDC_RES_SIGNED);
- end;
- CB_SelectData(Dialog,IDC_SRV_RESULT,i);
-
- if (flags and ACF_WPARAM)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_WPAR),false);
- i:=ptParam;
- end
- else if (flags and ACF_WRESULT)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_WPAR),false);
- i:=ptResult;
- end
- else if (flags and ACF_WPARNUM)<>0 then
- begin
- if (flags and ACF_WCURRENT)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_WPAR),false);
- i:=ptCurrent
- end
- else
- begin
- i:=ptNumber;
- SetNumValue(GetDlgItem(Dialog,IDC_EDIT_WPAR),wparam,
- (flags2 and ACF2_SRV_WPAR)<>0,
- (flags2 and ACF2_SRV_WHEX)<>0);
-// SetDlgItemInt(Dialog,IDC_EDIT_WPAR,wparam,true)
- end;
- end
- else if (flags and ACF_WSTRUCT)<>0 then
- begin
- i:=ptStruct;
- SHControl(IDC_EDIT_WPAR,SW_HIDE);
- SHControl(IDC_WSTRUCT ,SW_SHOW);
- mFreeMem(wstruct);
- StrDup(wstruct,PAnsiChar(wparam));
- end
- else if (flags and ACF_WUNICODE)<>0 then
- begin
- i:=ptUnicode;
- SetDlgItemTextW(Dialog,IDC_EDIT_WPAR,pWideChar(wparam));
- end
- else
- begin
- i:=ptString;
- SetDlgItemTextA(Dialog,IDC_EDIT_WPAR,PAnsiChar(wparam));
- end;
- CB_SelectData(GetDlgItem(Dialog,IDC_FLAG_WPAR),i);
- SendDlgItemMessage(Dialog,IDC_FLAG_WPAR,CB_SETCURSEL,i,0);
-
- if (flags and ACF_LPARAM)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_LPAR),false);
- i:=ptParam;
- end
- else if (flags and ACF_LRESULT)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_LPAR),false);
- i:=ptResult;
- end
- else if (flags and ACF_LPARNUM)<>0 then
- begin
- if (flags and ACF_LCURRENT)<>0 then
- begin
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_LPAR),false);
- i:=ptCurrent;
- end
- else
- begin
- i:=ptNumber;
- SetNumValue(GetDlgItem(Dialog,IDC_EDIT_LPAR),lparam,
- (flags2 and ACF2_SRV_LPAR)<>0,
- (flags2 and ACF2_SRV_LHEX)<>0);
-// SetDlgItemInt(Dialog,IDC_EDIT_LPAR,lparam,true)
- end;
- end
- else if (flags and ACF_LSTRUCT)<>0 then
- begin
- i:=ptStruct;
- SHControl(IDC_EDIT_LPAR,SW_HIDE);
- SHControl(IDC_LSTRUCT ,SW_SHOW);
- mFreeMem(lstruct);
- StrDup(lstruct,PAnsiChar(lparam));
- end
- else if (flags and ACF_LUNICODE)<>0 then
- begin
- i:=ptUnicode;
- SetDlgItemTextW(Dialog,IDC_EDIT_LPAR,pWideChar(lparam));
- end
- else
- begin
- i:=ptString;
- SetDlgItemTextA(Dialog,IDC_EDIT_LPAR,PAnsiChar(lparam));
- end;
- CB_SelectData(GetDlgItem(Dialog,IDC_FLAG_LPAR),i);
-
- end;
-
- ACT_PROGRAM: begin
- if (flags2 and ACF2_PRG_PRG)<>0 then
- ButtonOn(IDC_PRG_PRG);
- if (flags2 and ACF2_PRG_ARG)<>0 then
- ButtonOn(IDC_PRG_ARG);
-
- SetDlgItemTextW(Dialog,IDC_EDIT_PRGPATH ,prgname);
- SetDlgItemTextW(Dialog,IDC_EDIT_PRGARGS ,args);
- SetDlgItemInt (Dialog,IDC_EDIT_PROCTIME,time,false);
- case show of
- SW_HIDE : ButtonOn(IDC_FLAG_HIDDEN);
- SW_SHOWMINIMIZED: ButtonOn(IDC_FLAG_MINIMIZE);
- SW_SHOWMAXIMIZED: ButtonOn(IDC_FLAG_MAXIMIZE);
- else
- {SW_SHOWNORMAL :} ButtonOn(IDC_FLAG_NORMAL);
- end;
- if (flags and ACF_CURPATH)<>0 then
- ButtonOn(IDC_FLAG_CURPATH);
- if (flags and ACF_PRTHREAD)<>0 then
- ButtonOn(IDC_FLAG_PARALLEL)
- else
- ButtonOn(IDC_FLAG_CONTINUE);
-
- end;
-
- ACT_TEXT: begin
- if (flags and ACF_CLIPBRD)<>0 then
- begin
- ButtonOn(IDC_FLAG_CLIP);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_COPYTO),true);
- EnableWindow(GetDlgItem(Dialog,IDC_CLIP_PASTE ),true);
- if (flags and ACF_COPYTO)<>0 then
- ButtonOn(IDC_CLIP_COPYTO)
- else
- ButtonOn(IDC_CLIP_PASTE);
-// for switches
- ButtonOn(IDC_FILE_READ);
- end
-
- else
- begin
- if (flags and (ACF_FILE or ACF_FAPPEND or ACF_FWRITE))<>ACF_FILE then
- EnableWindow(GetDlgItem(Dialog,IDC_EDIT_INSERT),true);
- SetDlgItemTextW(Dialog,IDC_EDIT_INSERT,text);
-// for switches
- ButtonOn(IDC_CLIP_COPYTO);
-
- if (flags2 and ACF2_TXT_TEXT)<>0 then
- ButtonOn(IDC_TXT_TEXT);
-
- if (flags and ACF_FILE)<>0 then
- begin
- if (flags2 and ACF2_TXT_FILE)<>0 then
- ButtonOn(IDC_TXT_FILE);
- ButtonOn(IDC_FLAG_FILE);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_PATH ),true);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_FILEBTN),true);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_READ ),true);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_WRITE ),true);
- EnableWindow(GetDlgItem(Dialog,IDC_FILE_APPEND ),true);
-
- wnd:=GetDlgItem(Dialog,IDC_FILE_ENC);
- EnableWindow(wnd,true);
- if (flags and ACF_ANSI)<>0 then
- CB_SelectData(wnd,0)
- else if (flags and ACF_UTF8)<>0 then
- begin
- if (flags and ACF_SIGN)<>0 then
- CB_SelectData(wnd,2)
- else
- CB_SelectData(wnd,1);
- end
- else if (flags and ACF_SIGN)<>0 then
- CB_SelectData(wnd,4)
- else
- CB_SelectData(wnd,3);
-
- if (flags and ACF_FAPPEND)<>0 then ButtonOn(IDC_FILE_APPEND)
- else if (flags and ACF_FWRITE )<>0 then ButtonOn(IDC_FILE_WRITE)
- else ButtonOn(IDC_FILE_READ);
- SetDlgItemTextW(Dialog,IDC_FILE_PATH,tfile);
- end
- else
- begin
- ButtonOn(IDC_FLAG_MESSAGE);
-// for switches
- ButtonOn(IDC_FILE_READ);
- end;
- end;
-
- end;
-
- ACT_ADVANCE: begin
- FillSubList(Dialog);
-// SendDlgItemMessage(Dialog,IDC_ADV_VAL2,CB_SETCURSEL,0,0);
-
- case condition and not ADV_COND_NOT of
- ADV_COND_GT: ButtonOn(IDC_FLAG_GT);
- ADV_COND_LT: ButtonOn(IDC_FLAG_LT);
- ADV_COND_EQ: ButtonOn(IDC_FLAG_EQ);
- else // ADV_COND_NOP
- ButtonOn(IDC_FLAG_NOP);
- end;
- SetDlgItemInt(Dialog,IDC_ADV_VALUE,value,false);
- if (condition and ADV_COND_NOT)<>0 then
- ButtonOn(IDC_FLAG_NOT);
-
- SetDlgItemInt(Dialog,IDC_ADV_VAL1,mathval,true);
- case action and ADV_ACTION of
- ADV_ACT_MATH: begin
- ButtonOn(IDC_FLAG_MATH);
- CB_SelectData(GetDlgItem(Dialog,IDC_ADV_OPER),oper);
-// SendDlgItemMessage(Dialog,IDC_ADV_OPER,CB_SETCURSEL,oper,0);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL1),true);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_OPER),true);
- end;
- ADV_ACT_VARS: begin
- ButtonOn(IDC_FLAG_VARS);
- if (flags and ACF_VARASINT)<>0 then
- ButtonOn(IDC_ADV_ASINT);
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VARS),true);
- SetDlgItemTextW(Dialog,IDC_ADV_VARS,varval);
- end;
- end;
- bb:=false;
- case action and ADV_ACT_POST of
- ADV_ACT_BREAK: ButtonOn(IDC_FLAG_BREAK);
- ADV_ACT_JUMP : begin
- SendDlgItemMessageW(Dialog,IDC_ADV_VAL2,CB_SELECTSTRING,twparam(-1),tlparam(operval));
- ButtonOn(IDC_FLAG_JUMP);
- bb:=true;
- end;
- else // ADV_ACT_NOP
- ButtonOn(IDC_FLAG_ANOP);
- end;
- EnableWindow(GetDlgItem(Dialog,IDC_ADV_VAL2),bb);
- end;
-
- ACT_CHAIN: begin
-// FillChainList(Dialog);
- if (flags and ACF_BYNAME)<>0 then
- SendDlgItemMessageW(Dialog,IDC_GROUP_LIST,CB_SELECTSTRING,twparam(-1),tlparam(actname))
- else
- SendDlgItemMessageW(Dialog,IDC_GROUP_LIST,CB_SELECTSTRING,twparam(-1),tlparam(GetGroupName(id)));
- end;
-
- ACT_RW: begin
- if (flags and ACF_DBDELETE)<>0 then ButtonOn(IDC_RW_DELETE)
- else if (flags and ACF_DBWRITE )= 0 then ButtonOn(IDC_RW_READ)
- else ButtonOn(IDC_RW_WRITE);
-
- bb:=false;
- if (flags and ACF_CURRENT)<>0 then
- begin
- ButtonOn(IDC_RW_CURRENT);
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),false);
- end
- else if (flags and ACF_PARAM)<>0 then
- begin
- ButtonOn(IDC_RW_PARAM);
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),false);
- end
- else if (flags and ACF_RESULT)<>0 then
- begin
- ButtonOn(IDC_RW_RESULT);
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),false);
- end
- else
- begin
- ButtonOn(IDC_RW_MANUAL);
- bb:=true;
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),true);
- SendDlgItemMessage(Dialog,IDC_CONTACTLIST,CB_SETCURSEL,
- FindContact(GetDlgItem(Dialog,IDC_CONTACTLIST),dbcontact),0);
- end;
- EnableWindow(GetDlgItem(Dialog,IDC_CONTACTLIST),bb);
-
- if (flags and ACF_LAST)<>0 then
- begin
- ButtonOn(IDC_RW_LAST);
- bb:=false;
- end
- else
- bb:=true;
- if (flags and ACF_DBDELETE)<>0 then
- bb:=false;
-
- EnableWindow(GetDlgItem(Dialog,IDC_RW_VALUE),bb);
- EnableWindow(GetDlgItem(Dialog,IDC_RW_TEXT ),bb);
-
- SetDlgItemTextA(Dialog,IDC_RW_MODULE ,dbmodule);
- SetDlgItemTextA(Dialog,IDC_RW_SETTING,dbsetting);
- if (flags2 and ACF2_RW_MVAR)<>0 then ButtonOn(IDC_RW_MVAR);
- if (flags2 and ACF2_RW_SVAR)<>0 then ButtonOn(IDC_RW_SVAR);
- if (flags2 and ACF2_RW_TVAR)<>0 then ButtonOn(IDC_RW_TVAR);
-
-
- wnd:=GetDlgItem(Dialog,IDC_RW_DATATYPE);
- if ((flags and ACF_DBANSI )=ACF_DBANSI) or
- ((flags and ACF_DBUTEXT)=ACF_DBUTEXT) then
- begin
- SHControl(IDC_RW_TEXT ,SW_SHOW);
- SHControl(IDC_RW_VALUE,SW_HIDE);
- if (flags and ACF_DBANSI)=ACF_DBANSI then
- CB_SelectData(wnd,3)
- else
- CB_SelectData(wnd,4);
- SetDlgItemTextW(Dialog,IDC_RW_TEXT,pWideChar(dbvalue));
- end
- else
- begin
- if (flags and ACF_DBBYTE)=ACF_DBBYTE then
- CB_SelectData(wnd,0)
- else if (flags and ACF_DBWORD)=ACF_DBWORD then
- CB_SelectData(wnd,1)
- else
- CB_SelectData(wnd,2);
- SHControl(IDC_RW_TEXT ,SW_HIDE);
- SHControl(IDC_RW_VALUE,SW_SHOW);
-
- SetNumValue(GetDlgItem(Dialog,IDC_RW_VALUE),dbvalue,
- (flags2 and ACF2_RW_TVAR)<>0,
- (flags2 and ACF2_RW_HEX )<>0);
- end;
-
- end;
-
- ACT_MESSAGE: begin
- SetDlgItemTextW(Dialog,IDC_MSG_TITLE,msgtitle);
- SetDlgItemTextW(Dialog,IDC_MSG_TEXT ,msgtext);
- if (flags2 and ACF2_MSG_TTL)<>0 then ButtonOn(IDC_MSG_TTL);
- if (flags2 and ACF2_MSG_TXT)<>0 then ButtonOn(IDC_MSG_TXT);
- if (flags and ACF_MSG_KEEP)<>0 then ButtonOn(IDC_MSG_KEEP);
-
- case boxopts and $0F of
- 1: ButtonOn(IDC_MSGB_OC);
- 2: ButtonOn(IDC_MSGB_ARI);
- 3: ButtonOn(IDC_MSGB_YNC);
- 4: ButtonOn(IDC_MSGB_YN);
- 5: ButtonOn(IDC_MSGB_RC);
- else
- ButtonOn(IDC_MSGB_OK);
- end;
- case boxopts and $F0 of
- $10: ButtonOn(IDC_MSGI_ERROR);
- $20: ButtonOn(IDC_MSGI_QUEST);
- $30: ButtonOn(IDC_MSGI_WARN);
- $40: ButtonOn(IDC_MSGI_INFO);
- else
- ButtonOn(IDC_MSGI_NONE);
- end;
- end;
- end;
- SHWindows(actionType);
- end;
- end;