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 private import gtkc.gio; 36 public import gtkc.giotypes; 37 private import std.algorithm; 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(bool transferOwnership = false); 52 53 /** the main Gtk struct as a void* */ 54 protected void* getStruct(); 55 56 57 /** 58 * Gets the interface proxy for @interface_name at @object_path, if 59 * any. 60 * 61 * Params: 62 * objectPath = Object path to lookup. 63 * interfaceName = D-Bus interface name to lookup. 64 * 65 * Returns: A #GDBusInterface instance or %NULL. Free 66 * with g_object_unref(). 67 * 68 * Since: 2.30 69 */ 70 public DBusInterfaceIF getInterface(string objectPath, string interfaceName); 71 72 /** 73 * Gets the #GDBusObjectProxy at @object_path, if any. 74 * 75 * Params: 76 * objectPath = Object path to lookup. 77 * 78 * Returns: A #GDBusObject or %NULL. Free with 79 * g_object_unref(). 80 * 81 * Since: 2.30 82 */ 83 public DBusObjectIF getObject(string objectPath); 84 85 /** 86 * Gets the object path that @manager is for. 87 * 88 * Returns: A string owned by @manager. Do not free. 89 * 90 * Since: 2.30 91 */ 92 public string getObjectPath(); 93 94 /** 95 * Gets all #GDBusObject objects known to @manager. 96 * 97 * Returns: A list of 98 * #GDBusObject objects. The returned list should be freed with 99 * g_list_free() after each element has been freed with 100 * g_object_unref(). 101 * 102 * Since: 2.30 103 */ 104 public ListG getObjects(); 105 106 /** 107 * Emitted when @interface is added to @object. 108 * 109 * This signal exists purely as a convenience to avoid having to 110 * connect signals to all objects managed by @manager. 111 * 112 * Params: 113 * object = The #GDBusObject on which an interface was added. 114 * iface = The #GDBusInterface that was added. 115 * 116 * Since: 2.30 117 */ 118 gulong addOnInterfaceAdded(void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 119 120 /** 121 * Emitted when @interface has been removed from @object. 122 * 123 * This signal exists purely as a convenience to avoid having to 124 * connect signals to all objects managed by @manager. 125 * 126 * Params: 127 * object = The #GDBusObject on which an interface was removed. 128 * iface = The #GDBusInterface that was removed. 129 * 130 * Since: 2.30 131 */ 132 gulong addOnInterfaceRemoved(void delegate(DBusObjectIF, DBusInterfaceIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 133 134 /** 135 * Emitted when @object is added to @manager. 136 * 137 * Params: 138 * object = The #GDBusObject that was added. 139 * 140 * Since: 2.30 141 */ 142 gulong addOnObjectAdded(void delegate(DBusObjectIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 143 144 /** 145 * Emitted when @object is removed from @manager. 146 * 147 * Params: 148 * object = The #GDBusObject that was removed. 149 * 150 * Since: 2.30 151 */ 152 gulong addOnObjectRemoved(void delegate(DBusObjectIF, DBusObjectManagerIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0); 153 }