This repository has been archived by the owner on Apr 24, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelpers.cpp
98 lines (87 loc) · 2.54 KB
/
helpers.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/*
* License - http://www.gnu.org/licenses/lgpl.txt
*/
#include "StdAfx.h"
#include "Includes.h"
namespace SzuKacz
{
//funkcja do sortowania itemów ListViewa
int CALLBACK sort(LPARAM idItem1, LPARAM idItem2, LPARAM lParam)
{
char item1[256], item2[256];
SortStruct* psort = (SortStruct*)lParam;
if(psort->asc)
{
ListView_GetItemText(psort->listView, idItem1, psort->col, item1, 256);
ListView_GetItemText(psort->listView, idItem2, psort->col, item2, 256);
return _stricoll(item1, item2);
}
else
{
ListView_GetItemText(psort->listView, idItem1, psort->col, item1, 256);
ListView_GetItemText(psort->listView, idItem2, psort->col, item2, 256);
return -_stricoll(item1, item2);
}
}
//funkcja wywo³uj¹ca akcjê
void callAction(sUIAction act)
{
sUIActionNotify_2params an = sUIActionNotify_2params();
an.act = act;
an.code = ACTN_ACTION;
ICMessage(IMI_ACTION_CALL, (int)&an, 0);
}
//funkcja wywo³uj¹ca akcjê
void callAction(int parent, int id, int cnt)
{
SzuKacz::callAction(sUIAction(parent, id, cnt));
}
//funkcja pobieraj¹ca domyœln¹ akcje (by Aule)
int getDefaultAction(int cnt)
{
int actionCount = ICMessage(IMI_GROUP_ACTIONSCOUNT, (int)&sUIAction(IMIG_MAINWND, IMIG_CNT, cnt));
int actionID = 0;
for(int i = 0; i < actionCount; i++)
{
actionID = ICMessage(IMI_ACTION_GETID, IMIG_CNT, i);
if(!actionID)
continue;
if(ICMessage(IMI_ACTION_CALL, (int)&sUIActionNotify_2params(sUIAction(IMIG_CNT, actionID, cnt), ACTN_DEFAULT, 0, 0)))
return actionID;
}
return -1;
}
//funkcja sprawdzaj¹ca, czy punt znajduje siê w kwadracie
bool isInside(POINT pt, RECT r)
{
return (pt.x >= r.left && pt.x <= r.right) && (pt.y >= r.top && pt.y <= r.bottom);
}
//funkcja sprawdzaj¹ca, czy plugin o danym necie istnieje
int pluginExists(int net, int type)
{
return Ctrl->ICMessage(IMC_FINDPLUG, net, type);
}
//funkcja otwieraj¹ca okno rozmowy dla danego kontaktu
void openMsgWindow(int cnt)
{
if(SzuKacz::getDefaultAction(cnt) == IMIA_CNT_MSG)
{
SzuKacz::callAction(IMIG_CNT, IMIA_CNT_MSG, cnt);
}
}
//funkcja otwieraj¹ca okno w³aœciwoœci dla danego kontaktu
void openInfoWindow(int cnt)
{
if (ICMessage(IMC_CNT_IDEXISTS, cnt, 0)) {
ICMessage(IMI_CNT_DETAILS, cnt, 0);
}
}
//funkcja odpalaj¹ca domyœln¹ akcjê
void callDefaultAction(int cnt)
{
if(SzuKacz::getDefaultAction(cnt) != -1)
{
SzuKacz::callAction(IMIG_CNT, SzuKacz::getDefaultAction(cnt), cnt);
}
}
}