socket.h

// -*- c++ -*-// Generated by gtkmmproc from ./../socket.gen_h -- DO NOT MODIFY!#ifndef _GTKMM_SOCKET_H#define _GTKMM_SOCKET_H/* $Id: socket.h,v 1.2 2003/06/17 16:37:41 pbd Exp $ *//* socket.h * * Copyright (C) 1998-1999 The Gtk-- Development Team * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */#include <gtk--/container.h>#include <gtk/gtksocket.h>namespace Gtk {
class Socket;
class Socket_Class;
}
namespace Gtk { Gtk::Socket *wrap (GtkSocket *o); }
namespace Gtk
{
//: Container for widgets from other processes.//- Together with {Gtk::Plug::}, {\class Gtk::Socket} provides the ability to//- embed widgets from one process into another process in a fashion that is//- transparent to the user. One process creates a {Gtk::Socket} widget and,//- passes the XID of that widget's window to the other process, which then//- creates a {Gtk::Plug::} window with that XID. Any widgets contained in//- the {Gtk::Plug::} then will appear inside the first applications window.//-//- The XID of the socket's window is obtained by using the//- {\macro GTK_WINDOW_XWINDOW()} macro. Before using this macro, the socket//- must have been realized, and for hence, have been added to its parent.//-//- Note that if you pass the XID of the socket to another process that will//- create a plug in the socket, you must make sure that the socket widget is//- not destroyed until that plug is created. Violating this rule will cause//- unpredictable consequences, the most likely consequence being that the//- plug will appear as a separate toplevel window. You can check if the plug//- has been created by examining the plug_window field of the//- {\class Gtk::Socket} structure. If this field is non-NULL, then the plug//- has been succesfully created inside of the socket.//-//- When GTK-- is notified that the embedded window has been destroyed, then//- it will destroy the socket as well. You should always, therefore, be//- prepared for your sockets to be destroyed at any time when the main event//- loop is running.//-//- A socket can also be used to swallow arbitrary pre-existing top-level//- windows using {steal()}, though the integration when this is done will//- not be as close as between a {Gtk::Plug::} and a {\class Gtk::Socket}.class Socket : public Container
{
public:
typedef Socket CppObjectType;
typedef Socket_Class CppClassType;
typedef GtkSocket BaseObjectType;
typedef GtkSocketClass BaseClassType;
private:
friendclass Socket_Class;
static CppClassType socket_class;
Socket(const Socket&);
Socket& operator=(const Socket&); // not implementedprotected:
void initialize_class();
explicit Socket(GtkSocket *castitem);
public:
static GtkType get_type();
GtkSocket* gtkobj() { return (GtkSocket*)(gtkobject); }
const GtkSocket* gtkobj() const { return (GtkSocket*)(gtkobject); }
staticbool isA(Object *checkcast);
// Hook for proxiesstaticconstchar* const signal_names[];
virtual ~Socket();
private:
public:
Socket();
//: Reparents a pre-existing toplevel window into a GtkSocket.//- {\var wid}: The XID of an existing toplevel window.void steal(guint32 wid);
public:
protected:
// impl functions
};
}
//+ PROPERTIES(Gtk_Socket)//. name: request_width//. type: guint16//. get://. set://. desc://. name: request_height//. type: guint16//. get://. set://. desc://. name: current_width//. type: guint16//. get://. set://. desc://. name: current_height//. type: guint16//. get://. set://. desc://. name: plug_window//. type: GdkWindow*//. get://. set://. desc://. name: same_app//. type: guint:1//. get://. set://. desc://. name: focus_in//. type: guint:1//. get://. set://. desc://. name: have_size//. type: guint:1//. get://. set://. desc://. name: need_map//. type: guint:1//. get://. set://. desc:#endif