diff options
author | George Hazan <george.hazan@gmail.com> | 2015-06-20 11:51:39 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2015-06-20 11:51:39 +0000 |
commit | 24cbc87262dc8856741db8e9f8388c18b16583ad (patch) | |
tree | c5f3ef734bc889d41e57f97cc22003b3797e420c | |
parent | e110389857a42787e6cd590369d5605c9bf5599f (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.cpp | 2 | ||||
-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.cpp | 2 |
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();
|