khtml_ext.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef __khtml_ext_h__
00028 #define __khtml_ext_h__
00029
00030 #include "khtml_part.h"
00031
00032 #include <qguardedptr.h>
00033
00034 #include <kaction.h>
00035 #include <kio/global.h>
00036
00041 class KHTMLPartBrowserExtension : public KParts::BrowserExtension
00042 {
00043 Q_OBJECT
00044 friend class KHTMLPart;
00045 friend class KHTMLView;
00046 public:
00047 KHTMLPartBrowserExtension( KHTMLPart *parent, const char *name = 0L );
00048
00049 virtual int xOffset();
00050 virtual int yOffset();
00051
00052 virtual void saveState( QDataStream &stream );
00053 virtual void restoreState( QDataStream &stream );
00054
00055
00056 void editableWidgetFocused( QWidget *widget );
00057 void editableWidgetBlurred( QWidget *widget );
00058
00059 void setExtensionProxy( KParts::BrowserExtension *proxyExtension );
00060
00061 public slots:
00062 void cut();
00063 void copy();
00064 void paste();
00065 void searchProvider();
00066 void openSelection();
00067 void reparseConfiguration();
00068 void print();
00069
00070
00071
00072 void updateEditActions();
00073
00074 private slots:
00075
00076 void extensionProxyActionEnabled( const char *action, bool enable );
00077 void extensionProxyEditableWidgetFocused();
00078 void extensionProxyEditableWidgetBlurred();
00079
00080 signals:
00081 void editableWidgetFocused();
00082 void editableWidgetBlurred();
00083 private:
00084 void callExtensionProxyMethod( const char *method );
00085
00086 KHTMLPart *m_part;
00087 QGuardedPtr<QWidget> m_editableFormWidget;
00088 QGuardedPtr<KParts::BrowserExtension> m_extensionProxy;
00089 bool m_connectedToClipboard;
00090 };
00091
00092 class KHTMLPartBrowserHostExtension : public KParts::BrowserHostExtension
00093 {
00094 public:
00095 KHTMLPartBrowserHostExtension( KHTMLPart *part );
00096 virtual ~KHTMLPartBrowserHostExtension();
00097
00098 virtual QStringList frameNames() const;
00099
00100 virtual const QPtrList<KParts::ReadOnlyPart> frames() const;
00101
00102 virtual bool openURLInFrame( const KURL &url, const KParts::URLArgs &urlArgs );
00103
00104 protected:
00105 virtual void virtual_hook( int id, void* data );
00106 private:
00107 KHTMLPart *m_part;
00108 };
00109
00114 class KHTMLPopupGUIClient : public QObject, public KXMLGUIClient
00115 {
00116 Q_OBJECT
00117 public:
00118 KHTMLPopupGUIClient( KHTMLPart *khtml, const QString &doc, const KURL &url );
00119 virtual ~KHTMLPopupGUIClient();
00120
00121 static void saveURL( QWidget *parent, const QString &caption, const KURL &url,
00122 const QMap<QString, QString> &metaData = KIO::MetaData(),
00123 const QString &filter = QString::null, long cacheId = 0,
00124 const QString &suggestedFilename = QString::null );
00125
00126 static void saveURL( const KURL &url, const KURL &destination,
00127 const QMap<QString, QString> &metaData = KIO::MetaData(),
00128 long cacheId = 0 );
00129 private slots:
00130 void slotSaveLinkAs();
00131 void slotSaveImageAs();
00132 void slotCopyLinkLocation();
00133 void slotSendImage();
00134 void slotStopAnimations();
00135 void slotCopyImageLocation();
00136 void slotCopyImage();
00137 void slotViewImage();
00138 void slotReloadFrame();
00139 void slotFrameInWindow();
00140 void slotFrameInTop();
00141 void slotFrameInTab();
00142 private:
00143 class KHTMLPopupGUIClientPrivate;
00144 KHTMLPopupGUIClientPrivate *d;
00145 };
00146
00147 class KHTMLZoomFactorAction : public KAction
00148 {
00149 Q_OBJECT
00150 public:
00151
00152 KHTMLZoomFactorAction( KHTMLPart *part, bool direction, const QString &text, const QString &icon, const QObject *receiver, const char *slot, QObject *parent, const char *name );
00153 KHTMLZoomFactorAction( KHTMLPart *part, bool direction, const QString &text,
00154 const QString &icon, const KShortcut& cut, const QObject *receiver,
00155 const char *slot, QObject *parent, const char *name );
00156 virtual ~KHTMLZoomFactorAction();
00157
00158 virtual int plug( QWidget *w, int index );
00159
00160 private slots:
00161 void slotActivated( int );
00162 protected slots:
00163 void slotActivated() { KAction::slotActivated(); }
00164 private:
00165 void init(KHTMLPart *part, bool direction);
00166 private:
00167 QPopupMenu *m_popup;
00168 bool m_direction;
00169 KHTMLPart *m_part;
00170 };
00171
00172 #endif
This file is part of the documentation for khtml Library Version 3.4.3.