| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CHROME_BROWSER_UI_PANELS_PANEL_CONSTANTS_H_ | |
| 6 #define CHROME_BROWSER_UI_PANELS_PANEL_CONSTANTS_H_ | |
| 7 | |
| 8 #include "build/build_config.h" | |
| 9 | |
| 10 namespace panel { | |
| 11 | |
| 12 // The height in pixels of the titlebar. | |
| 13 static const int kTitlebarHeight = 36; | |
| 14 | |
| 15 // Absolute minimum width and height for panels, including non-client area. | |
| 16 // Should only be big enough to accomodate a close button on the reasonably | |
| 17 // recognisable titlebar. | |
| 18 // These numbers are semi-arbitrary. | |
| 19 // Motivation for 'width' is to make main buttons on the titlebar functional. | |
| 20 // Motivation for height is to allow autosized tightly-wrapped panel with a | |
| 21 // single line of text - so the height is set to be likely less than a titlebar, | |
| 22 // to make sure even small content is tightly wrapped. | |
| 23 const int kPanelMinWidth = 80; | |
| 24 const int kPanelMinHeight = kTitlebarHeight + 10; | |
| 25 | |
| 26 // The panel can be minimized to 4-pixel lines. | |
| 27 static const int kMinimizedPanelHeight = 4; | |
| 28 | |
| 29 // The size (width or height) of the app icon (taskbar icon). | |
| 30 static const int kPanelAppIconSize = 32; | |
| 31 | |
| 32 // The size (width or height) of the button, which is also the size of the | |
| 33 // hit target area. | |
| 34 static const int kPanelButtonSize = 24; | |
| 35 | |
| 36 // The padding in pixeles between the icon and the left border. | |
| 37 const int kTitlebarLeftPadding = 10; | |
| 38 | |
| 39 // The padding in pixeles between the close button and the right border. | |
| 40 const int kTitlebarRightPadding = 6; | |
| 41 | |
| 42 // The padding in piexles between the icon and the title text. | |
| 43 const int kIconAndTitlePadding = 11; | |
| 44 | |
| 45 // The padding in piexles between the title text and the button. | |
| 46 const int kTitleAndButtonPadding = 11; | |
| 47 | |
| 48 // The padding in pixeles between buttons. | |
| 49 static const int kButtonPadding = 5; | |
| 50 | |
| 51 #if defined(OS_WIN) | |
| 52 // The number of times to flash the panel's taskbar icon in order to draw the | |
| 53 // user's attention (Windows only). | |
| 54 static const int kNumberOfTimesToFlashPanelForAttention = 30; | |
| 55 #endif | |
| 56 | |
| 57 // Different types of buttons that can be shown on panel's titlebar. | |
| 58 enum TitlebarButtonType { | |
| 59 CLOSE_BUTTON, | |
| 60 MINIMIZE_BUTTON, | |
| 61 RESTORE_BUTTON | |
| 62 }; | |
| 63 | |
| 64 // Different platforms use different modifier keys to change the behavior | |
| 65 // of a mouse click. This enum captures the meaning of the modifier rather | |
| 66 // than the actual modifier key to generalize across platforms. | |
| 67 enum ClickModifier { | |
| 68 NO_MODIFIER, | |
| 69 APPLY_TO_ALL, // Apply the click behavior to all panels in the collection. | |
| 70 }; | |
| 71 | |
| 72 // Ways a panel can be resized. | |
| 73 enum Resizability { | |
| 74 NOT_RESIZABLE = 0, | |
| 75 RESIZABLE_TOP = 0x1, | |
| 76 RESIZABLE_BOTTOM = 0x2, | |
| 77 RESIZABLE_LEFT = 0x4, | |
| 78 RESIZABLE_RIGHT = 0x8, | |
| 79 RESIZABLE_TOP_LEFT = 0x10, | |
| 80 RESIZABLE_TOP_RIGHT = 0x20, | |
| 81 RESIZABLE_BOTTOM_LEFT = 0x40, | |
| 82 RESIZABLE_BOTTOM_RIGHT = 0x80, | |
| 83 RESIZABLE_EXCEPT_BOTTOM = RESIZABLE_TOP | RESIZABLE_LEFT | RESIZABLE_RIGHT | | |
| 84 RESIZABLE_TOP_LEFT | RESIZABLE_TOP_RIGHT, | |
| 85 RESIZABLE_ALL = RESIZABLE_TOP | RESIZABLE_BOTTOM | RESIZABLE_LEFT | | |
| 86 RESIZABLE_RIGHT | RESIZABLE_TOP_LEFT | RESIZABLE_TOP_RIGHT | | |
| 87 RESIZABLE_BOTTOM_LEFT | RESIZABLE_BOTTOM_RIGHT | |
| 88 }; | |
| 89 | |
| 90 // Describes how 4 corners of a panel should be painted. | |
| 91 enum CornerStyle { | |
| 92 NOT_ROUNDED = 0, | |
| 93 TOP_ROUNDED = 0x1, | |
| 94 BOTTOM_ROUNDED = 0x2, | |
| 95 ALL_ROUNDED = TOP_ROUNDED | BOTTOM_ROUNDED | |
| 96 }; | |
| 97 | |
| 98 } // namespace panel | |
| 99 | |
| 100 #endif // CHROME_BROWSER_UI_PANELS_PANEL_CONSTANTS_H_ | |
| OLD | NEW |