Mercurial > hg > octave-lyh
changeset 13407:b2902b9ba84d
Started to build file editor widget.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Mon, 11 Apr 2011 22:53:32 +0200 |
parents | 91d64ef98f81 |
children | e954cbe099fe |
files | gui//Quint.pro gui//src/FileEditorMdiSubWindow.cpp gui//src/FileEditorMdiSubWindow.h gui//src/MainWindow.cpp |
diffstat | 4 files changed, 71 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/gui//Quint.pro +++ b/gui//Quint.pro @@ -44,7 +44,8 @@ src/HistoryDockWidget.cpp \ src/FilesDockWidget.cpp \ src/CodeEdit.cpp \ - src/Syntax.cpp + src/Syntax.cpp \ + src/FileEditorMdiSubWindow.cpp HEADERS += \ src/TerminalCharacterDecoder.h \ @@ -85,7 +86,8 @@ src/HistoryDockWidget.h \ src/FilesDockWidget.h \ src/CodeEdit.h \ - src/Syntax.h + src/Syntax.h \ + src/FileEditorMdiSubWindow.h INCFLAGS = -g3 $$system(mkoctfile -p INCFLAGS) LFLAGS = $$system(mkoctfile -p LFLAGS) \
new file mode 100644 --- /dev/null +++ b/gui//src/FileEditorMdiSubWindow.cpp @@ -0,0 +1,42 @@ +#include "FileEditorMdiSubWindow.h" +#include <QVBoxLayout> +#include <QApplication> +#include <QFile> + +FileEditorMdiSubWindow::FileEditorMdiSubWindow(QWidget *parent) + : QMdiSubWindow(parent) { + construct(); +} + +void FileEditorMdiSubWindow::loadFile(QString fileName) { + setWindowTitle(fileName); + // TODO: Load file. +} + +void FileEditorMdiSubWindow::construct() { + QStyle *style = QApplication::style(); + setWidget(new QWidget()); + m_toolBar = new QToolBar(this); + m_codeEdit = new CodeEdit(this); + m_statusBar = new QStatusBar(this); + + QAction *newAction = new QAction(style->standardIcon(QStyle::SP_FileIcon), + "", m_toolBar); + QAction *saveAction = new QAction(style->standardIcon(QStyle::SP_DriveHDIcon), + "", m_toolBar); + QAction *undoAction = new QAction(style->standardIcon(QStyle::SP_ArrowLeft), + "", m_toolBar); + QAction *redoAction = new QAction(style->standardIcon(QStyle::SP_ArrowRight), + "", m_toolBar); + + m_toolBar->addAction(newAction); + m_toolBar->addAction(saveAction); + m_toolBar->addAction(undoAction); + m_toolBar->addAction(redoAction); + + QVBoxLayout *layout = new QVBoxLayout(); + layout->addWidget(m_toolBar); + layout->addWidget(m_codeEdit); + layout->addWidget(m_statusBar); + widget()->setLayout(layout); +}
new file mode 100644 --- /dev/null +++ b/gui//src/FileEditorMdiSubWindow.h @@ -0,0 +1,21 @@ +#ifndef FILEEDITORMDISUBWINDOW_H +#define FILEEDITORMDISUBWINDOW_H + +#include <QMdiSubWindow> +#include <QToolBar> +#include <QStatusBar> +#include "CodeEdit.h" + +class FileEditorMdiSubWindow : public QMdiSubWindow { +public: + FileEditorMdiSubWindow(QWidget *parent = 0); + void loadFile(QString fileName); + +private: + void construct(); + QToolBar *m_toolBar; + CodeEdit *m_codeEdit; + QStatusBar *m_statusBar; +}; + +#endif // FILEEDITORMDISUBWINDOW_H
--- a/gui//src/MainWindow.cpp +++ b/gui//src/MainWindow.cpp @@ -22,6 +22,7 @@ #include <QSettings> #include <QDesktopServices> #include "MainWindow.h" +#include "FileEditorMdiSubWindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), @@ -37,7 +38,9 @@ void MainWindow::handleOpenFileRequest(QString fileName) { reportStatusMessage("Opening file."); - // TODO: Open mdi subwindow. + FileEditorMdiSubWindow *subWindow = new FileEditorMdiSubWindow(m_openedFiles); + subWindow->loadFile(fileName); + m_openedFiles->addSubWindow(subWindow); } void MainWindow::reportStatusMessage(QString statusMessage) {