mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 08:25:03 +00:00
set TBSTYLE_FLAT
fixed ToolBar size fixed Rebar (does not work on ROS yet) svn path=/trunk/; revision=20992
This commit is contained in:
parent
f501786607
commit
a4cb208231
1 changed files with 33 additions and 25 deletions
|
@ -176,9 +176,9 @@ MainFrameBase::MainFrameBase(HWND hwnd)
|
|||
|
||||
_htoolbar = CreateToolbarEx(hwnd,
|
||||
#ifndef _NO_REBAR
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|CCS_NODIVIDER|
|
||||
#endif
|
||||
WS_CHILD|WS_VISIBLE, IDW_TOOLBAR, 2, g_Globals._hInstance, IDB_TOOLBAR,
|
||||
WS_CHILD|TBSTYLE_FLAT|WS_VISIBLE, IDW_TOOLBAR, 2, g_Globals._hInstance, IDB_TOOLBAR,
|
||||
toolbarBtns, sizeof(toolbarBtns)/sizeof(TBBUTTON),
|
||||
16, 15, 16, 15, sizeof(TBBUTTON));
|
||||
|
||||
|
@ -222,8 +222,8 @@ MainFrameBase::MainFrameBase(HWND hwnd)
|
|||
#ifndef _NO_REBAR
|
||||
_hwndrebar = CreateWindowEx(WS_EX_TOOLWINDOW, REBARCLASSNAME, NULL,
|
||||
WS_CHILD|WS_VISIBLE|WS_CLIPSIBLINGS|WS_CLIPCHILDREN|
|
||||
RBS_VARHEIGHT|RBS_AUTOSIZE|RBS_DBLCLKTOGGLE|
|
||||
CCS_NODIVIDER|CCS_NOPARENTALIGN,
|
||||
RBS_VARHEIGHT|RBS_DBLCLKTOGGLE|
|
||||
WS_BORDER|RBS_AUTOSIZE|RBS_BANDBORDERS,
|
||||
0, 0, 0, 0, _hwnd, 0, g_Globals._hInstance, 0);
|
||||
|
||||
int btn_hgt = HIWORD(SendMessage(_htoolbar, TB_GETBUTTONSIZE, 0, 0));
|
||||
|
@ -246,7 +246,7 @@ MainFrameBase::MainFrameBase(HWND hwnd)
|
|||
rbBand.lpText = NULL;//TEXT("Toolbar");
|
||||
rbBand.hwndChild = _htoolbar;
|
||||
rbBand.cxMinChild = 0;
|
||||
rbBand.cyMinChild = btn_hgt + 4;
|
||||
rbBand.cyMinChild = btn_hgt;
|
||||
rbBand.cx = 284;
|
||||
SendMessage(_hwndrebar, RB_INSERTBAND, (WPARAM)-1, (LPARAM)&rbBand);
|
||||
#endif
|
||||
|
@ -283,8 +283,12 @@ bool MainFrameBase::ProcessMessage(UINT nmsg, WPARAM wparam, LPARAM lparam, LRES
|
|||
return true;
|
||||
|
||||
case WM_SHOWWINDOW:
|
||||
if (wparam) // trigger child resizing after window creation - now we can succesfully call IsWindowVisible()
|
||||
if (wparam) // trigger child resizing after window creation - now we can succesfully call IsWindowVisible()
|
||||
{
|
||||
int height = SendMessage(_hwndrebar, RB_GETBARHEIGHT, 0, 0);
|
||||
MoveWindow(_hwndrebar, 0, 0, LOWORD(lparam), height, TRUE);
|
||||
resize_frame_client();
|
||||
}
|
||||
return false; // goto def;
|
||||
|
||||
case WM_CLOSE:
|
||||
|
@ -295,9 +299,12 @@ bool MainFrameBase::ProcessMessage(UINT nmsg, WPARAM wparam, LPARAM lparam, LRES
|
|||
case WM_DESTROY:
|
||||
break;
|
||||
|
||||
case WM_SIZE:
|
||||
resize_frame(LOWORD(lparam), HIWORD(lparam));
|
||||
break; // do not pass message to DefFrameProc
|
||||
case WM_SIZE:{
|
||||
int height = SendMessage(_hwndrebar, RB_GETBARHEIGHT, 0, 0);
|
||||
MoveWindow(_hwndrebar, 0, 0, LOWORD(lparam), height, TRUE);
|
||||
|
||||
//resize_frame(LOWORD(lparam), HIWORD(lparam));
|
||||
break;} // do not pass message to DefFrameProc
|
||||
|
||||
case WM_GETMINMAXINFO: {
|
||||
LPMINMAXINFO lpmmi = (LPMINMAXINFO)lparam;
|
||||
|
@ -467,7 +474,8 @@ int MainFrameBase::Notify(int id, NMHDR* pnmh)
|
|||
{
|
||||
switch(pnmh->code) {
|
||||
// resize children windows when the rebar size changes
|
||||
case RBN_AUTOSIZE:
|
||||
|
||||
case RBN_AUTOSIZE:
|
||||
resize_frame_client();
|
||||
break;
|
||||
|
||||
|
@ -525,9 +533,9 @@ void MainFrameBase::resize_frame(int cx, int cy)
|
|||
RECT rect = {0, 0, cx, cy};
|
||||
|
||||
if (_hwndrebar) {
|
||||
int height = ClientRect(_hwndrebar).bottom;
|
||||
MoveWindow(_hwndrebar, rect.left, rect.top, rect.right-rect.left, height, TRUE);
|
||||
int height = SendMessage(_hwndrebar, RB_GETBARHEIGHT, 0, 0);
|
||||
rect.top += height;
|
||||
rect.top += 4;
|
||||
} else {
|
||||
if (IsWindowVisible(_htoolbar)) {
|
||||
SendMessage(_htoolbar, WM_SIZE, 0, 0);
|
||||
|
@ -730,13 +738,13 @@ MDIMainFrame::MDIMainFrame(HWND hwnd)
|
|||
|
||||
#ifndef _NO_REBAR
|
||||
_hextrabar = CreateToolbarEx(hwnd,
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|CCS_NODIVIDER|
|
||||
WS_CHILD|TBSTYLE_FLAT|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
IDW_EXTRABAR, 2, g_Globals._hInstance, IDB_DRIVEBAR, NULL, 0,
|
||||
16, 13, 16, 13, sizeof(TBBUTTON));
|
||||
16, 15, 16, 15, sizeof(TBBUTTON));
|
||||
#else
|
||||
_hextrabar = CreateToolbarEx(hwnd,
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,CCS_NODIVIDER|
|
||||
IDW_EXTRABAR, 2, g_Globals._hInstance, IDB_DRIVEBAR, &extraBtns, 1,
|
||||
16, 13, 16, 13, sizeof(TBBUTTON));
|
||||
#endif
|
||||
|
@ -799,13 +807,13 @@ MDIMainFrame::MDIMainFrame(HWND hwnd)
|
|||
|
||||
#ifndef _NO_REBAR
|
||||
_hdrivebar = CreateToolbarEx(hwnd,
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
CCS_NOPARENTALIGN|CCS_NORESIZE|CCS_NODIVIDER|
|
||||
WS_CHILD|WS_VISIBLE|TBSTYLE_FLAT|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
IDW_DRIVEBAR, 2, g_Globals._hInstance, IDB_DRIVEBAR, NULL, 0,
|
||||
16, 13, 16, 13, sizeof(TBBUTTON));
|
||||
16, 15, 16, 15, sizeof(TBBUTTON));
|
||||
#else
|
||||
_hdrivebar = CreateToolbarEx(hwnd,
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST,
|
||||
WS_CHILD|WS_VISIBLE|CCS_NOMOVEY|TBSTYLE_LIST|CCS_NODIVIDER,
|
||||
IDW_DRIVEBAR, 2, g_Globals._hInstance, IDB_DRIVEBAR, &drivebarBtn, 1,
|
||||
16, 13, 16, 13, sizeof(TBBUTTON));
|
||||
#endif
|
||||
|
@ -856,7 +864,7 @@ MDIMainFrame::MDIMainFrame(HWND hwnd)
|
|||
rbBand.lpText = TEXT("Extras");
|
||||
rbBand.hwndChild = _hextrabar;
|
||||
rbBand.cxMinChild = 0;
|
||||
rbBand.cyMinChild = btn_hgt + 4;
|
||||
rbBand.cyMinChild = btn_hgt;
|
||||
rbBand.cx = 284;
|
||||
SendMessage(_hwndrebar, RB_INSERTBAND, (WPARAM)-1, (LPARAM)&rbBand);
|
||||
|
||||
|
@ -865,7 +873,7 @@ MDIMainFrame::MDIMainFrame(HWND hwnd)
|
|||
rbBand.lpText = TEXT("Drives");
|
||||
rbBand.hwndChild = _hdrivebar;
|
||||
rbBand.cxMinChild = 0;
|
||||
rbBand.cyMinChild = btn_hgt + 4;
|
||||
rbBand.cyMinChild = btn_hgt;
|
||||
rbBand.cx = 400;
|
||||
SendMessage(_hwndrebar, RB_INSERTBAND, (WPARAM)-1, (LPARAM)&rbBand);
|
||||
#endif
|
||||
|
@ -1205,9 +1213,9 @@ void MDIMainFrame::resize_frame(int cx, int cy)
|
|||
RECT rect = {0, 0, cx, cy};
|
||||
|
||||
if (_hwndrebar) {
|
||||
int height = ClientRect(_hwndrebar).bottom;
|
||||
MoveWindow(_hwndrebar, rect.left, rect.top, rect.right-rect.left, height, TRUE);
|
||||
int height = SendMessage(_hwndrebar, RB_GETBARHEIGHT, 0, 0);
|
||||
rect.top += height;
|
||||
rect.top += 4;
|
||||
} else {
|
||||
if (IsWindowVisible(_htoolbar)) {
|
||||
SendMessage(_htoolbar, WM_SIZE, 0, 0);
|
||||
|
@ -1566,8 +1574,8 @@ void SDIMainFrame::resize_frame(int cx, int cy)
|
|||
|
||||
if (_hwndrebar) {
|
||||
int height = ClientRect(_hwndrebar).bottom;
|
||||
MoveWindow(_hwndrebar, rect.left, rect.top, rect.right-rect.left, height, TRUE);
|
||||
rect.top += height;
|
||||
rect.top += 4;
|
||||
} else {
|
||||
if (IsWindowVisible(_htoolbar)) {
|
||||
SendMessage(_htoolbar, WM_SIZE, 0, 0);
|
||||
|
|
Loading…
Reference in a new issue