diff options
author | Alexey Kulakov <panda75@bk.ru> | 2012-07-04 20:10:29 +0000 |
---|---|---|
committer | Alexey Kulakov <panda75@bk.ru> | 2012-07-04 20:10:29 +0000 |
commit | 65e002b63efdb00571d0ba4ec1a73b14e1d7d3a0 (patch) | |
tree | d96b2f52ca3c89172f269cdb172c89cf6141d69c /include/delphi/m_icolib.inc | |
parent | d7f143dba9e53347a1d7897bcd3989751c7f45f8 (diff) |
Pascal headers moved to include\delphi directory (with small updates)
removed deprecated m_mwclc.h file and link on it in AutoShutdown plugin
git-svn-id: http://svn.miranda-ng.org/main/trunk@763 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'include/delphi/m_icolib.inc')
-rw-r--r-- | include/delphi/m_icolib.inc | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/include/delphi/m_icolib.inc b/include/delphi/m_icolib.inc new file mode 100644 index 0000000000..3c358c3f49 --- /dev/null +++ b/include/delphi/m_icolib.inc @@ -0,0 +1,106 @@ +{$IFNDEF ICOLIB}
+{$DEFINE ICOLIB}
+
+type
+// WARNING: do not use Translate(TS) for p(t)szSection or p(t)szDescription as they
+// are translated by the core, which may lead to double translation.
+// Use LPGEN instead which are just dummy wrappers/markers for "lpgen.pl".
+ PSKINICONDESC = ^TSKINICONDESC;
+ TSKINICONDESC = record
+ cbSize :int;
+ szSection :TChar; // [TRANSLATED-BY-CORE] section name used to group icons
+ szDescription :TChar; // [TRANSLATED-BY-CORE] description for options dialog
+ pszName :PAnsiChar; // name to refer to icon when playing and in db
+ // this name is miranda-wide. so use prefixes of
+ // your plugin: "isee_connect", "clist_delete", etc
+ szDefaultFile :TChar; // default icon file to use
+ iDefaultIndex :int; // index of icon in default file
+ // V2
+ hDefaultIcon :HICON; // handle to default icon
+ // V3
+ cx, cy :int; // dimensions of icon (if 0 then standard size icon (big and small options available)
+ // new
+ flags :int;
+ end;
+
+const
+ SIDF_SORTED = 1; // Icons in section are sorted by name
+ SIDF_UNICODE = $100; // Section and Description are in UCS-2
+ SIDF_PATH_UNICODE = $200; // Default File is in UCS-2
+ SIDF_ALL_UNICODE = SIDF_PATH_UNICODE or SIDF_UNICODE;
+
+const
+{
+ Add a icon into options UI
+
+ wParam = 0
+ lParam = PSKINICONDESC
+ returns a handle to the newly added item
+}
+ MS_SKIN2_ADDICON:PAnsiChar = 'Skin2/Icons/AddIcon';
+
+{
+ Remove a icon from options UI
+
+ wParam = 0
+ lParam = pszName
+ WARNING: This will invalidate all HICONs retrieved for specified pszName
+}
+ MS_SKIN2_REMOVEICON:PAnsiChar = 'Skin2/Icons/RemoveIcon';
+{
+ Retrieve HICON with name specified in lParam
+ Returned HICON SHOULDN'T be destroyed, it managed by IcoLib
+
+ wParam = 0 - small 1 - big
+ lParam = pszName
+}
+ MS_SKIN2_GETICON :PAnsiChar = 'Skin2/Icons/GetIcon';
+
+{
+ Retrieve an icolib handle for icon by name specified in lParam
+
+ wParam = 0
+ lParam = (LPARAM)(char*)pszName
+}
+ MS_SKIN2_GETICONHANDLE:PAnsiChar = 'Skin2/Icons/GetIconHandle';
+
+{
+ Retrieve HICON with HANDLE specified in lParam
+ Returned HICON SHOULDN'T be destroyed, it is managed by IcoLib
+
+ wParam = (WPARAM)0 - small 1 - big
+ lParam = (HANDLE)hIcoLibIcon
+}
+ MS_SKIN2_GETICONBYHANDLE:PAnsiChar = 'Skin2/Icons/GetIconByHandle';
+
+{
+ Add reference to HICON
+
+ wParam = (WPARAM)HICON
+ lParam = 0 - small 1 - big
+}
+ MS_SKIN2_ADDREFICON:PAnsiChar = 'Skin2/Icons/AddRef';
+
+{
+ Retrieved HICON is not needed anymore (this helps optimize GDI usage)
+
+ wParam = HICON (optional)
+ lParam = pszName (optional) // at least one needs to be specified
+}
+ MS_SKIN2_RELEASEICON :PAnsiChar = 'Skin2/Icons/ReleaseIcon';
+ MS_SKIN2_RELEASEICONBIG:PAnsiChar = 'Skin2/Icons/ReleaseIconBig';
+
+{
+ Check whether HICON is managed by IcoLib
+
+ wParam = (WPARAM)HICON
+ lParam = 0
+}
+ MS_SKIN2_ISMANAGEDICON:PAnsiChar = 'Skin2/Icons/IsManaged';
+
+{
+ Icons change notification
+}
+ ME_SKIN2_ICONSCHANGED:PAnsiChar = 'Skin2/IconsChanged';
+
+{$ENDIF}
|