diff options
author | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-07-02 05:52:03 +0000 |
---|---|---|
committer | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-07-02 05:52:03 +0000 |
commit | 63ca8bdac66f5b91d22bff6ea5b649aea8b8f1f9 (patch) | |
tree | 7577e876dae0a2580f321f3fc9e4da5195cc0168 | |
parent | 2beea6e387b2ea45634f7b11ab33ca60bb9c7bb0 (diff) |
allow for multiple accounts (module name from filename - ala dll copy)
git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@240 4f64403b-2f21-0410-a795-97e2b3489a10
-rw-r--r-- | MySpace/MySpace.cpp | 18 | ||||
-rw-r--r-- | MySpace/common.h | 2 | ||||
-rw-r--r-- | MySpace/menu.cpp | 12 | ||||
-rw-r--r-- | MySpace/net.cpp | 5 | ||||
-rw-r--r-- | MySpace/options.cpp | 2 |
5 files changed, 31 insertions, 8 deletions
diff --git a/MySpace/MySpace.cpp b/MySpace/MySpace.cpp index c06690d..e9c9276 100644 --- a/MySpace/MySpace.cpp +++ b/MySpace/MySpace.cpp @@ -16,6 +16,8 @@ PLUGINLINK *pluginLink; HANDLE mainThread;
int code_page;
+char MODULE[256];
+
PLUGININFOEX pluginInfo={
sizeof(PLUGININFOEX),
__PLUGIN_NAME,
@@ -116,6 +118,22 @@ extern "C" __declspec (dllexport) int Load(PLUGINLINK *link) { code_page = (int)CallService(MS_LANGPACK_GETCODEPAGE, 0, 0);
+
+ // Get module name from DLL file name
+ {
+ char* str1;
+ char str2[MAX_PATH];
+
+ GetModuleFileNameA(hInst, str2, MAX_PATH);
+ str1 = strrchr(str2, '\\');
+ if (str1 != NULL && strlen(str1+1) > 4) {
+ strncpy(MODULE, str1+1, strlen(str1+1)-4);
+ MODULE[strlen(str1+1)-3] = 0;
+ }
+ CharUpperA(MODULE);
+ }
+
+
if(ServiceExists(MS_DB_SETSETTINGRESIDENT)) { // 0.6+
char buff[256];
mir_snprintf(buff, 256, "%s/%s", MODULE, "Status");
diff --git a/MySpace/common.h b/MySpace/common.h index 4a4f3de..36a072c 100644 --- a/MySpace/common.h +++ b/MySpace/common.h @@ -61,7 +61,7 @@ #endif
////////////
-#define MODULE "MySpace"
+extern char MODULE[256];
#define CLIENT_VER 673
diff --git a/MySpace/menu.cpp b/MySpace/menu.cpp index 20ba408..d23b94e 100644 --- a/MySpace/menu.cpp +++ b/MySpace/menu.cpp @@ -46,21 +46,23 @@ int PrebuildContactMenu(WPARAM wParam, LPARAM lParam) { void InitMenu() {
CLISTMENUITEM menu = {0};
menu.cbSize=sizeof(menu);
+ char buff[512];
menu.flags = CMIM_ALL | CMIF_TCHAR;
menu.hIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MYSPACE), IMAGE_ICON, 0, 0, 0);
- // main menu item
- hServiceMenuMain = CreateServiceFunction(MODULE "/MainMenu", MainMenuService);
+ hServiceMenuMain = CreateProtoServiceFunction(MODULE, "/MainMenu", MainMenuService);
menu.ptszName = TranslateT(MODULE);
- menu.pszService = MODULE "/MainMenu";
+ mir_snprintf(buff, 512, "%s%s", MODULE, "/MainMenu");
+ menu.pszService = buff;
menu.position = 0;
hMenuMain = (HANDLE)CallService(MS_CLIST_ADDMAINMENUITEM,0,(LPARAM)&menu);
// contact menu item
- hServiceMenuContact = CreateServiceFunction(MODULE "/ContactMenu", ContactMenuService);
+ hServiceMenuContact = CreateProtoServiceFunction(MODULE, "/ContactMenu", ContactMenuService);
menu.ptszName = TranslateT(MODULE);
- menu.pszService = MODULE "/ContactMenu";
+ mir_snprintf(buff, 512, "%s%s", MODULE, "/ContactMenu");
+ menu.pszService = buff;
menu.position = 0;
menu.flags = CMIF_NOTOFFLINE; // only show for not-offline contacts
hMenuContact = (HANDLE)CallService(MS_CLIST_ADDCONTACTMENUITEM,0,(LPARAM)&menu);
diff --git a/MySpace/net.cpp b/MySpace/net.cpp index 812c551..998e3cf 100644 --- a/MySpace/net.cpp +++ b/MySpace/net.cpp @@ -8,7 +8,10 @@ void InitNetlib() { nl_user.cbSize = sizeof(nl_user);
nl_user.szSettingsModule = MODULE;
nl_user.flags = NUF_OUTGOING | NUF_HTTPCONNS;
- nl_user.szDescriptiveName = MODULE;
+
+ char buff[512];
+ mir_snprintf(buff, 512, "%s server connection", MODULE);
+ nl_user.szDescriptiveName = buff;
hNetlibUser = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nl_user);
}
diff --git a/MySpace/options.cpp b/MySpace/options.cpp index 5257798..308a5ca 100644 --- a/MySpace/options.cpp +++ b/MySpace/options.cpp @@ -114,7 +114,7 @@ int OptInit(WPARAM wParam, LPARAM lParam) { odp.hInstance = hInst;
odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT1);
- odp.ptszTitle = TranslateT(MODULE);
+ odp.ptszTitle = TranslateTS(MODULE);
odp.ptszGroup = TranslateT("Network");
odp.ptszTab = TranslateT("Account");
odp.nIDBottomSimpleControl = 0;
|