Part of elisa.plugins.pigment.widgets.widget View In Hierarchy
Known subclasses: elisa.plugins.database.scanning_widget.ScannerWidget, elisa.plugins.pigment.widgets.box.Box, elisa.plugins.pigment.widgets.button.Button, elisa.plugins.pigment.widgets.entry.Entry, elisa.plugins.pigment.widgets.indicator_progressbar.Indicator, elisa.plugins.pigment.widgets.label.Label, elisa.plugins.pigment.widgets.list.List, elisa.plugins.pigment.widgets.osk.Button, elisa.plugins.pigment.widgets.osk.OnScreenKeyboard, elisa.plugins.pigment.widgets.range.Range, elisa.plugins.pigment.widgets.size_enforcer.Square, elisa.plugins.poblesec.base.grid.GridItem, elisa.plugins.poblesec.base.preview_list.PreviewWidget, elisa.plugins.poblesec.base.preview_list.Shortcut, elisa.plugins.poblesec.configuration.base.BaseScreenWidget, elisa.plugins.poblesec.login_settings_controller.ReturnButton, elisa.plugins.poblesec.player_video.MouseOsd, elisa.plugins.poblesec.player_video.PlayerOsd, elisa.plugins.poblesec.poblesec_browser_controller.BottomBar, elisa.plugins.poblesec.poblesec_browser_controller.BreadCrumbs, elisa.plugins.poblesec.poblesec_browser_controller.Crumb, elisa.plugins.poblesec.poblesec_browser_controller.TopBar, elisa.plugins.poblesec.poblesec_browser_controller.TopBarButton, elisa.plugins.poblesec.poblesec_browser_controller.TopBarWithBreadCrumbs, elisa.plugins.poblesec.popup.PopupWidget, elisa.plugins.poblesec.sections_menu.SectionItemWidget, elisa.plugins.poblesec.viewport_buttons.AutohideButtons, elisa.plugins.poblesec.widgets.button.IconButton, elisa.plugins.poblesec.widgets.button.StateButton, elisa.plugins.poblesec.widgets.button.TextButton, elisa.plugins.poblesec.widgets.entry.EntryBar, elisa.plugins.poblesec.widgets.image_with_reflection.ImageWithReflection, elisa.plugins.poblesec.widgets.loading_animation.LoadingAnimation, elisa.plugins.poblesec.widgets.long_loading_image.LongLoadingImage, elisa.plugins.poblesec.widgets.menu_item.MenuItemWidget, elisa.plugins.poblesec.widgets.nothing_to_display.NothingToDisplay, elisa.plugins.poblesec.widgets.player.buffering_bar.BufferingBar, elisa.plugins.poblesec.widgets.player.button.Button, elisa.plugins.poblesec.widgets.player.volumebar.VolumeBar, elisa.plugins.poblesec.widgets.search_results.SearchResultEntryWidget, elisa.plugins.poblesec.widgets.search_results.SearchResultWidget, elisa.plugins.poblesec.widgets.selector.ActionSelector, elisa.plugins.poblesec.widgets.sliced_image.SlicedImageHorizontal, elisa.plugins.shelf.shelf_controller.PluginWidget, elisa.plugins.shelf.shelf_controller.ShelfHeader
Basic widget for the python Pigment scenegraph.
It handles a simple focus system (at most one widget having the focus at one time) and a simple style system (with style and style-properties change notifications, also bound to state changes).
Emit these signals:Instance Variables | name | the name of the widget (type: string ) |
style | the present style of the widget
(type: pgm.widget.Style
) | |
state | the present state of the widget (type: enum(STATE_NORMAL, STATE_ACTIVE, STATE_PRELIGHT, STATE_SELECTED, STATE_INSENSITIVE) ) |
Line # | Kind | Name | Docs |
---|---|---|---|
69 | Method | __init__ | Set the default styles for the widget. Subclasses should override and |
136 | Method | state__get | The present state of the widget |
140 | Method | state__set | Set the state of the widget and emit the "state-changed" signal if |
157 | Method | do_state_changed | Default 'state-changed' handler |
164 | Method | style__get | The present style |
168 | Method | style__set | Set the present style, after binding it to the widget and subscribing |
195 | Method | do_style_set | Default 'style-set' signal handler |
217 | Method | get_parent | Get the parent, if exists. |
225 | Method | get_children | Get the list of direct children. |
233 | Method | get_root | Get the root of the widget's tree hierarchy |
244 | Method | get_descendants | Get the list of nodes in the subtree |
258 | Method | focus__get | Whether the widget has focus |
262 | Method | focus__set | Set or unset the focus on the widget and emit the 'focus' signal. |
290 | Method | focus_child__get | Get the child with focus |
298 | Method | do_key_press_event | Default 'key-press-event' signal handler. |
313 | Method | clean | Undocumented |
367 | Class Method | demo | Create a demo widget, put it on a canvas and show it in a viewport. |
93 | Method | _init_styles | Undocumented |
191 | Method | _style_property_changed | Undocumented |
200 | Method | _update_style_properties | Update the widget's appearence basing on the properties set. |
310 | Method | _do_real_key_press_event | Undocumented |
320 | Class Method | _demo_create_viewport | Undocumented |
327 | Class Method | _on_demo_delete | Undocumented |
335 | Class Method | _demo_widget | Meant to be overidden by inheriting widgets for widget creation and |
346 | Class Method | _set_demo_widget_defaults | Undocumented |
Inherited from Group:
Line # | Kind | Name | Docs |
---|---|---|---|
85 | Method | canvas__set | Undocumented |
105 | Method | canvas__get | Undocumented |
110 | Method | layer__set | Undocumented |
123 | Method | layer__get | Undocumented |
131 | Method | add | Undocumented |
173 | Method | remove | Undocumented |
192 | Method | empty | Undocumented |
202 | Method | __len__ | Undocumented |
205 | Method | __iter__ | Undocumented |
208 | Method | update_absolute_x | Undocumented |
215 | Method | update_absolute_y | Undocumented |
222 | Method | update_absolute_z | Undocumented |
229 | Method | update_absolute_position | Undocumented |
236 | Method | update_absolute_width | Undocumented |
245 | Method | update_absolute_height | Undocumented |
254 | Method | update_absolute_size | Undocumented |
263 | Method | update_absolute_visible | Undocumented |
268 | Method | update_absolute_opacity | Undocumented |
274 | Method | regenerate | Undocumented |
161 | Method | _proxy_child_signal_scrolled | Undocumented |
165 | Method | _proxy_child_signal | Undocumented |
169 | Method | _proxy_child_signal_with_pressure | Undocumented |
Inherited from Node (via Group):
Line # | Kind | Name | Docs |
---|---|---|---|
39 | Method | absolute_width__get | Undocumented |
42 | Method | absolute_width__set | Undocumented |
47 | Method | absolute_height__get | Undocumented |
50 | Method | absolute_height__set | Undocumented |
55 | Method | absolute_x__get | Undocumented |
58 | Method | absolute_x__set | Undocumented |
64 | Method | absolute_y__get | Undocumented |
67 | Method | absolute_y__set | Undocumented |
73 | Method | absolute_z__get | Undocumented |
76 | Method | absolute_z__set | Undocumented |
82 | Method | parent__set | Undocumented |
102 | Method | parent__get | Undocumented |
107 | Method | x__get | Undocumented |
113 | Method | x__set | Undocumented |
129 | Method | y__get | Undocumented |
135 | Method | y__set | Undocumented |
152 | Method | z__get | Undocumented |
158 | Method | z__set | Undocumented |
175 | Method | position__get | Undocumented |
181 | Method | position__set | Undocumented |
205 | Method | width__get | Undocumented |
211 | Method | width__set | Undocumented |
229 | Method | height__get | Undocumented |
235 | Method | height__set | Undocumented |
255 | Method | size__get | Undocumented |
261 | Method | size__set | Undocumented |
281 | Method | visible__get | Undocumented |
287 | Method | visible__set | Undocumented |
305 | Method | opacity__get | Undocumented |
311 | Method | opacity__set | Undocumented |
Parameters | state | the new state (type: enum(STATE_NORMAL, STATE_ACTIVE, STATE_PRELIGHT, STATE_SELECTED, STATE_INSENSITIVE) ) |
Parameters | style | the style to set
(type: pgm.widget.Style
) |
Update the widget's appearence basing on the properties set.
This is intended to be overriden by subclasses, that will implement the actual code to bind style properties to widget ones.Parameters | props | the properties that have to be updated (type: dictionary of strings ==> anything ) |
Returns | list of elisa.plugins.pigment.widgets.Widget
|
Returns | elisa.plugins.pigment.widgets.Widget
|
Returns | list of elisa.plugins.pigment.widgets.Widget
|
Set or unset the focus on the widget and emit the 'focus' signal.
If setting the focus on the current widget, walk throught the widget hierarchy it belongs to and unset the previously focused one.Parameters | value | the focus value. (type: boolean. ) |
Default 'key-press-event' signal handler.
Forward the signal to the focused child, if any.Returns | elisa.plugins.pigment.widgets.Widget
|
Create a demo widget, put it on a canvas and show it in a viewport.
Just start a pgm.main() or an "ipython -gthread" shell to interactively test your widget. See the __main__ block at the end of this file.Returns | the demo elisa.plugins.pigment.widgets.Widget
|