File indexing completed on 2024-12-22 04:17:28
0001 /*************************************************************************** 0002 * * 0003 * copyright : (C) 2007 The University of Toronto * 0004 * netterfield@astro.utoronto.ca * 0005 * * 0006 * This program is free software; you can redistribute it and/or modify * 0007 * it under the terms of the GNU General Public License as published by * 0008 * the Free Software Foundation; either version 2 of the License, or * 0009 * (at your option) any later version. * 0010 * * 0011 ***************************************************************************/ 0012 0013 #ifndef DATAMANAGER_H 0014 #define DATAMANAGER_H 0015 0016 #include <QDialog> 0017 #include <QShortcut> 0018 #include "object.h" 0019 0020 #include "ui_datamanager.h" 0021 0022 #include "kst_export.h" 0023 0024 class QToolBar; 0025 class QSortFilterProxyModel; 0026 0027 namespace Kst { 0028 0029 class Document; 0030 0031 class DataManager : public QDialog, Ui::DataManager 0032 { 0033 Q_OBJECT 0034 public: 0035 DataManager(QWidget *parent, Document *doc); 0036 virtual ~DataManager(); 0037 0038 public Q_SLOTS: 0039 void showContextMenu(const QPoint &); 0040 void showEditDialog(QModelIndex qml); 0041 void showEditDialog(); 0042 void showEditDialog(int row); 0043 void deleteObject(); 0044 0045 void showVectorDialog(); 0046 void showMatrixDialog(); 0047 void showScalarDialog(); 0048 void showStringDialog(); 0049 0050 void showCurveDialog(); 0051 void showCSDDialog(); 0052 void showHistogramDialog(); 0053 void showPowerSpectrumDialog(); 0054 void showImageDialog(); 0055 void showEventMonitorDialog(); 0056 void showEquationDialog(); 0057 void showPluginDialog(QString &pluginName); 0058 void showFitDialog(); 0059 void showFilterDialog(); 0060 0061 void addToPlot(QAction* action); 0062 void removeFromPlot(QAction* action); 0063 0064 void setUsedFlags(); 0065 void purge(); 0066 0067 private: 0068 Document *_doc; 0069 0070 QToolBar *_primitives; 0071 QToolBar *_dataObjects; 0072 QToolBar *_plugins; 0073 QToolBar *_fits; 0074 QToolBar *_filters; 0075 0076 ObjectPtr _currentObject; 0077 QShortcut *_deleteShortcut; 0078 QMenu *_contextMenu; 0079 0080 QSortFilterProxyModel *_proxyModel; 0081 0082 void showEvent(QShowEvent* event); 0083 0084 private Q_SLOTS: 0085 void setFilterColumn(int index); 0086 void setCaseSensitivity(int state); 0087 0088 }; 0089 0090 } 0091 0092 #endif 0093 0094 // vim: ts=2 sw=2 et