#
a884b43b |
|
19-Mar-2012 |
John Scipione <jscipione@gmail.com> |
Added support for buttons and menuframes with rounded corners. * Not turned on for default buttons and menuframes right now. * Updated Deskcalc and Keymap to use buttons with rounded corners. * Overloaded methods with radium parameters are not virtual right now so as to not break vtables. Added /*virtual*/ before each method that should be made virtual in ControlLook.h * Added a light line to the left border of the down arrow frame on menu frames as a small visual tweak. * Replace StrokeRect() with StrokeRoundRect() when drawing the default button indicator. This gives them a rounded appearance if the button is also rounded. * Added protected methods _DrawMenuFieldBackgroundOutside and _DrawMenuFieldBackgroundInside. * Created some protected methods to get the edge, frame, and bevel colors from a passed in base color because it was a mess and I needed to calculate the colors from mutiple methods. It is much cleaner now. * Added myself to ControlLook.cpp authors list. Assigned copyright to Haiku, Inc. Stippi also retains his copyright. * Tons of style fixes. - Change all instances of `if (flags & B_FLAG)` to `if ((flags & B_FLAG) != 0)` - Reorder some methods. - Reorder includes. - Spacing. - Updated comments.
|
#
d452ff66 |
|
26-Feb-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Added some reserved fields to BControlLook. * This makes future changes less troublesome, although we should also add some virtual slots there (probably just dozens of it, though, that's why I was being lazy). * Don't pass messages by value; they are copied twice this way. * Minor coding style corrections, automatic whitespace cleanup.
|
#
d63b75fa |
|
22-Feb-2012 |
Philippe Saint-Pierre <stpere@gmail.com> |
Outline of labels/strings drawn to desktop * Rather than duplicating the decision taking logic involving wheter or not to draw the outline or glow in every replicant, update be_control_look to make it more generic. * The Monitoring of the background preferences is now only done in Tracker (where it was already being done). * Add a BControlLook::B_IGNORE_OUTLINE flag to avoid this new behaviour. * Remove that said logic from ActivityMonitor and use be_control_look. * Use the ignore flag in DeskCalc to avoid the outline in its case. Should fix #7716, #7291.
|
#
6648dd3c |
|
07-Jun-2011 |
Alex Wilson <yourpalal2@gmail.com> |
* Add new spacing/inset constants for the layout API. For now, leave B_USE_DEFAULT_SPACING, but this will go soon. * Rename BControlLook::ComposeItemSpacing() to ComposeSpacing(), and extend it to handle the new constants. * Adjust users of BControlLook::ComposeItemSpacing() accordingly. * part of #7447 git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42025 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
82ab3167 |
|
02-Sep-2010 |
Alex Wilson <yourpalal2@gmail.com> |
Add default spacing for Layouts (#5614) * introduce B_USE_DEFAULT_SPACING, which works somewhat like B_SIZE_UNSET and B_ALIGN_HORIZONTAL_UNSET * introduce static float BControlLook::ComposeItemSpacing(float spacing), which checks uses be_control_look->DefaultItemSpacing(). * modify layouts to use BControlLook::ComposeItemSpacing() in SetInsets and SetSpacing methods. * default insets are still 0, 0, 0, 0, but can be set to default spacing by passing B_USE_DEFAULT_SPACING * I've found two regressions, patches incoming, please report others on #5614. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38512 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6ed212bd |
|
08-Apr-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Added TODO about possibly better way to name some constants. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36081 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c4e211fe |
|
22-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Refactored a method to draw a label when the location is already known. (This one takes care of setting up the correct color.) * Added TODO about using either B_CONTROL_TEXT_COLOR, or elliminating that constant (which I am in favor of...). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35260 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
20a11271 |
|
17-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Added a (to be virtual) DefaultItemSpacing() method to control look. This is what you should use in for example BGroupLayout as spacing/inset. * Changed the label spacing to be dependent on the font size, too (and enlarged it a bit as well). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33621 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
89208c77 |
|
27-Aug-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Finished unifying the Interface Kit headers: * Fixed copyrights (puncuation and capitalization, removed authors from headers) * Updated indentation style * Unified pointer/reference style * Re-ordered some methods for better grouping where it could be done (abd adopted source accordingly) * Small coding style fixes here and there No functional change intended. +alphabranch git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32745 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1f9fd6d8 |
|
20-Jun-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Added BSplitView drawing code to ControlLook. * BSplitView uses ControlLook to draw itself. * Small refactoring in SplitLayout to implement IsAboveSplitter(BPoint). * BSplitView updates the view cursor when the mouse is above a splitter. * Standard splitter size is now 6 pixels, which is a bit easer to hit. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31137 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4f579098 |
|
28-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Introduce the possiblity to draw certain frames with alpha blending on top of an existing background. It's not supported by many frame types yet, but BButton and TextControl frames work as well as the soft recessed frame which many controls use. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29762 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
681c2e44 |
|
25-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
The button and menu field draw routines take a background color into account, which makes the resessed frame blend better with the surroundings. This can be seen best in Keymap, where a different color is set on some buttons, but the resessed frame should still be the same across all those buttons. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29716 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
74bb70ae |
|
23-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Moved the BScrollView frame drawing entirely into BControlLook. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29661 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
40a10e1c |
|
21-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Added method to draw an arrow shape like that of the BScrollBar. TODO: Adjust BScrollBar to use it. TODO: Make it virtual like the others, but I don't want to break Vision and other native Haiku apps just now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29630 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a72cb41 |
|
18-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Make BMenuBar background drawing more flexible and also support an "activated" state. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29597 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8ee9217e |
|
24-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Improved the look of the slider triangle thumb. Still missing is the vertical version. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29311 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
83aff015 |
|
17-Feb-2009 |
Philippe Houdoin <philippe.houdoin@gmail.com> |
Fixed BTabs focus underline offset. Fixed a typo in method name. Please forgive me Stephan if I just screw your next commit... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29240 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
13cd46df |
|
16-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Stronger BMenuField popup indicator. * Softer recessed frame for BMenuField to distinguish more from BButton and make it slightly more similar to BTextControl. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29235 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2f86ba45 |
|
15-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented a new look for the Haiku interface controls. It was overheard that they looked too ninety-ish. TODO: The code behind this is work in progress. The basic idea is to extract all drawing code into a new class BControlLook, of which there is a global instance be_control_look, instantiated in InterfaceDefs.cpp. At the moment, all the old drawing code is still there, and the usage of be_control_look is inside if-bodies checking the instance against NULL. In another words, by not instanitating be_control_look, you can revert back to the old look. BControlLook's job is to provide reusable methods for drawing certain types of frames, backgrounds and labels, so that application developers can make controls that re-use the same drawing code as built-in controls and adopt to changes made there. I have added the notion of "borders". Each of the frame drawing methods can be made to draw certain borders only, which is supposed to help when controls shall visually attach. This feature is not fully explored at all ATM. TODO: Update BColumnListView header view and BStringItem text spacing. Update other apps where it makes sense to use BControlLook. For the moment, only Tracker and LaunchBox are updated. More... NOTE: The new look is not very radically different, so that existing apps do not immediately look too ugly or out of place. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29221 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a884b43bb1c7bbd60789f35934466a970fe59d9f |
|
19-Mar-2012 |
John Scipione <jscipione@gmail.com> |
Added support for buttons and menuframes with rounded corners. * Not turned on for default buttons and menuframes right now. * Updated Deskcalc and Keymap to use buttons with rounded corners. * Overloaded methods with radium parameters are not virtual right now so as to not break vtables. Added /*virtual*/ before each method that should be made virtual in ControlLook.h * Added a light line to the left border of the down arrow frame on menu frames as a small visual tweak. * Replace StrokeRect() with StrokeRoundRect() when drawing the default button indicator. This gives them a rounded appearance if the button is also rounded. * Added protected methods _DrawMenuFieldBackgroundOutside and _DrawMenuFieldBackgroundInside. * Created some protected methods to get the edge, frame, and bevel colors from a passed in base color because it was a mess and I needed to calculate the colors from mutiple methods. It is much cleaner now. * Added myself to ControlLook.cpp authors list. Assigned copyright to Haiku, Inc. Stippi also retains his copyright. * Tons of style fixes. - Change all instances of `if (flags & B_FLAG)` to `if ((flags & B_FLAG) != 0)` - Reorder some methods. - Reorder includes. - Spacing. - Updated comments.
|
#
d452ff664c6c7d1b4c429fb7b53f920f165e52f7 |
|
26-Feb-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Added some reserved fields to BControlLook. * This makes future changes less troublesome, although we should also add some virtual slots there (probably just dozens of it, though, that's why I was being lazy). * Don't pass messages by value; they are copied twice this way. * Minor coding style corrections, automatic whitespace cleanup.
|
#
d63b75faf848697b07bfad9b71899e6caf9ab5bc |
|
22-Feb-2012 |
Philippe Saint-Pierre <stpere@gmail.com> |
Outline of labels/strings drawn to desktop * Rather than duplicating the decision taking logic involving wheter or not to draw the outline or glow in every replicant, update be_control_look to make it more generic. * The Monitoring of the background preferences is now only done in Tracker (where it was already being done). * Add a BControlLook::B_IGNORE_OUTLINE flag to avoid this new behaviour. * Remove that said logic from ActivityMonitor and use be_control_look. * Use the ignore flag in DeskCalc to avoid the outline in its case. Should fix #7716, #7291.
|
#
6648dd3cf1597c4fcae16fcfa76270f3acda90b6 |
|
07-Jun-2011 |
Alex Wilson <yourpalal2@gmail.com> |
* Add new spacing/inset constants for the layout API. For now, leave B_USE_DEFAULT_SPACING, but this will go soon. * Rename BControlLook::ComposeItemSpacing() to ComposeSpacing(), and extend it to handle the new constants. * Adjust users of BControlLook::ComposeItemSpacing() accordingly. * part of #7447 git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42025 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
82ab3167232c5c8ee53e684eddc83dc7cb60f1cc |
|
02-Sep-2010 |
Alex Wilson <yourpalal2@gmail.com> |
Add default spacing for Layouts (#5614) * introduce B_USE_DEFAULT_SPACING, which works somewhat like B_SIZE_UNSET and B_ALIGN_HORIZONTAL_UNSET * introduce static float BControlLook::ComposeItemSpacing(float spacing), which checks uses be_control_look->DefaultItemSpacing(). * modify layouts to use BControlLook::ComposeItemSpacing() in SetInsets and SetSpacing methods. * default insets are still 0, 0, 0, 0, but can be set to default spacing by passing B_USE_DEFAULT_SPACING * I've found two regressions, patches incoming, please report others on #5614. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38512 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6ed212bd4393c9bd1edfd235d7030a2f7e99ec6b |
|
08-Apr-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Added TODO about possibly better way to name some constants. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36081 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c4e211feb65c3656c3ad7dba1b8b60e983ca1e13 |
|
22-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Refactored a method to draw a label when the location is already known. (This one takes care of setting up the correct color.) * Added TODO about using either B_CONTROL_TEXT_COLOR, or elliminating that constant (which I am in favor of...). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35260 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
20a11271d02f6e1dc373e48f62ee699d44984c35 |
|
17-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Added a (to be virtual) DefaultItemSpacing() method to control look. This is what you should use in for example BGroupLayout as spacing/inset. * Changed the label spacing to be dependent on the font size, too (and enlarged it a bit as well). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33621 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
89208c77f10235d43fda0c7b3fd6751db02cc12c |
|
27-Aug-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Finished unifying the Interface Kit headers: * Fixed copyrights (puncuation and capitalization, removed authors from headers) * Updated indentation style * Unified pointer/reference style * Re-ordered some methods for better grouping where it could be done (abd adopted source accordingly) * Small coding style fixes here and there No functional change intended. +alphabranch git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32745 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1f9fd6d866bff084e6792bccc52d6eefd9470f7e |
|
20-Jun-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Added BSplitView drawing code to ControlLook. * BSplitView uses ControlLook to draw itself. * Small refactoring in SplitLayout to implement IsAboveSplitter(BPoint). * BSplitView updates the view cursor when the mouse is above a splitter. * Standard splitter size is now 6 pixels, which is a bit easer to hit. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31137 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4f57909806ea0aaa8d1f4fdd36d525b6ff0fa7b7 |
|
28-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Introduce the possiblity to draw certain frames with alpha blending on top of an existing background. It's not supported by many frame types yet, but BButton and TextControl frames work as well as the soft recessed frame which many controls use. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29762 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
681c2e4425073000c01c9c97237d2615d226f401 |
|
25-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
The button and menu field draw routines take a background color into account, which makes the resessed frame blend better with the surroundings. This can be seen best in Keymap, where a different color is set on some buttons, but the resessed frame should still be the same across all those buttons. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29716 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
74bb70aef90f212c8595b81189bc726e4db592c0 |
|
23-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Moved the BScrollView frame drawing entirely into BControlLook. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29661 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
40a10e1c523af82143d16163ed48cfddabe6849f |
|
21-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Added method to draw an arrow shape like that of the BScrollBar. TODO: Adjust BScrollBar to use it. TODO: Make it virtual like the others, but I don't want to break Vision and other native Haiku apps just now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29630 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a72cb4139bb0b6ae48a09c6dacf64018ceb694f |
|
18-Mar-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Make BMenuBar background drawing more flexible and also support an "activated" state. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29597 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8ee9217eec79eae70ae2c62280d05e08579554ae |
|
24-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Improved the look of the slider triangle thumb. Still missing is the vertical version. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29311 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
83aff015eb79ec3b8c3cff465b6f5051da18d215 |
|
17-Feb-2009 |
Philippe Houdoin <philippe.houdoin@gmail.com> |
Fixed BTabs focus underline offset. Fixed a typo in method name. Please forgive me Stephan if I just screw your next commit... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29240 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
13cd46dfa37ff39c2aeaf3b9fb1f49e1e5cb539e |
|
16-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Stronger BMenuField popup indicator. * Softer recessed frame for BMenuField to distinguish more from BButton and make it slightly more similar to BTextControl. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29235 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2f86ba45579bdc9648b232175f87edc62ab71b54 |
|
15-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented a new look for the Haiku interface controls. It was overheard that they looked too ninety-ish. TODO: The code behind this is work in progress. The basic idea is to extract all drawing code into a new class BControlLook, of which there is a global instance be_control_look, instantiated in InterfaceDefs.cpp. At the moment, all the old drawing code is still there, and the usage of be_control_look is inside if-bodies checking the instance against NULL. In another words, by not instanitating be_control_look, you can revert back to the old look. BControlLook's job is to provide reusable methods for drawing certain types of frames, backgrounds and labels, so that application developers can make controls that re-use the same drawing code as built-in controls and adopt to changes made there. I have added the notion of "borders". Each of the frame drawing methods can be made to draw certain borders only, which is supposed to help when controls shall visually attach. This feature is not fully explored at all ATM. TODO: Update BColumnListView header view and BStringItem text spacing. Update other apps where it makes sense to use BControlLook. For the moment, only Tracker and LaunchBox are updated. More... NOTE: The new look is not very radically different, so that existing apps do not immediately look too ugly or out of place. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29221 a95241bf-73f2-0310-859d-f6bbb57e9c96
|