GFC Logo GFC Title Logo
Reference Manual
Main Page  |  Namespace List  |  Alphabetical List  |  Class List  |  File List

plug.hh

Go to the documentation of this file.
00001 /* GFC-UI: GTK+ Foundation Classes (User Interface Library) 00002 * Copyright (C) 2002-2004 The GFC Development Team. 00003 * 00004 * This program is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation; either version 2 of the License, or 00007 * (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU Library General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Library General Public License 00015 * along with this program; if not, write to the Free Software 00016 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00017 */ 00018 00024 00025 #ifndef GFC_GTK_PLUG_HH 00026 #define GFC_GTK_PLUG_HH 00027 00028 #ifndef GFC_GTK_WINDOW_HH 00029 #include <gfc/gtk/window.hh> 00030 #endif 00031 00032 #ifndef __GTK_PLUG_H__ 00033 #include <gtk/gtkplug.h> 00034 #endif 00035 00036 namespace GFC { 00037 00038 namespace Gdk { 00039 class Display; 00040 } 00041 00042 namespace Gtk { 00043 00044 class Socket; 00045 00054 00055 class Plug : public Window 00056 { 00057 friend class G::Object; 00058 00059 Plug(const Plug&); 00060 Plug& operator=(const Plug&); 00061 00062 protected: 00065 00066 explicit Plug(GtkPlug *plug, bool owns_reference = false); 00073 00076 00077 typedef G::Signal<void> EmbeddedSignalType; 00078 typedef G::SignalProxy<TypeInstance, EmbeddedSignalType> EmbeddedSignalProxy; 00079 static const EmbeddedSignalType embedded_signal; 00084 00086 00087 public: 00090 00091 Plug(GdkNativeWindow socket_id, const Gdk::Display *display = 0); 00100 00101 virtual ~Plug(); 00103 00107 00108 GtkPlug* gtk_plug() const; 00110 00111 operator GtkPlug* () const; 00113 00114 bool has_socket() const; 00116 00117 Gdk::Window* socket_window() const; 00119 00120 bool same_app() const; 00122 00123 GdkNativeWindow get_id() const; 00127 00130 00131 const EmbeddedSignalProxy sig_embedded(); 00133 00135 }; 00136 00137 } // namespace Gtk 00138 00139 } // namespace GFC 00140 00141 #include <gfc/gtk/inline/plug.inl> 00142 00143 #endif // GFC_GTK_PLUG_HH 00144

Generated on Tue Aug 24 00:34:31 2004 for GFC-UI by doxygen 1.3.8