DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
MainWindow.hpp
Go to the documentation of this file.
1#ifndef MAINWINDOW_H
2#define MAINWINDOW_H
3
5#include <QMap>
6#include <QSet>
7#include <QString>
8#include <QMessageBox>
9#include <QMainWindow>
10
11#include <QTabWidget>
12#include <QDragEnterEvent>
13#include <QDropEvent>
14
16#include "ui_DBE.h"
17
19#include "dbe/FileModel.hpp"
21//#include "dbe/OracleWidget.hpp"
22#include "dbe/TableTab.hpp"
23#include "dbe/tree.hpp"
24#include "dbe/table.hpp"
26#include "dbe/treeselection.hpp"
27#include "dbe/subtreeproxy.hpp"
28
29// /// Including IPC
30//#include <ipc/partition.h>
31//#include <rdb/rdb.hh>
32
33#include <atomic>
34
35namespace dbe
36{
37namespace Ui
38{
39class MainWindow;
40} // namespace Ui
41
43 public QMainWindow,
44 private dbe::Ui::MainWindow
45{
46 Q_OBJECT
47public:
48 explicit MainWindow ( QMap<QString, QString> const & CommandLine, QWidget * parent =
49 nullptr );
50
51 static MainWindow * findthis();
52
53 [[nodiscard]] bool check_ready() const;
54
55 [[nodiscard]] cptr<dbe::CustomTreeView> get_view() const;
56
57 [[nodiscard]] QString find_db_repository_dir();
58
59private:
60 //typedef QMap<QString, bool> RDBMap;
61
62 QSet<QString> allFiles;
63
66 QSortFilterProxyModel this_filesort;
67
70
71 //OracleWidget * this_oraclewidget;
72
73 std::atomic<bool> isArchivedConf;
74
75 std::vector<dbe::tref> ProcessQuery ( QString const & );
76
77 void closeEvent ( QCloseEvent * event );
78
79 bool eventFilter ( QObject * Target, QEvent * Event );
80
81 bool check_close();
82
83 void init();
84
85 void attach();
86
87 bool dbopen ( QString const &, dbinfo const & );
88
89 bool dbload();
90
91 bool dbreload();
92
93 void setinternals();
94
96 void build_table_model();
97public:
98 void build_file_model();
99private:
100 void load_settings ( bool LoadSettings = false );
101
102 void WriteSettings();
103 void argsparse ( QMap<QString, QString> const & );
104 //void init_rdb_menu();
105 //void lookForRDBServers ( const IPCPartition & p );
106 void init_tabs();
107
108 void edit_object_at ( const QModelIndex & Index );
109
111
112private slots:
113 void slot_create_newdb();
115 void slot_load_db_from_create_widget ( const QString & );
116
117 //void slot_rdb_selected ( QAction * );
118 //void slot_rdb_found (const QString& p, const RDBMap& rdbs);
119
120 //void slot_oracle_prepare();
121 //void slot_load_oracle ( const QString & );
122
123 void slot_commit_database ( bool Exit = false );
124
125 void slot_abort_changes();
127
129 void slot_edit_object_from_class_view ( QModelIndex const & );
130
131 void slot_fetch_data ( treenode const * );
132
135
136 void LoadDefaultSetting();
137
138 void slot_filter_query();
139 void slot_filter_textchange ( const QString & );
140 void slot_filter_table_textchange ( const QString & );
141
142 void slot_tree_reset();
143 void slot_model_rebuild();
144
145 void slot_whatisthis();
146
148 void slot_show_userguide();
150
153
155 void slot_add_tab();
156 void slot_remove_tab ( int i );
157
159
160 void slot_update_committed_files(const std::list<std::string>&, const std::string&);
161
162 void slot_loaded_db_file ( QString );
163
164public slots:
166 void slot_batch_change_stop(const QList<QPair<QString, QString>>&);
167 void slot_debuginfo_message ( QString const, QString const );
168 void slot_information_message ( QString const, QString const );
169 void slot_notice_message ( QString const, QString const );
170 void slot_warning_message ( QString const, QString const );
171 void slot_error_message ( QString const, QString const );
172 void slot_failure_message ( QString const, QString const );
173
174signals:
175 //void signal_rdb_found (const QString& p, const RDBMap& rdbs);
176 void signal_batch_change_stopped(const QList<QPair<QString, QString>>&);
179};
180
181} // namespace dbe
182
183#endif // MAINWINDOW_H
Definition cptr.hpp:50
void slot_fetch_data(treenode const *)
void slot_information_message(QString const, QString const)
void edit_object_at(const QModelIndex &Index)
bool dbopen(QString const &, dbinfo const &)
void slot_show_userchanges()
void slot_update_committed_files(const std::list< std::string > &, const std::string &)
void slot_warning_message(QString const, QString const)
std::atomic< bool > isArchivedConf
void slot_batch_change_start()
void LoadDefaultSetting()
void slot_loaded_db_file(QString)
void slot_batch_change_stop(const QList< QPair< QString, QString > > &)
void slot_remove_tab(int i)
dbe::models::tree * this_classes
void slot_launch_object_editor(tref)
void slot_abort_changes()
void slot_process_externalchanges()
void slot_toggle_casesensitive_for_treeview(bool)
void load_settings(bool LoadSettings=false)
void slot_launch_batchchange_on_table()
void build_class_tree_model()
QSet< QString > allFiles
void slot_toggle_commit_button()
void closeEvent(QCloseEvent *event)
void slot_load_db_from_create_widget(const QString &)
void build_file_model()
void argsparse(QMap< QString, QString > const &)
void slot_launch_batchchange()
cptr< dbe::CustomTreeView > get_view() const
models::treeselection * this_treefilter
void slot_debuginfo_message(QString const, QString const)
void slot_error_message(QString const, QString const)
bool eventFilter(QObject *Target, QEvent *Event)
void slot_open_database_from_file()
void slot_abort_external_changes()
QString find_db_repository_dir()
void build_table_model()
FileModel * this_files
void slot_create_newdb()
void slot_show_userguide()
static MainWindow * findthis()
void slot_undo_allchanges()
void slot_failure_message(QString const, QString const)
void slot_model_rebuild()
bool m_batch_change_in_progress
void slot_edit_object_from_class_view(QModelIndex const &)
void slot_filter_table_textchange(const QString &)
void signal_db_loaded()
void slot_filter_textchange(const QString &)
void signal_externalchanges_processed()
std::vector< dbe::tref > ProcessQuery(QString const &)
void signal_batch_change_stopped(const QList< QPair< QString, QString > > &)
void update_total_objects()
void slot_commit_database(bool Exit=false)
bool check_ready() const
MainWindow(QMap< QString, QString > const &CommandLine, QWidget *parent=nullptr)
void slot_notice_message(QString const, QString const)
QSortFilterProxyModel this_filesort
void slot_show_information_about_dbe()
Include QT Headers.
dbinfo
Definition dbinfo.hpp:15