summary refs log tree commit diff stats
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/xtray/utility.cpp16
-rw-r--r--plugins/xtray/xtray.cpp20
-rw-r--r--plugins/xtray/xtray.h9
3 files changed, 19 insertions, 26 deletions
diff --git a/plugins/xtray/utility.cpp b/plugins/xtray/utility.cpp
index 909517df..dd9dd29f 100644
--- a/plugins/xtray/utility.cpp
+++ b/plugins/xtray/utility.cpp
@@ -321,24 +321,16 @@ void CheckPrefs(HWND hwnd, int iDlg)
 				DWORD dwStyle;

 				dwStyle = GetWindowLong(g_hXchatWnd, GWL_STYLE);

 				dwStyle |= (1<<WS_CHILD);

-				SetWindowLong(g_hXchatWnd, GWL_STYLE, dwStyle);

-#ifdef _WIN64

-				SetWindowLong(g_hXchatWnd, GWLP_HWNDPARENT, (long)g_hHotkeyWnd);

-#else

-				SetWindowLong(g_hXchatWnd, GWL_HWNDPARENT, (long)g_hHotkeyWnd);

-#endif

+				SetWindowLongPtr(g_hXchatWnd, GWL_STYLE, (LONG_PTR)dwStyle);

+				SetWindowLongPtr(g_hXchatWnd, GWL_HWNDPARENT, (LONG_PTR)g_hHotkeyWnd);

 			}

 			else

 			{

 				DWORD dwStyle;

 				dwStyle = GetWindowLong(g_hXchatWnd, GWL_STYLE);

 				dwStyle &= ~(1<<WS_CHILD);

-				SetWindowLong(g_hXchatWnd, GWL_STYLE, dwStyle);

-#ifdef _WIN64

-				SetWindowLong(g_hXchatWnd, GWLP_HWNDPARENT, NULL);

-#else

-				SetWindowLong(g_hXchatWnd, GWL_HWNDPARENT, NULL);

-#endif

+				SetWindowLongPtr(g_hXchatWnd, GWL_STYLE, (LONG_PTR)dwStyle);

+				SetWindowLongPtr(g_hXchatWnd, GWL_HWNDPARENT, NULL);

 			}

 		}

 		break;

diff --git a/plugins/xtray/xtray.cpp b/plugins/xtray/xtray.cpp
index 688464ff..c9f1bd5e 100644
--- a/plugins/xtray/xtray.cpp
+++ b/plugins/xtray/xtray.cpp
@@ -93,7 +93,7 @@ int xchat_plugin_init(xchat_plugin *plugin_handle, char **plugin_name, char **pl
 	}

 

 	g_hOldProc	= (WNDPROC)GetWindowLongPtr(g_hXchatWnd, GWLP_WNDPROC);

-	SetWindowLong(g_hXchatWnd, GWLP_WNDPROC, (long)WindowProc);

+	SetWindowLongPtr(g_hXchatWnd, GWLP_WNDPROC, (LONG_PTR)WindowProc);

 

 	/***************************************************************************************************************************/	

 	/************************* Grab the xChat Icon, Load our menu, create the window to receive the hotkey messages  ***********/

@@ -127,12 +127,8 @@ int xchat_plugin_init(xchat_plugin *plugin_handle, char **plugin_name, char **pl
 		DWORD dwStyle;

 		dwStyle = GetWindowLong(g_hXchatWnd, GWL_STYLE);

 		dwStyle |= (1<<WS_CHILD);

-		SetWindowLong(g_hXchatWnd, GWL_STYLE, dwStyle);

-#ifdef _WIN64

-		SetWindowLong(g_hXchatWnd, GWLP_HWNDPARENT, (long)g_hHotkeyWnd);

-#else

-		SetWindowLong(g_hXchatWnd, GWL_HWNDPARENT, (long)g_hHotkeyWnd);

-#endif

+		SetWindowLongPtr(g_hXchatWnd, GWL_STYLE, (LONG_PTR)dwStyle);

+		SetWindowLongPtr(g_hXchatWnd, GWL_HWNDPARENT, (LONG_PTR)g_hHotkeyWnd);

 	}

 

 	/***************************************************************************************************************************/

@@ -171,12 +167,8 @@ int xchat_plugin_deinit(xchat_plugin *plugin_handle)
 		DWORD dwStyle;

 		dwStyle = GetWindowLong(g_hXchatWnd, GWL_STYLE);

 		dwStyle &= ~(1<<WS_CHILD);

-		SetWindowLong(g_hXchatWnd, GWL_STYLE, dwStyle);

-#ifdef _WIN64

-		SetWindowLong(g_hXchatWnd, GWLP_HWNDPARENT, NULL);

-#else

-		SetWindowLong(g_hXchatWnd, GWL_HWNDPARENT, NULL);

-#endif

+		SetWindowLongPtr(g_hXchatWnd, GWL_STYLE, (LONG_PTR)dwStyle);

+		SetWindowLongPtr(g_hXchatWnd, GWL_HWNDPARENT, NULL);

 	}

 

 	/******************************************/

@@ -192,7 +184,7 @@ int xchat_plugin_deinit(xchat_plugin *plugin_handle)
 	/******************************************/

 	/****** Remove our window hook ************/

 	/******************************************/

-	SetWindowLong(g_hXchatWnd, GWLP_WNDPROC, (long)g_hOldProc);

+	SetWindowLongPtr(g_hXchatWnd, GWLP_WNDPROC, (LONG_PTR)g_hOldProc);

 

 	/******************************************/

 	/****** Remove our hotkey, and destroy ****/

diff --git a/plugins/xtray/xtray.h b/plugins/xtray/xtray.h
index 2f964860..21ec67a2 100644
--- a/plugins/xtray/xtray.h
+++ b/plugins/xtray/xtray.h
@@ -63,3 +63,12 @@ extern struct _xchat_plugin *ph;
 #define PREF_DNSIT				20 // Do not show in taskbar

 /******************************************************/

 #endif

+

+#ifdef _WIN64

+/* use replacement with the same value, and use SetWindowLongPtr instead

+   of SetWindowLong. more info:

+

+   http://msdn.microsoft.com/en-us/library/ms633591.aspx

+   http://msdn.microsoft.com/en-us/library/ms644898.aspx */

+#define GWL_HWNDPARENT GWLP_HWNDPARENT

+#endif