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

Kate

katedialogs.h

Go to the documentation of this file.
00001 /* This file is part of the KDE libraries
00002    Copyright (C) 2002, 2003 Anders Lund <anders.lund@lund.tdcadsl.dk>
00003    Copyright (C) 2003 Christoph Cullmann <cullmann@kde.org>
00004    Copyright (C) 2001 Joseph Wenninger <jowenn@kde.org>
00005    Copyright (C) 2006 Dominik Haumann <dhdev@gmx.de>
00006    Copyright (C) 2007 Mirko Stocker <me@misto.ch>
00007 
00008    Based on work of:
00009      Copyright (C) 1999 Jochen Wilhelmy <digisnap@cs.tu-berlin.de>
00010 
00011    This library is free software; you can redistribute it and/or
00012    modify it under the terms of the GNU Library General Public
00013    License version 2 as published by the Free Software Foundation.
00014 
00015    This library is distributed in the hope that it will be useful,
00016    but WITHOUT ANY WARRANTY; without even the implied warranty of
00017    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018    Library General Public License for more details.
00019 
00020    You should have received a copy of the GNU Library General Public License
00021    along with this library; see the file COPYING.LIB.  If not, write to
00022    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00023    Boston, MA 02110-1301, USA.
00024 */
00025 
00026 #ifndef __KATE_DIALOGS_H__
00027 #define __KATE_DIALOGS_H__
00028 
00029 #include "katehighlight.h"
00030 #include "kateviewhelpers.h"
00031 
00032 #include <ktexteditor/attribute.h>
00033 #include <ktexteditor/modificationinterface.h>
00034 #include <ktexteditor/document.h>
00035 #include <ktexteditor/configpage.h>
00036 
00037 #include <kdialog.h>
00038 #include <kmimetype.h>
00039 
00040 #include <QtCore/QStringList>
00041 #include <QtGui/QColor>
00042 #include <QtGui/QTabWidget>
00043 #include <QtGui/QTreeWidget>
00044 
00045 struct syntaxContextData;
00046 
00047 class KateScriptConfigPage;
00048 class ModeConfigPage;
00049 class KateDocument;
00050 class KateView;
00051 class KatePartPluginInfo;
00052 
00053 namespace KIO
00054 {
00055   class Job;
00056   class TransferJob;
00057 }
00058 
00059 class KComboBox;
00060 class KShortcutsEditor;
00061 class KTemporaryFile;
00062 class KIntNumInput;
00063 class KPluginSelector;
00064 class KPluginInfo;
00065 class KProcess;
00066 
00067 class QCheckBox;
00068 class QLabel;
00069 class QLineEdit;
00070 class QSpinBox;
00071 class QToolButton;
00072 class QCheckBox;
00073 class QKeyEvent;
00074 
00075 namespace Ui
00076 {
00077   class ModOnHdWidget;
00078   class AppearanceConfigWidget;
00079   class CursorConfigWidget;
00080   class EditConfigWidget;
00081   class IndentationConfigWidget;
00082   class OpenSaveConfigWidget;
00083   class OpenSaveConfigAdvWidget;
00084   class CompletionConfigTab;
00085 }
00086 
00087 class KateConfigPage : public KTextEditor::ConfigPage
00088 {
00089   Q_OBJECT
00090 
00091   public:
00092     explicit KateConfigPage ( QWidget *parent=0, const char *name=0 );
00093     virtual ~KateConfigPage ();
00094 
00095   public:
00096     bool hasChanged () { return m_changed; }
00097 
00098   protected Q_SLOTS:
00099     void slotChanged();
00100 
00101   private Q_SLOTS:
00102     void somethingHasChanged ();
00103 
00104   protected:
00105     bool m_changed;
00106 };
00107 
00108 class KateGotoBar : public KateViewBarWidget
00109 {
00110   Q_OBJECT
00111 
00112   public:
00113     KateGotoBar(KateViewBar *parent);
00114 
00115   public Q_SLOTS:
00116     void showBar();
00117 
00118   protected Q_SLOTS:
00119     void gotoLine();
00120 
00121   protected:
00122     virtual void keyPressEvent(QKeyEvent* event);
00123 
00124   private:
00125     QSpinBox *gotoRange;
00126     QToolButton *btnOK;
00127 };
00128 
00129 class KateIndentConfigTab : public KateConfigPage
00130 {
00131   Q_OBJECT
00132 
00133   public:
00134     KateIndentConfigTab(QWidget *parent);
00135     ~KateIndentConfigTab();
00136 
00137   protected:
00138     Ui::IndentationConfigWidget *ui;
00139 
00140   public Q_SLOTS:
00141     void apply ();
00142     void reload ();
00143     void reset () {}
00144     void defaults () {}
00145 
00146   private Q_SLOTS:
00147     void showWhatsThis(const QString& text);
00148 };
00149 
00150 class KateCompletionConfigTab : public KateConfigPage
00151 {
00152   Q_OBJECT
00153 
00154   public:
00155     KateCompletionConfigTab(QWidget *parent);
00156     ~KateCompletionConfigTab();
00157 
00158   protected:
00159     Ui::CompletionConfigTab *ui;
00160 
00161   public Q_SLOTS:
00162     void apply ();
00163     void reload ();
00164     void reset () {}
00165     void defaults () {}
00166 
00167   private Q_SLOTS:
00168     void showWhatsThis(const QString& text);
00169 };
00170 
00171 class KateSelectConfigTab : public KateConfigPage
00172 {
00173   Q_OBJECT
00174 
00175 public:
00176   KateSelectConfigTab(QWidget *parent);
00177   ~KateSelectConfigTab();
00178 
00179 private:
00180   Ui::CursorConfigWidget *ui;
00181 
00182 public Q_SLOTS:
00183   void apply ();
00184   void reload ();
00185   void reset () {}
00186   void defaults () {}
00187 };
00188 
00189 class KateEditConfigTab : public KateConfigPage
00190 {
00191   Q_OBJECT
00192 
00193 public:
00194   KateEditConfigTab(QWidget *parent);
00195   ~KateEditConfigTab();
00196 
00197 protected:
00198   Ui::EditConfigWidget *ui;
00199 
00200 public Q_SLOTS:
00201   void apply ();
00202   void reload ();
00203   void reset ();
00204   void defaults ();
00205 
00206 private:
00207   KateSelectConfigTab *selectConfigTab;
00208   KateIndentConfigTab *indentConfigTab;
00209   KateCompletionConfigTab *completionConfigTab;
00210 };
00211 
00212 class KateViewDefaultsConfig : public KateConfigPage
00213 {
00214   Q_OBJECT
00215 
00216 public:
00217   KateViewDefaultsConfig( QWidget *parent );
00218   ~KateViewDefaultsConfig();
00219 
00220 public Q_SLOTS:
00221   void apply ();
00222   void reload ();
00223   void reset ();
00224   void defaults ();
00225 
00226 private:
00227   Ui::AppearanceConfigWidget *ui;
00228 };
00229 
00230 class KateEditKeyConfiguration: public KateConfigPage
00231 {
00232   Q_OBJECT
00233 
00234   public:
00235     KateEditKeyConfiguration( QWidget* parent );
00236     ~KateEditKeyConfiguration();
00237 
00238   public Q_SLOTS:
00239     void apply();
00240     void reload()   {}
00241     void reset()    {}
00242     void defaults() {}
00243 
00244   protected:
00245     void showEvent ( QShowEvent * );
00246 
00247   private:
00248     bool m_ready;
00249     KShortcutsEditor* m_shortcutsEditor;
00250     class KActionCollection *m_actionCollection;
00251 
00252     // we use a fake document/view to get the action collection:
00253     class KateDocument *m_doc;
00254     class KateView *m_view;
00255 };
00256 
00257 class KateSaveConfigTab : public KateConfigPage
00258 {
00259   Q_OBJECT
00260 
00261   public:
00262     KateSaveConfigTab( QWidget *parent );
00263     ~KateSaveConfigTab();
00264 
00265   public Q_SLOTS:
00266     void apply();
00267     void reload();
00268     void reset();
00269     void defaults();
00270 
00271   protected:
00272     //why?
00273     //KComboBox *m_encoding, *m_encodingDetection, *m_eol;
00274     QCheckBox *cbLocalFiles, *cbRemoteFiles;
00275     QCheckBox *replaceTabs, *removeSpaces, *allowEolDetection;
00276     QLineEdit *leBuPrefix;
00277     QLineEdit *leBuSuffix;
00278     KIntNumInput *dirSearchDepth;
00279     class QSpinBox *blockCount;
00280     class QLabel *blockCountLabel;
00281 
00282   private:
00283     Ui::OpenSaveConfigWidget* ui;
00284     Ui::OpenSaveConfigAdvWidget* uiadv;
00285     ModeConfigPage *modeConfigPage;
00286 };
00287 
00288 class KatePartPluginConfigPage : public KateConfigPage
00289 {
00290   Q_OBJECT
00291 
00292   public:
00293     KatePartPluginConfigPage (QWidget *parent);
00294     ~KatePartPluginConfigPage ();
00295 
00296   public Q_SLOTS:
00297     void apply ();
00298     void reload ();
00299     void reset ();
00300     void defaults ();
00301 
00302   private:
00303     KPluginSelector *selector;
00304     QList<KPluginInfo> plugins;
00305     KateScriptConfigPage *scriptConfigPage;
00306 };
00307 
00308 class KateScriptNewStuff;
00309 
00310 class KateScriptConfigPage : public KateConfigPage
00311 {
00312   Q_OBJECT
00313 
00314   public:
00315     KateScriptConfigPage(QWidget *parent);
00316     virtual ~KateScriptConfigPage();
00317   public Q_SLOTS:
00318     void apply ();
00319     void reload ();
00320     void reset () {}
00321     void defaults () {}
00322   private:
00323     KateScriptNewStuff *m_newStuff;
00324 };
00325 
00326 class KateHlDownloadDialog: public KDialog
00327 {
00328   Q_OBJECT
00329 
00330   public:
00331     KateHlDownloadDialog(QWidget *parent, const char *name, bool modal);
00332     ~KateHlDownloadDialog();
00333 
00334   private:
00335     class QTreeWidget  *list;
00336     class QString listData;
00337     KIO::TransferJob *transferJob;
00338 
00339   private Q_SLOTS:
00340     void listDataReceived(KIO::Job *, const QByteArray &data);
00341 
00342   public Q_SLOTS:
00343     void slotUser1();
00344 };
00345 
00352 class KateModOnHdPrompt : public KDialog
00353 {
00354   Q_OBJECT
00355   public:
00356     enum Status {
00357       Reload = 1, // 0 is QDialog::Rejected
00358       Save,
00359       Overwrite,
00360       Ignore
00361     };
00362     KateModOnHdPrompt( KateDocument *doc,
00363                        KTextEditor::ModificationInterface::ModifiedOnDiskReason modtype,
00364                        const QString &reason, QWidget *parent  );
00365     ~KateModOnHdPrompt();
00366 
00367   public Q_SLOTS:
00373     void slotDiff();
00374 
00375   protected Q_SLOTS:
00376     virtual void slotButtonClicked(int button);
00377 
00378   private Q_SLOTS:
00379     void slotDataAvailable(); 
00380     void slotPDone(); 
00381 
00382   private:
00383     Ui::ModOnHdWidget* ui;
00384     KateDocument *m_doc;
00385     KTextEditor::ModificationInterface::ModifiedOnDiskReason m_modtype;
00386     KProcess *m_proc;
00387     KTemporaryFile *m_diffFile;
00388 };
00389 
00390 #endif
00391 // kate: space-indent on; indent-width 2; replace-tabs on;

Kate

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

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
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