• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

kdeui

qxembed.h

Go to the documentation of this file.
00001 /****************************************************************************
00002     Definition of QXEmbed class
00003 
00004    Copyright (C) 1999-2000 Troll Tech AS
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 *****************************************************************************/
00021 
00022 #ifndef QXEMBED_H
00023 #define QXEMBED_H
00024 
00025 #include <qwidget.h>
00026 #include <kdelibs_export.h>
00027 
00028 #ifdef Q_WS_X11
00029 
00030 class QXEmbedData;
00031 
00058 class KDEUI_EXPORT QXEmbed : public QWidget
00059 {
00060     Q_OBJECT
00061 
00062 public:
00063 
00071     QXEmbed( QWidget *parent=0, const char *name=0, WFlags f = 0 );
00072 
00076     ~QXEmbed();
00077 
00085     static void initialize();
00086 
00087     enum Protocol { XEMBED, XPLAIN };
00088 
00103     void setProtocol( Protocol proto );
00104 
00111     Protocol protocol();
00112 
00125     void embed( WId w );
00126 
00133     WId embeddedWinId() const;
00134 
00143     static void embedClientIntoWindow( QWidget* client, WId window );
00144 
00155     static bool processClientCmdline( QWidget* client, int& argc, char ** argv );
00156 
00164     void sendDelete( void );
00165     
00175     void setAutoDelete( bool );
00176 
00183     bool autoDelete() const;
00184 
00185     /* Reimp */
00186     QSize sizeHint() const;
00187     QSize minimumSizeHint() const;
00188     QSizePolicy sizePolicy() const;
00189     bool eventFilter( QObject *, QEvent * );
00190     bool customWhatsThis() const;
00191     void enterWhatsThisMode(); // temporary, fix in Qt (Matthias, Mon Jul 17 15:20:55 CEST 2000  )
00192     virtual void reparent( QWidget * parent, WFlags f, const QPoint & p, bool showIt = false );
00193 
00194 signals:
00200     // KDE4 rename to embeddedWindowLost()
00201     void embeddedWindowDestroyed();
00202 
00203 protected:
00204     bool event( QEvent * );
00205     void keyPressEvent( QKeyEvent * );
00206     void keyReleaseEvent( QKeyEvent * );
00207     void focusInEvent( QFocusEvent * );
00208     void focusOutEvent( QFocusEvent * );
00209     void resizeEvent(QResizeEvent *);
00210     void showEvent( QShowEvent * );
00211     bool x11Event( XEvent* );
00212 
00220     virtual void windowChanged( WId w );
00221 
00222     bool focusNextPrevChild( bool next );
00223 
00224 private:
00225     WId window;
00226     QXEmbedData* d;
00227     void checkGrab();
00228     void sendSyntheticConfigureNotifyEvent();
00229     void handleEmbed();
00230 };
00231 
00232 
00233 #endif
00234 #endif

kdeui

Skip menu "kdeui"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal