Features/New Toolbar Design
Summary
Implement widgets for Design Team/Designs/Toolbars proposal.
Owner
- Name: Aleksey Lim
- Email: send an email
Current status
- Targeted release: 0.86
- Last updated: Sun Jul 12 02:22:30 UTC 2009
- Percentage of completion: 75%
Detailed Description
sugar.graphics.toolbar module consists of 2 widgets:
- Toolbar main widget which represents toolbar itself
- ToolbarButton tool button to insert to Toolbar, which could be expanded to sub-widget
NOTE: Toolbar was designed to have only one level of sub-widgets.
Toolbar
sugar.graphics.toolbar.Toolbar extends gtk.VBox:
- top property to access to gtk.Toolbar interface
- padding horizontal padding to top toolbar and all sub-widgets
- modify_bg to modify background color of toolbar itself and all sub-widgets
ToolbarButton
sugar.graphics.toolbar.ToolbarButton extends sugar.graphics.toolbutton.ToolButton:
- toolbar RO property, if parent of button is sugar.graphics.toolbar.Toolbar
- page RW GObject property, sub-widget to expand
- expanded RW property, if page expanded
If sugar.graphics.toolbar.Toolbar.palette property wasn't set manually it will contain palette with page.
Example
from sugar.graphics.toolbar import Toolbar, ToolbarButton toolbar = Toolbar() tollbarbutton_1 = ToolbarButton( page=gtk.Button('sub-widget #1'), icon_name='computer-xo') toolbar.top.insert(tollbarbutton_1, -1) tollbarbutton_2 = ToolbarButton( page=gtk.Button('sub-widget #2'), icon_name='button_cancel', tooltip='with custom palette instead of sub-widget') toolbar.top.insert(tollbarbutton_2, -1)
Benefit to Sugar
Make process of switching between toolbars more clear, use tool buttons that are showing all time(in main toolbar) i.e. having Close/Help buttons visible all time could be very useful.
Scope
- implementation in sugar-toolkit
- use new toolbars in Journal
How To Test
In progress..
User Experience
If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice.
Dependencies
- only sugar-toolkit
Contingency Plan
None necessary, revert to previous release behaviour.
Documentation
Is there upstream documentation on this feature, or notes you have written yourself? Link to that material here so other interested developers can get involved.
Release Notes
The Sugar Release Notes inform end-users about what is new in the release. An Example is 0.84/Notes. The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns. If there are any such changes involved in this feature, indicate them here. You can also link to upstream documentation if it satisfies this need. This information forms the basis of the release notes edited by the release team and shipped with the release.