summaryrefslogtreecommitdiff
path: root/plugins/TopToolBar/buttonopt.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/TopToolBar/buttonopt.c')
-rw-r--r--plugins/TopToolBar/buttonopt.c340
1 files changed, 0 insertions, 340 deletions
diff --git a/plugins/TopToolBar/buttonopt.c b/plugins/TopToolBar/buttonopt.c
deleted file mode 100644
index b1d8275953..0000000000
--- a/plugins/TopToolBar/buttonopt.c
+++ /dev/null
@@ -1,340 +0,0 @@
-#include "common.h"
-#pragma hdrstop
-
-extern HINSTANCE hInst;
-
-char *DBGetString(HANDLE hContact,const char *szModule,const char *szSetting)
-{
- char *str=NULL;
- DBVARIANT dbv;
- DBGetContactSetting(hContact,szModule,szSetting,&dbv);
- if(dbv.type==DBVT_ASCIIZ)
- str=strdup(dbv.pszVal);
- DBFreeVariant(&dbv);
- return str;
-}
-
-
-
-
-struct OrderData {
- int dragging;
- HTREEITEM hDragItem;
-};
-
-
-
-int CheckButtonOrder()
-{
- boolean protochanged=FALSE;
- int StoredButCount;
- int i,count;
- int v;
- char buf[10];
- char buf2[10];
-
- //curproto=0;
- //curproto[1]='22';
-
- StoredButCount=DBGetContactSettingByte(0,TTB_OPTDIR,"ButCount",-1);
- if (StoredButCount==-1){protochanged=TRUE;};
- if (protochanged)
- {
- //reseting all settings;
-
- CallService(MS_PROTO_ENUMPROTOCOLS,(WPARAM)&count,(LPARAM)&protos);
-
- v=0;
- for(i=0;i<count;i++) {
- if(protos[i]->type!=PROTOTYPE_PROTOCOL || CallProtoService(protos[i]->szName,PS_GETCAPS,PFLAGNUM_2,0)==0) continue;
- itoa(v,&buf,10);
- DBWriteContactSettingString(0,"Protocols",&buf,protos[i]->szName);
-
- itoa(OFFSET_VISIBLE+v,&buf,10);//save default visible status
- DBWriteContactSettingByte(0,"Protocols",&buf,1);
-
- v++;
- };
- DBWriteContactSettingByte(0,TTB_OPTDIR,"ButCount",v);
- return(1);
- }
- else
- {
- return(0);
- };
-
-
-
-};
-
-
-
-static BOOL CALLBACK ProtocolOrderOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
-{ struct ProtocolOrderData *dat;
-
- dat=(struct ProtocolOrderData*)GetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),GWL_USERDATA);
-
- switch (msg)
- {
- case WM_INITDIALOG: {
- PROTOCOLDESCRIPTOR **protos;
- TVINSERTSTRUCT tvis;
- ProtocolData *PD;
- char szName[64];
- char *szSTName;
- char buf[10];
- int i,count;
-
- dat=(struct ProtocolOrderData*)malloc(sizeof(struct ProtocolOrderData));
- SetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),GWL_USERDATA,(LONG)dat);
- dat->dragging=0;
-
- SetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),GWL_STYLE,GetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),GWL_STYLE)|TVS_NOHSCROLL);
- SetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),GWL_STYLE,GetWindowLong(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),GWL_STYLE)|TVS_NOHSCROLL);
-
- { HIMAGELIST himlCheckBoxes;
- himlCheckBoxes=ImageList_Create(GetSystemMetrics(SM_CXSMICON),GetSystemMetrics(SM_CYSMICON),ILC_COLOR4|ILC_MASK,2,2);
- ImageList_AddIcon(himlCheckBoxes,LoadIcon(GetModuleHandle(NULL),MAKEINTRESOURCE(IDI_NOTICK)));
- ImageList_AddIcon(himlCheckBoxes,LoadIcon(GetModuleHandle(NULL),MAKEINTRESOURCE(IDI_TICK)));
- TreeView_SetImageList(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),himlCheckBoxes,TVSIL_NORMAL);
- //
- TreeView_SetImageList(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),himlCheckBoxes,TVSIL_NORMAL);
-
- }
-
- tvis.hParent=NULL;
- tvis.hInsertAfter=TVI_LAST;
- tvis.item.mask=TVIF_PARAM|TVIF_TEXT|TVIF_IMAGE|TVIF_SELECTEDIMAGE;
-
- CheckProtocolOrder();
-
- count=DBGetContactSettingByte(0,"Protocols","ProtoCount",-1);
- if (count==-1){return(FALSE);};
-
- for(i=0;i<count;i++) {
- //if(protos[i]->type!=PROTOTYPE_PROTOCOL || CallProtoService(protos[i]->szName,PS_GETCAPS,PFLAGNUM_2,0)==0) continue;
- itoa(i,&buf,10);
- szSTName=DBGetString(0,"Protocols",&buf);
- if (szSTName==NULL){continue;};
-
- CallProtoService(szSTName,PS_GETNAME,sizeof(szName),(LPARAM)szName);
- PD=(ProtocolData*)malloc(sizeof(ProtocolData));
-
-
- PD->RealName=szSTName;
-
- itoa(OFFSET_VISIBLE+i,&buf,10);
- PD->show=DBGetContactSettingByte(0,"Protocols",&buf,1);
-
- itoa(OFFSET_PROTOPOS+i,&buf,10);
- PD->protopos=DBGetContactSettingByte(0,"Protocols",&buf,-1);
-
- tvis.item.lParam=(LPARAM)PD;
- tvis.item.pszText=Translate(szName);
- tvis.item.iImage=tvis.item.iSelectedImage=PD->show;
- TreeView_InsertItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&tvis);
- tvis.item.iImage=tvis.item.iSelectedImage=PD->show;
- TreeView_InsertItem(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),&tvis);
-
- //free(szSTName);
- }
- return TRUE;
- }
- case WM_NOTIFY:
- switch(((LPNMHDR)lParam)->idFrom) {
- case 0:
- switch (((LPNMHDR)lParam)->code)
- {
- case PSN_APPLY:
- {
- TVITEM tvi;
- PROTOCOLDESCRIPTOR **protos;
- int count;
- char idstr[33];
- char buf[10];
-
- /*
- tvi.hItem=TreeView_GetRoot(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY));
- tvi.cchTextMax=32;
- tvi.mask=TVIF_TEXT|TVIF_IMAGE|TVIF_PARAM|TVIF_HANDLE;
- tvi.pszText=&idstr;
- //count=0;
- while(tvi.hItem!=NULL) {
- itoa(OFFSET_VISIBLE+count,&buf,10);
- TreeView_GetItem(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),&tvi);
- DBWriteContactSettingByte(NULL,"Protocols",&buf,(byte)tvi.iImage);
- tvi.hItem=TreeView_GetNextSibling(GetDlgItem(hwndDlg,IDC_PROTOCOLVISIBILITY),tvi.hItem);
- //count++;
- }
- */
- tvi.hItem=TreeView_GetRoot(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER));
- tvi.cchTextMax=32;
- tvi.mask=TVIF_TEXT|TVIF_PARAM|TVIF_HANDLE;
- tvi.pszText=&idstr;
- //CallService(MS_PROTO_ENUMPROTOCOLS,(WPARAM)&count,(LPARAM)&protos);
- //count--;
- count=0;
-
- while(tvi.hItem!=NULL) {
- itoa(count,buf,10);
- TreeView_GetItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&tvi);
- DBWriteContactSettingString(NULL,"Protocols",&buf,((ProtocolData *)tvi.lParam)->RealName);
-
- itoa(OFFSET_PROTOPOS+count,&buf,10);//save pos in protos
- DBWriteContactSettingByte(0,"Protocols",&buf,((ProtocolData *)tvi.lParam)->protopos);
-
- itoa(OFFSET_VISIBLE+count,&buf,10);//save pos in protos
- DBWriteContactSettingByte(0,"Protocols",&buf,((ProtocolData *)tvi.lParam)->show);
-
- tvi.hItem=TreeView_GetNextSibling(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),tvi.hItem);
-
- count++;
- }
- CluiProtocolStatusChanged(0,0);
- }
- }
- break;
- /*
- case IDC_PROTOCOLORDER: //IDC_PROTOCOLVISIBILITY:
- if(((LPNMHDR)lParam)->code==NM_CLICK) {
- TVHITTESTINFO hti;
- hti.pt.x=(short)LOWORD(GetMessagePos());
- hti.pt.y=(short)HIWORD(GetMessagePos());
- ScreenToClient(((LPNMHDR)lParam)->hwndFrom,&hti.pt);
- if(TreeView_HitTest(((LPNMHDR)lParam)->hwndFrom,&hti))
- if(hti.flags&TVHT_ONITEMICON) {
- TVITEM tvi;
- tvi.mask=TVIF_HANDLE|TVIF_IMAGE|TVIF_SELECTEDIMAGE;
- tvi.hItem=hti.hItem;
- TreeView_GetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);
- tvi.iImage=tvi.iSelectedImage=!tvi.iImage;
- ((ProtocolData *)tvi.lParam)->show=tvi.iImage;
- TreeView_SetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- ShowWindow(GetDlgItem(hwndDlg,IDC_PROTOCOLORDERWARNING),SW_SHOW);
- }
- }
- break;
- */
- case IDC_PROTOCOLORDER:
- switch (((LPNMHDR)lParam)->code) {
- case TVN_BEGINDRAG:
- SetCapture(hwndDlg);
- dat->dragging=1;
- dat->hDragItem=((LPNMTREEVIEW)lParam)->itemNew.hItem;
- TreeView_SelectItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),dat->hDragItem);
- //ShowWindow(GetDlgItem(hwndDlg,IDC_PROTOCOLORDERWARNING),SW_SHOW);
- break;
- case NM_CLICK:
- {
-
- TVHITTESTINFO hti;
- hti.pt.x=(short)LOWORD(GetMessagePos());
- hti.pt.y=(short)HIWORD(GetMessagePos());
- ScreenToClient(((LPNMHDR)lParam)->hwndFrom,&hti.pt);
- if(TreeView_HitTest(((LPNMHDR)lParam)->hwndFrom,&hti))
- if(hti.flags&TVHT_ONITEMICON) {
- TVITEM tvi;
- tvi.mask=TVIF_HANDLE|TVIF_IMAGE|TVIF_SELECTEDIMAGE;
- tvi.hItem=hti.hItem;
- TreeView_GetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);
- tvi.iImage=tvi.iSelectedImage=!tvi.iImage;
- ((ProtocolData *)tvi.lParam)->show=tvi.iImage;
- TreeView_SetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
-
- //all changes take effect in runtime
- //ShowWindow(GetDlgItem(hwndDlg,IDC_PROTOCOLORDERWARNING),SW_SHOW);
- }
-
-
-
- };
- }
- break;
- }
- break;
- case WM_MOUSEMOVE:
- if(!dat->dragging) break;
- { TVHITTESTINFO hti;
- hti.pt.x=(short)LOWORD(lParam);
- hti.pt.y=(short)HIWORD(lParam);
- ClientToScreen(hwndDlg,&hti.pt);
- ScreenToClient(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&hti.pt);
- TreeView_HitTest(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&hti);
- if(hti.flags&(TVHT_ONITEM|TVHT_ONITEMRIGHT)) {
- hti.pt.y-=TreeView_GetItemHeight(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER))/2;
- TreeView_HitTest(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&hti);
- TreeView_SetInsertMark(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),hti.hItem,1);
- }
- else {
- if(hti.flags&TVHT_ABOVE) SendDlgItemMessage(hwndDlg,IDC_PROTOCOLORDER,WM_VSCROLL,MAKEWPARAM(SB_LINEUP,0),0);
- if(hti.flags&TVHT_BELOW) SendDlgItemMessage(hwndDlg,IDC_PROTOCOLORDER,WM_VSCROLL,MAKEWPARAM(SB_LINEDOWN,0),0);
- TreeView_SetInsertMark(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),NULL,0);
- }
- }
- break;
- case WM_LBUTTONUP:
- if(!dat->dragging) break;
- TreeView_SetInsertMark(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),NULL,0);
- dat->dragging=0;
- ReleaseCapture();
- { TVHITTESTINFO hti;
- TVITEM tvi;
- hti.pt.x=(short)LOWORD(lParam);
- hti.pt.y=(short)HIWORD(lParam);
- ClientToScreen(hwndDlg,&hti.pt);
- ScreenToClient(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&hti.pt);
- hti.pt.y-=TreeView_GetItemHeight(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER))/2;
- TreeView_HitTest(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&hti);
- if(dat->hDragItem==hti.hItem) break;
- tvi.mask=TVIF_HANDLE|TVIF_PARAM;
- tvi.hItem=hti.hItem;
- TreeView_GetItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&tvi);
- if(hti.flags&(TVHT_ONITEM|TVHT_ONITEMRIGHT)) {
- TVINSERTSTRUCT tvis;
- char name[128];
- tvis.item.mask=TVIF_HANDLE|TVIF_PARAM|TVIF_TEXT|TVIF_IMAGE|TVIF_SELECTEDIMAGE;
- tvis.item.stateMask=0xFFFFFFFF;
- tvis.item.pszText=name;
- tvis.item.cchTextMax=sizeof(name);
- tvis.item.hItem=dat->hDragItem;
- //
- tvis.item.iImage=tvis.item.iSelectedImage=((ProtocolData *)tvi.lParam)->show;
-
- TreeView_GetItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&tvis.item);
-
-
- TreeView_DeleteItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),dat->hDragItem);
- tvis.hParent=NULL;
- tvis.hInsertAfter=hti.hItem;
- TreeView_SelectItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),TreeView_InsertItem(GetDlgItem(hwndDlg,IDC_PROTOCOLORDER),&tvis));
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- }
- }
- break;
- }
- return FALSE;
-}
-
-static int ProtocolOrderInit(WPARAM wParam,LPARAM lParam) {
- OPTIONSDIALOGPAGE odp;
-
- ZeroMemory(&odp,sizeof(odp));
- odp.cbSize=sizeof(odp);
- odp.position=-1000000000;
- odp.hInstance=hInst;//GetModuleHandle(NULL);
- odp.pszTemplate=MAKEINTRESOURCE(IDD_OPT_PROTOCOLORDER);
- odp.pszGroup=Translate("Contact List");
- odp.pszTitle=Translate("Protocols");
- odp.pfnDlgProc=ProtocolOrderOpts;
- odp.flags=ODPF_BOLDGROUPS|ODPF_EXPERTONLY;
- CallService(MS_OPT_ADDPAGE,wParam,(LPARAM)&odp);
-
- return 0;
-}
-
-int LoadProtocolOrderModule(void) {
- HookEvent(ME_OPT_INITIALISE,ProtocolOrderInit);
- return 0;
-} \ No newline at end of file