File indexing completed on 2024-04-28 05:49:07

0001 /* This file is part of the KDE project
0002 
0003    SPDX-License-Identifier: LGPL-2.0-or-later
0004 */
0005 
0006 #pragma once
0007 
0008 #include <ktexteditor/configpage.h>
0009 
0010 class KateProjectPlugin;
0011 class QWidget;
0012 class QCheckBox;
0013 class KUrlRequester;
0014 class QComboBox;
0015 
0016 class KateProjectConfigPage : public KTextEditor::ConfigPage
0017 {
0018     Q_OBJECT
0019 public:
0020     explicit KateProjectConfigPage(QWidget *parent = nullptr, KateProjectPlugin *plugin = nullptr);
0021     ~KateProjectConfigPage() override
0022     {
0023     }
0024 
0025     QString name() const override;
0026     QString fullName() const override;
0027     QIcon icon() const override;
0028 
0029 public Q_SLOTS:
0030     void apply() override;
0031     void defaults() override;
0032     void reset() override;
0033 
0034 private Q_SLOTS:
0035     void slotMyChanged();
0036 
0037 private:
0038     void setupGitConfigUI();
0039 
0040     QCheckBox *m_cbSessionRestoreOpenProjects;
0041     QCheckBox *m_cbAutoGit;
0042     QCheckBox *m_cbAutoSubversion;
0043     QCheckBox *m_cbAutoMercurial;
0044     QCheckBox *m_cbAutoFossil;
0045     QCheckBox *m_cbIndexEnabled;
0046     KUrlRequester *m_indexPath;
0047     QCheckBox *m_cbMultiProjectCompletion;
0048     QCheckBox *m_cbMultiProjectGoto;
0049     QComboBox *m_cmbSingleClick;
0050     QComboBox *m_cmbDoubleClick;
0051     KateProjectPlugin *m_plugin;
0052     bool m_changed = false;
0053 };