File indexing completed on 2024-06-16 04:09:00
0001 /** 0002 * SPDX-FileCopyrightText: 2001-2015 Klaralvdalens Datakonsult AB. All rights reserved. 0003 * 0004 * This file is part of the KD Chart library. 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #ifndef MAINWINDOW_H 0010 #define MAINWINDOW_H 0011 0012 #include <QDialog> 0013 #include <QMap> 0014 0015 #include "ui_mainwindow.h" 0016 #include "ui_addheaderdialog.h" 0017 #include <TableModel.h> 0018 #include <KChartHeaderFooter> 0019 #include <KChartPosition> 0020 0021 class QPrinter; 0022 0023 namespace KChart { 0024 class Chart; 0025 class DatasetProxyModel; 0026 class LineDiagram; 0027 } 0028 0029 class MainWindow : public QWidget, private Ui::MainWindow 0030 { 0031 Q_OBJECT 0032 0033 public: 0034 MainWindow( QWidget* parent = nullptr ); 0035 0036 private Q_SLOTS: 0037 void on_defaultButton_clicked(); 0038 void slotPaintRequested(QPrinter *printer); 0039 void on_printButton_clicked(); 0040 void on_addHeaderPB_clicked(); 0041 void on_editHeaderPB_clicked(); 0042 void on_removeHeaderPB_clicked(); 0043 void on_headersTV_itemSelectionChanged(); 0044 private: 0045 void setupAddHeaderDialog( QDialog* dlg, 0046 Ui::AddHeaderDialog& conf ) const; 0047 void addHeaderFooter( const QString &text, 0048 KChart::HeaderFooter::HeaderFooterType type, 0049 KChart::Position position ) const; 0050 0051 KChart::Chart* m_chart; 0052 TableModel m_model; 0053 KChart::DatasetProxyModel* m_datasetProxy; 0054 KChart::LineDiagram* m_lines; 0055 }; 0056 0057 0058 #endif /* MAINWINDOW_H */ 0059