summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tipper/common.h1
-rw-r--r--tipper/options.cpp198
-rw-r--r--tipper/options.h3
-rw-r--r--tipper/popwin.cpp39
-rw-r--r--tipper/resource.h14
-rw-r--r--tipper/tipper.mdsp20
-rw-r--r--tipper/tipper.rc142
-rw-r--r--tipper/tipper_8.vcproj7
-rw-r--r--tipper/version.h4
9 files changed, 293 insertions, 135 deletions
diff --git a/tipper/common.h b/tipper/common.h
index 4e645b9..0a442d6 100644
--- a/tipper/common.h
+++ b/tipper/common.h
@@ -75,6 +75,7 @@
#include <m_icq.h>
#include <m_ersatz.h>
+#include <m_imgsrvc.h>
#define MODULE "Tipper"
diff --git a/tipper/options.cpp b/tipper/options.cpp
index b601039..1da2d8a 100644
--- a/tipper/options.cpp
+++ b/tipper/options.cpp
@@ -5,6 +5,8 @@
#include <commctrl.h>
#include "str_utils.h"
+#include <commdlg.h>
+
Options options;
#define WMU_ENABLE_LIST_BUTTONS (WM_USER + 0x030)
@@ -310,6 +312,10 @@ void SaveOptions() {
DBWriteContactSettingWord(0, MODULE, "LabelHAlign", options.label_halign);
DBWriteContactSettingWord(0, MODULE, "ValueVAlign", options.value_valign);
DBWriteContactSettingWord(0, MODULE, "ValueHAlign", options.value_halign);
+
+ DBWriteContactSettingByte(0, MODULE, "NoAvatarResize", options.no_resize_av ? 1 : 0);
+ DBWriteContactSettingTString(0, MODULE, "BackgroundFilename", options.bg_fn);
+ DBWriteContactSettingByte(0, MODULE, "StretchBgImg", options.stretch_bg_img ? 1 : 0);
}
void LoadOptions() {
@@ -430,6 +436,14 @@ void LoadOptions() {
SaveOptions();
}
+ options.no_resize_av = (DBGetContactSettingByte(0, MODULE, "NoAvatarResize", 0) == 1);
+ DBVARIANT dbv;
+ if(!DBGetContactSettingTString(0, MODULE, "BackgroundFilename", &dbv)) {
+ _tcsncpy(options.bg_fn, dbv.ptszVal, MAX_PATH);
+ DBFreeVariant(&dbv);
+ } else
+ options.bg_fn[0] = 0;
+ options.stretch_bg_img = (DBGetContactSettingByte(0, MODULE, "StretchBgImg", 0) == 1);
}
static BOOL CALLBACK DlgProcAddItem(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
@@ -560,7 +574,7 @@ static BOOL CALLBACK DlgProcAddSubst(HWND hwndDlg, UINT msg, WPARAM wParam, LPAR
return 0;
}
-static BOOL CALLBACK DlgProcOpts2(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
+static BOOL CALLBACK DlgProcOptContent(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
switch ( msg ) {
case WM_INITDIALOG:
@@ -886,15 +900,86 @@ static BOOL CALLBACK DlgProcOpts2(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
return 0;
}
-
-static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
+static BOOL CALLBACK DlgProcOptWindow(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
switch ( msg ) {
case WM_INITDIALOG:
TranslateDialogDefault( hwndDlg );
+ SendDlgItemMessage(hwndDlg, IDC_SPIN_WIDTH, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
+ SendDlgItemMessage(hwndDlg, IDC_SPIN_MINWIDTH, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
+ SendDlgItemMessage(hwndDlg, IDC_SPIN_MAXHEIGHT, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
+ SendDlgItemMessage(hwndDlg, IDC_SPIN_MINHEIGHT, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
+ SetDlgItemInt(hwndDlg, IDC_ED_WIDTH, options.win_width, FALSE);
+ SetDlgItemInt(hwndDlg, IDC_ED_MAXHEIGHT, options.win_max_height, FALSE);
+ SetDlgItemInt(hwndDlg, IDC_ED_MINWIDTH, options.min_width, FALSE);
+ SetDlgItemInt(hwndDlg, IDC_ED_MINHEIGHT, options.min_height, FALSE);
+
+ SetDlgItemInt(hwndDlg, IDC_ED_TRANS, options.opacity, FALSE);
+ CheckDlgButton(hwndDlg, IDC_CHK_TRANSBG, options.trans_bg);
CheckDlgButton(hwndDlg, IDC_CHK_NOFOCUS, options.show_no_focus ? TRUE : FALSE);
CheckDlgButton(hwndDlg, IDC_CHK_SBAR, options.status_bar_tips ? TRUE : FALSE);
+ CheckDlgButton(hwndDlg, IDC_CHK_BORDER, options.border);
+ CheckDlgButton(hwndDlg, IDC_CHK_ROUNDCORNERS, options.round);
+ CheckDlgButton(hwndDlg, IDC_CHK_ROUNDCORNERSAV, options.av_round);
+
+ CheckDlgButton(hwndDlg, IDC_CHK_ANIMATE, options.animate);
+ CheckDlgButton(hwndDlg, IDC_CHK_SHADOW, options.drop_shadow);
+
+ SendDlgItemMessage(hwndDlg, IDC_SPIN_HOVER, UDM_SETRANGE, 0, (LPARAM)MAKELONG(5000, 5));
+ SetDlgItemInt(hwndDlg, IDC_ED_HOVER, options.time_in, FALSE);
+ break;
+ case WM_COMMAND:
+ if ( HIWORD( wParam ) == CBN_SELCHANGE) {
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ } else if ( HIWORD( wParam ) == EN_CHANGE && ( HWND )lParam == GetFocus()) {
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ } else if ( HIWORD( wParam ) == BN_CLICKED ) {
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ }
+ break;
+ case WM_NOTIFY:
+ if (((LPNMHDR)lParam)->code == (unsigned)PSN_APPLY ) {
+ BOOL trans;
+ int new_val;
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_WIDTH, &trans, FALSE);
+ if(trans) options.win_width = new_val;
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_MINWIDTH, &trans, FALSE);
+ if(trans) options.min_width = new_val;
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_MAXHEIGHT, &trans, FALSE);
+ if(trans) options.win_max_height = new_val;
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_MINHEIGHT, &trans, FALSE);
+ if(trans) options.min_height = new_val;
+
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_TRANS, &trans, FALSE);
+ if(trans) options.opacity = new_val;
+ options.trans_bg = IsDlgButtonChecked(hwndDlg, IDC_CHK_TRANSBG) ? true : false;
+
+ new_val = GetDlgItemInt(hwndDlg, IDC_ED_HOVER, &trans, FALSE);
+ if(trans) options.time_in = new_val;
+
+ options.border = IsDlgButtonChecked(hwndDlg, IDC_CHK_BORDER) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_BORDER)) ? true : false;
+ options.round = IsDlgButtonChecked(hwndDlg, IDC_CHK_ROUNDCORNERS) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_ROUNDCORNERS)) ? true : false;
+ options.av_round = IsDlgButtonChecked(hwndDlg, IDC_CHK_ROUNDCORNERSAV) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_ROUNDCORNERSAV)) ? true : false;
+ options.animate = IsDlgButtonChecked(hwndDlg, IDC_CHK_ANIMATE) ? true : false;
+ options.drop_shadow = IsDlgButtonChecked(hwndDlg, IDC_CHK_SHADOW) ? true : false;
+
+ options.show_no_focus = IsDlgButtonChecked(hwndDlg, IDC_CHK_NOFOCUS) ? true : false;
+ options.status_bar_tips = IsDlgButtonChecked(hwndDlg, IDC_CHK_SBAR) ? true : false;
+
+ SaveOptions();
+ return TRUE;
+ }
+ break;
+ }
+ return 0;
+}
+
+static BOOL CALLBACK DlgProcOptLayout(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
+
+ switch ( msg ) {
+ case WM_INITDIALOG:
+ TranslateDialogDefault( hwndDlg );
SendDlgItemMessage(hwndDlg, IDC_CMB_ICON, CB_ADDSTRING, 0, (LPARAM)TranslateT("Icon on left"));
SendDlgItemMessage(hwndDlg, IDC_CMB_ICON, CB_ADDSTRING, 0, (LPARAM)TranslateT("Icon on right"));
@@ -954,39 +1039,36 @@ static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
}
SendDlgItemMessage(hwndDlg, IDC_CMB_AV, CB_SETCURSEL, (int)options.av_layout, 0);
- SendDlgItemMessage(hwndDlg, IDC_SPIN_WIDTH, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
- SendDlgItemMessage(hwndDlg, IDC_SPIN_MINWIDTH, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
- SendDlgItemMessage(hwndDlg, IDC_SPIN_MAXHEIGHT, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
- SendDlgItemMessage(hwndDlg, IDC_SPIN_MINHEIGHT, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 16));
SendDlgItemMessage(hwndDlg, IDC_SPIN_TRANS, UDM_SETRANGE, 0, (LPARAM)MAKELONG(99, 0));
SendDlgItemMessage(hwndDlg, IDC_SPIN_AVSIZE, UDM_SETRANGE, 0, (LPARAM)MAKELONG(100, 16));
SendDlgItemMessage(hwndDlg, IDC_SPIN_INDENT, UDM_SETRANGE, 0, (LPARAM)MAKELONG(400, 0));
SendDlgItemMessage(hwndDlg, IDC_SPIN_PADDING, UDM_SETRANGE, 0, (LPARAM)MAKELONG(128, 0));
SendDlgItemMessage(hwndDlg, IDC_SPIN_TEXTPADDING, UDM_SETRANGE, 0, (LPARAM)MAKELONG(128, 0));
SendDlgItemMessage(hwndDlg, IDC_SPIN_AVPADDING, UDM_SETRANGE, 0, (LPARAM)MAKELONG(128, 0));
- SendDlgItemMessage(hwndDlg, IDC_SPIN_HOVER, UDM_SETRANGE, 0, (LPARAM)MAKELONG(5000, 5));
SendDlgItemMessage(hwndDlg, IDC_SPIN_SBWIDTH, UDM_SETRANGE, 0, (LPARAM)MAKELONG(2048, 0));
- SetDlgItemInt(hwndDlg, IDC_ED_WIDTH, options.win_width, FALSE);
- SetDlgItemInt(hwndDlg, IDC_ED_MAXHEIGHT, options.win_max_height, FALSE);
- SetDlgItemInt(hwndDlg, IDC_ED_MINWIDTH, options.min_width, FALSE);
- SetDlgItemInt(hwndDlg, IDC_ED_MINHEIGHT, options.min_height, FALSE);
+ CheckDlgButton(hwndDlg, IDC_CHK_NORESIZEAV, options.no_resize_av);
+ if(options.no_resize_av) {
+ HWND hw = GetDlgItem(hwndDlg, IDC_ED_AVSIZE);
+ EnableWindow(hw, FALSE);
+ hw = GetDlgItem(hwndDlg, IDC_SPIN_AVSIZE);
+ EnableWindow(hw, FALSE);
+ }
SetDlgItemInt(hwndDlg, IDC_ED_AVSIZE, options.av_size, FALSE);
SetDlgItemInt(hwndDlg, IDC_ED_INDENT, options.text_indent, FALSE);
SetDlgItemInt(hwndDlg, IDC_ED_PADDING, options.padding, FALSE);
SetDlgItemInt(hwndDlg, IDC_ED_TEXTPADDING, options.text_padding, FALSE);
SetDlgItemInt(hwndDlg, IDC_ED_AVPADDING, options.av_padding, FALSE);
- SetDlgItemInt(hwndDlg, IDC_ED_HOVER, options.time_in, FALSE);
SetDlgItemInt(hwndDlg, IDC_ED_SBWIDTH, options.sidebar_width, FALSE);
-
- SetDlgItemInt(hwndDlg, IDC_ED_TRANS, options.opacity, FALSE);
- CheckDlgButton(hwndDlg, IDC_CHK_BORDER, options.border);
- CheckDlgButton(hwndDlg, IDC_CHK_ROUNDCORNERS, options.round);
- CheckDlgButton(hwndDlg, IDC_CHK_ROUNDCORNERSAV, options.av_round);
-
- CheckDlgButton(hwndDlg, IDC_CHK_ANIMATE, options.animate);
- CheckDlgButton(hwndDlg, IDC_CHK_SHADOW, options.drop_shadow);
- CheckDlgButton(hwndDlg, IDC_CHK_TRANSBG, options.trans_bg);
+
+ SetDlgItemText(hwndDlg, IDC_ED_BGFN, options.bg_fn);
+ CheckDlgButton(hwndDlg, IDC_CHK_STRETCHBG, options.stretch_bg_img);
+ if(!ServiceExists(MS_IMG_LOAD)) {
+ HWND hw = GetDlgItem(hwndDlg, IDC_ED_BGFN);
+ EnableWindow(hw, FALSE);
+ hw = GetDlgItem(hwndDlg, IDC_CHK_STRETCHBG);
+ EnableWindow(hw, FALSE);
+ }
return FALSE;
case WM_COMMAND:
@@ -995,21 +1077,39 @@ static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
} else if ( HIWORD( wParam ) == EN_CHANGE && ( HWND )lParam == GetFocus()) {
SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
} else if ( HIWORD( wParam ) == BN_CLICKED ) {
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ if(LOWORD(wParam) == IDC_BTN_BROWSE) {
+ TCHAR tempBgFn[MAX_PATH];
+ tempBgFn[0] = 0;
+ OPENFILENAME ofn={0};
+ ofn.lStructSize = sizeof(ofn);
+ ofn.hwndOwner = hwndDlg;
+ ofn.lpstrFile = tempBgFn;
+ ofn.lpstrFilter=_T("All Files (*.*)\0*.*\0\0");
+ ofn.nFilterIndex = 1;
+ ofn.nMaxFile = MAX_PATH;
+ ofn.Flags=OFN_HIDEREADONLY;
+ ofn.lpstrInitialDir = _T(".");
+ ofn.lpstrDefExt=_T("");
+ if (GetOpenFileName(&ofn)) {
+ SetDlgItemText(hwndDlg, IDC_ED_BGFN, tempBgFn);
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ }
+ } else {
+ if(LOWORD(wParam) == IDC_CHK_NORESIZEAV) {
+ bool checked = IsDlgButtonChecked(hwndDlg, IDC_CHK_NORESIZEAV);
+ HWND hw = GetDlgItem(hwndDlg, IDC_ED_AVSIZE);
+ EnableWindow(hw, !checked);
+ hw = GetDlgItem(hwndDlg, IDC_SPIN_AVSIZE);
+ EnableWindow(hw, !checked);
+ }
+ SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
+ }
}
break;
case WM_NOTIFY:
if (((LPNMHDR)lParam)->code == (unsigned)PSN_APPLY ) {
BOOL trans;
int new_val;
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_WIDTH, &trans, FALSE);
- if(trans) options.win_width = new_val;
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_MINWIDTH, &trans, FALSE);
- if(trans) options.min_width = new_val;
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_MAXHEIGHT, &trans, FALSE);
- if(trans) options.win_max_height = new_val;
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_MINHEIGHT, &trans, FALSE);
- if(trans) options.min_height = new_val;
new_val = GetDlgItemInt(hwndDlg, IDC_ED_AVSIZE, &trans, FALSE);
if(trans) options.av_size = new_val;
new_val = GetDlgItemInt(hwndDlg, IDC_ED_INDENT, &trans, FALSE);
@@ -1020,8 +1120,6 @@ static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
if(trans) options.text_padding = new_val;
new_val = GetDlgItemInt(hwndDlg, IDC_ED_AVPADDING, &trans, FALSE);
if(trans) options.av_padding = new_val;
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_HOVER, &trans, FALSE);
- if(trans) options.time_in = new_val;
new_val = GetDlgItemInt(hwndDlg, IDC_ED_SBWIDTH, &trans, FALSE);
if(trans) options.sidebar_width = new_val;
@@ -1029,18 +1127,6 @@ static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
options.av_layout = (PopupAvLayout)SendDlgItemMessage(hwndDlg, IDC_CMB_AV, CB_GETCURSEL, 0, 0);
options.pos = (PopupPosition)SendDlgItemMessage(hwndDlg, IDC_CMB_POS, CB_GETCURSEL, 0, 0);
- new_val = GetDlgItemInt(hwndDlg, IDC_ED_TRANS, &trans, FALSE);
- if(trans) options.opacity = new_val;
- options.border = IsDlgButtonChecked(hwndDlg, IDC_CHK_BORDER) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_BORDER)) ? true : false;
- options.round = IsDlgButtonChecked(hwndDlg, IDC_CHK_ROUNDCORNERS) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_ROUNDCORNERS)) ? true : false;
- options.av_round = IsDlgButtonChecked(hwndDlg, IDC_CHK_ROUNDCORNERSAV) && IsWindowEnabled(GetDlgItem(hwndDlg, IDC_CHK_ROUNDCORNERSAV)) ? true : false;
- options.animate = IsDlgButtonChecked(hwndDlg, IDC_CHK_ANIMATE) ? true : false;
- options.drop_shadow = IsDlgButtonChecked(hwndDlg, IDC_CHK_SHADOW) ? true : false;
- options.trans_bg = IsDlgButtonChecked(hwndDlg, IDC_CHK_TRANSBG) ? true : false;
-
- options.show_no_focus = IsDlgButtonChecked(hwndDlg, IDC_CHK_NOFOCUS) ? true : false;
- options.status_bar_tips = IsDlgButtonChecked(hwndDlg, IDC_CHK_SBAR) ? true : false;
-
switch(SendDlgItemMessage(hwndDlg, IDC_CMB_LV, CB_GETCURSEL, 0, 0)) {
case 0: options.label_valign = DT_TOP; break;
case 1: options.label_valign = DT_VCENTER; break;
@@ -1061,6 +1147,10 @@ static BOOL CALLBACK DlgProcOpts1(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM
case 1: options.value_halign = DT_RIGHT; break;
}
+ options.no_resize_av = IsDlgButtonChecked(hwndDlg, IDC_CHK_NORESIZEAV) ? true : false;
+ GetDlgItemText(hwndDlg, IDC_ED_BGFN, options.bg_fn, MAX_PATH);
+ options.stretch_bg_img = IsDlgButtonChecked(hwndDlg, IDC_CHK_STRETCHBG) ? true : false;
+
SaveOptions();
return TRUE;
}
@@ -1083,20 +1173,28 @@ int OptInit(WPARAM wParam, LPARAM lParam) {
odp.hInstance = hInst;
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT1);
- odp.pszTab = Translate("Appearance");
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_WINDOW);
+ odp.pszTab = Translate("Window");
+ odp.pszTitle = (mirVir >= 0x00060000 ? Translate("Tooltips") : Translate("Tooltips View"));;
+ odp.pszGroup = Translate("Customize");
+ odp.nIDBottomSimpleControl = 0;
+ odp.pfnDlgProc = DlgProcOptWindow;
+ CallService( MS_OPT_ADDPAGE, wParam,( LPARAM )&odp );
+
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_LAYOUT);
+ odp.pszTab = Translate("Layout");
odp.pszTitle = (mirVir >= 0x00060000 ? Translate("Tooltips") : Translate("Tooltips View"));;
odp.pszGroup = Translate("Customize");
odp.nIDBottomSimpleControl = 0;
- odp.pfnDlgProc = DlgProcOpts1;
+ odp.pfnDlgProc = DlgProcOptLayout;
CallService( MS_OPT_ADDPAGE, wParam,( LPARAM )&odp );
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT2);
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_CONTENT);
odp.pszTab = Translate("Content");
odp.pszTitle = (mirVir >= 0x00060000 ? Translate("Tooltips") : Translate("Tooltips Content"));;
odp.pszGroup = Translate("Customize");
odp.nIDBottomSimpleControl = 0;
- odp.pfnDlgProc = DlgProcOpts2;
+ odp.pfnDlgProc = DlgProcOptContent;
CallService( MS_OPT_ADDPAGE, wParam,( LPARAM )&odp );
return 0;
diff --git a/tipper/options.h b/tipper/options.h
index 6fff79b..a1ccf4d 100644
--- a/tipper/options.h
+++ b/tipper/options.h
@@ -63,6 +63,9 @@ typedef struct {
int sidebar_width;
COLORREF bg_col, border_col, div_col, bar_col, title_col, label_col, value_col, sidebar_col;
int label_valign, label_halign, value_valign, value_halign;
+ bool no_resize_av;
+ TCHAR bg_fn[MAX_PATH];
+ bool stretch_bg_img;
} Options;
extern Options options;
diff --git a/tipper/popwin.cpp b/tipper/popwin.cpp
index 8c5b2e9..d217883 100644
--- a/tipper/popwin.cpp
+++ b/tipper/popwin.cpp
@@ -308,7 +308,29 @@ LRESULT CALLBACK PopupWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPa
GetClientRect(hwnd, &r);
// bg
- FillRect(hdc, &r, pwd->bkBrush);
+ if(options.bg_fn[0]) {
+ BITMAP bm;
+ HBITMAP hBg = (HBITMAP)CallService(MS_IMG_LOAD, (WPARAM)options.bg_fn, (LPARAM)IMGL_WCHAR);
+ if(hBg) {
+ HDC hdcMem = CreateCompatibleDC(hdc);
+ HBITMAP hbmOld = (HBITMAP)SelectObject(hdcMem, hBg);
+
+ GetObject(hBg, sizeof(bm), &bm);
+
+ if(options.stretch_bg_img) {
+ StretchBlt(hdc, pwd->sb_width, 0, r.right, r.bottom, hdcMem, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY);
+ } else {
+ BitBlt(hdc, pwd->sb_width, 0, r.right, r.bottom, hdcMem, 0, 0, SRCCOPY);
+ }
+
+ SelectObject(hdcMem, hbmOld);
+ DeleteDC(hdcMem);
+ DeleteObject(hBg);
+ } else
+ FillRect(hdc, &r, pwd->bkBrush);
+ } else
+ FillRect(hdc, &r, pwd->bkBrush);
+
// sidebar
r_bar = r;
r_bar.right = r.left + pwd->sb_width;
@@ -667,12 +689,17 @@ LRESULT CALLBACK PopupWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPa
if(pwd->hContact) ace = (AVATARCACHEENTRY *)CallService(MS_AV_GETAVATARBITMAP, (WPARAM)pwd->hContact, 0);
else ace = (AVATARCACHEENTRY *)CallService(MS_AV_GETMYAVATAR, 0, (LPARAM)pwd->clcit.proto);
if(ace && (ace->dwFlags & AVS_BITMAP_VALID) && !(ace->dwFlags & AVS_HIDEONCLIST)) {
- if(ace->bmHeight >= ace->bmWidth) {
- pwd->real_av_height = options.av_size;
- pwd->real_av_width = (int)(options.av_size * (ace->bmWidth / (double)ace->bmHeight));
+ if(options.no_resize_av) {
+ pwd->real_av_width = ace->bmWidth;
+ pwd->real_av_height = ace->bmHeight;
} else {
- pwd->real_av_height = (int)(options.av_size * (ace->bmHeight / (double)ace->bmWidth));
- pwd->real_av_width = options.av_size;
+ if(ace->bmHeight >= ace->bmWidth) {
+ pwd->real_av_height = options.av_size;
+ pwd->real_av_width = (int)(options.av_size * (ace->bmWidth / (double)ace->bmHeight));
+ } else {
+ pwd->real_av_height = (int)(options.av_size * (ace->bmHeight / (double)ace->bmWidth));
+ pwd->real_av_width = options.av_size;
+ }
}
pwd->av_height = options.av_padding * 2 + pwd->real_av_height;
width += pwd->real_av_width + (2 * options.av_padding - options.padding);
diff --git a/tipper/resource.h b/tipper/resource.h
index dad8e31..03e2540 100644
--- a/tipper/resource.h
+++ b/tipper/resource.h
@@ -2,10 +2,12 @@
// Microsoft Visual C++ generated include file.
// Used by tipper.rc
//
-#define IDD_OPT1 101
+#define IDD_OPT_LAYOUT 101
+#define IDD_OPT_CONTENT 102
#define IDD_SUBST 103
#define IDD_ITEM 104
#define IDD_OPT2 105
+#define IDD_OPT_WINDOW 106
#define IDC_ED_WIDTH 1005
#define IDC_ED_MAXHEIGHT 1006
#define IDC_SPIN_WIDTH 1007
@@ -49,6 +51,8 @@
#define IDC_BTN_DOWN 1039
#define IDC_CHK_NOFOCUS 1040
#define IDC_BTN_EDIT 1041
+#define IDC_CHK_NOFOCUS2 1041
+#define IDC_CHK_NORESIZEAV 1041
#define IDC_LST_SUBST 1042
#define IDC_BTN_ADD2 1043
#define IDC_ED_MODULE 1044
@@ -72,14 +76,18 @@
#define IDC_CMB_VV 1054
#define IDC_CMB_LH 1055
#define IDC_CMB_VH 1056
+#define IDC_ED_BGFN 1057
+#define IDC_BTN_BROWSE 1058
+#define IDC_CHECK1 1059
+#define IDC_CHK_STRETCHBG 1059
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 106
+#define _APS_NEXT_RESOURCE_VALUE 107
#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1054
+#define _APS_NEXT_CONTROL_VALUE 1060
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
diff --git a/tipper/tipper.mdsp b/tipper/tipper.mdsp
index 57536d2..9ea4ca4 100644
--- a/tipper/tipper.mdsp
+++ b/tipper/tipper.mdsp
@@ -28,7 +28,7 @@ optimizeLevel=0
// linker
libraryPath=
outputFilename=Debug\tipper.dll
-libraries=unicows,gdi32,comctl32,ws2_32
+libraries=unicows,gdi32,comctl32,ws2_32,comdlg32
extraLinkerOptions=
ignoreStartupFile=0
ignoreDefaultLibs=0
@@ -66,7 +66,7 @@ optimizeLevel=4
// linker
libraryPath=
outputFilename=Release\tipper.dll
-libraries=unicows,gdi32,comctl32,ws2_32
+libraries=unicows,gdi32,comctl32,ws2_32,comdlg32
extraLinkerOptions=
ignoreStartupFile=0
ignoreDefaultLibs=0
@@ -100,13 +100,19 @@ extraResourceOptions=
9=version.h
10=subst.h
11=str_utils.h
+12=common.h
[Resource]
1=resource.rc
[Other]
[History]
-message_pump.cpp,4377
-tipper.cpp,1265
-popwin.cpp,4146
+options.cpp,637
+version.h,519
m_tipper.h,760
-version.h,520
-options.cpp,648
+popwin.cpp,4146
+tipper.cpp,1265
+message_pump.cpp,0
+..\..\include\m_imgsrvc.h,1413
+common.h,1379
+..\..\..\..\..\..\..\msys\include\windows.h,0
+..\..\..\..\..\..\..\msys\include\wingdi.h,0
+..\..\plugins\freeimage\Miranda\include\m_freeimage.h,4153
diff --git a/tipper/tipper.rc b/tipper/tipper.rc
index 4cd63ae..4d0eed9 100644
--- a/tipper/tipper.rc
+++ b/tipper/tipper.rc
@@ -64,68 +64,43 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_AUS
// Dialog
//
-IDD_OPT1 DIALOGEX 0, 0, 265, 221
+IDD_OPT_LAYOUT DIALOGEX 0, 0, 259, 160
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
- EDITTEXT IDC_ED_WIDTH,210,11,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_WIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,11,12,12
- EDITTEXT IDC_ED_MAXHEIGHT,210,39,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_MAXHEIGHT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,39,12,12
- GROUPBOX "Options",IDC_STATIC,147,115,111,99
- EDITTEXT IDC_ED_TRANS,87,189,33,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_TRANS,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS,118,189,13,12
- RTEXT "Opacity(%):",IDC_STATIC,13,192,69,8,0,WS_EX_RIGHT
- CONTROL "Border",IDC_CHK_BORDER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,156,156,84,9
- CONTROL "Round corners (window)",IDC_CHK_ROUNDCORNERS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,156,171,100,9
- CONTROL "Animate",IDC_CHK_ANIMATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,156,201,84,9
- CONTROL "Transparent background",IDC_CHK_TRANSBG,"Button",BS_AUTOCHECKBOX | BS_LEFTTEXT | WS_TABSTOP,18,203,116,10,WS_EX_RIGHT
- GROUPBOX "Layout",IDC_STATIC,7,3,116,130
- EDITTEXT IDC_ED_AVSIZE,210,67,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_AVSIZE,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,67,12,12
COMBOBOX IDC_CMB_ICON,12,26,107,69,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_CMB_AV,12,40,107,76,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- EDITTEXT IDC_ED_INDENT,78,56,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_INDENT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,109,56,12,12
- RTEXT "Text indent:",IDC_STATIC,26,59,46,8
- GROUPBOX "Window",IDC_STATIC,128,3,130,110
- RTEXT "Max width:",IDC_STATIC,152,14,52,8,0,WS_EX_RIGHT
- RTEXT "Max height:",IDC_STATIC,147,41,57,8,0,WS_EX_RIGHT
- RTEXT "Avatar size:",IDC_STATIC,147,69,57,8,0,WS_EX_RIGHT
- CONTROL "Show if list not focused",IDC_CHK_NOFOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,136,98,117,11
- EDITTEXT IDC_ED_PADDING,78,70,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_PADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,109,70,12,12
- RTEXT "General padding:",IDC_STATIC,11,72,60,8
- EDITTEXT IDC_ED_HOVER,210,81,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_HOVER,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,81,12,12
- RTEXT "Hover time:",IDC_STATIC,147,83,57,8,0,WS_EX_RIGHT
- GROUPBOX "XP+",IDC_STATIC,6,182,137,32
+ EDITTEXT IDC_ED_INDENT,209,10,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_INDENT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,240,10,12,12
+ RTEXT "Text indent:",IDC_STATIC,157,13,46,8
+ EDITTEXT IDC_ED_PADDING,209,24,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_PADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,240,24,12,12
+ RTEXT "General padding:",IDC_STATIC,142,26,60,8
COMBOBOX IDC_CMB_POS,12,12,107,69,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- CONTROL "Shadow",IDC_CHK_SHADOW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,156,141,84,9
- CONTROL "Status bar tips",IDC_CHK_SBAR,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,156,126,85,9
- GROUPBOX "Alignment",IDC_STATIC,7,135,136,45
- COMBOBOX IDC_CMB_LV,49,146,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- COMBOBOX IDC_CMB_VV,49,162,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- COMBOBOX IDC_CMB_LH,96,146,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- COMBOBOX IDC_CMB_VH,96,162,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- RTEXT "Labels:",IDC_STATIC,11,148,34,8
- RTEXT "Values:",IDC_STATIC,11,164,34,8
- EDITTEXT IDC_ED_MINWIDTH,210,25,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_MINWIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,25,12,12
- RTEXT "Min width:",IDC_STATIC,152,27,52,8,0,WS_EX_RIGHT
- EDITTEXT IDC_ED_MINHEIGHT,210,53,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_MINHEIGHT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,239,52,12,12
- RTEXT "Min height:",IDC_STATIC,146,55,57,8,0,WS_EX_RIGHT
- EDITTEXT IDC_ED_SBWIDTH,78,112,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_SBWIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,110,112,11,12
- RTEXT "Sidebar width:",IDC_STATIC,14,114,60,8
- EDITTEXT IDC_ED_TEXTPADDING,78,84,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_TEXTPADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,110,84,12,12
- RTEXT "Text padding:",IDC_STATIC,12,85,59,8
- EDITTEXT IDC_ED_AVPADDING,78,98,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
- CONTROL "",IDC_SPIN_AVPADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,110,98,12,12
- RTEXT "Avatar padding:",IDC_STATIC,12,99,59,8
- CONTROL "Round corners (avatar)",IDC_CHK_ROUNDCORNERSAV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,156,186,100,9
+ GROUPBOX "Alignment",IDC_STATIC,7,65,137,44
+ COMBOBOX IDC_CMB_LV,49,75,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ COMBOBOX IDC_CMB_VV,49,91,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ COMBOBOX IDC_CMB_LH,96,75,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ COMBOBOX IDC_CMB_VH,96,91,43,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ RTEXT "Labels:",IDC_STATIC,11,78,34,8
+ RTEXT "Values:",IDC_STATIC,11,94,34,8
+ EDITTEXT IDC_ED_SBWIDTH,209,66,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_SBWIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,241,66,11,12
+ RTEXT "Sidebar width:",IDC_STATIC,145,68,60,8
+ EDITTEXT IDC_ED_TEXTPADDING,209,38,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_TEXTPADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,241,38,12,12
+ RTEXT "Text padding:",IDC_STATIC,143,39,59,8
+ EDITTEXT IDC_ED_AVPADDING,209,52,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_AVPADDING,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,241,52,12,12
+ RTEXT "Avatar padding:",IDC_STATIC,143,53,59,8
+ EDITTEXT IDC_ED_AVSIZE,209,96,35,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_AVSIZE,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,242,96,11,12
+ RTEXT "Avatar size:",IDC_STATIC,145,98,60,8,0,WS_EX_RIGHT
+ CONTROL "Keep original avatar size",IDC_CHK_NORESIZEAV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,84,103,11
+ RTEXT "Background image:",IDC_STATIC,8,127,89,8
+ EDITTEXT IDC_ED_BGFN,100,125,96,12,ES_AUTOHSCROLL
+ PUSHBUTTON "Browse...",IDC_BTN_BROWSE,198,124,50,13
+ CONTROL "Stretch",IDC_CHK_STRETCHBG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,141,95,10
END
IDD_SUBST DIALOGEX 0, 0, 253, 182
@@ -161,7 +136,7 @@ BEGIN
PUSHBUTTON "Cancel",IDCANCEL,107,157,50,14
END
-IDD_OPT2 DIALOGEX 0, 0, 289, 179
+IDD_OPT_CONTENT DIALOGEX 0, 0, 289, 179
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_VISIBLE | WS_SYSMENU
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
@@ -179,6 +154,41 @@ BEGIN
PUSHBUTTON "Edit...",IDC_BTN_EDIT2,232,81,48,15
END
+IDD_OPT_WINDOW DIALOGEX 0, 0, 278, 140
+STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_VISIBLE | WS_SYSMENU
+FONT 8, "MS Shell Dlg", 400, 0, 0x1
+BEGIN
+ EDITTEXT IDC_ED_WIDTH,89,15,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_WIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,119,15,11,12
+ EDITTEXT IDC_ED_MAXHEIGHT,89,42,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_MAXHEIGHT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,119,42,11,12
+ RTEXT "Max width:",IDC_STATIC,31,18,52,8,0,WS_EX_RIGHT
+ RTEXT "Max height:",IDC_STATIC,27,45,57,8,0,WS_EX_RIGHT
+ CONTROL "Show if list not focused",IDC_CHK_NOFOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,96,84,11
+ EDITTEXT IDC_ED_HOVER,225,114,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_HOVER,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,255,114,11,12
+ RTEXT "Hover time:",IDC_STATIC,163,116,57,8,0,WS_EX_RIGHT
+ EDITTEXT IDC_ED_MINWIDTH,89,29,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_MINWIDTH,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,119,29,11,12
+ RTEXT "Min width:",IDC_STATIC,31,31,52,8,0,WS_EX_RIGHT
+ EDITTEXT IDC_ED_MINHEIGHT,89,57,31,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_MINHEIGHT,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,119,57,11,13
+ RTEXT "Min height:",IDC_STATIC,25,58,57,8,0,WS_EX_RIGHT
+ EDITTEXT IDC_ED_TRANS,89,102,33,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
+ CONTROL "",IDC_SPIN_TRANS,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS,119,102,11,12
+ RTEXT "Opacity(%):",IDC_STATIC,15,105,69,8,0,WS_EX_RIGHT
+ CONTROL "Transparent background",IDC_CHK_TRANSBG,"Button",BS_AUTOCHECKBOX | BS_LEFTTEXT | WS_TABSTOP,15,119,116,10,WS_EX_RIGHT
+ GROUPBOX "XP+",IDC_STATIC,7,89,141,44
+ GROUPBOX "General",IDC_STATIC,156,7,115,126
+ CONTROL "Border",IDC_CHK_BORDER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,44,84,9
+ CONTROL "Round corners (window)",IDC_CHK_ROUNDCORNERS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,57,100,9
+ CONTROL "Animate",IDC_CHK_ANIMATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,83,84,9
+ CONTROL "Shadow",IDC_CHK_SHADOW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,31,84,9
+ CONTROL "Status bar tips",IDC_CHK_SBAR,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,169,18,85,9
+ CONTROL "Round corners (avatar)",IDC_CHK_ROUNDCORNERSAV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,169,70,100,9
+ GROUPBOX "Dimensions",IDC_STATIC,7,7,140,73
+END
+
/////////////////////////////////////////////////////////////////////////////
//
@@ -188,12 +198,12 @@ END
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
BEGIN
- IDD_OPT1, DIALOG
+ IDD_OPT_LAYOUT, DIALOG
BEGIN
LEFTMARGIN, 7
- RIGHTMARGIN, 258
- TOPMARGIN, 7
- BOTTOMMARGIN, 214
+ RIGHTMARGIN, 253
+ TOPMARGIN, 4
+ BOTTOMMARGIN, 153
END
IDD_SUBST, DIALOG
@@ -212,13 +222,21 @@ BEGIN
BOTTOMMARGIN, 171
END
- IDD_OPT2, DIALOG
+ IDD_OPT_CONTENT, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 282
TOPMARGIN, 7
BOTTOMMARGIN, 172
END
+
+ IDD_OPT_WINDOW, DIALOG
+ BEGIN
+ LEFTMARGIN, 7
+ RIGHTMARGIN, 271
+ TOPMARGIN, 7
+ BOTTOMMARGIN, 133
+ END
END
#endif // APSTUDIO_INVOKED
diff --git a/tipper/tipper_8.vcproj b/tipper/tipper_8.vcproj
index 9a2c9c1..4b62963 100644
--- a/tipper/tipper_8.vcproj
+++ b/tipper/tipper_8.vcproj
@@ -61,8 +61,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="unicows.lib comctl32.lib ws2_32.lib"
- OutputFile="..\..\bin\$(ConfigurationName)\plugins\$(ProjectName).dll"
+ AdditionalDependencies="unicows.lib comctl32.lib ws2_32.lib comdlg32.lib"
LinkIncremental="2"
GenerateManifest="true"
AdditionalManifestDependencies="&quot;type=&apos;Win32&apos; name=&apos;Microsoft.Windows.Common-Controls&apos; version=&apos;6.0.0.0&apos; processorArchitecture=&apos;X86&apos; publicKeyToken=&apos;6595b64144ccf1df&apos; language=&apos;*&apos;&quot;"
@@ -141,8 +140,7 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="unicows.lib comctl32.lib ws2_32.lib"
- OutputFile="..\..\bin\$(ConfigurationName)\plugins\$(ProjectName).dll"
+ AdditionalDependencies="unicows.lib comctl32.lib ws2_32.lib comdlg32.lib"
LinkIncremental="1"
GenerateManifest="false"
AdditionalManifestDependencies="&quot;type=&apos;Win32&apos; name=&apos;Microsoft.Windows.Common-Controls&apos; version=&apos;6.0.0.0&apos; processorArchitecture=&apos;X86&apos; publicKeyToken=&apos;6595b64144ccf1df&apos; language=&apos;*&apos;&quot;"
@@ -227,7 +225,6 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="comctl32.lib ws2_32.lib"
- OutputFile="..\..\bin\$(ConfigurationName)\plugins\$(ProjectName).dll"
LinkIncremental="1"
GenerateManifest="false"
AdditionalManifestDependencies="&quot;type=&apos;Win32&apos; name=&apos;Microsoft.Windows.Common-Controls&apos; version=&apos;6.0.0.0&apos; processorArchitecture=&apos;X86&apos; publicKeyToken=&apos;6595b64144ccf1df&apos; language=&apos;*&apos;&quot;"
diff --git a/tipper/version.h b/tipper/version.h
index b69343d..0077605 100644
--- a/tipper/version.h
+++ b/tipper/version.h
@@ -3,8 +3,8 @@
#define __MAJOR_VERSION 0
#define __MINOR_VERSION 4
-#define __RELEASE_NUM 0
-#define __BUILD_NUM 11
+#define __RELEASE_NUM 1
+#define __BUILD_NUM 0
#define __FILEVERSION_STRING __MAJOR_VERSION,__MINOR_VERSION,__RELEASE_NUM,__BUILD_NUM
#define __FILEVERSION_STRING_DOTS __MAJOR_VERSION.__MINOR_VERSION.__RELEASE_NUM.__BUILD_NUM