set TBSTYLE_FLAT
fixed ToolBar size
fixed Rebar (does not work on ROS yet)
Modified: trunk/reactos/subsys/system/explorer/shell/mainframe.cpp

Modified: trunk/reactos/subsys/system/explorer/shell/mainframe.cpp
--- trunk/reactos/subsys/system/explorer/shell/mainframe.cpp	2006-01-22 23:16:30 UTC (rev 20991)
+++ trunk/reactos/subsys/system/explorer/shell/mainframe.cpp	2006-01-22 23:17:50 UTC (rev 20992)
@@ -176,9 +176,9 @@
 
 	_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 @@
 #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 @@
 	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 @@
 		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,10 +299,13 @@
 	  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 @@
 {
 	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 @@
 	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 @@
 
 #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 @@
 
 #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 @@
 	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 @@
 	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 @@
 	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 @@
 
 	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);