Mercurial > octave-nkf
diff gui/src/VariablesDockWidget.h @ 13501:86d6c3b90ad7
Added new gui files.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Sun, 17 Jul 2011 17:45:05 +0200 |
parents | |
children | 13e3d60aff2d |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/src/VariablesDockWidget.h Sun Jul 17 17:45:05 2011 +0200 @@ -0,0 +1,52 @@ +/* Quint - A graphical user interface for Octave + * Copyright (C) 2011 Jacob Dawid + * jacob.dawid@googlemail.com + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef VARIABLESDOCKWIDGET_H +#define VARIABLESDOCKWIDGET_H + +#include <QDockWidget> +#include <QTreeWidget> +#include <QSemaphore> +#include "OctaveLink.h" + +class VariablesDockWidget : public QDockWidget +{ + Q_OBJECT +public: + VariablesDockWidget(QWidget *parent = 0); + void setVariablesList(QList<SymbolRecord> symbolTable); + +signals: + void saveWorkspace(); + void loadWorkspace(); + void clearWorkspace(); + +private slots: + void emitSaveWorkspace(); + void emitLoadWorkspace(); + void emitClearWorkspace(); + +private: + void construct(); + void updateTreeEntry(QTreeWidgetItem *treeItem, SymbolRecord symbolRecord); + void updateScope(int topLevelItemIndex, QList<SymbolRecord> symbolTable); + QTreeWidget *m_variablesTreeWidget; + QSemaphore *m_updateSemaphore; +}; + +#endif // VARIABLESDOCKWIDGET_H