diff src/MainWindow.h @ 751:ac165b6ae67e

Done some refactoring: - Moved includes into the cpp files where possible and using class pre-declarations if possible - Made class member variable names begin with an underscore - Made by uic created header files be used as class members instead of inherting them - Renamed some variables to reflect their purpose better - Added some NULL initializations and added some comments - Rearranged some include and declaration code parts to be consistent and better readable - Updated for QScintilla 2.4.5 - Made UiGuiSettings be accessed via a shared pointer only git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@1028 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Thu, 14 Oct 2010 19:52:47 +0000
parents aae5a8d04f70
children 49839f3eed83
line wrap: on
line diff
--- a/src/MainWindow.h	Sat Oct 02 12:48:56 2010 +0000
+++ b/src/MainWindow.h	Thu Oct 14 19:52:47 2010 +0000
@@ -20,97 +20,35 @@
 #ifndef MAINWINDOW_H
 #define MAINWINDOW_H
 
-#include "ui_MainWindow.h"
-#include "ui_ToolBarWidget.h"
-#include "AboutDialog.h"
-#include "AboutDialogGraphicsView.h"
-#include "UiGuiSettings.h"
-#include "UiGuiSettingsDialog.h"
-#include "UiGuiHighlighter.h"
-#include "IndentHandler.h"
-#include "UpdateCheckDialog.h"
+#include <QMainWindow>
 
-#include <QWidget>
-#include <QString>
-#include <QScrollBar>
-#include <QTextCursor>
-#include <QFileDialog>
-#include <QTextStream>
-#include <QPrinter>
-#include <QPrintDialog>
-#include <QCloseEvent>
-#include <QHelpEvent>
-#include <QToolTip>
-#include <QTranslator>
-#include <QLocale>
-#include <QTextCodec>
-#include <QDate>
+class UiGuiSettings;
+class UiGuiSettingsDialog;
+class AboutDialog;
+class AboutDialogGraphicsView;
+class UiGuiHighlighter;
+class IndentHandler;
+class UpdateCheckDialog;
+namespace Ui {
+	class ToolBarWidget;
+	class MainWindowUi;
+}
 
-#include <Qsci/qsciscintilla.h>
-#include <Qsci/qsciprinter.h>
+class QLabel;
+class QScrollBar;
+class QActionGroup;
+class QTranslator;
 
-class MainWindow : public QMainWindow, private Ui::MainWindowUi
+class QsciScintilla;
+
+
+class MainWindow : public QMainWindow
 {
     Q_OBJECT
 
 public:
     //! Constructor
-    MainWindow(QString file2OpenOnStart = "", QWidget *parent = 0);
-
-private:
-    QString loadFile(QString filePath);
-    QString openFileDialog(QString dialogHeaderStr, QString startPath, QString fileMaskStr);
-    void updateWindowTitle();
-    void loadLastOpenedFile();
-    void saveSettings();
-    bool maybeSave();
-    void createEncodingMenu();
-    void createHighlighterMenu();
-    bool initApplicationLanguage();
-    void initMainWindow();
-    void initToolBar();
-    void initTextEditor();
-    void initSyntaxHighlighter();
-    void initIndenter();
-    void changeEvent(QEvent *event);
-    void dragEnterEvent(QDragEnterEvent *event);
-    void dropEvent(QDropEvent *event);
-
-    QsciScintilla *qSciSourceCodeEditor;
-    UiGuiSettings *settings;
-
-    QString currentEncoding;
-    QString sourceFileContent;
-    QString sourceFormattedContent;
-    QString sourceViewContent;
-    UiGuiHighlighter *highlighter;
-    QScrollBar *textEditVScrollBar;
-    AboutDialog *aboutDialog;
-    AboutDialogGraphicsView *aboutDialogGraphicsView;
-    UiGuiSettingsDialog *settingsDialog;
-    int textEditLastScrollPos;
-    int currentIndenterID;
-    bool loadLastSourceCodeFileOnStartup;
-    QString currentSourceFile;
-    QString currentSourceFileExtension;
-    QString savedSourceContent;
-    QActionGroup *encodingActionGroup;
-    QActionGroup *saveEncodedActionGroup;
-    QActionGroup *highlighterActionGroup;
-    QTranslator *uiGuiTranslator;
-    QTranslator *qTTranslator;
-    bool isFirstRunOfThisVersion;
-
-    bool sourceCodeChanged;
-    bool scrollPositionChanged;
-    bool indentSettingsChanged;
-    bool previewToggled;
-    QStringList encodingsList;
-
-    Ui::ToolBarWidget *toolBarWidget;
-    IndentHandler *indentHandler;
-    UpdateCheckDialog *updateCheckDialog;
-    QLabel *textEditLineColumnInfoLabel;
+    MainWindow(QString file2OpenOnStart = "", QWidget *parent = NULL);
 
 protected:
     void closeEvent( QCloseEvent *event );
@@ -139,6 +77,63 @@
     void clearRecentlyOpenedList();
     void showAboutDialog();
     void setStatusBarCursorPosInfo(int line, int column);
+
+private:
+	Ui::MainWindowUi *_mainWindowForm;
+
+    QString loadFile(QString filePath);
+    QString openFileDialog(QString dialogHeaderStr, QString startPath, QString fileMaskStr);
+    void updateWindowTitle();
+    void loadLastOpenedFile();
+    void saveSettings();
+    bool maybeSave();
+    void createEncodingMenu();
+    void createHighlighterMenu();
+    bool initApplicationLanguage();
+    void initMainWindow();
+    void initToolBar();
+    void initTextEditor();
+    void initSyntaxHighlighter();
+    void initIndenter();
+    void changeEvent(QEvent *event);
+    void dragEnterEvent(QDragEnterEvent *event);
+    void dropEvent(QDropEvent *event);
+
+    QsciScintilla *_qSciSourceCodeEditor;
+    QSharedPointer<UiGuiSettings> _settings;
+
+    QString _currentEncoding;
+    QString _sourceFileContent;
+    QString _sourceFormattedContent;
+    QString _sourceViewContent;
+    UiGuiHighlighter *_highlighter;
+    QScrollBar *_textEditVScrollBar;
+    AboutDialog *_aboutDialog;
+    AboutDialogGraphicsView *_aboutDialogGraphicsView;
+    UiGuiSettingsDialog *_settingsDialog;
+    int _textEditLastScrollPos;
+    int _currentIndenterID;
+    bool _loadLastSourceCodeFileOnStartup;
+    QString _currentSourceFile;
+    QString _currentSourceFileExtension;
+    QString _savedSourceContent;
+    QActionGroup *_encodingActionGroup;
+    QActionGroup *_saveEncodedActionGroup;
+    QActionGroup *_highlighterActionGroup;
+    QTranslator *_uiGuiTranslator;
+    QTranslator *_qTTranslator;
+    bool _isFirstRunOfThisVersion;
+
+    bool _sourceCodeChanged;
+    bool _scrollPositionChanged;
+    bool _indentSettingsChanged;
+    bool _previewToggled;
+    QStringList _encodingsList;
+
+    Ui::ToolBarWidget *_toolBarWidget;
+    IndentHandler *_indentHandler;
+    UpdateCheckDialog *_updateCheckDialog;
+    QLabel *_textEditLineColumnInfoLabel;
 };
 
 #endif // MAINWINDOW_H