Sugar.graphics.toolbutton: Difference between revisions
Jump to navigation
Jump to search
Line 19: | Line 19: | ||
=== How do I connect my tool button to a callback? === |
=== How do I connect my tool button to a callback? === |
||
The following code fragment connects a button to a callback ... |
|||
#When the customButton fires a "clicked" event, call self._custom_clicked_cb |
|||
customButton.connect('clicked', self._custom_clicked_cb) |
|||
... which is then defined elsewhere in the class. |
|||
#CALLBACK METHOD |
|||
def _custom_clicked_cb(self, widget): |
|||
#Begin any callback code here |
Revision as of 14:36, 2 June 2008
Class: ToolButton (gtk.ToolButton)
Sugar tool buttons can be added to toolbars and used to control various activity processes. Some common tool button tasks are outlined below.
How do I create my own custom tool button?
There are several steps you need to follow in order to create a tool button:
- Import the ToolButton class from the sugar.graphics.toolbutton package.
- If you intend to have an icon for your tool button, then create an "icons" directory in your activity directory and put the icon (which is a .svg file) in to that directory. For example, the code below uses an icon called "edit-custom" that accesses an edit-custom.svg file saved in the icons directory for the activity.
- Use the code below to guide you on how to then create your button programmatically and add it to a tool bar (we add it to an EditToolbar object that was presumably created already in our code).
from sugar.graphics.toolbutton import ToolButton ... #### CUSTOM TOOL BUTTON #Create a custom tool button and add it to the edit toolbar customButton = ToolButton('edit-custom') customButton.set_tooltip(_('Custom')) self._edit_toolbar.insert(customButton, -1) customButton.show()
How do I connect my tool button to a callback?
The following code fragment connects a button to a callback ...
#When the customButton fires a "clicked" event, call self._custom_clicked_cb customButton.connect('clicked', self._custom_clicked_cb)
... which is then defined elsewhere in the class.
#CALLBACK METHOD def _custom_clicked_cb(self, widget): #Begin any callback code here