Kate
katedialogs.h
Go to the documentation of this file.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 __KATE_DIALOGS_H__
00028 #define __KATE_DIALOGS_H__
00029
00030 #include "katehighlight.h"
00031 #include "kateviewhelpers.h"
00032
00033 #include <ktexteditor/attribute.h>
00034 #include <ktexteditor/modificationinterface.h>
00035 #include <ktexteditor/document.h>
00036 #include <ktexteditor/configpage.h>
00037
00038 #include <kdialog.h>
00039 #include <kmimetype.h>
00040
00041 #include <sonnet/configwidget.h>
00042 #include <sonnet/dictionarycombobox.h>
00043
00044 #include <QtCore/QStringList>
00045 #include <QtGui/QColor>
00046 #include <QtGui/QTabWidget>
00047 #include <QtGui/QTreeWidget>
00048
00049 struct syntaxContextData;
00050
00051 class KateScriptConfigPage;
00052 class ModeConfigPage;
00053 class KateDocument;
00054 class KateView;
00055 class KatePartPluginInfo;
00056
00057 namespace KIO
00058 {
00059 class Job;
00060 class TransferJob;
00061 }
00062
00063 class KComboBox;
00064 class KShortcutsEditor;
00065 class KTemporaryFile;
00066 class KIntNumInput;
00067 class KIntSpinBox;
00068 class KPluginSelector;
00069 class KPluginInfo;
00070 class KProcess;
00071
00072 class QCheckBox;
00073 class QLabel;
00074 class QToolButton;
00075 class QCheckBox;
00076 class QKeyEvent;
00077
00078 namespace Ui
00079 {
00080 class ModOnHdWidget;
00081 class AppearanceConfigWidget;
00082 class CursorConfigWidget;
00083 class EditConfigWidget;
00084 class IndentationConfigWidget;
00085 class OpenSaveConfigWidget;
00086 class OpenSaveConfigAdvWidget;
00087 class CompletionConfigTab;
00088 class ViInputModeConfigWidget;
00089 class SpellCheckConfigWidget;
00090 }
00091
00092 class KateConfigPage : public KTextEditor::ConfigPage
00093 {
00094 Q_OBJECT
00095
00096 public:
00097 explicit KateConfigPage ( QWidget *parent=0, const char *name=0 );
00098 virtual ~KateConfigPage ();
00099
00100 public:
00101 bool hasChanged () { return m_changed; }
00102
00103 protected Q_SLOTS:
00104 void slotChanged();
00105
00106 private Q_SLOTS:
00107 void somethingHasChanged ();
00108
00109 protected:
00110 bool m_changed;
00111 };
00112
00113 class KateGotoBar : public KateViewBarWidget
00114 {
00115 Q_OBJECT
00116
00117 public:
00118 explicit KateGotoBar(KateView *view, QWidget *parent = 0);
00119
00120 void updateData();
00121
00122 protected Q_SLOTS:
00123 void gotoLine();
00124
00125 protected:
00126 virtual void keyPressEvent(QKeyEvent* event);
00127
00128 private:
00129 KateView* m_view;
00130 KIntSpinBox *gotoRange;
00131 QToolButton *btnOK;
00132 };
00133
00134 class KateDictionaryBar : public KateViewBarWidget
00135 {
00136 Q_OBJECT
00137
00138 public:
00139 explicit KateDictionaryBar(KateView *view, QWidget *parent = NULL);
00140 virtual ~KateDictionaryBar();
00141
00142 public Q_SLOTS:
00143 void updateData();
00144
00145 protected Q_SLOTS:
00146 void dictionaryChanged(const QString& dictionary);
00147
00148 private:
00149 KateView* m_view;
00150 Sonnet::DictionaryComboBox *m_dictionaryComboBox;
00151 };
00152
00153 class KateIndentConfigTab : public KateConfigPage
00154 {
00155 Q_OBJECT
00156
00157 public:
00158 KateIndentConfigTab(QWidget *parent);
00159 ~KateIndentConfigTab();
00160
00161 protected:
00162 Ui::IndentationConfigWidget *ui;
00163
00164 public Q_SLOTS:
00165 void apply ();
00166 void reload ();
00167 void reset () {}
00168 void defaults () {}
00169
00170 private Q_SLOTS:
00171 void showWhatsThis(const QString& text);
00172 };
00173
00174 class KateCompletionConfigTab : public KateConfigPage
00175 {
00176 Q_OBJECT
00177
00178 public:
00179 KateCompletionConfigTab(QWidget *parent);
00180 ~KateCompletionConfigTab();
00181
00182 protected:
00183 Ui::CompletionConfigTab *ui;
00184
00185 public Q_SLOTS:
00186 void apply ();
00187 void reload ();
00188 void reset () {}
00189 void defaults () {}
00190
00191 private Q_SLOTS:
00192 void showWhatsThis(const QString& text);
00193 };
00194
00195 class KateEditGeneralConfigTab : public KateConfigPage
00196 {
00197 Q_OBJECT
00198
00199 public:
00200 KateEditGeneralConfigTab(QWidget *parent);
00201 ~KateEditGeneralConfigTab();
00202
00203 private:
00204 Ui::EditConfigWidget *ui;
00205
00206 public Q_SLOTS:
00207 void apply ();
00208 void reload ();
00209 void reset () {}
00210 void defaults () {}
00211 };
00212
00213 class KateSelectConfigTab : public KateConfigPage
00214 {
00215 Q_OBJECT
00216
00217 public:
00218 KateSelectConfigTab(QWidget *parent);
00219 ~KateSelectConfigTab();
00220
00221 private:
00222 Ui::CursorConfigWidget *ui;
00223
00224 public Q_SLOTS:
00225 void apply ();
00226 void reload ();
00227 void reset () {}
00228 void defaults () {}
00229 };
00230
00231 class KateViInputModeConfigTab : public KateConfigPage
00232 {
00233 Q_OBJECT
00234
00235 public:
00236 KateViInputModeConfigTab(QWidget *parent);
00237 ~KateViInputModeConfigTab();
00238
00239 protected:
00240 Ui::ViInputModeConfigWidget *ui;
00241
00242 public Q_SLOTS:
00243 void apply ();
00244 void reload ();
00245 void reset () {}
00246 void defaults () {}
00247
00248 private Q_SLOTS:
00249 void showWhatsThis(const QString& text);
00250 void addNewNormalModeMappingRow();
00251 void removeSelectedNormalMappingRow();
00252 };
00253
00254 class KateSpellCheckConfigTab : public KateConfigPage
00255 {
00256 Q_OBJECT
00257
00258 public:
00259 KateSpellCheckConfigTab(QWidget *parent);
00260 ~KateSpellCheckConfigTab();
00261
00262 protected:
00263 Ui::SpellCheckConfigWidget *ui;
00264 Sonnet::ConfigWidget *m_sonnetConfigWidget;
00265
00266 public Q_SLOTS:
00267 void apply ();
00268 void reload ();
00269 void reset () {}
00270 void defaults () {}
00271
00272 private Q_SLOTS:
00273 void showWhatsThis(const QString& text);
00274 };
00275
00276 class KateEditConfigTab : public KateConfigPage
00277 {
00278 Q_OBJECT
00279
00280 public:
00281 KateEditConfigTab(QWidget *parent);
00282 ~KateEditConfigTab();
00283
00284 public Q_SLOTS:
00285 void apply ();
00286 void reload ();
00287 void reset ();
00288 void defaults ();
00289
00290 private:
00291 KateEditGeneralConfigTab *editConfigTab;
00292 KateSelectConfigTab *selectConfigTab;
00293 KateIndentConfigTab *indentConfigTab;
00294 KateCompletionConfigTab *completionConfigTab;
00295 KateViInputModeConfigTab *viInputModeConfigTab;
00296 KateSpellCheckConfigTab *spellCheckConfigTab;
00297 };
00298
00299 class KateViewDefaultsConfig : public KateConfigPage
00300 {
00301 Q_OBJECT
00302
00303 public:
00304 KateViewDefaultsConfig( QWidget *parent );
00305 ~KateViewDefaultsConfig();
00306
00307 public Q_SLOTS:
00308 void apply ();
00309 void reload ();
00310 void reset ();
00311 void defaults ();
00312
00313 private:
00314 Ui::AppearanceConfigWidget *ui;
00315 };
00316
00317 class KateSaveConfigTab : public KateConfigPage
00318 {
00319 Q_OBJECT
00320
00321 public:
00322 KateSaveConfigTab( QWidget *parent );
00323 ~KateSaveConfigTab();
00324
00325 public Q_SLOTS:
00326 void apply();
00327 void reload();
00328 void reset();
00329 void defaults();
00330
00331 protected:
00332
00333
00334 QCheckBox *cbLocalFiles, *cbRemoteFiles;
00335 QCheckBox *replaceTabs, *removeSpaces, *allowEolDetection;
00336 KIntNumInput *dirSearchDepth;
00337 class KIntSpinBox *blockCount;
00338 class QLabel *blockCountLabel;
00339
00340 private:
00341 Ui::OpenSaveConfigWidget* ui;
00342 Ui::OpenSaveConfigAdvWidget* uiadv;
00343 ModeConfigPage *modeConfigPage;
00344 };
00345
00346 class KatePartPluginConfigPage : public KateConfigPage
00347 {
00348 Q_OBJECT
00349
00350 public:
00351 KatePartPluginConfigPage (QWidget *parent);
00352 ~KatePartPluginConfigPage ();
00353
00354 public Q_SLOTS:
00355 void apply ();
00356 void reload ();
00357 void reset ();
00358 void defaults ();
00359
00360 private:
00361 KPluginSelector *selector;
00362 QList<KPluginInfo> plugins;
00363 KateScriptConfigPage *scriptConfigPage;
00364 };
00365
00366 class KateScriptNewStuff;
00367
00368 class KateScriptConfigPage : public KateConfigPage
00369 {
00370 Q_OBJECT
00371
00372 public:
00373 KateScriptConfigPage(QWidget *parent);
00374 virtual ~KateScriptConfigPage();
00375 public Q_SLOTS:
00376 void apply ();
00377 void reload ();
00378 void reset () {}
00379 void defaults () {}
00380 private:
00381 KateScriptNewStuff *m_newStuff;
00382 };
00383
00384 class KateHlDownloadDialog: public KDialog
00385 {
00386 Q_OBJECT
00387
00388 public:
00389 KateHlDownloadDialog(QWidget *parent, const char *name, bool modal);
00390 ~KateHlDownloadDialog();
00391
00392 private:
00393 class QTreeWidget *list;
00394 class QString listData;
00395 KIO::TransferJob *transferJob;
00396
00397 private Q_SLOTS:
00398 void listDataReceived(KIO::Job *, const QByteArray &data);
00399
00400 public Q_SLOTS:
00401 void slotUser1();
00402 };
00403
00410 class KateModOnHdPrompt : public KDialog
00411 {
00412 Q_OBJECT
00413 public:
00414 enum Status {
00415 Reload = 1,
00416 Save,
00417 Overwrite,
00418 Ignore
00419 };
00420 KateModOnHdPrompt( KateDocument *doc,
00421 KTextEditor::ModificationInterface::ModifiedOnDiskReason modtype,
00422 const QString &reason, QWidget *parent );
00423 ~KateModOnHdPrompt();
00424
00425 public Q_SLOTS:
00431 void slotDiff();
00432
00433 protected Q_SLOTS:
00434 virtual void slotButtonClicked(int button);
00435
00436 private Q_SLOTS:
00437 void slotDataAvailable();
00438 void slotPDone();
00439
00440 private:
00441 Ui::ModOnHdWidget* ui;
00442 KateDocument *m_doc;
00443 KTextEditor::ModificationInterface::ModifiedOnDiskReason m_modtype;
00444 KProcess *m_proc;
00445 KTemporaryFile *m_diffFile;
00446 };
00447
00448 #endif
00449