summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss123next@list.ru>2009-11-18 12:41:46 +0200
committerGluzskiy Alexandr <sss123next@list.ru>2009-11-18 12:41:46 +0200
commit807c615665f03294e670f64cb02174c5a28a74f9 (patch)
treec9cc96505629f2bb61ef9072c78ef7cff0244c25
parent39b549f1d1af0b1d64af110ae6c9cf35b2f11ac2 (diff)
modified: watrack_mpd/globals.h
modified: watrack_mpd/init.c modified: watrack_mpd/main.c modified: watrack_mpd/options.c modified: watrack_mpd/resource.h modified: watrack_mpd/watrack_mpd.rc
-rwxr-xr-xwatrack_mpd/globals.h2
-rwxr-xr-xwatrack_mpd/init.c18
-rwxr-xr-xwatrack_mpd/main.c2
-rwxr-xr-xwatrack_mpd/options.c69
-rwxr-xr-xwatrack_mpd/resource.h6
-rwxr-xr-xwatrack_mpd/watrack_mpd.rc6
6 files changed, 100 insertions, 3 deletions
diff --git a/watrack_mpd/globals.h b/watrack_mpd/globals.h
index a54e840..e1d54e8 100755
--- a/watrack_mpd/globals.h
+++ b/watrack_mpd/globals.h
@@ -5,4 +5,6 @@ HANDLE ghConnection;
HANDLE ghPacketReciever;
HANDLE ghRecieverThread;
BOOL bWatrackService;
+TCHAR *gbHost, *gbPassword;
+WORD gbPort;
#endif
diff --git a/watrack_mpd/init.c b/watrack_mpd/init.c
index d1fe8fe..bbc11eb 100755
--- a/watrack_mpd/init.c
+++ b/watrack_mpd/init.c
@@ -24,6 +24,7 @@ PLUGINLINK *pluginLink;
BOOL bWatrackService = FALSE;
static int OnModulesLoaded(WPARAM wParam,LPARAM lParam);
extern char *date();
+extern int WaMpdOptInit(WPARAM wParam,LPARAM lParam);
PLUGININFOEX pluginInfo={
@@ -76,15 +77,28 @@ int __declspec(dllexport) Load(PLUGINLINK *link)
return 0;
}
+void InitVars()
+{
+ gbPort = DBGetContactSettingWord(NULL, szModuleName, "Port", 6600);
+ gbPassword = (TCHAR*)malloc(64*sizeof(TCHAR));
+ gbHost = (TCHAR*)malloc(128*sizeof(TCHAR));
+ gbHost = UniGetContactSettingUtf(NULL, szModuleName, "Server", _T("127.0.0.1"));
+ gbPassword = UniGetContactSettingUtf(NULL, szModuleName, "Password", _T(""));
+}
+
+
extern void RegisterPlayer();
static int OnModulesLoaded(WPARAM wParam,LPARAM lParam)
{
+ HANDLE hHookOptionInit;
NETLIBUSER nlu = {0};
nlu.cbSize = sizeof(nlu);
- nlu.flags = NUF_OUTGOING | NUF_HTTPGATEWAY;
+ nlu.flags = (NUF_OUTGOING | NUF_HTTPCONNS);
nlu.szDescriptiveName = "Watrack MPD connection";
nlu.szSettingsModule = PLUGIN_NAME;
ghNetlibUser = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nlu);
+ InitVars();
+ hHookOptionInit = HookEvent(ME_OPT_INITIALISE, WaMpdOptInit);
if (ServiceExists("WATrack/Player"))
bWatrackService = TRUE;
RegisterPlayer();
@@ -96,5 +110,7 @@ int __declspec(dllexport) Unload(void)
{
if(ghNetlibUser && (ghNetlibUser != INVALID_HANDLE_VALUE))
CallService(MS_NETLIB_SHUTDOWN,(WPARAM)ghNetlibUser,0);
+ free(gbHost);
+ free(gbPassword);
return 0;
} \ No newline at end of file
diff --git a/watrack_mpd/main.c b/watrack_mpd/main.c
index d76afc1..aa7aeef 100755
--- a/watrack_mpd/main.c
+++ b/watrack_mpd/main.c
@@ -68,7 +68,7 @@ void RegisterPlayer()
// player.Icon =
player.Notes = _T("123");
player.URL = "http:// ?";
- CallService(MS_WAT_PLAYER, (WPARAM)0, (LPARAM)&player);
+ CallService(MS_WAT_PLAYER, (WPARAM)WAT_ACT_REGISTER, (LPARAM)&player);
}
}
diff --git a/watrack_mpd/options.c b/watrack_mpd/options.c
index d1cff16..83002e6 100755
--- a/watrack_mpd/options.c
+++ b/watrack_mpd/options.c
@@ -17,6 +17,75 @@
#include "commonheaders.h"
#include <uxtheme.h>
+HINSTANCE hInst;
+
+static BOOL CALLBACK DlgProcWaMpdOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
+
+int WaMpdOptInit(WPARAM wParam,LPARAM lParam)
+{
+ OPTIONSDIALOGPAGE odp = { 0 };
+ odp.cbSize = sizeof(odp);
+ odp.hInstance = hInst;
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_WA_MPD);
+ odp.pszTitle = szModuleName;
+ odp.pszGroup = Translate("Plugins");
+ odp.flags=ODPF_BOLDGROUPS;
+ odp.pfnDlgProc = DlgProcWaMpdOpts;
+ CallService(MS_OPT_ADDPAGE,wParam,(LPARAM)&odp);
+
+
+ ZeroMemory(&odp,sizeof(odp));
+ return 0;
+}
+
+
+static BOOL CALLBACK DlgProcWaMpdOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
+{
+ switch (msg)
+ {
+ case WM_INITDIALOG:
+ {
+ TranslateDialogDefault(hwndDlg);
+ SetDlgItemInt(hwndDlg, IDC_PORT, DBGetContactSettingWord(NULL, szModuleName, "Port", 6600), FALSE);
+ SetDlgItemText(hwndDlg, IDC_SERVER, UniGetContactSettingUtf(NULL, szModuleName, "Server", _T("127.0.0.1")));
+ SetDlgItemText(hwndDlg, IDC_PASSWORD, UniGetContactSettingUtf(NULL, szModuleName, "Password", _T("")));
+ return TRUE;
+ }
+
+
+ case WM_COMMAND:
+ {
+ switch (LOWORD(wParam))
+ {
+
+ }
+
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ break;
+ }
+
+ case WM_NOTIFY:
+ {
+ switch (((LPNMHDR)lParam)->code)
+ {
+
+ case PSN_APPLY:
+ {
+ TCHAR szText[128];
+ DBWriteContactSettingWord(NULL, szModuleName, "Port", (DWORD)GetDlgItemInt(hwndDlg, IDC_PORT, NULL, FALSE));
+ GetDlgItemText(hwndDlg, IDC_SERVER, szText, sizeof(szText));
+ DBWriteContactSettingTString(NULL, szModuleName, "Server", szText);
+ GetDlgItemText(hwndDlg, IDC_PASSWORD, szText, sizeof(szText));
+ DBWriteContactSettingTString(NULL, szModuleName, "Password", szText);
+ return TRUE;
+ }
+ }
+ }
+ break;
+ }
+
+ return FALSE;
+}
diff --git a/watrack_mpd/resource.h b/watrack_mpd/resource.h
index 5f6d247..e46d88b 100755
--- a/watrack_mpd/resource.h
+++ b/watrack_mpd/resource.h
@@ -15,6 +15,10 @@
#define IDC_MSG_SIZE 1009
#define IDC_MSG_SIZE2 1010
#define IDC_CHAR_COUNT 1010
+#define IDC_SERVER 1011
+#define IDC_PORT 1012
+#define IDC_EDIT3 1013
+#define IDC_PASSWORD 1013
// Next default values for new objects
//
@@ -22,7 +26,7 @@
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1011
+#define _APS_NEXT_CONTROL_VALUE 1016
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
diff --git a/watrack_mpd/watrack_mpd.rc b/watrack_mpd/watrack_mpd.rc
index 8180929..984794b 100755
--- a/watrack_mpd/watrack_mpd.rc
+++ b/watrack_mpd/watrack_mpd.rc
@@ -68,6 +68,12 @@ IDD_OPT_WA_MPD DIALOGEX 0, 0, 268, 214
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
FONT 8, "MS Shell Dlg", 400, 0, 0x0
BEGIN
+ EDITTEXT IDC_SERVER,71,18,72,14,ES_AUTOHSCROLL
+ EDITTEXT IDC_PORT,72,38,72,14,ES_AUTOHSCROLL
+ EDITTEXT IDC_PASSWORD,71,58,73,14,ES_AUTOHSCROLL
+ LTEXT "MPD Host",IDC_STATIC,7,20,32,8
+ LTEXT "Port",IDC_STATIC,7,42,14,8
+ LTEXT "Password",IDC_STATIC,7,63,32,8
END