diff options
Diffstat (limited to 'plugins/NotesAndReminders/src/notes.cpp')
-rw-r--r-- | plugins/NotesAndReminders/src/notes.cpp | 1015 |
1 files changed, 436 insertions, 579 deletions
diff --git a/plugins/NotesAndReminders/src/notes.cpp b/plugins/NotesAndReminders/src/notes.cpp index f7ef6474c5..373e4c05a7 100644 --- a/plugins/NotesAndReminders/src/notes.cpp +++ b/plugins/NotesAndReminders/src/notes.cpp @@ -6,13 +6,12 @@ // NotesData DB data params -#define DATATAG_TEXT 1 // %s -#define DATATAG_SCROLLPOS 2 // %u (specifies rich edit controls scroll post as first visible line) -#define DATATAG_BGCOL 3 // %x (custom background color) -#define DATATAG_FGCOL 4 // %x (custom text/fg colors) -#define DATATAG_TITLE 5 // %s (custom note title) -#define DATATAG_FONT 6 // %d:%u:%u:%s (custom font) - +#define DATATAG_TEXT 1 // %s +#define DATATAG_SCROLLPOS 2 // %u (specifies rich edit controls scroll post as first visible line) +#define DATATAG_BGCOL 3 // %x (custom background color) +#define DATATAG_FGCOL 4 // %x (custom text/fg colors) +#define DATATAG_TITLE 5 // %s (custom note title) +#define DATATAG_FONT 6 // %d:%u:%u:%s (custom font) #define MAX_TITLE_LEN 63 #define MAX_NOTE_LEN 16384 @@ -20,7 +19,6 @@ // delay before saving note changes (ms) #define NOTE_CHANGE_COMMIT_DELAY 1000 - #ifndef WS_EX_NOACTIVATE #define WS_EX_NOACTIVATE 0x08000000 #endif @@ -84,27 +82,24 @@ static struct ColorPreset clrPresets[] = { LPGEN("White"), RGB(255,255,255) } }; - TREEELEMENT *g_Stickies = NULL; +LRESULT CALLBACK StickyNoteWndProc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam); -LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message, WPARAM wParam,LPARAM lParam); - -INT_PTR PluginMenuCommandAddNew(WPARAM w,LPARAM l); -INT_PTR PluginMenuCommandDeleteAll(WPARAM w,LPARAM l); +INT_PTR PluginMenuCommandAddNew(WPARAM w, LPARAM l); +INT_PTR PluginMenuCommandDeleteAll(WPARAM w, LPARAM l); void GetTriggerTimeString(const ULARGE_INTEGER *When, char *s, UINT strSize, BOOL bUtc); void OnListResize(HWND Dialog); void UpdateGeomFromWnd(HWND Dialog, int *geom, int *colgeom, int nCols); void FileTimeToTzLocalST(const FILETIME *lpUtc, SYSTEMTIME *tmLocal); - COLORREF GetCaptionColor(COLORREF bodyClr) { const DWORD r = ((bodyClr & 0xff) * 4) / 5; const DWORD g = (((bodyClr & 0xff00) * 4) / 5) & 0xff00; const DWORD b = (((bodyClr & 0xff0000) * 4) / 5) & 0xff0000; - return (COLORREF)(r|g|b); + return (COLORREF)(r | g | b); } @@ -116,10 +111,8 @@ static void EnsureUniqueID(STICKYNOTE *TSN) try_next: // check existing notes if id is in use - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) - { - if (((STICKYNOTE*)TTE->ptrdata)->ID.QuadPart == TSN->ID.QuadPart) - { + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) { + if (((STICKYNOTE*)TTE->ptrdata)->ID.QuadPart == TSN->ID.QuadPart) { // id in use, try new (increases the ID/time stamp by 100 nanosecond steps until an unused time is found, // allthough it's very unlikely that there will be duplicated id's it's better to make 100% sure) TSN->ID.QuadPart++; @@ -128,11 +121,9 @@ try_next: } } - static void InitNoteTitle(STICKYNOTE *TSN) { - if (g_NoteTitleDate) - { + if (g_NoteTitleDate) { char TempStr[MAX_PATH]; SYSTEMTIME tm; LCID lc = GetUserDefaultLCID(); @@ -142,16 +133,14 @@ static void InitNoteTitle(STICKYNOTE *TSN) memset(&tm, 0, sizeof(tm)); FileTimeToTzLocalST((FILETIME*)&TSN->ID, &tm); - if ( GetDateFormat(lc, 0, &tm, GetDateFormatStr(), TempStr, MAX_PATH) ) - { + if (GetDateFormat(lc, 0, &tm, GetDateFormatStr(), TempStr, MAX_PATH)) { // append time if requested - if (g_NoteTitleTime) - { + if (g_NoteTitleTime) { int n = (int)mir_strlen(TempStr); TempStr[n++] = ' '; TempStr[n] = 0; - GetTimeFormat(MAKELCID(MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US),0), 0, &tm, GetTimeFormatStr(), TempStr+n, MAX_PATH-n); + GetTimeFormat(MAKELCID(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), 0), 0, &tm, GetTimeFormatStr(), TempStr + n, MAX_PATH - n); } TSN->title = _strdup(TempStr); @@ -161,19 +150,16 @@ static void InitNoteTitle(STICKYNOTE *TSN) TSN->CustomTitle = FALSE; } - static void InitStickyNoteLogFont(STICKYNOTEFONT *pCustomFont, LOGFONT *lf) { - if (!pCustomFont->size) - { + if (!pCustomFont->size) { SystemParametersInfo(SPI_GETICONTITLELOGFONT, sizeof(LOGFONT), &lf, FALSE); lf->lfHeight = 10; HDC hdc = GetDC(0); - lf->lfHeight = -MulDiv(lf->lfHeight,GetDeviceCaps(hdc, LOGPIXELSY), 72); + lf->lfHeight = -MulDiv(lf->lfHeight, GetDeviceCaps(hdc, LOGPIXELSY), 72); ReleaseDC(0, hdc); } - else - { + else { lf->lfHeight = pCustomFont->size; } @@ -193,10 +179,9 @@ static void InitStickyNoteLogFont(STICKYNOTEFONT *pCustomFont, LOGFONT *lf) static BOOL CreateStickyNoteFont(STICKYNOTEFONT *pCustomFont, LOGFONT *plf) { - LOGFONT lf = {0}; + LOGFONT lf = { 0 }; - if (!plf) - { + if (!plf) { InitStickyNoteLogFont(pCustomFont, &lf); plf = &lf; } @@ -210,28 +195,25 @@ static BOOL CreateStickyNoteFont(STICKYNOTEFONT *pCustomFont, LOGFONT *plf) } -STICKYNOTE* NewNoteEx(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID,BOOL Visible,BOOL OnTop,int scrollV,COLORREF bgClr,COLORREF fgClr,char *Title,STICKYNOTEFONT *pCustomFont,BOOL bLoading) +STICKYNOTE* NewNoteEx(int Ax, int Ay, int Aw, int Ah, char *Data, ULARGE_INTEGER *ID, BOOL bVisible, BOOL bOnTop, int scrollV, COLORREF bgClr, COLORREF fgClr, char *Title, STICKYNOTEFONT *pCustomFont, BOOL bLoading) { - WNDCLASSEX TWC = {0}; + WNDCLASSEX TWC = { 0 }; WINDOWPLACEMENT TWP; - DWORD L1,L2; + DWORD L1, L2; SYSTEMTIME tm; - char TempStr[MAX_PATH] = {0}; - char *TData; - const BOOL bIsStartup = Visible & 0x10000; - Visible &= ~0x10000; + const BOOL bIsStartup = bVisible & 0x10000; + bVisible &= ~0x10000; - if (Data) TData = Data; else TData = NULL; + char *TData = Data; - if (!GetClassInfoEx(hmiranda, NOTE_WND_CLASS, &TWC)) - { + if (!GetClassInfoEx(hmiranda, NOTE_WND_CLASS, &TWC)) { TWC.style = CS_HREDRAW | CS_VREDRAW | CS_NOCLOSE; TWC.cbClsExtra = 0; TWC.cbWndExtra = 0; TWC.hInstance = hmiranda; - TWC.hIcon = LoadIcon(0,IDI_APPLICATION); - TWC.hCursor = LoadCursor(0,IDC_ARROW); + TWC.hIcon = LoadIcon(0, IDI_APPLICATION); + TWC.hCursor = LoadCursor(0, IDC_ARROW); TWC.hbrBackground = 0; TWC.lpszMenuName = 0; TWC.lpszClassName = NOTE_WND_CLASS; @@ -240,10 +222,9 @@ STICKYNOTE* NewNoteEx(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID, if (!RegisterClassEx(&TWC)) return NULL; } - if (!TData || Aw < 0 || Ah < 0) - { + if (!TData || Aw < 0 || Ah < 0) { TWP.length = sizeof(WINDOWPLACEMENT); - GetWindowPlacement(GetDesktopWindow(),&TWP); + GetWindowPlacement(GetDesktopWindow(), &TWP); Aw = g_NoteWidth; Ah = g_NoteHeight; Ax = ((TWP.rcNormalPosition.right - TWP.rcNormalPosition.left) / 2) - (Aw / 2); Ay = ((TWP.rcNormalPosition.bottom - TWP.rcNormalPosition.top) / 2) - (Ah / 2); @@ -251,22 +232,19 @@ STICKYNOTE* NewNoteEx(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID, STICKYNOTE *TSN = (STICKYNOTE*)malloc(sizeof(STICKYNOTE)); - if (ID) - { + if (ID) { TSN->ID = *ID; } - else - { + else { GetSystemTime(&tm); SYSTEMTIMEtoFILETIME(&tm, (FILETIME*)&TSN->ID); } EnsureUniqueID(TSN); - TreeAdd(&g_Stickies,TSN); + TreeAdd(&g_Stickies, TSN); - if (!TData) - { + if (!TData) { TData = _strdup(""); TSN->data = TData; } @@ -274,19 +252,17 @@ STICKYNOTE* NewNoteEx(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID, TSN->data = TData; // init note title (time-stamp) - if (Title) - { + if (Title) { TSN->title = Title; TSN->CustomTitle = TRUE; } - else - { + else { TSN->title = NULL; InitNoteTitle(TSN); } - TSN->Visible = Visible; - TSN->OnTop = OnTop; + TSN->bVisible = bVisible; + TSN->bOnTop = bOnTop; TSN->BgColor = bgClr; TSN->FgColor = fgClr; @@ -295,65 +271,59 @@ STICKYNOTE* NewNoteEx(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID, L1 = WS_EX_TOOLWINDOW; if (g_Transparency < 255) L1 |= WS_EX_LAYERED; - if (OnTop) L1 |= WS_EX_TOPMOST; + if (bOnTop) L1 |= WS_EX_TOPMOST; L2 = WS_POPUP | WS_THICKFRAME | WS_CAPTION; // NOTE: loaded note positions stem from GetWindowPlacement, which normally have a different coord space than // CreateWindow/SetWindowPos, BUT since we now use WS_EX_TOOLWINDOW they use the same coord space so // we don't have to worry about notes "drifting" between sessions - TSN->SNHwnd = CreateWindowEx(L1, NOTE_WND_CLASS, "StickyNote", L2, Ax,Ay,Aw,Ah, NULL, 0, hmiranda, TSN); + TSN->SNHwnd = CreateWindowEx(L1, NOTE_WND_CLASS, "StickyNote", L2, Ax, Ay, Aw, Ah, NULL, 0, hmiranda, TSN); if (g_Transparency < 255) - SetLayeredWindowAttributes(TSN->SNHwnd,0,(BYTE)g_Transparency,LWA_ALPHA); + SetLayeredWindowAttributes(TSN->SNHwnd, 0, (BYTE)g_Transparency, LWA_ALPHA); // ensure that window is not placed off-screen (if previous session had different monitor count or resolution) // NOTE: SetWindowPlacement should do this, but it's extremly flakey - if (Data) - { - if (!MonitorFromWindow(TSN->SNHwnd, MONITOR_DEFAULTTONULL) ) - { + if (Data) { + if (!MonitorFromWindow(TSN->SNHwnd, MONITOR_DEFAULTTONULL)) { TWP.length = sizeof(WINDOWPLACEMENT); GetWindowPlacement(GetDesktopWindow(), &TWP); if (Aw > 500) Aw = 500; - if (Ay < TWP.rcNormalPosition.left+10 || Ax > TWP.rcNormalPosition.right-120) + if (Ay < TWP.rcNormalPosition.left + 10 || Ax > TWP.rcNormalPosition.right - 120) Ax = ((TWP.rcNormalPosition.right - TWP.rcNormalPosition.left) / 2) - (Aw / 2) + (rand() & 0x3f); - if (Ay < TWP.rcNormalPosition.top+50 || Ay > TWP.rcNormalPosition.bottom-50) + if (Ay < TWP.rcNormalPosition.top + 50 || Ay > TWP.rcNormalPosition.bottom - 50) Ay = ((TWP.rcNormalPosition.bottom - TWP.rcNormalPosition.top) / 4) + (rand() & 0x1f); - SetWindowPos(TSN->SNHwnd, NULL, Ax, Ay, Aw, Ah, SWP_NOZORDER|SWP_NOACTIVATE); + SetWindowPos(TSN->SNHwnd, NULL, Ax, Ay, Aw, Ah, SWP_NOZORDER | SWP_NOACTIVATE); } } - if (Visible) - { + if (bVisible) { ShowWindow(TSN->SNHwnd, SW_SHOWNA); // when loading notes (only at startup), place all non-top notes at the bottom so they don't cover other windows - if (Data && !OnTop && bIsStartup) - SetWindowPos(TSN->SNHwnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_NOACTIVATE|SWP_ASYNCWINDOWPOS); + if (Data && !bOnTop && bIsStartup) + SetWindowPos(TSN->SNHwnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE | SWP_ASYNCWINDOWPOS); } if (scrollV) - { SendMessage(TSN->REHwnd, EM_LINESCROLL, 0, scrollV); - } // make sure that any event triggered by init doesn't cause a meaningless save KillTimer(TSN->SNHwnd, 1025); - if (!bLoading) - { + if (!bLoading) { NOTIFY_LIST(); } return TSN; } -STICKYNOTE* NewNote(int Ax,int Ay,int Aw,int Ah,char *Data,ULARGE_INTEGER *ID,BOOL Visible,BOOL OnTop,int scrollV) +STICKYNOTE* NewNote(int Ax, int Ay, int Aw, int Ah, char *Data, ULARGE_INTEGER *ID, BOOL bVisible, BOOL bOnTop, int scrollV) { - return NewNoteEx(Ax,Ay,Aw,Ah,Data,ID,Visible,OnTop,scrollV,0,0,NULL,NULL,FALSE); + return NewNoteEx(Ax, Ay, Aw, Ah, Data, ID, bVisible, bOnTop, scrollV, 0, 0, NULL, NULL, FALSE); } void LoadNotes(BOOL bIsStartup) @@ -364,16 +334,14 @@ void LoadNotes(BOOL bIsStartup) g_Stickies = NULL; - int NotesCount = db_get_dw(0,MODULENAME,"NotesData",0); + int NotesCount = db_get_dw(0, MODULENAME, "NotesData", 0); - for (int I = 0; I < NotesCount; I++) - { + for (int I = 0; I < NotesCount; I++) { char *DelPos; mir_snprintf(ValueName, "NotesData%d", I); - if (Value) - { + if (Value) { FreeSettingBlob(Size, Value); Value = NULL; } @@ -385,31 +353,29 @@ void LoadNotes(BOOL bIsStartup) if (!Size || !Value) continue; // the setting could not be read from DB -> skip - if (Value[0] == 'X') - { + if (Value[0] == 'X') { // new eXtended/fleXible data format - STICKYNOTE note = {0}; + STICKYNOTE note = { 0 }; int i, rect[4]; int scrollV = 0; STICKYNOTEFONT *pCustomFont = NULL; DWORD flags; - DelPos = strchr(Value+1,0x1B); + DelPos = strchr(Value + 1, 0x1B); if (DelPos) *DelPos = 0; // id:x:y:w:h:flags - TVal = strchr(Value+1, ':'); + TVal = strchr(Value + 1, ':'); if (!TVal || (DelPos && TVal > DelPos)) continue; *TVal++ = 0; - note.ID.QuadPart = _strtoui64(Value+1, NULL, 16); + note.ID.QuadPart = _strtoui64(Value + 1, NULL, 16); - for (i=0; i<4; i++) - { + for (i = 0; i<4; i++) { char *sep = strchr(TVal, ':'); if (!sep || (DelPos && sep > DelPos)) goto skip; @@ -423,13 +389,12 @@ void LoadNotes(BOOL bIsStartup) flags = strtoul(TVal, NULL, 16); if (flags & 1) - note.Visible = TRUE; + note.bVisible = TRUE; if (flags & 2) - note.OnTop = TRUE; + note.bOnTop = TRUE; // optional \033 separated params - while (DelPos) - { + while (DelPos) { char *sep; UINT tag; @@ -448,8 +413,7 @@ void LoadNotes(BOOL bIsStartup) tag = strtoul(TVal, NULL, 10); TVal = sep + 1; - switch (tag) - { + switch (tag) { case DATATAG_TEXT: note.data = _strdup(TVal); break; @@ -510,8 +474,7 @@ void LoadNotes(BOOL bIsStartup) mir_strcpy(pCustomFont->szFace, TVal2); pCustomFont->hFont = NULL; - if ( !CreateStickyNoteFont(pCustomFont, NULL) ) - { + if (!CreateStickyNoteFont(pCustomFont, NULL)) { free(pCustomFont); pCustomFont = NULL; } @@ -523,19 +486,18 @@ void LoadNotes(BOOL bIsStartup) if (!note.data) note.data = _strdup(""); - note.Visible = note.Visible && (!bIsStartup || g_ShowNotesAtStart); + note.bVisible = note.bVisible && (!bIsStartup || g_ShowNotesAtStart); if (bIsStartup) - note.Visible |= 0x10000; + note.bVisible |= 0x10000; - NewNoteEx(rect[0],rect[1],rect[2],rect[3],note.data,¬e.ID,note.Visible,note.OnTop,scrollV,note.BgColor,note.FgColor,note.title,pCustomFont,TRUE); + NewNoteEx(rect[0], rect[1], rect[2], rect[3], note.data, ¬e.ID, note.bVisible, note.bOnTop, scrollV, note.BgColor, note.FgColor, note.title, pCustomFont, TRUE); } - else - { + else { // old format (for DB backward compatibility) - int Tx,Ty,Tw,Th,TV,OT; + int Tx, Ty, Tw, Th, TV, OT; BOOL V; - char *Data,*ID; + char *Data, *ID; ULARGE_INTEGER newid; OT = 1; TV = 1; @@ -543,9 +505,8 @@ void LoadNotes(BOOL bIsStartup) Tw = 179; Th = 35; Data = NULL; ID = NULL; - if (DelPos = strchr(Value,0x1B)) - { // get first delimiter -// int PartLen = DelPos - TVal; + if (DelPos = strchr(Value, 0x1B)) { // get first delimiter + // int PartLen = DelPos - TVal; Data = NULL; ID = NULL; @@ -598,36 +559,32 @@ void LoadNotes(BOOL bIsStartup) V |= 0x10000; // convert old ID format to new - if ( strchr(ID, '-') ) - { + if (strchr(ID, '-')) { // validate format (otherwise create new) - if (mir_strlen(ID) < 19 || ID[2] != '-' || ID[5] != '-' || ID[10] != ' ' || ID[13] != ':' || ID[16] != ':') - { + if (mir_strlen(ID) < 19 || ID[2] != '-' || ID[5] != '-' || ID[10] != ' ' || ID[13] != ':' || ID[16] != ':') { ID = NULL; } - else - { + else { SYSTEMTIME tm; ID[2] = ID[5] = ID[10] = ID[13] = ID[16] = 0; memset(&tm, 0, sizeof(tm)); tm.wDay = (WORD)strtoul(ID, NULL, 10); - tm.wMonth = (WORD)strtoul(ID+3, NULL, 10); - tm.wYear = (WORD)strtoul(ID+6, NULL, 10); - tm.wHour = (WORD)strtoul(ID+11, NULL, 10); - tm.wMinute = (WORD)strtoul(ID+14, NULL, 10); - tm.wSecond = (WORD)strtoul(ID+17, NULL, 10); + tm.wMonth = (WORD)strtoul(ID + 3, NULL, 10); + tm.wYear = (WORD)strtoul(ID + 6, NULL, 10); + tm.wHour = (WORD)strtoul(ID + 11, NULL, 10); + tm.wMinute = (WORD)strtoul(ID + 14, NULL, 10); + tm.wSecond = (WORD)strtoul(ID + 17, NULL, 10); SYSTEMTIMEtoFILETIME(&tm, (FILETIME*)&newid); } } - else - { + else { ID = NULL; } - NewNoteEx(Tx,Ty,Tw,Th,Data,ID?&newid:NULL,V,(BOOL)OT,0,0,0,NULL,NULL,TRUE); + NewNoteEx(Tx, Ty, Tw, Th, Data, ID ? &newid : NULL, V, (BOOL)OT, 0, 0, 0, NULL, NULL, TRUE); } } skip:; @@ -641,8 +598,7 @@ skip:; void CloseNotesList() { - if (ListNotesVisible) - { + if (ListNotesVisible) { DestroyWindow(LV); ListNotesVisible = FALSE; } @@ -650,18 +606,16 @@ void CloseNotesList() static void PurgeNotesTree() { - while (g_Stickies) // empty whole tree - { + while (g_Stickies) { // empty whole tree STICKYNOTE *pt = (STICKYNOTE*)g_Stickies->ptrdata; if (pt->SNHwnd) DestroyWindow(pt->SNHwnd); SAFE_FREE((void**)&pt->title); SAFE_FREE((void**)&pt->data); - if (pt->pCustomFont) - { + if (pt->pCustomFont) { DeleteObject(pt->pCustomFont->hFont); free(pt->pCustomFont); } - TreeDelete(&g_Stickies,pt); + TreeDelete(&g_Stickies, pt); SAFE_FREE((void**)&pt); } g_Stickies = NULL; @@ -671,11 +625,10 @@ void PurgeNotes(void) { char ValueName[16]; - int NotesCount = db_get_dw(0,MODULENAME,"NotesData",0); - for(int I = 0; I < NotesCount; I++) - { + int NotesCount = db_get_dw(0, MODULENAME, "NotesData", 0); + for (int I = 0; I < NotesCount; I++) { mir_snprintf(ValueName, "NotesData%d", I); - db_unset(0,MODULENAME,ValueName); + db_unset(0, MODULENAME, ValueName); } } @@ -696,23 +649,20 @@ void BringAllNotesToFront(STICKYNOTE *pActive) // is active, it refuses to move notes to top like it should with HWND_TOP. as a workaround still doesn't // work 100% of the time, but at least more often, we first move not to top-most then for non-always-on-top // notes we demote them back as a non top-most window - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) - { + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) { STICKYNOTE *SN = (STICKYNOTE*)TTE->ptrdata; - if (SN->Visible && pActive != SN) - { - SetWindowPos(SN->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); - if (!SN->OnTop) - SetWindowPos(SN->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); + if (SN->bVisible && pActive != SN) { + SetWindowPos(SN->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); + if (!SN->bOnTop) + SetWindowPos(SN->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); } } - if (pActive) - { - SetWindowPos(pActive->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); - if (!pActive->OnTop) - SetWindowPos(pActive->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); + if (pActive) { + SetWindowPos(pActive->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); + if (!pActive->bOnTop) + SetWindowPos(pActive->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); } } @@ -723,18 +673,17 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) int n, l; char ValueName[32]; WINDOWPLACEMENT wp; - int TX,TY,TW,TH; + int TX, TY, TW, TH; DWORD flags; int SzT; int scrollV; - char *tData, *Value; + char *tData; const int OldNotesCount = db_get_dw(0, MODULENAME, "NotesData", 0); db_set_dw(0, MODULENAME, "NotesData", NotesCount); - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next, I++) - { + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next, I++) { STICKYNOTE *pNote = (STICKYNOTE*)TTE->ptrdata; BOOL bDeleteTData = TRUE; scrollV = 0; @@ -750,21 +699,20 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) // set flags flags = 0; - if (pNote->Visible) flags |= 1; - if (pNote->OnTop) flags |= 2; + if (pNote->bVisible) flags |= 1; + if (pNote->bOnTop) flags |= 2; // get note text SzT = GetWindowTextLength(pNote->REHwnd); - if (SzT) // TODO: change to support unicode and rtf, use EM_STREAMOUT - { - if (SzT > MAX_NOTE_LEN) SzT = MAX_NOTE_LEN; // we want to be far below the 64k limit + if (SzT) { // TODO: change to support unicode and rtf, use EM_STREAMOUT + if (SzT > MAX_NOTE_LEN) + SzT = MAX_NOTE_LEN; // we want to be far below the 64k limit tData = (char*)malloc(SzT + 1); if (tData) GetWindowText(pNote->REHwnd, tData, SzT + 1); } - if (pNote == pModified) - { + if (pNote == pModified) { // update the data of the modified note if (pNote->data) free(pNote->data); @@ -772,16 +720,12 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) bDeleteTData = FALSE; } - if (!tData) - // empty note + if (!tData) // empty note SzT = 0; - else - // get current scroll position + else // get current scroll position scrollV = SendMessage(pNote->REHwnd, EM_GETFIRSTVISIBLELINE, 0, 0); - // - - Value = (char*)malloc(SzT + 512); + char *Value = (char*)malloc(SzT + 512); if (!Value) { if (bDeleteTData) SAFE_FREE((void**)&tData); @@ -795,51 +739,44 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) if (l > 0) n += l; // scroll pos - if (scrollV > 0) - { - l = sprintf(Value+n, "\033""%u:%u", DATATAG_SCROLLPOS, (UINT)scrollV); //!!!!!!!!!! + if (scrollV > 0) { + l = sprintf(Value + n, "\033""%u:%u", DATATAG_SCROLLPOS, (UINT)scrollV); //!!!!!!!!!! if (l > 0) n += l; } // custom bg color - if (pNote->BgColor) - { - l = sprintf(Value+n, "\033""%u:%x", DATATAG_BGCOL, (UINT)(pNote->BgColor&0xffffff)); //!!!!!!!!!!!!! + if (pNote->BgColor) { + l = sprintf(Value + n, "\033""%u:%x", DATATAG_BGCOL, (UINT)(pNote->BgColor & 0xffffff)); //!!!!!!!!!!!!! if (l > 0) n += l; } // custom fg color - if (pNote->FgColor) - { - l = sprintf(Value+n, "\033""%u:%x", DATATAG_FGCOL, (UINT)(pNote->FgColor&0xffffff)); //!!!!!!!!!!!!! + if (pNote->FgColor) { + l = sprintf(Value + n, "\033""%u:%x", DATATAG_FGCOL, (UINT)(pNote->FgColor & 0xffffff)); //!!!!!!!!!!!!! if (l > 0) n += l; } - if (pNote->pCustomFont) - { - l = sprintf(Value+n, "\033""%u:%d:%u:%u:%s", DATATAG_FONT, + if (pNote->pCustomFont) { + l = sprintf(Value + n, "\033""%u:%d:%u:%u:%s", DATATAG_FONT, (int)pNote->pCustomFont->size, (UINT)pNote->pCustomFont->style, (UINT)pNote->pCustomFont->charset, pNote->pCustomFont->szFace); //!!!!!!!!!!!!!!! if (l > 0) n += l; } // custom title - if (pNote->CustomTitle && pNote->title) - { - l = sprintf(Value+n, "\033""%u:%s", DATATAG_TITLE, pNote->title); //!!!!!!!!!!!!! + if (pNote->CustomTitle && pNote->title) { + l = sprintf(Value + n, "\033""%u:%s", DATATAG_TITLE, pNote->title); //!!!!!!!!!!!!! if (l > 0) n += l; } // note text (ALWAYS PUT THIS PARAM LAST) - if (tData) - { - l = sprintf(Value+n, "\033""%u:%s", DATATAG_TEXT, tData); //!!!!!!!!!!!! + if (tData) { + l = sprintf(Value + n, "\033""%u:%s", DATATAG_TEXT, tData); //!!!!!!!!!!!! if (l > 0) n += l; } // clamp data size to WORD (including null terminator) - if (n >= 0xffff) - { + if (n >= 0xffff) { // huston, we have a problem, strip some reminder text n = 0xfffe; Value[0xffff] = 0; @@ -847,7 +784,7 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) mir_snprintf(ValueName, "NotesData%d", NotesCount - I - 1); // we do not reverse notes in DB - db_set_blob(0, MODULENAME, ValueName, Value, n+1); + db_set_blob(0, MODULENAME, ValueName, Value, n + 1); SAFE_FREE((void**)&Value); if (bDeleteTData) @@ -859,10 +796,9 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) } // delete any left over DB note entries - for(; I < OldNotesCount; I++) - { + for (; I < OldNotesCount; I++) { mir_snprintf(ValueName, "NotesData%d", I); - db_unset(0,MODULENAME,ValueName); + db_unset(0, MODULENAME, ValueName); } NOTIFY_LIST(); @@ -870,14 +806,12 @@ static void JustSaveNotesEx(STICKYNOTE *pModified = NULL) void OnDeleteNote(HWND hdlg, STICKYNOTE *SN) { - if (MessageBoxW(hdlg, TranslateT("Are you sure you want to delete this note?"), TranslateT(SECTIONNAME), MB_OKCANCEL) == IDOK) - { + if (MessageBoxW(hdlg, TranslateT("Are you sure you want to delete this note?"), TranslateT(SECTIONNAME), MB_OKCANCEL) == IDOK) { if (SN->SNHwnd) DestroyWindow(SN->SNHwnd); TreeDelete(&g_Stickies, SN); SAFE_FREE((void**)&SN->data); - if (SN->pCustomFont) - { + if (SN->pCustomFont) { DeleteObject(SN->pCustomFont->hFont); free(SN->pCustomFont); } @@ -889,8 +823,6 @@ void OnDeleteNote(HWND hdlg, STICKYNOTE *SN) void ShowHideNotes(void) { - BOOL Visible; - if (!g_Stickies) return; @@ -898,33 +830,31 @@ void ShowHideNotes(void) // only toggle vis state if all are hidden or all are visible UINT nHideCount = 0, nVisCount = 0; - - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) - { - if (((STICKYNOTE*)TTE->ptrdata)->Visible) + + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) { + if (((STICKYNOTE*)TTE->ptrdata)->bVisible) nVisCount++; else nHideCount++; } + BOOL bVisible; if (!nVisCount) - Visible = TRUE; + bVisible = TRUE; else if (!nHideCount) - Visible = FALSE; + bVisible = FALSE; else - Visible = TRUE; + bVisible = TRUE; - int bShow = Visible ? SW_SHOWNA : SW_HIDE; + int bShow = bVisible ? SW_SHOWNA : SW_HIDE; - - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) - { + + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) { STICKYNOTE *SN = (STICKYNOTE*)TTE->ptrdata; - if ((!Visible) != (!SN->Visible)) - { + if ((!bVisible) != (!SN->bVisible)) { ShowWindow(SN->SNHwnd, bShow); - SN->Visible = Visible; + SN->bVisible = bVisible; } } @@ -945,20 +875,16 @@ static int FindMenuItem(HMENU h, LPTSTR lpszName) { int n = GetMenuItemCount(h); - if (n <= 0) - { + if (n <= 0) { return -1; } // searches for a menu item based on name (used to avoid hardcoding item indices for sub-menus) - for (UINT i=0; i<(UINT)n; i++) - { + for (UINT i = 0; i < (UINT)n; i++) { char s[128]; - if ( GetMenuString(h, i, s, 128, MF_BYPOSITION) ) - { - if ( !mir_strcmp(s, lpszName) ) - { + if (GetMenuString(h, i, s, 128, MF_BYPOSITION)) { + if (!mir_strcmp(s, lpszName)) { return (int)i; } } @@ -967,16 +893,16 @@ static int FindMenuItem(HMENU h, LPTSTR lpszName) return -1; } -static BOOL DoContextMenu(HWND AhWnd,WPARAM,LPARAM lParam) +static BOOL DoContextMenu(HWND AhWnd, WPARAM, LPARAM lParam) { STICKYNOTE *SN = (STICKYNOTE*)GetProp(AhWnd, "ctrldata"); HMENU hMenuLoad, FhMenu, hSub; hMenuLoad = LoadMenu(hinstance, "MNU_NOTEPOPUP"); - FhMenu = GetSubMenu(hMenuLoad,0); + FhMenu = GetSubMenu(hMenuLoad, 0); - if (SN->OnTop) - CheckMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_CHECKED|MF_BYCOMMAND); + if (SN->bOnTop) + CheckMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_CHECKED | MF_BYCOMMAND); EnableMenuItem(FhMenu, ID_CONTEXTMENUNOTEPOPUP_PASTETITLE, MF_BYCOMMAND | (IsClipboardFormatAvailable(CF_TEXT) ? MF_ENABLED : MF_GRAYED)); @@ -986,20 +912,19 @@ static BOOL DoContextMenu(HWND AhWnd,WPARAM,LPARAM lParam) // NOTE: names used for FindMenuItem would need to include & chars if such shortcuts are added to the menus int n = FindMenuItem(FhMenu, "Appearance"); - if (n >= 0 && (hSub = GetSubMenu(FhMenu, n))) - { + if (n >= 0 && (hSub = GetSubMenu(FhMenu, n))) { HMENU hBg = GetSubMenu(hSub, FindMenuItem(hSub, "Background Color")); HMENU hFg = GetSubMenu(hSub, FindMenuItem(hSub, "Text Color")); - for (int i=0; i<_countof(clrPresets); i++) - InsertMenu(hBg, i, MF_BYPOSITION|MF_OWNERDRAW, IDM_COLORPRESET_BG+i, Translate(clrPresets[i].szName)); + for (int i = 0; i < _countof(clrPresets); i++) + InsertMenu(hBg, i, MF_BYPOSITION | MF_OWNERDRAW, IDM_COLORPRESET_BG + i, Translate(clrPresets[i].szName)); - for (int i=0; i<_countof(clrPresets); i++) - InsertMenu(hFg, i, MF_BYPOSITION|MF_OWNERDRAW, IDM_COLORPRESET_FG+i, Translate(clrPresets[i].szName)); + for (int i = 0; i < _countof(clrPresets); i++) + InsertMenu(hFg, i, MF_BYPOSITION | MF_OWNERDRAW, IDM_COLORPRESET_FG + i, Translate(clrPresets[i].szName)); } TranslateMenu(FhMenu); - TrackPopupMenu(FhMenu,TPM_LEFTALIGN | TPM_RIGHTBUTTON,LOWORD(lParam),HIWORD(lParam),0,AhWnd,0); + TrackPopupMenu(FhMenu, TPM_LEFTALIGN | TPM_RIGHTBUTTON, LOWORD(lParam), HIWORD(lParam), 0, AhWnd, 0); DestroyMenu(hMenuLoad); return TRUE; } @@ -1013,12 +938,12 @@ static void MeasureColorPresetMenuItem(HWND hdlg, LPMEASUREITEMSTRUCT lpMeasureI ReleaseDC(hdlg, hdc); lpMeasureItem->itemWidth = 50 + sz.cx; - lpMeasureItem->itemHeight = (sz.cy+2)>18 ? sz.cy+2 : 18; + lpMeasureItem->itemHeight = (sz.cy + 2)>18 ? sz.cy + 2 : 18; } static void PaintColorPresetMenuItem(LPDRAWITEMSTRUCT lpDrawItem, struct ColorPreset *clrPresets2) { -// UINT n = lpDrawItem->itemID - IDM_COLORPRESET_BG; + // UINT n = lpDrawItem->itemID - IDM_COLORPRESET_BG; RECT rect; rect.left = lpDrawItem->rcItem.left + 50; rect.top = lpDrawItem->rcItem.top; @@ -1043,7 +968,7 @@ static void PaintColorPresetMenuItem(LPDRAWITEMSTRUCT lpDrawItem, struct ColorPr int h = lpDrawItem->rcItem.bottom - lpDrawItem->rcItem.top; rect.left = lpDrawItem->rcItem.left + 5; - rect.top = lpDrawItem->rcItem.top + ((h-14)>>1); + rect.top = lpDrawItem->rcItem.top + ((h - 14) >> 1); rect.right = rect.left + 40; rect.bottom = rect.top + 14; @@ -1058,35 +983,30 @@ static BOOL GetClipboardText_Title(char *pOut, int size) { BOOL bResult = FALSE; - if ( OpenClipboard(NULL) ) - { + if (OpenClipboard(NULL)) { HANDLE hData = GetClipboardData(CF_TEXT); LPCSTR buffer; - if (hData && (buffer = (LPCSTR)GlobalLock(hData))) - { + if (hData && (buffer = (LPCSTR)GlobalLock(hData))) { // trim initial white spaces while (*buffer && isspace(*buffer)) buffer++; size_t n = mir_strlen(buffer); if (n >= size) - n = size-1; + n = size - 1; memcpy(pOut, buffer, n); pOut[n] = 0; // end string on line break and convert tabs to spaces char *p = pOut; - while (*p) - { - if (*p == '\r' || *p == '\n') - { + while (*p) { + if (*p == '\r' || *p == '\n') { *p = 0; n = mir_strlen(pOut); break; } - else if (*p == '\t') - { + else if (*p == '\t') { *p = ' '; } p++; @@ -1108,10 +1028,10 @@ static BOOL GetClipboardText_Title(char *pOut, int size) static void SetNoteTextControl(STICKYNOTE *SN) { - CHARFORMAT CF = {0}; + CHARFORMAT CF = { 0 }; CF.cbSize = sizeof(CHARFORMAT); CF.dwMask = CFM_COLOR; - CF.crTextColor = SN->FgColor ? (SN->FgColor&0xffffff) : BodyFontColor; + CF.crTextColor = SN->FgColor ? (SN->FgColor & 0xffffff) : BodyFontColor; SendMessage(SN->REHwnd, EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&CF); if (SN->data) // TODO: use EM_STREAMIN @@ -1121,11 +1041,10 @@ static void SetNoteTextControl(STICKYNOTE *SN) static UINT_PTR CALLBACK CFHookProc(HWND hdlg, UINT msg, WPARAM, LPARAM) { - if (msg == WM_INITDIALOG) - { + if (msg == WM_INITDIALOG) { // hide color selector - ShowWindow(GetDlgItem(hdlg,0x443), SW_HIDE); - ShowWindow(GetDlgItem(hdlg,0x473), SW_HIDE); + ShowWindow(GetDlgItem(hdlg, 0x443), SW_HIDE); + ShowWindow(GetDlgItem(hdlg, 0x473), SW_HIDE); TranslateDialogDefault(hdlg); } @@ -1133,10 +1052,9 @@ static UINT_PTR CALLBACK CFHookProc(HWND hdlg, UINT msg, WPARAM, LPARAM) } -LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM lParam) +LRESULT CALLBACK StickyNoteWndProc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam) { - switch (message) - { + switch (message) { case WM_CLOSE: return TRUE; @@ -1144,9 +1062,9 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l { RECT SZ; - GetClientRect(hdlg,&SZ); - HWND H = GetDlgItem(hdlg,1); - MoveWindow(H, 0, 0, SZ.right,SZ.bottom, TRUE); + GetClientRect(hdlg, &SZ); + HWND H = GetDlgItem(hdlg, 1); + MoveWindow(H, 0, 0, SZ.right, SZ.bottom, TRUE); KillTimer(hdlg, 1025); SetTimer(hdlg, 1025, NOTE_CHANGE_COMMIT_DELAY, 0); @@ -1154,9 +1072,8 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l return TRUE; } - case WM_TIMER: - if (wParam == 1025) - { + case WM_TIMER: + if (wParam == 1025) { STICKYNOTE *SN = (STICKYNOTE*)GetProp(hdlg, "ctrldata"); KillTimer(hdlg, 1025); @@ -1164,12 +1081,12 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l } break; - case WM_MOVE: + case WM_MOVE: KillTimer(hdlg, 1025); SetTimer(hdlg, 1025, NOTE_CHANGE_COMMIT_DELAY, 0); return TRUE; - case WM_CREATE: + case WM_CREATE: { STICKYNOTE *SN = (STICKYNOTE*)GetProp(hdlg, "ctrldata"); @@ -1181,13 +1098,13 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l BringWindowToTop(hdlg); mystyle = WS_CHILD | WS_VISIBLE | ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN; if (g_ShowScrollbar) mystyle |= WS_VSCROLL; - HWND H = CreateWindow(RICHEDIT_CLASS, 0, mystyle, 0, 0, CS->cx-3-3, CS->cy-3-(3+14), hdlg, (HMENU)1, hmiranda, 0); + HWND H = CreateWindowW(MSFTEDIT_CLASS, 0, mystyle, 0, 0, CS->cx - 3 - 3, CS->cy - 3 - (3 + 14), hdlg, (HMENU)1, hmiranda, 0); SN->REHwnd = H; SendMessage(H, EM_SETTEXTMODE, TM_PLAINTEXT, 0); SendMessage(H, EM_LIMITTEXT, MAX_NOTE_LEN, 0); SendMessage(H, WM_SETFONT, (WPARAM)(SN->pCustomFont ? SN->pCustomFont->hFont : hBodyFont), 1); SendMessage(H, EM_SETEVENTMASK, 0, ENM_CHANGE | ENM_LINK); - SendMessage(H, EM_SETBKGNDCOLOR, 0, SN->BgColor ? (SN->BgColor&0xffffff) : BodyColor); + SendMessage(H, EM_SETBKGNDCOLOR, 0, SN->BgColor ? (SN->BgColor & 0xffffff) : BodyColor); SendMessage(H, EM_AUTOURLDETECT, 1, 0); SetNoteTextControl(SN); } @@ -1197,9 +1114,9 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l { MINMAXINFO *mm = (MINMAXINFO*)lParam; // min width accomodates frame, buttons and some extra space for sanity - mm->ptMinTrackSize.x = 48+3+3+8 + 40; + mm->ptMinTrackSize.x = 48 + 3 + 3 + 8 + 40; // min height allows collapsing entire client area, only leaving frame and caption - mm->ptMinTrackSize.y = 3+3+14; + mm->ptMinTrackSize.y = 3 + 3 + 14; } return 0; @@ -1210,15 +1127,14 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l case WM_NCPAINT: // make window borders have the same color as caption { - STICKYNOTE *SN = (STICKYNOTE*)GetProp(hdlg,"ctrldata"); + STICKYNOTE *SN = (STICKYNOTE*)GetProp(hdlg, "ctrldata"); RECT rect, wr, r; //HDC hdc = GetDCEx(hdlg, (HRGN)wParam, DCX_WINDOW|DCX_INTERSECTRGN); HDC hdc = GetWindowDC(hdlg); GetWindowRect(hdlg, &wr); - if (wParam && wParam != 1) - { + if (wParam && wParam != 1) { SelectClipRgn(hdc, (HRGN)wParam); OffsetClipRgn(hdc, -wr.left, -wr.top); } @@ -1231,39 +1147,39 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l // draw all frame sides separately to avoid filling client area (which flickers) { - // top - r.left = rect.left; r.right = rect.right; - r.top = rect.top; r.bottom = r.top + 3+14; - FillRect(hdc, &r, hBkBrush); - // bottom - r.top = rect.bottom - 3; r.bottom = rect.bottom; - FillRect(hdc, &r, hBkBrush); - // left - r.left = rect.left; r.right = r.left + 3; - r.top = rect.top + 3+14; r.bottom = rect.bottom - 3; - FillRect(hdc, &r, hBkBrush); - // right - r.left = rect.right - 3; r.right = rect.right; - FillRect(hdc, &r, hBkBrush); + // top + r.left = rect.left; r.right = rect.right; + r.top = rect.top; r.bottom = r.top + 3 + 14; + FillRect(hdc, &r, hBkBrush); + // bottom + r.top = rect.bottom - 3; r.bottom = rect.bottom; + FillRect(hdc, &r, hBkBrush); + // left + r.left = rect.left; r.right = r.left + 3; + r.top = rect.top + 3 + 14; r.bottom = rect.bottom - 3; + FillRect(hdc, &r, hBkBrush); + // right + r.left = rect.right - 3; r.right = rect.right; + FillRect(hdc, &r, hBkBrush); } // paint title bar contents (time stamp and buttons) if (SN && SN->title) { RECT R; - SelectObject(hdc,hCaptionFont); - R.top = 3+1; R.bottom = 3+11; R.left = 3+2; R.right = rect.right-3-1; + SelectObject(hdc, hCaptionFont); + R.top = 3 + 1; R.bottom = 3 + 11; R.left = 3 + 2; R.right = rect.right - 3 - 1; if (g_ShowNoteButtons) R.right -= 48; - SetTextColor(hdc,SN->FgColor ? (SN->FgColor&0xffffff) : CaptionFontColor); + SetTextColor(hdc, SN->FgColor ? (SN->FgColor & 0xffffff) : CaptionFontColor); SetBkMode(hdc, TRANSPARENT); DrawText(hdc, SN->title, -1, &R, DT_LEFT | DT_SINGLELINE | DT_END_ELLIPSIS | DT_VCENTER); } if (g_ShowNoteButtons) { HICON hcIcon; - if (SN->OnTop) + if (SN->bOnTop) hcIcon = IcoLib_GetIconByHandle(iconList[4].hIcolib); else hcIcon = IcoLib_GetIconByHandle(iconList[7].hIcolib); @@ -1292,7 +1208,7 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l pRect->bottom -= 3; pRect->right -= 3; pRect->left += 3; - pRect->top += 3+14; + pRect->top += 3 + 14; } return WVR_REDRAW; @@ -1301,49 +1217,45 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l RedrawWindow(hdlg, NULL, NULL, RDW_UPDATENOW); return TRUE; - case WM_NOTIFY: - if (LOWORD(wParam) == 1) - { - char *Buff; + case WM_NOTIFY: + if (LOWORD(wParam) == 1) { + char *Buff; PENLINK PEnLnk = (PENLINK)lParam; - if (PEnLnk->msg == WM_LBUTTONDOWN) - { - SendDlgItemMessage(hdlg,1,EM_EXSETSEL,0,(LPARAM)&(PEnLnk->chrg)); + if (PEnLnk->msg == WM_LBUTTONDOWN) { + SendDlgItemMessage(hdlg, 1, EM_EXSETSEL, 0, (LPARAM)&(PEnLnk->chrg)); Buff = (char*)malloc(PEnLnk->chrg.cpMax - PEnLnk->chrg.cpMin + 1); - SendDlgItemMessage(hdlg,1,EM_GETSELTEXT,0,(LPARAM)Buff); + SendDlgItemMessage(hdlg, 1, EM_GETSELTEXT, 0, (LPARAM)Buff); if ((GetAsyncKeyState(VK_CONTROL) >> 15) != 0) - ShellExecute(hdlg, "open", "iexplore", Buff, "" ,SW_SHOWNORMAL); + ShellExecute(hdlg, "open", "iexplore", Buff, "", SW_SHOWNORMAL); else if (g_lpszAltBrowser && *g_lpszAltBrowser) - ShellExecute(hdlg, "open", g_lpszAltBrowser, Buff, "" ,SW_SHOWNORMAL); + ShellExecute(hdlg, "open", g_lpszAltBrowser, Buff, "", SW_SHOWNORMAL); else ShellExecute(hdlg, "open", Buff, "", "", SW_SHOWNORMAL); SAFE_FREE((void**)&Buff); return TRUE; } return FALSE; - } + } break; case WM_NCHITTEST: { - int r = DefWindowProc(hdlg,message,wParam,lParam); - // filter out potential hits on windows default title bar buttons - switch (r) - { - case HTSYSMENU: - case HTCLOSE: - case HTMINBUTTON: - case HTMAXBUTTON: - return HTCAPTION; - } - return r; + int r = DefWindowProc(hdlg, message, wParam, lParam); + // filter out potential hits on windows default title bar buttons + switch (r) { + case HTSYSMENU: + case HTCLOSE: + case HTMINBUTTON: + case HTMAXBUTTON: + return HTCAPTION; + } + return r; } case WM_NCLBUTTONDOWN: - if (wParam == HTCAPTION && g_ShowNoteButtons) - { - long X,Y; + if (wParam == HTCAPTION && g_ShowNoteButtons) { + long X, Y; RECT rect; int Tw; @@ -1353,23 +1265,20 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l X = LOWORD(lParam) - rect.left; Y = HIWORD(lParam) - rect.top; - if (X > Tw - 16) - { - SendMessage(hdlg,WM_COMMAND,IDM_TOGGLEONTOP,0); + if (X > Tw - 16) { + SendMessage(hdlg, WM_COMMAND, IDM_TOGGLEONTOP, 0); return TRUE; } - else if (X > Tw - 31 && X < Tw - 16) - { - SendMessage(hdlg,WM_COMMAND,IDM_REMOVENOTE,0); + else if (X > Tw - 31 && X < Tw - 16) { + SendMessage(hdlg, WM_COMMAND, IDM_REMOVENOTE, 0); return TRUE; } - else if (X > Tw - 48 && X < Tw - 32) - { - SendMessage(hdlg,WM_COMMAND,IDM_HIDENOTE,0); + else if (X > Tw - 48 && X < Tw - 32) { + SendMessage(hdlg, WM_COMMAND, IDM_HIDENOTE, 0); return TRUE; } } - return DefWindowProc(hdlg,message,wParam,lParam); + return DefWindowProc(hdlg, message, wParam, lParam); case WM_MEASUREITEM: { @@ -1378,13 +1287,11 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l if (lpMeasureItem->CtlType != ODT_MENU) break; - if (lpMeasureItem->itemID >= IDM_COLORPRESET_BG && lpMeasureItem->itemID <= IDM_COLORPRESET_BG+_countof(clrPresets)) - { + if (lpMeasureItem->itemID >= IDM_COLORPRESET_BG && lpMeasureItem->itemID <= IDM_COLORPRESET_BG + _countof(clrPresets)) { MeasureColorPresetMenuItem(hdlg, lpMeasureItem, clrPresets + (lpMeasureItem->itemID - IDM_COLORPRESET_BG)); return TRUE; } - else if (lpMeasureItem->itemID >= IDM_COLORPRESET_FG && lpMeasureItem->itemID <= IDM_COLORPRESET_FG+_countof(clrPresets)) - { + else if (lpMeasureItem->itemID >= IDM_COLORPRESET_FG && lpMeasureItem->itemID <= IDM_COLORPRESET_FG + _countof(clrPresets)) { MeasureColorPresetMenuItem(hdlg, lpMeasureItem, clrPresets + (lpMeasureItem->itemID - IDM_COLORPRESET_FG)); return TRUE; } @@ -1392,20 +1299,17 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l break; case WM_DRAWITEM: - if (!wParam) - { + if (!wParam) { LPDRAWITEMSTRUCT lpDrawItem = (LPDRAWITEMSTRUCT)lParam; if (lpDrawItem->CtlType != ODT_MENU) break; - if (lpDrawItem->itemID >= IDM_COLORPRESET_BG && lpDrawItem->itemID <= IDM_COLORPRESET_BG+_countof(clrPresets)) - { + if (lpDrawItem->itemID >= IDM_COLORPRESET_BG && lpDrawItem->itemID <= IDM_COLORPRESET_BG + _countof(clrPresets)) { PaintColorPresetMenuItem(lpDrawItem, clrPresets + (lpDrawItem->itemID - IDM_COLORPRESET_BG)); return TRUE; } - else if (lpDrawItem->itemID >= IDM_COLORPRESET_FG && lpDrawItem->itemID <= IDM_COLORPRESET_FG+_countof(clrPresets)) - { + else if (lpDrawItem->itemID >= IDM_COLORPRESET_FG && lpDrawItem->itemID <= IDM_COLORPRESET_FG + _countof(clrPresets)) { PaintColorPresetMenuItem(lpDrawItem, clrPresets + (lpDrawItem->itemID - IDM_COLORPRESET_FG)); return TRUE; } @@ -1416,95 +1320,90 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l { STICKYNOTE *SN = (STICKYNOTE*)GetProp(hdlg, "ctrldata"); - switch ( HIWORD(wParam) ) - { + switch (HIWORD(wParam)) { case EN_CHANGE: case EN_VSCROLL: case EN_HSCROLL: - KillTimer(hdlg,1025); + KillTimer(hdlg, 1025); SetTimer(hdlg, 1025, NOTE_CHANGE_COMMIT_DELAY, 0); break; } - UINT id = (UINT) LOWORD(wParam); + UINT id = (UINT)LOWORD(wParam); HWND H = SN->REHwnd; - if (id >= IDM_COLORPRESET_BG && id <= IDM_COLORPRESET_BG+_countof(clrPresets)) - { - SN->BgColor = clrPresets[id-IDM_COLORPRESET_BG].color | 0xff000000; + if (id >= IDM_COLORPRESET_BG && id <= IDM_COLORPRESET_BG + _countof(clrPresets)) { + SN->BgColor = clrPresets[id - IDM_COLORPRESET_BG].color | 0xff000000; SendMessage(H, EM_SETBKGNDCOLOR, 0, SN->BgColor & 0xffffff); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); return FALSE; } - else if (id >= IDM_COLORPRESET_FG && id <= IDM_COLORPRESET_FG+_countof(clrPresets)) - { - CHARFORMAT CF = {0}; - SN->FgColor = clrPresets[id-IDM_COLORPRESET_FG].color | 0xff000000; + else if (id >= IDM_COLORPRESET_FG && id <= IDM_COLORPRESET_FG + _countof(clrPresets)) { + CHARFORMAT CF = { 0 }; + SN->FgColor = clrPresets[id - IDM_COLORPRESET_FG].color | 0xff000000; CF.cbSize = sizeof(CHARFORMAT); CF.dwMask = CFM_COLOR; CF.crTextColor = SN->FgColor & 0xffffff; SendMessage(H, EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&CF); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); return FALSE; } - switch (id) - { + switch (id) { case ID_CONTEXTMENUNOTEPOPUP_NEWNOTE: - PluginMenuCommandAddNew(0,0); + PluginMenuCommandAddNew(0, 0); break; case ID_APPEARANCE_CUSTOMBG: { - COLORREF custclr[16] = {0}; - CHOOSECOLOR cc = {0}; - COLORREF orgclr = SN->BgColor ? (COLORREF)(SN->BgColor&0xffffff) : (COLORREF)(BodyColor&0xffffff); + COLORREF custclr[16] = { 0 }; + CHOOSECOLOR cc = { 0 }; + COLORREF orgclr = SN->BgColor ? (COLORREF)(SN->BgColor & 0xffffff) : (COLORREF)(BodyColor & 0xffffff); cc.lStructSize = sizeof(cc); cc.hwndOwner = SN->SNHwnd; cc.rgbResult = orgclr; cc.Flags = CC_ANYCOLOR | CC_FULLOPEN | CC_RGBINIT | CC_SOLIDCOLOR; cc.lpCustColors = custclr; - if (ChooseColor(&cc) && cc.rgbResult != orgclr) - { + if (ChooseColor(&cc) && cc.rgbResult != orgclr) { SN->BgColor = cc.rgbResult | 0xff000000; - SendMessage(H, EM_SETBKGNDCOLOR, 0, SN->BgColor&0xffffff); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + SendMessage(H, EM_SETBKGNDCOLOR, 0, SN->BgColor & 0xffffff); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } } break; case ID_APPEARANCE_CUSTOMTEXT: { - COLORREF custclr[16] = {0}; - CHOOSECOLOR cc = {0}; - COLORREF orgclr = SN->FgColor ? (COLORREF)(SN->FgColor&0xffffff) : (COLORREF)(BodyFontColor&0xffffff); + COLORREF custclr[16] = { 0 }; + CHOOSECOLOR cc = { 0 }; + COLORREF orgclr = SN->FgColor ? (COLORREF)(SN->FgColor & 0xffffff) : (COLORREF)(BodyFontColor & 0xffffff); cc.lStructSize = sizeof(cc); cc.hwndOwner = SN->SNHwnd; cc.rgbResult = orgclr; cc.Flags = CC_ANYCOLOR | CC_FULLOPEN | CC_RGBINIT | CC_SOLIDCOLOR; cc.lpCustColors = custclr; - if (ChooseColor(&cc) && cc.rgbResult != orgclr) - { - CHARFORMAT CF = {0}; + if (ChooseColor(&cc) && cc.rgbResult != orgclr) { + CHARFORMAT CF = { 0 }; SN->FgColor = cc.rgbResult | 0xff000000; CF.cbSize = sizeof(CHARFORMAT); CF.dwMask = CFM_COLOR; CF.crTextColor = SN->FgColor & 0xffffff; SendMessage(H, EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&CF); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } } break; + case ID_APPEARANCE_CUSTOMFONT: { - CHOOSEFONT cf = {0}; - LOGFONT lf = {0}; + CHOOSEFONT cf = { 0 }; + LOGFONT lf = { 0 }; if (SN->pCustomFont) InitStickyNoteLogFont(SN->pCustomFont, &lf); @@ -1517,10 +1416,8 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l cf.Flags = CF_EFFECTS | CF_FORCEFONTEXIST | CF_INITTOLOGFONTSTRUCT | CF_SCREENFONTS | CF_ENABLEHOOK; cf.lpfnHook = CFHookProc; - if ( ChooseFont(&cf) ) - { - if (!SN->pCustomFont) - { + if (ChooseFont(&cf)) { + if (!SN->pCustomFont) { SN->pCustomFont = (STICKYNOTEFONT*)malloc(sizeof(STICKYNOTEFONT)); SN->pCustomFont->hFont = NULL; } @@ -1530,8 +1427,7 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l SN->pCustomFont->charset = lf.lfCharSet; mir_strcpy(SN->pCustomFont->szFace, lf.lfFaceName); - if ( !CreateStickyNoteFont(SN->pCustomFont, &lf) ) - { + if (!CreateStickyNoteFont(SN->pCustomFont, &lf)) { // failed free(SN->pCustomFont); SN->pCustomFont = NULL; @@ -1541,7 +1437,7 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l SetWindowText(H, ""); SendMessage(H, WM_SETFONT, (WPARAM)(SN->pCustomFont ? SN->pCustomFont->hFont : hBodyFont), FALSE); SetNoteTextControl(SN); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } } @@ -1550,26 +1446,25 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l case ID_BACKGROUNDCOLOR_RESET: SN->BgColor = 0; SendMessage(H, EM_SETBKGNDCOLOR, 0, (LPARAM)BodyColor); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); break; case ID_TEXTCOLOR_RESET: { - CHARFORMAT CF = {0}; + CHARFORMAT CF = { 0 }; SN->FgColor = 0; CF.cbSize = sizeof(CHARFORMAT); CF.dwMask = CFM_COLOR; CF.crTextColor = BodyFontColor; SendMessage(H, EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&CF); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); } JustSaveNotesEx(); break; case ID_FONT_RESET: - if (SN->pCustomFont) - { + if (SN->pCustomFont) { DeleteObject(SN->pCustomFont->hFont); free(SN->pCustomFont); SN->pCustomFont = NULL; @@ -1578,36 +1473,33 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l SetWindowText(H, ""); SendMessage(H, WM_SETFONT, (WPARAM)hBodyFont, FALSE); SetNoteTextControl(SN); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } break; case ID_CONTEXTMENUNOTEPOPUP_PASTETITLE: { - char s[MAX_TITLE_LEN+1]; - if ( GetClipboardText_Title(s, sizeof(s)) ) - { + char s[MAX_TITLE_LEN + 1]; + if (GetClipboardText_Title(s, sizeof(s))) { if (SN->title) free(SN->title); SN->title = _strdup(s); SN->CustomTitle = TRUE; - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } } break; case ID_CONTEXTMENUNOTEPOPUP_RESETTITLE: - if (SN->CustomTitle) - { - if (SN->title) - { + if (SN->CustomTitle) { + if (SN->title) { free(SN->title); SN->title = NULL; } InitNoteTitle(SN); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE|RDW_FRAME|RDW_UPDATENOW); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME | RDW_UPDATENOW); JustSaveNotesEx(); } break; @@ -1617,35 +1509,35 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l break; case IDM_HIDENOTE: - SN->Visible = FALSE; - ShowWindow(hdlg,SW_HIDE); + SN->bVisible = FALSE; + ShowWindow(hdlg, SW_HIDE); JustSaveNotesEx(); break; case IDM_COPY: - SendMessage(H,WM_COPY,0,0); + SendMessage(H, WM_COPY, 0, 0); break; case IDM_PASTE: - SendMessage(H,WM_PASTE,0,0); + SendMessage(H, WM_PASTE, 0, 0); break; case IDM_CUT: - SendMessage(H,WM_CUT,0,0); + SendMessage(H, WM_CUT, 0, 0); break; case IDM_CLEAR: - SendMessage(H,WM_CLEAR,0,0); + SendMessage(H, WM_CLEAR, 0, 0); break; case IDM_UNDO: - SendMessage(H,WM_UNDO,0,0); + SendMessage(H, WM_UNDO, 0, 0); break; case IDM_TOGGLEONTOP: - SN->OnTop = !SN->OnTop; - SetWindowPos(hdlg, SN->OnTop ? HWND_TOPMOST : HWND_NOTOPMOST, 0,0,0,0, SWP_SHOWWINDOW|SWP_NOMOVE|SWP_NOSIZE); - RedrawWindow(hdlg, NULL, NULL, RDW_FRAME|RDW_INVALIDATE|RDW_UPDATENOW); + SN->bOnTop = !SN->bOnTop; + SetWindowPos(hdlg, SN->bOnTop ? HWND_TOPMOST : HWND_NOTOPMOST, 0, 0, 0, 0, SWP_SHOWWINDOW | SWP_NOMOVE | SWP_NOSIZE); + RedrawWindow(hdlg, NULL, NULL, RDW_FRAME | RDW_INVALIDATE | RDW_UPDATENOW); JustSaveNotesEx(); break; @@ -1665,11 +1557,11 @@ LRESULT CALLBACK StickyNoteWndProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM l break; case WM_CONTEXTMENU: - if (DoContextMenu(hdlg,wParam,lParam)) + if (DoContextMenu(hdlg, wParam, lParam)) return FALSE; default: - return DefWindowProc(hdlg,message,wParam,lParam); + return DefWindowProc(hdlg, message, wParam, lParam); } return FALSE; } @@ -1679,15 +1571,14 @@ static void EditNote(STICKYNOTE *SN) if (!SN) return; - if (!SN->Visible) - { - SN->Visible = TRUE; + if (!SN->bVisible) { + SN->bVisible = TRUE; JustSaveNotesEx(); } - SetWindowPos(SN->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); - if (!SN->OnTop) - SetWindowPos(SN->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); + SetWindowPos(SN->SNHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); + if (!SN->bOnTop) + SetWindowPos(SN->SNHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); SetFocus(SN->REHwnd); } @@ -1697,13 +1588,13 @@ char* GetPreviewString(const char *lpsz) int l; char *p; const int MaxLen = 80; - static char s[80+8]; + static char s[80 + 8]; if (!lpsz) return ""; // trim leading spaces - while ( iswspace(*lpsz) ) + while (iswspace(*lpsz)) lpsz++; l = (int)mir_strlen(lpsz); @@ -1711,17 +1602,15 @@ char* GetPreviewString(const char *lpsz) if (!l) return ""; - if (l <= MaxLen) - { + if (l <= MaxLen) { mir_strcpy(s, lpsz); } - else - { + else { memcpy(s, lpsz, MaxLen); s[MaxLen] = '.'; - s[MaxLen+1] = '.'; - s[MaxLen+2] = '.'; - s[MaxLen+3] = 0; + s[MaxLen + 1] = '.'; + s[MaxLen + 2] = '.'; + s[MaxLen + 3] = 0; } if (!s) @@ -1731,9 +1620,8 @@ char* GetPreviewString(const char *lpsz) p = s; - while (*p) - { - if ( iswspace(*p) ) + while (*p) { + if (iswspace(*p)) *p = ' '; p++; } @@ -1744,18 +1632,17 @@ char* GetPreviewString(const char *lpsz) static void InitListView(HWND AHLV) { int I = 0; - char *S; + char *S; char S1[128]; - char *V = Translate("Visible"); + char *V = Translate("bVisible"); char *T = Translate("Top"); - ListView_SetHoverTime(AHLV,700); - ListView_SetExtendedListViewStyle(AHLV,LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_TRACKSELECT); + ListView_SetHoverTime(AHLV, 700); + ListView_SetExtendedListViewStyle(AHLV, LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_TRACKSELECT); ListView_DeleteAllItems(AHLV); - - for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) - { + + for (TREEELEMENT *TTE = g_Stickies; TTE; TTE = (TREEELEMENT*)TTE->next) { STICKYNOTE *pNote = (STICKYNOTE*)TTE->ptrdata; LV_ITEM lvTIt; @@ -1767,44 +1654,42 @@ static void InitListView(HWND AHLV) lvTIt.iItem = I; lvTIt.iSubItem = 0; lvTIt.pszText = (pNote->CustomTitle && pNote->title) ? pNote->title : S1; - ListView_InsertItem(AHLV,&lvTIt); + ListView_InsertItem(AHLV, &lvTIt); - if (pNote->Visible) - { + if (pNote->bVisible) { lvTIt.iItem = I; lvTIt.iSubItem = 1; lvTIt.pszText = V; - ListView_SetItem(AHLV,&lvTIt); + ListView_SetItem(AHLV, &lvTIt); } - if (pNote->OnTop) - { + if (pNote->bOnTop) { lvTIt.iItem = I; lvTIt.iSubItem = 2; lvTIt.pszText = T; - ListView_SetItem(AHLV,&lvTIt); + ListView_SetItem(AHLV, &lvTIt); } S = GetPreviewString(pNote->data); lvTIt.iItem = I; lvTIt.iSubItem = 3; lvTIt.pszText = S; - ListView_SetItem(AHLV,&lvTIt); + ListView_SetItem(AHLV, &lvTIt); I++; } - ListView_SetItemState(AHLV,0,LVIS_SELECTED,LVIS_SELECTED); + ListView_SetItemState(AHLV, 0, LVIS_SELECTED, LVIS_SELECTED); } -static BOOL DoListContextMenu(HWND AhWnd,WPARAM wParam,LPARAM lParam,STICKYNOTE *pNote) +static BOOL DoListContextMenu(HWND AhWnd, WPARAM wParam, LPARAM lParam, STICKYNOTE *pNote) { HWND hwndListView = (HWND)wParam; - if (hwndListView != GetDlgItem(AhWnd,IDC_LISTREMINDERS)) + if (hwndListView != GetDlgItem(AhWnd, IDC_LISTREMINDERS)) return FALSE; - - HMENU hMenuLoad = LoadMenu(hinstance,"MNU_NOTELISTPOPUP"); - HMENU FhMenu = GetSubMenu(hMenuLoad,0); + + HMENU hMenuLoad = LoadMenu(hinstance, "MNU_NOTELISTPOPUP"); + HMENU FhMenu = GetSubMenu(hMenuLoad, 0); MENUITEMINFO mii = { 0 }; mii.cbSize = sizeof(mii); @@ -1814,31 +1699,28 @@ static BOOL DoListContextMenu(HWND AhWnd,WPARAM wParam,LPARAM lParam,STICKYNOTE mii.fState |= MFS_GRAYED; SetMenuItemInfo(FhMenu, ID_CONTEXTMENUNOTELISTVIEW_EDITNOTE, FALSE, &mii); - if (!pNote) - { - EnableMenuItem(FhMenu, IDM_REMOVENOTE, MF_GRAYED|MF_BYCOMMAND); - EnableMenuItem(FhMenu, ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY, MF_GRAYED|MF_BYCOMMAND); - EnableMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_GRAYED|MF_BYCOMMAND); + if (!pNote) { + EnableMenuItem(FhMenu, IDM_REMOVENOTE, MF_GRAYED | MF_BYCOMMAND); + EnableMenuItem(FhMenu, ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY, MF_GRAYED | MF_BYCOMMAND); + EnableMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_GRAYED | MF_BYCOMMAND); } - else - { - if (pNote->Visible) - CheckMenuItem(FhMenu, ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY, MF_CHECKED|MF_BYCOMMAND); - if (pNote->OnTop) - CheckMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_CHECKED|MF_BYCOMMAND); + else { + if (pNote->bVisible) + CheckMenuItem(FhMenu, ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY, MF_CHECKED | MF_BYCOMMAND); + if (pNote->bOnTop) + CheckMenuItem(FhMenu, IDM_TOGGLEONTOP, MF_CHECKED | MF_BYCOMMAND); } TranslateMenu(FhMenu); - TrackPopupMenu(FhMenu,TPM_LEFTALIGN | TPM_RIGHTBUTTON,LOWORD(lParam),HIWORD(lParam),0,AhWnd,0); + TrackPopupMenu(FhMenu, TPM_LEFTALIGN | TPM_RIGHTBUTTON, LOWORD(lParam), HIWORD(lParam), 0, AhWnd, 0); DestroyMenu(hMenuLoad); return TRUE; } -static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam,LPARAM lParam) +static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog, UINT Message, WPARAM wParam, LPARAM lParam) { - switch (Message) - { + switch (Message) { case WM_SIZE: OnListResize(Dialog); UpdateGeomFromWnd(Dialog, g_notesListGeom, NULL, 0); @@ -1857,20 +1739,18 @@ static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam, return 0; case WM_RELOAD: - SetDlgItemText(Dialog,IDC_REMINDERDATA,""); - InitListView(GetDlgItem(Dialog,IDC_LISTREMINDERS)); + SetDlgItemText(Dialog, IDC_REMINDERDATA, ""); + InitListView(GetDlgItem(Dialog, IDC_LISTREMINDERS)); return TRUE; case WM_CONTEXTMENU: { STICKYNOTE *pNote = NULL; - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { int I = ListView_GetSelectionMark(H); - if (I != -1) - { + if (I != -1) { pNote = (STICKYNOTE*)TreeGetAt(g_Stickies, I); } } @@ -1889,8 +1769,7 @@ static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam, SetDlgItemText(Dialog, IDC_REMINDERDATA, ""); { - - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); LV_COLUMN lvCol; lvCol.mask = LVCF_TEXT | LVCF_WIDTH; @@ -1898,32 +1777,31 @@ static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam, char *S = Translate("Note text"); lvCol.pszText = S; lvCol.cx = g_notesListColGeom[3]; - ListView_InsertColumn(H,0,&lvCol); + ListView_InsertColumn(H, 0, &lvCol); lvCol.mask = LVCF_TEXT | LVCF_WIDTH; S = Translate("Top"); lvCol.pszText = S; lvCol.cx = g_notesListColGeom[2]; - ListView_InsertColumn(H,0,&lvCol); + ListView_InsertColumn(H, 0, &lvCol); lvCol.mask = LVCF_TEXT | LVCF_WIDTH; - S = Translate("Visible"); + S = Translate("bVisible"); lvCol.pszText = S; lvCol.cx = g_notesListColGeom[1]; - ListView_InsertColumn(H,0,&lvCol); + ListView_InsertColumn(H, 0, &lvCol); lvCol.mask = LVCF_TEXT | LVCF_WIDTH; S = Translate("Date/Title"); lvCol.pszText = S; lvCol.cx = g_notesListColGeom[0]; - ListView_InsertColumn(H,0,&lvCol); + ListView_InsertColumn(H, 0, &lvCol); InitListView(H); SetWindowLongPtr(GetDlgItem(H, 0), GWL_ID, IDC_LISTREMINDERS_HEADER); LV = Dialog; - if (g_notesListGeom[1] && g_notesListGeom[2]) - { + if (g_notesListGeom[1] && g_notesListGeom[2]) { WINDOWPLACEMENT wp; wp.length = sizeof(WINDOWPLACEMENT); GetWindowPlacement(Dialog, &wp); @@ -1947,133 +1825,116 @@ static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam, return TRUE; case WM_NOTIFY: - { - if (wParam == IDC_LISTREMINDERS) - { - LPNMLISTVIEW NM = (LPNMLISTVIEW)lParam; - switch (NM->hdr.code) + if (wParam == IDC_LISTREMINDERS) { + LPNMLISTVIEW NM = (LPNMLISTVIEW)lParam; + switch (NM->hdr.code) { + case LVN_ITEMCHANGED: { - case LVN_ITEMCHANGED: - { - char *S = ((STICKYNOTE*)TreeGetAt(g_Stickies,NM->iItem))->data; - SetDlgItemText(Dialog,IDC_REMINDERDATA,S); - } - break; - case NM_DBLCLK: - { - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { - int I = ListView_GetSelectionMark(H); - if (I != -1) - { - EditNote((STICKYNOTE *)TreeGetAt(g_Stickies, I)); - } + char *S = ((STICKYNOTE*)TreeGetAt(g_Stickies, NM->iItem))->data; + SetDlgItemText(Dialog, IDC_REMINDERDATA, S); + } + break; + case NM_DBLCLK: + { + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { + int I = ListView_GetSelectionMark(H); + if (I != -1) { + EditNote((STICKYNOTE *)TreeGetAt(g_Stickies, I)); } } - break; } + break; } - else if (wParam == IDC_LISTREMINDERS_HEADER) - { - LPNMHEADER NM = (LPNMHEADER)lParam; - switch (NM->hdr.code) - { - case HDN_ENDTRACK: - UpdateGeomFromWnd(Dialog, NULL, g_notesListColGeom, _countof(g_notesListColGeom)); - break; - } + } + else if (wParam == IDC_LISTREMINDERS_HEADER) { + LPNMHEADER NM = (LPNMHEADER)lParam; + switch (NM->hdr.code) { + case HDN_ENDTRACK: + UpdateGeomFromWnd(Dialog, NULL, g_notesListColGeom, _countof(g_notesListColGeom)); + break; } } break; case WM_COMMAND: - { - switch(LOWORD(wParam)) + switch (LOWORD(wParam)) { + case ID_CONTEXTMENUNOTELISTVIEW_EDITNOTE: { - case ID_CONTEXTMENUNOTELISTVIEW_EDITNOTE: - { - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { - int I = ListView_GetSelectionMark(H); - if (I != -1) - { - EditNote((STICKYNOTE*)TreeGetAt(g_Stickies, I)); - } + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { + int I = ListView_GetSelectionMark(H); + if (I != -1) { + EditNote((STICKYNOTE*)TreeGetAt(g_Stickies, I)); } } - return TRUE; - case ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY: - { - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { - int I = ListView_GetSelectionMark(H); - if (I != -1) - { - STICKYNOTE *SN = (STICKYNOTE*)TreeGetAt(g_Stickies, I); - SN->Visible = !SN->Visible; - ShowWindow(SN->SNHwnd,SN->Visible?SW_SHOWNA:SW_HIDE); - JustSaveNotesEx(); - } + } + return TRUE; + + case ID_CONTEXTMENUNOTELISTVIEW_TOGGLEVISIBILITY: + { + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { + int I = ListView_GetSelectionMark(H); + if (I != -1) { + STICKYNOTE *SN = (STICKYNOTE*)TreeGetAt(g_Stickies, I); + SN->bVisible = !SN->bVisible; + ShowWindow(SN->SNHwnd, SN->bVisible ? SW_SHOWNA : SW_HIDE); + JustSaveNotesEx(); } } - return TRUE; - case IDM_TOGGLEONTOP: - { - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { - int I = ListView_GetSelectionMark(H); - if (I != -1) - { - STICKYNOTE *SN = (STICKYNOTE*)TreeGetAt(g_Stickies,I); - SN->OnTop = !SN->OnTop; - SetWindowPos(SN->SNHwnd, SN->OnTop ? HWND_TOPMOST : HWND_NOTOPMOST, 0,0,0,0, SWP_SHOWWINDOW|SWP_NOMOVE|SWP_NOSIZE); - RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_FRAME|RDW_INVALIDATE|RDW_UPDATENOW); - JustSaveNotesEx(); - } + } + return TRUE; + + case IDM_TOGGLEONTOP: + { + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { + int I = ListView_GetSelectionMark(H); + if (I != -1) { + STICKYNOTE *SN = (STICKYNOTE*)TreeGetAt(g_Stickies, I); + SN->bOnTop = !SN->bOnTop; + SetWindowPos(SN->SNHwnd, SN->bOnTop ? HWND_TOPMOST : HWND_NOTOPMOST, 0, 0, 0, 0, SWP_SHOWWINDOW | SWP_NOMOVE | SWP_NOSIZE); + RedrawWindow(SN->SNHwnd, NULL, NULL, RDW_FRAME | RDW_INVALIDATE | RDW_UPDATENOW); + JustSaveNotesEx(); } } - return TRUE; + } + return TRUE; - case IDC_CLOSE: - DestroyWindow(Dialog); - ListNotesVisible = FALSE; - return TRUE; + case IDC_CLOSE: + DestroyWindow(Dialog); + ListNotesVisible = FALSE; + return TRUE; - case ID_CONTEXTMENUNOTEPOPUP_NEWNOTE: - case IDC_ADDNEWREMINDER: - PluginMenuCommandAddNew(0,0); - return TRUE; + case ID_CONTEXTMENUNOTEPOPUP_NEWNOTE: + case IDC_ADDNEWREMINDER: + PluginMenuCommandAddNew(0, 0); + return TRUE; - case ID_CONTEXTMENUNOTELISTVIEW_DELETEALLNOTES: - PluginMenuCommandDeleteAll(0,0); - return TRUE; + case ID_CONTEXTMENUNOTELISTVIEW_DELETEALLNOTES: + PluginMenuCommandDeleteAll(0, 0); + return TRUE; - case IDM_REMOVENOTE: - { - HWND H = GetDlgItem(Dialog,IDC_LISTREMINDERS); - if ( ListView_GetSelectedCount(H) ) - { - int I = ListView_GetSelectionMark(H); - if (I != -1) - { - OnDeleteNote(Dialog, (STICKYNOTE*)TreeGetAt(g_Stickies, I)); - } + case IDM_REMOVENOTE: + { + HWND H = GetDlgItem(Dialog, IDC_LISTREMINDERS); + if (ListView_GetSelectedCount(H)) { + int I = ListView_GetSelectionMark(H); + if (I != -1) { + OnDeleteNote(Dialog, (STICKYNOTE*)TreeGetAt(g_Stickies, I)); } } - return TRUE; - case ID_CONTEXTMENUNOTELISTVIEW_SHOW: - ShowHideNotes(); - return TRUE; + } + return TRUE; - case ID_CONTEXTMENUNOTEPOPUP_BRINGALLTOTOP: - BringAllNotesToFront(NULL); - return TRUE; + case ID_CONTEXTMENUNOTELISTVIEW_SHOW: + ShowHideNotes(); + return TRUE; - } + case ID_CONTEXTMENUNOTEPOPUP_BRINGALLTOTOP: + BringAllNotesToFront(NULL); + return TRUE; } } return FALSE; @@ -2085,13 +1946,9 @@ static INT_PTR CALLBACK DlgProcViewNotes(HWND Dialog,UINT Message,WPARAM wParam, void ListNotes(void) { - if (!ListNotesVisible) - { + if (!ListNotesVisible) { CreateDialog(hinstance, MAKEINTRESOURCE(IDD_LISTREMINDERS), 0, DlgProcViewNotes); ListNotesVisible = TRUE; } - else - { - BringWindowToTop(LV); - } + else BringWindowToTop(LV); } |