1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module gio.DBusObjectManagerIF; 26 27 private import gio.DBusInterface; 28 private import gio.DBusInterfaceIF; 29 private import gio.DBusObject; 30 private import gio.DBusObjectIF; 31 private import glib.ListG; 32 private import glib.Str; 33 private import gobject.ObjectG; 34 private import gobject.Signals; 35 public import gtkc.gdktypes; 36 private import gtkc.gio; 37 public import gtkc.giotypes; 38 39 40 /** 41 * The #GDBusObjectManager type is the base type for service- and 42 * client-side implementations of the standardized 43 * [org.freedesktop.DBus.ObjectManager](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager) 44 * interface. 45 * 46 * See #GDBusObjectManagerClient for the client-side implementation 47 * and #GDBusObjectManagerServer for the service-side implementation. 48 */ 49 public interface DBusObjectManagerIF{ 50 /** Get the main Gtk struct */ 51 public GDBusObjectManager* getDBusObjectManagerStruct(); 52 53 /** the main Gtk struct as a void* */ 54 protected void* getStruct(); 55 56 /** 57 */ 58 59 /** 60 * Gets the interface proxy for @interface_name at @object_path, if 61 * any. 62 * 63 * Params: 64 * objectPath = Object path to lookup. 65 * interfaceName = D-Bus interface name to lookup. 66 * 67 * Return: A #GDBusInterface instance or %NULL. Free 68 * with g_object_unref(). 69 * 70 * Since: 2.30 71 */ 72 public DBusInterfaceIF getInterface(string objectPath, string interfaceName); 73 74 /** 75 * Gets the #GDBusObjectProxy at @object_path, if any. 76 * 77 * Params: 78 * objectPath = Object path to lookup. 79 * 80 * Return: A #GDBusObject or %NULL. Free with 81 * g_object_unref(). 82 * 83 * Since: 2.30 84 */ 85 public DBusObjectIF getObject(string objectPath); 86 87 /** 88 * Gets the object path that @manager is for. 89 * 90 * Return: A string owned by @manager. Do not free. 91 * 92 * Since: 2.30 93 */ 94 public string getObjectPath(); 95 96 /** 97 * Gets all #GDBusObject objects known to @manager. 98 * 99 * Return: A list of 100 * #GDBusObject objects. The returned list should be freed with 101 * g_list_free() after each element has been freed with 102 * g_object_unref(). 103 * 104 * Since: 2.30 105 */ 106 public ListG getObjects(); 107 @property void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF)[] onInterfaceAddedListeners(); 108 /** 109 * Emitted when @interface is added to @object. 110 * 111 * This signal exists purely as a convenience to avoid having to 112 * connect signals to all objects managed by @manager. 113 * 114 * Params: 115 * object = The #GDBusObject on which an interface was added. 116 * iface = The #GDBusInterface that was added. 117 * 118 * Since: 2.30 119 */ 120 void addOnInterfaceAdded(void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 121 122 @property void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF)[] onInterfaceRemovedListeners(); 123 /** 124 * Emitted when @interface has been removed from @object. 125 * 126 * This signal exists purely as a convenience to avoid having to 127 * connect signals to all objects managed by @manager. 128 * 129 * Params: 130 * object = The #GDBusObject on which an interface was removed. 131 * iface = The #GDBusInterface that was removed. 132 * 133 * Since: 2.30 134 */ 135 void addOnInterfaceRemoved(void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 136 137 @property void delegate(DBusObjectIF, DBusObjectManagerIF)[] onObjectAddedListeners(); 138 /** 139 * Emitted when @object is added to @manager. 140 * 141 * Params: 142 * object = The #GDBusObject that was added. 143 * 144 * Since: 2.30 145 */ 146 void addOnObjectAdded(void delegate(DBusObjectIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 147 148 @property void delegate(DBusObjectIF, DBusObjectManagerIF)[] onObjectRemovedListeners(); 149 /** 150 * Emitted when @object is removed from @manager. 151 * 152 * Params: 153 * object = The #GDBusObject that was removed. 154 * 155 * Since: 2.30 156 */ 157 void addOnObjectRemoved(void delegate(DBusObjectIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 158 159 }