00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __KoInsertLink__
00021 #define __KoInsertLink__
00022
00023 #include <kpagedialog.h>
00024 #include <koffice_export.h>
00025 class QLineEdit;
00026 class KUrlRequester;
00027
00028 namespace KOfficePrivate {
00032 class internetLinkPage : public QWidget
00033 {
00034 Q_OBJECT
00035 public:
00036 internetLinkPage( QWidget *parent = 0, char *name = 0 );
00037 QString linkName()const;
00038 QString hrefName();
00039 void setLinkName(const QString & _name);
00040 void setHrefName(const QString &_name);
00041 private:
00042 QString createInternetLink();
00043 QLineEdit* m_linkName, *m_hrefName;
00044 private slots:
00045 void textChanged ( const QString & );
00046 signals:
00047 void textChanged();
00048 };
00049
00053 class bookmarkLinkPage : public QWidget
00054 {
00055 Q_OBJECT
00056 public:
00057 bookmarkLinkPage( QWidget *parent = 0, char *name = 0 );
00058 QString linkName()const;
00059 QString hrefName();
00060 void setLinkName(const QString & _name);
00061 void setHrefName(const QString &_name);
00062 void setBookmarkList(const QStringList &bkmlist);
00063 private:
00064 QString createBookmarkLink();
00065 QLineEdit* m_linkName;
00066 QComboBox *m_hrefName;
00067 private slots:
00068 void textChanged ( const QString & );
00069 signals:
00070 void textChanged();
00071 };
00072
00076 class mailLinkPage : public QWidget
00077 {
00078 Q_OBJECT
00079 public:
00080 mailLinkPage( QWidget *parent = 0, char *name = 0 );
00081 QString linkName()const;
00082 QString hrefName();
00083 void setLinkName(const QString & _name);
00084 void setHrefName(const QString &_name);
00085
00086 private slots:
00087 void textChanged ( const QString & );
00088 private:
00089 QString createMailLink();
00090 QLineEdit* m_linkName, *m_hrefName;
00091 signals:
00092 void textChanged();
00093 };
00094
00098 class fileLinkPage : public QWidget
00099 {
00100 Q_OBJECT
00101 public:
00102 fileLinkPage( QWidget *parent = 0, char *name = 0 );
00103 QString linkName()const;
00104 QString hrefName();
00105 void setLinkName(const QString & _name);
00106 void setHrefName(const QString &_name);
00107
00108 private slots:
00109 void textChanged ( const QString & );
00110 void slotSelectRecentFile( const QString & );
00111 private:
00112 QString createFileLink();
00113 QLineEdit* m_linkName;
00114 KUrlRequester* m_hrefName;
00115 signals:
00116 void textChanged();
00117 };
00118 }
00119
00123 class KOFFICEUI_EXPORT KoInsertLinkDia : public KPageDialog
00124 {
00125 Q_OBJECT
00126 public:
00127 KoInsertLinkDia( QWidget *parent, const char *name = 0,bool displayBookmarkLink=true );
00128 static bool createLinkDia(QString & linkName, QString & hrefName, const QStringList& bkmlist, bool displayBookmarkLink = true,
00129 QWidget* parent = 0, const char* name = 0);
00130
00131
00132 QString linkName() const;
00133 QString hrefName() const;
00134 void setHrefLinkName(const QString &_href, const QString &_link, const QStringList & bkmlist);
00135 protected slots:
00136 virtual void slotOk();
00137 void slotTextChanged ( );
00138 void tabChanged(QWidget *);
00139
00140 private:
00141 KOfficePrivate::fileLinkPage *fileLink;
00142 KOfficePrivate::mailLinkPage *mailLink;
00143 KOfficePrivate::internetLinkPage *internetLink;
00144 KOfficePrivate::bookmarkLinkPage *bookmarkLink;
00145 QString currentText;
00146 KPageWidgetItem *p1, *p2, *p3, *p4;
00147 };
00148
00149 #endif