Engauge Digitizer
2
Dlg
DlgSettingsCurveList.h
Go to the documentation of this file.
1
/******************************************************************************************************
2
* (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3
* under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4
* LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5
******************************************************************************************************/
6
7
#ifndef DLG_SETTINGS_CURVE_LIST_H
8
#define DLG_SETTINGS_CURVE_LIST_H
9
10
#include "
DlgSettingsAbstractBase.h
"
11
#include <QItemSelection>
12
#include <QModelIndex>
13
#include <QString>
14
15
class
CurveNameList
;
16
class
QGridLayout;
17
class
QListView;
18
class
QPushButton;
19
class
QStandardItemModel;
20
class
QTableView;
21
class
QTextStream;
22
24
class
DlgSettingsCurveList
:
public
DlgSettingsAbstractBase
25
{
26
Q_OBJECT;
27
28
public
:
30
DlgSettingsCurveList
(
MainWindow
&
mainWindow
);
31
virtual
~DlgSettingsCurveList
();
32
33
virtual
void
createOptionalSaveDefault
(QHBoxLayout *layout);
34
virtual
QWidget *
createSubPanel
();
35
void
load
(
CmdMediator
&
cmdMediator
);
36
virtual
void
setSmallDialogs
(
bool
smallDialogs);
37
38
public
slots:
40
void
slotRowsAboutToBeRemoved
(
const
QModelIndex &parent,
int
rowFirst,
int
rowLast);
41
42
private
slots:
43
void
slotDataChanged (
const
QModelIndex &topLeft,
44
const
QModelIndex &bottomRight,
45
const
QVector<int> &roles);
46
void
slotNew ();
47
void
slotRemove ();
48
void
slotResetDefault();
49
void
slotSaveDefault();
50
51
protected
:
52
virtual
void
handleOk
();
53
54
private
:
55
56
void
appendCurveName (
const
QString &curveNameNew,
57
const
QString &curveNameOriginal,
58
int
numPoints);
59
void
createButtons (QGridLayout *layout,
int
&row);
60
void
createListCurves (QGridLayout *layout,
int
&row);
61
bool
endsWithNumber (
const
QString &str)
const
;
62
void
insertCurveName (
int
row,
63
const
QString &curveNameNew,
64
const
QString &curveNameOriginal,
65
int
numPoints);
66
int
newRowFromSelection ()
const
;
67
QString nextCurveName ()
const
;
// Pick good curve name to go at currentRow()
68
int
numberAtEnd (
const
QString &str)
const
;
69
unsigned
int
numPointsForSelectedCurves ()
const
;
70
void
printStream (QTextStream &str)
const
;
// Debugging method
71
void
removeSelectedCurves();
72
void
selectCurveName (
const
QString &curveWanted);
73
void
updateControls ();
74
75
CurveNameList
*m_curveNameList;
// Model for m_listCurves
76
77
QListView *m_listCurves;
// Use QListView instead of QListWidget so validators can be used
78
79
QPushButton *m_btnAdd;
80
QPushButton *m_btnRemove;
81
QPushButton *m_btnRename;
82
83
QPushButton *m_btnResetDefault;
84
QPushButton *m_btnSaveDefault;
85
86
};
87
88
#endif // DLG_SETTINGS_CURVE_LIST_H
DlgSettingsAbstractBase::mainWindow
MainWindow & mainWindow()
Get method for MainWindow.
Definition:
DlgSettingsAbstractBase.cpp:122
DlgSettingsCurveList::load
void load(CmdMediator &cmdMediator)
Load settings from Document.
Definition:
DlgSettingsCurveList.cpp:195
DlgSettingsCurveList::createOptionalSaveDefault
virtual void createOptionalSaveDefault(QHBoxLayout *layout)
Let subclass define an optional Save As Default button.
Definition:
DlgSettingsCurveList.cpp:117
DlgSettingsAbstractBase
Abstract base class for all Settings dialogs.
Definition:
DlgSettingsAbstractBase.h:19
DlgSettingsCurveList::handleOk
virtual void handleOk()
Process slotOk.
Definition:
DlgSettingsCurveList.cpp:171
DlgSettingsCurveList::DlgSettingsCurveList
DlgSettingsCurveList(MainWindow &mainWindow)
Single constructor.
Definition:
DlgSettingsCurveList.cpp:31
DlgSettingsCurveList
Dialog for editing curve names settings.
Definition:
DlgSettingsCurveList.h:23
MainWindow
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Definition:
MainWindow.h:90
DlgSettingsCurveList::slotRowsAboutToBeRemoved
void slotRowsAboutToBeRemoved(const QModelIndex &parent, int rowFirst, int rowLast)
Cleanup after rows have been removed in the model. We remove the corresponding rows in the QListView.
Definition:
DlgSettingsCurveList.cpp:461
CmdMediator
Command queue stack.
Definition:
CmdMediator.h:22
DlgSettingsCurveList::setSmallDialogs
virtual void setSmallDialogs(bool smallDialogs)
If false then dialogs have a minimum size so all controls are visible.
Definition:
DlgSettingsCurveList.cpp:433
DlgSettingsCurveList::~DlgSettingsCurveList
virtual ~DlgSettingsCurveList()
Definition:
DlgSettingsCurveList.cpp:43
CurveNameList
Model for DlgSettingsCurveList and CmdSettingsCurveList.
Definition:
CurveNameList.h:26
DlgSettingsAbstractBase::cmdMediator
CmdMediator & cmdMediator()
Provide access to Document information wrapped inside CmdMediator.
Definition:
DlgSettingsAbstractBase.cpp:45
DlgSettingsAbstractBase.h
DlgSettingsCurveList::createSubPanel
virtual QWidget * createSubPanel()
Create dialog-specific panel to which base class will add Ok and Cancel buttons.
Definition:
DlgSettingsCurveList.cpp:135
Generated on Sat Jan 4 2020 12:00:00 for Engauge Digitizer by
1.8.16