Package screenlets :: Module services :: Class ScreenletService
[hide private]
[frames] | no frames]

Class ScreenletService

source code

            object --+        
                     |        
dbus.service.Interface --+    
                         |    
       dbus.service.Object --+
                             |
                            ScreenletService

The ScreenletService contains the boilerplate code for creating new dbus-objects for Screenlets. Subclasses can easily implement new functions to allow controlling and managing Screenlets through DBus in any way imaginable. This class should implement the default actions available for all screenlets - add, delete, get, set, (move?)

Nested Classes [hide private]

Inherited from dbus.service.Interface: __metaclass__

Instance Methods [hide private]
 
__init__(self, screenlet, name, id=None)
Constructor.
source code
 
test(self) source code
 
debug(self, string)
Dump a string to the console.
source code
 
add(self, id)
Ask the assigned Screenlet to add a new instance of itself to its session.
source code
 
get(self, id, attrib)
Ask the assigned Screenlet to return the given attribute's value.
source code
 
get_first_instance(self)
Get the ID of the first existing instance of the assigned Screenlet (within the screenlet's active session).
source code
 
list_instances(self)
Return a list with IDs of all existing instances of the assigned Screenlet (within the screenlet's active session).
source code
 
quit(self)
Quit all instances of the screenlet.
source code
 
set(self, id, attrib, value)
Ask the assigned Screenlet to set the given attribute to 'value'.
source code
 
instance_added(self, *args, **keywords)
This signal gets emitted whenever a new instance of the assigned Screenlet gets added.
 
instance_removed(self, *args, **keywords)
This signal gets emitted whenever an instance of the assigned Screenlet gets removed.

Inherited from dbus.service.Object: Introspect, __repr__, __str__, add_to_connection, remove_from_connection

Inherited from dbus.service.Object (private): _message_cb, _unregister_cb

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__

Class Variables [hide private]
  BUS = 'org.screenlets'
  PATH = '/org/screenlets/'
  IFACE = 'org.screenlets.ScreenletService'

Inherited from dbus.service.Object: SUPPORTS_MULTIPLE_CONNECTIONS, SUPPORTS_MULTIPLE_OBJECT_PATHS

Inherited from dbus.service.Interface (private): _dbus_class_table

Instance Variables [hide private]

Inherited from dbus.service.Object (private): _connection, _fallback, _locations, _locations_lock, _object_path

Properties [hide private]

Inherited from dbus.service.Object: __dbus_object_path__, connection, locations

Inherited from object: __class__

Method Details [hide private]

__init__(self, screenlet, name, id=None)
(Constructor)

source code 
Constructor. Either conn or bus_name is required; object_path is also required.
Overrides: dbus.service.Object.__init__
(inherited documentation)

test(self)

source code 
Decorators:
  • @action(IFACE)

debug(self, string)

source code 
Dump a string to the console.
Decorators:
  • @action(IFACE)

add(self, id)

source code 
Ask the assigned Screenlet to add a new instance of itself to its session. The new Screenlet will have the ID defined by 'id'. The ID of the new instance is returned, so you can auto-generate an ID by passing an empty string. The function returns None if adding a new instance failed for some reason.
Decorators:
  • @action(IFACE)

get(self, id, attrib)

source code 
Ask the assigned Screenlet to return the given attribute's value. If 'id' is defined, the instance with the given id will be accessed, else the main instance is used. Protected attributes are not returned by this function. TODO: Throw exception on error? ... could be abused to crash the app
Decorators:
  • @action(IFACE)

get_first_instance(self)

source code 
Get the ID of the first existing instance of the assigned Screenlet (within the screenlet's active session).
Decorators:
  • @action(IFACE)

list_instances(self)

source code 
Return a list with IDs of all existing instances of the assigned Screenlet (within the screenlet's active session).
Decorators:
  • @action(IFACE)

quit(self)

source code 
Quit all instances of the screenlet. Similar to selecting Quit from the menu.
Decorators:
  • @action(IFACE)

set(self, id, attrib, value)

source code 
Ask the assigned Screenlet to set the given attribute to 'value'. The instance with the given id will be accessed.
Decorators:
  • @action(IFACE)

instance_added(self, *args, **keywords)

 
This signal gets emitted whenever a new instance of the assigned Screenlet gets added.
Decorators:
  • @signal(IFACE)

instance_removed(self, *args, **keywords)

 
This signal gets emitted whenever an instance of the assigned Screenlet gets removed.
Decorators:
  • @signal(IFACE)