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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
|
{
Miranda IM: the free IM client for Microsoft* Windows*
Copyright 2000-2003 Miranda ICQ/IM project,
all portions of this codebase are copyrighted to the people
listed in contributors.txt.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
}
{$IFNDEF M_SKIN}
{$DEFINE M_SKIN}
const
// event icons
SKINICON_EVENT_MESSAGE = 100;
SKINICON_EVENT_URL = 101;
SKINICON_EVENT_FILE = 102;
// other icons
SKINICON_OTHER_MIRANDA = 200;
SKINICON_OTHER_EXIT = 201;
SKINICON_OTHER_SHOWHIDE = 202;
SKINICON_OTHER_GROUPOPEN = 203; // v0.1.1.0+
SKINICON_OTHER_USERONLINE = 204; // v0.1.0.1+
SKINICON_OTHER_GROUPSHUT = 205; // v0.1.1.0+
SKINICON_OTHER_CONNECTING = 206; // v0.1.0.1+
SKINICON_OTHER_ADDCONTACT = 207; // v0.7.0.2+
SKINICON_OTHER_USERDETAILS = 208; // v0.7.0.2+
SKINICON_OTHER_HISTORY = 209; // v0.7.0.2+
SKINICON_OTHER_DOWNARROW = 210; // v0.7.0.2+
SKINICON_OTHER_FINDUSER = 211; // v0.7.0.2+
SKINICON_OTHER_OPTIONS = 212; // v0.7.0.2+
SKINICON_OTHER_SENDEMAIL = 213; // v0.7.0.2+
SKINICON_OTHER_DELETE = 214; // v0.7.0.2+
SKINICON_OTHER_RENAME = 215; // v0.7.0.2+
SKINICON_OTHER_SMS = 216; // v0.7.0.2+
SKINICON_OTHER_SEARCHALL = 217; // v0.7.0.2+
SKINICON_OTHER_TICK = 218; // v0.7.0.2+
SKINICON_OTHER_NOTICK = 219; // v0.7.0.2+
SKINICON_OTHER_HELP = 220; // v0.7.0.2+
SKINICON_OTHER_MIRANDAWEB = 221; // v0.7.0.2+
SKINICON_OTHER_TYPING = 222; // v0.7.0.2+
SKINICON_OTHER_SMALLDOT = 223; // v0.7.0.2+
SKINICON_OTHER_FILLEDBLOB = 224; // v0.7.0.2+
SKINICON_OTHER_EMPTYBLOB = 225; // v0.7.0.2+
SKINICON_OTHER_UNICODE = 226; // v0.7.0.19+
SKINICON_OTHER_ANSI = 227; // v0.7.0.19+
SKINICON_OTHER_LOADED = 228; // v0.7.0.19+
SKINICON_OTHER_NOTLOADED = 229; // v0.7.0.19+
SKINICON_OTHER_UNDO = 230; // v0.8.0.4+
SKINICON_OTHER_WINDOW = 231; // v0.8.0.4+
SKINICON_OTHER_WINDOWS = 232; // v0.8.0.4+
SKINICON_OTHER_ACCMGR = 233; // v0.8.0.4+
SKINICON_OTHER_MAINMENU = 234; // v0.8.0.12+
SKINICON_OTHER_STATUS = 235; // v0.8.0.12+
SKINICON_CHAT_JOIN = 236; // v0.8.0.27+
SKINICON_CHAT_LEAVE = 237; // v0.8.0.27+
SKINICON_OTHER_STATUS_LOCKED = 238; // v0.8.0.28+
SKINICON_OTHER_GROUP = 239; // v0.8.0.29+
SKINICON_OTHER_ON = 240; // v0.9.0.9+
SKINICON_OTHER_OFF = 241; // v0.9.0.9+
SKINICON_OTHER_LOADEDGRAY = 242; // v0.10.3.1+
SKINICON_OTHER_NOTLOADEDGRAY = 243; // v0.10.3.1+
SKINICON_OTHER_VISIBLE_ALL = 244; // v0.93.4+
SKINICON_OTHER_INVISIBLE_ALL = 245; // v0.93.4+
{
SKINICON_EVENT_MESSAGE_BIG = 300;
SKINICON_EVENT_URL_BIG = 301;
SKINICON_EVENT_FILE_BIG = 302;
SKINICON_OTHER_MIRANDA_BIG = 303;
SKINICON_OTHER_ADDCONTACT_BIG = 304;
SKINICON_OTHER_USERDETAILS_BIG = 305;
SKINICON_OTHER_HISTORY_BIG = 306;
SKINICON_OTHER_FINDUSER_BIG = 307;
SKINICON_OTHER_OPTIONS_BIG = 308;
SKINICON_OTHER_ACCMGR_BIG = 309;
}
// menu icons are owned by the module that uses them so are not and should
// not be skinnable. Except exit and show/hide
// status mode icons. NOTE: These are deprecated in favour of LoadSkinnedProtoIcon()
SKINICON_STATUS_OFFLINE = 0;
SKINICON_STATUS_ONLINE = 1;
SKINICON_STATUS_AWAY = 2;
SKINICON_STATUS_NA = 3;
SKINICON_STATUS_OCCUPIED = 4;
SKINICON_STATUS_DND = 5;
SKINICON_STATUS_FREE4CHAT = 6;
SKINICON_STATUS_INVISIBLE = 7;
SKINICON_STATUS_ONTHEPHONE = 8;
SKINICON_STATUS_OUTTOLUNCH = 9;
const
SSDF_UNICODE = $0001;
type
PSKINSOUNDDESCEX = ^TSKINSOUNDDESCEX;
TSKINSOUNDDESCEX = record
cbSize : int;
pszName : PAnsiChar; // name to refer to sound when playing and in DB
pszDescription: TChar; // [TRANSLATED-BY-CORE] description to use for it in options dialog
pszDefaultFile: TChar; // the default sound file to use, WITHOUT path
pszSection : TChar; // [TRANSLATED-BY-CORE] section name used to group sounds (NULL is acceptable)
dwFlags : dword; // if Miranda ver >=9.0
end;
const
{
wParam : ICON_ID or handle
lParam : 0 if ICON_ID, else 1
Affect : Load an icon from the user's custom skin lib, or from the exe
if there isn't one loaded, see notes
Return : HICON for the new icon, do *not* DestroyIcon() the return value
returns NULL(0) if ICON_ID is invalid, but always success for a
valid ID.
}
MS_SKIN_LOADICON:PAnsiChar = 'Skin/Icons/Load';
{
wParam : null terminated string containing the protocol name
lParam : status_wanted
Affect : Load an icon representing the status_wanted for a particular protocol, see notes
Returns: an HICON for the new icon, do NOT DestroyIcon() the return value
returns NULL(0) on failure.
Notes : If wParam is NULL(0) the service will load the user's selected
'all protocols' status icon
}
MS_SKIN_LOADPROTOICON :PAnsiChar = 'Skin/Icons/LoadProto';
MS_SKIN_LOADPROTOICONBIG:PAnsiChar = 'Skin/Icons/LoadProtoBig';
{
wParam : hLangpack
lParam : Pointer to a initialised SKINSOUNDDESC
Affect : Add a new sound so it has a default and can be changed in the
options dialog
Returns: 0 on success, [non zero] on failure
}
MS_SKIN_ADDNEWSOUND:PAnsiChar = 'Skin/Sounds/AddNew';
{
wParam : 0
lParam : Pointer to a null terminated string containing the name of the
sound to play
Affect : play a named sound event, play name should of been added
with MS_SKIN_ADDNEWSOUND, see notes
Notes : function will not fail, it will play the Windows
}
MS_SKIN_PLAYSOUND:PAnsiChar = 'Skin/Sounds/Play';
{
wParam : 0
lParam : 0
Affect : Sent when the icons DLL has been changed in the options dialog
and everyone should remake their image lists.
}
ME_SKIN_ICONSCHANGED:PAnsiChar = 'Skin/IconsChanged';
{
wParam: 0 when playing sound (1 when sound is being previewed)
lParam: (AnsiChar*) pszSoundFile
Affect: This hook is fired when the sound module needs to play a sound
Note : This event has default processing, if no one HookEvent()'s this
event then it will use the default hook code, which uses PlaySound()
Version: 0.3.4a (2004/09/15)
}
ME_SKIN_PLAYINGSOUND:PAnsiChar = 'Skin/Sounds/Playing';
{$ENDIF}
|