Exemplo n.º 1
0
    def _emit_signal(self, signal, *args):
        retval = GLib.VariantBuilder(variant_type_from_string("r"))
        for arg in args:
            retval.add_value(GLib.Variant.new_string(arg))

        self._debug("[DBUS] emitting signal %s.%s(%s)", self.get_application_id(), signal, str(args))
        self.get_dbus_connection().emit_signal(
            None, self.get_dbus_object_path(), self.get_application_id(), signal, retval.end()
        )
Exemplo n.º 2
0
def on_method_called(app, bus_type, caller_id, obj_path, iface_name, method_name, args, inv_obj, user_data):
    msg = args.get_child_value(0)
    print(msg.get_string())

    vb = GLib.VariantBuilder()
    vb.init(variant_type_from_string('(b)'))
    vb.add_value(GLib.Variant("b", True))
    ret = vb.end()

    inv_obj.return_value(ret)
    def _emit_signal(self, signal, *args):
        retval = GLib.VariantBuilder(variant_type_from_string('r'))
        for arg in args:
            retval.add_value(GLib.Variant.new_string(arg))

        self._debug('[DBUS] emitting signal %s.%s(%s)', self.get_application_id(), signal, str(args))
        self.get_dbus_connection().emit_signal(
            None,
            self.get_dbus_object_path(),
            self.get_application_id(),
            signal,
            retval.end()
        )
Exemplo n.º 4
0
    def _emit_signal(self, signal, *args):
        # Mark Odyseus: Original code that doesn't work on Cinnamon with
        # GTK 3.18 and GLib 2.47.1  (Linux Mint) but it works perfectly on
        # Cinnamon with GTK > 3.20 GLib 2.50.3 (Archlinux).
        # retval = GLib.VariantBuilder(variant_type_from_string("r"))

        # This seems to be working everywere.
        retval = GLib.VariantBuilder.new(variant_type_from_string("r"))

        if args is not None:
            for arg in args:
                retval.add_value(GLib.Variant.new_string(arg))

            self._debug("[DBUS] emitting signal %s.%s(%s)",
                        self.get_application_id(), signal, str(args))

            self.get_dbus_connection().emit_signal(None,
                                                   self.get_dbus_object_path(),
                                                   self.get_application_id(),
                                                   signal, retval.end())
Exemplo n.º 5
0
    def _emit_signal(self, signal, *args):
        # Mark Odyseus: Original code that doesn't work on Cinnamon with
        # GTK 3.18 and GLib 2.47.1  (Linux Mint) but it works perfectly on
        # Cinnamon with GTK > 3.20 GLib 2.50.3 (Archlinux).
        # retval = GLib.VariantBuilder(variant_type_from_string("r"))

        # This seems to be working everywere.
        retval = GLib.VariantBuilder.new(variant_type_from_string("r"))

        if args is not None:
            for arg in args:
                retval.add_value(GLib.Variant.new_string(arg))

            self._debug("[DBUS] emitting signal %s.%s(%s)",
                        self.get_application_id(), signal, str(args))

            self.get_dbus_connection().emit_signal(
                None,
                self.get_dbus_object_path(),
                self.get_application_id(),
                signal,
                retval.end()
            )
Exemplo n.º 6
0
 def _emit_preview(self, uri):
     value = GLib.VariantBuilder.new(variant_type_from_string('r'))
     value.add_value(GLib.Variant.new_string(uri))
     self._emit('preview', value.end())
Exemplo n.º 7
0
 def _emit_error(self, message):
     value = GLib.VariantBuilder.new(variant_type_from_string('r'))
     value.add_value(GLib.Variant.new_string(message))
     self._emit('error', value.end())
Exemplo n.º 8
0
 def _emit_preview(self, uri):
     value = GLib.VariantBuilder.new(variant_type_from_string('r'))
     value.add_value(GLib.Variant.new_string(uri))
     self._emit('preview', value.end())
Exemplo n.º 9
0
 def _emit_error(self, message):
     value = GLib.VariantBuilder.new(variant_type_from_string('r'))
     value.add_value(GLib.Variant.new_string(message))
     self._emit('error', value.end())
Exemplo n.º 10
0
#  Copyright 2013 Canonical Ltd.
#
#  This program is free software; you can redistribute it and/or modify
#  it under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; version 3.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU Lesser General Public License for more details.
#
#  You should have received a copy of the GNU Lesser General Public License
#  along with this program.  If not, see <http://www.gnu.org/licenses/>.

import time
from gi.repository import GLib
from menuscript import Script, ActionList, MENU_OBJECT_PATH
from gi._gi import variant_type_from_string

al = ActionList(MENU_OBJECT_PATH)
al.appendItem("Menu0",
              "Menu0Act",
              actionStateType=variant_type_from_string('s'))
al.appendItem("Menu1",
              "Menu1Act",
              actionStateType=variant_type_from_string('s'))
al.removeItem("1", "Menu1Act")

t = Script.create(al)
t.run()