summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2015-06-20 11:51:39 +0000
committerGeorge Hazan <george.hazan@gmail.com>2015-06-20 11:51:39 +0000
commit24cbc87262dc8856741db8e9f8388c18b16583ad (patch)
treec5f3ef734bc889d41e57f97cc22003b3797e420c
parente110389857a42787e6cd590369d5605c9bf5599f (diff)
Windows colour picker wndclass moved to mir_core
git-svn-id: http://svn.miranda-ng.org/main/trunk@14287 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
-rw-r--r--src/mir_app/src/utils.cpp2
-rw-r--r--src/mir_core/src/colourpicker.cpp (renamed from src/mir_app/src/colourpicker.cpp)73
-rw-r--r--src/mir_core/src/miranda.cpp2
3 files changed, 37 insertions, 40 deletions
diff --git a/src/mir_app/src/utils.cpp b/src/mir_app/src/utils.cpp
index c4350a31af..c5ec173858 100644
--- a/src/mir_app/src/utils.cpp
+++ b/src/mir_app/src/utils.cpp
@@ -30,7 +30,6 @@ INT_PTR ResizeDialog(WPARAM wParam, LPARAM lParam);
int InitOpenUrl(void);
int InitPathUtils(void);
-int InitColourPicker(void);
void InitXmlApi(void);
int InitCrypt(void);
@@ -378,7 +377,6 @@ int LoadUtilsModule(void)
InitOpenUrl();
InitPathUtils();
- InitColourPicker();
InitXmlApi();
InitCrypt();
return 0;
diff --git a/src/mir_app/src/colourpicker.cpp b/src/mir_core/src/colourpicker.cpp
index 3c30393f11..75d0650431 100644
--- a/src/mir_app/src/colourpicker.cpp
+++ b/src/mir_core/src/colourpicker.cpp
@@ -26,83 +26,80 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
static LRESULT CALLBACK ColourPickerWndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
- switch(message) {
+ switch (message) {
case WM_CREATE:
SetWindowLongPtr(hwnd, 0, 0);
SetWindowLongPtr(hwnd, sizeof(COLORREF), 0);
break;
+
case CPM_SETDEFAULTCOLOUR:
SetWindowLongPtr(hwnd, sizeof(COLORREF), lParam);
break;
+
case CPM_GETDEFAULTCOLOUR:
return GetWindowLongPtr(hwnd, sizeof(COLORREF));
+
case CPM_SETCOLOUR:
SetWindowLongPtr(hwnd, 0, lParam);
InvalidateRect(hwnd, NULL, FALSE);
break;
+
case CPM_GETCOLOUR:
return GetWindowLongPtr(hwnd, 0);
+
case WM_LBUTTONUP:
{
- CHOOSECOLOR cc = {0};
- COLORREF custColours[16] = {0};
+ COLORREF custColours[16] = { 0 };
custColours[0] = GetWindowLongPtr(hwnd, sizeof(COLORREF));
+
+ CHOOSECOLOR cc = { 0 };
cc.lStructSize = sizeof(CHOOSECOLOR);
cc.hwndOwner = hwnd;
- cc.hInstance = (HWND)g_hInst;
+ cc.hInstance = (HWND)hInst;
cc.rgbResult = GetWindowLongPtr(hwnd, 0);
cc.lpCustColors = custColours;
- cc.Flags = CC_ANYCOLOR|CC_FULLOPEN|CC_RGBINIT;
+ cc.Flags = CC_ANYCOLOR | CC_FULLOPEN | CC_RGBINIT;
if (ChooseColor(&cc)) {
SetWindowLongPtr(hwnd, 0, cc.rgbResult);
SendMessage(GetParent(hwnd), WM_COMMAND, MAKEWPARAM(GetDlgCtrlID(hwnd), CPN_COLOURCHANGED), (LPARAM)hwnd);
InvalidateRect(hwnd, NULL, FALSE);
}
- break;
}
+ break;
+
case WM_ENABLE:
InvalidateRect(hwnd, NULL, FALSE);
break;
+
case WM_NCPAINT:
case WM_PAINT:
- {
- PAINTSTRUCT ps;
- HDC hdc1;
- RECT rc;
- HBRUSH hBrush;
-
- hdc1 = BeginPaint(hwnd, &ps);
- GetClientRect(hwnd, &rc);
- DrawEdge(hdc1, &rc, EDGE_ETCHED, BF_RECT);
- InflateRect(&rc, -2, -2);
- if (IsWindowEnabled(hwnd))
- hBrush = CreateSolidBrush(GetWindowLongPtr(hwnd, 0));
- else
- hBrush = CreateHatchBrush(HS_BDIAGONAL, GetSysColor(COLOR_GRAYTEXT));
- SetBkColor(hdc1, GetSysColor(COLOR_BTNFACE));
- FillRect(hdc1, &rc, hBrush);
- DeleteObject(hBrush);
- EndPaint(hwnd, &ps);
- break;
- }
+ PAINTSTRUCT ps;
+ HDC hdc1 = BeginPaint(hwnd, &ps);
+
+ RECT rc;
+ GetClientRect(hwnd, &rc);
+ DrawEdge(hdc1, &rc, EDGE_ETCHED, BF_RECT);
+ InflateRect(&rc, -2, -2);
+
+ HBRUSH hBrush = (IsWindowEnabled(hwnd)) ? CreateSolidBrush(GetWindowLongPtr(hwnd, 0)) : CreateHatchBrush(HS_BDIAGONAL, GetSysColor(COLOR_GRAYTEXT));
+ SetBkColor(hdc1, GetSysColor(COLOR_BTNFACE));
+ FillRect(hdc1, &rc, hBrush);
+ DeleteObject(hBrush);
+
+ EndPaint(hwnd, &ps);
+ break;
}
return DefWindowProc(hwnd, message, wParam, lParam);
}
-int InitColourPicker(void)
+void InitColourPicker(void)
{
- WNDCLASS wcl;
-
+ WNDCLASS wcl = { 0 };
wcl.lpfnWndProc = ColourPickerWndProc;
- wcl.cbClsExtra = 0;
- wcl.cbWndExtra = sizeof(COLORREF)*2;
- wcl.hInstance = g_hInst;
- wcl.hCursor = NULL;
+ wcl.cbWndExtra = sizeof(COLORREF) * 2;
+ wcl.hInstance = hInst;
wcl.lpszClassName = _T(WNDCLASS_COLOURPICKER);
- wcl.hbrBackground = (HBRUSH)(COLOR_BTNFACE+1);
- wcl.hIcon = NULL;
- wcl.lpszMenuName = NULL;
- wcl.style = CS_HREDRAW|CS_VREDRAW|CS_GLOBALCLASS;
+ wcl.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);
+ wcl.style = CS_HREDRAW | CS_VREDRAW | CS_GLOBALCLASS;
RegisterClass(&wcl);
- return 0;
}
diff --git a/src/mir_core/src/miranda.cpp b/src/mir_core/src/miranda.cpp
index c3353e7d67..610d5382c0 100644
--- a/src/mir_core/src/miranda.cpp
+++ b/src/mir_core/src/miranda.cpp
@@ -34,6 +34,7 @@ void CheckLogs();
void InitLogs();
void UninitLogs();
+void InitColourPicker();
void InitHyperlink();
void InitMetaContacts();
void InitTimeZones();
@@ -85,6 +86,7 @@ static void LoadCoreModule(void)
InitWinver();
InitPathUtils();
InitLogs();
+ InitColourPicker();
InitHyperlink();
InitTimeZones();
InitialiseModularEngine();