• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

cantor/src/lib

  • sources
  • kde-4.12
  • kdeedu
  • cantor
  • src
  • lib
  • directives
plotdirectives.cpp
Go to the documentation of this file.
1 /*
2  This program is free software; you can redistribute it and/or
3  modify it under the terms of the GNU General Public License
4  as published by the Free Software Foundation; either version 2
5  of the License, or (at your option) any later version.
6 
7  This program is distributed in the hope that it will be useful,
8  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  GNU General Public License for more details.
11 
12  You should have received a copy of the GNU General Public License
13  along with this program; if not, write to the Free Software
14  Foundation, Inc., 51 Franklin Street, Fifth Floor,
15  Boston, MA 02110-1301, USA.
16 
17  ---
18  Copyright (C) 2010 Oleksiy Protas <elfy.ua@gmail.com>
19  */
20 
21 #include "directives/plotdirectives.h"
22 #include "ui_axisrange.h"
23 #include "ui_plottitle.h"
24 
25 namespace Cantor
26 {
27 
28 // FIXME maybe this belongs to headers rather
29 class PlotTitleControl : public AdvancedPlotExtension::DirectiveControl<Ui_PlotTitleControl>
30 {
31  public: // FIXME: move window title setting upward, or maybe not
32  PlotTitleControl(QWidget *parent) : AbstractParent(parent) { setWindowTitle(i18n("Main title")); }
33 
34  AdvancedPlotExtension::PlotDirective* produceDirective() const
35  {
36  return new PlotTitleDirective(titleEdit->text());
37  }
38 };
39 
40 class AbscissScaleControl : public AdvancedPlotExtension::DirectiveControl<Ui_AxisRangeControl>
41 {
42  public:
43  AbscissScaleControl(QWidget *parent) : AbstractParent(parent) { setWindowTitle(i18n("Abscissa scale")); }
44 
45  AdvancedPlotExtension::PlotDirective* produceDirective() const
46  {
47  return new AbscissScaleDirective(minEdit->value(),maxEdit->value());
48  }
49 };
50 
51 class OrdinateScaleControl : public AdvancedPlotExtension::DirectiveControl<Ui_AxisRangeControl>
52 {
53  public:
54  OrdinateScaleControl(QWidget *parent) : AbstractParent(parent) { setWindowTitle(i18n("Ordinate scale")); }
55 
56  AdvancedPlotExtension::PlotDirective* produceDirective() const
57  {
58  return new OrdinateScaleDirective(minEdit->value(),maxEdit->value());
59  }
60 };
61 
62 
63 const QString& PlotTitleDirective::title() const
64 {
65  return m_title;
66 }
67 
68 PlotTitleDirective::PlotTitleDirective(const QString& str) : m_title(str)
69 {
70 }
71 
72 AdvancedPlotExtension::DirectiveProducer* PlotTitleDirective::widget(QWidget* parent)
73 {
74  return new PlotTitleControl(parent);
75 }
76 
77 double AbstractScaleDirective::min() const
78 {
79  return m_min;
80 }
81 double AbstractScaleDirective::max() const
82 {
83  return m_max;
84 }
85 
86 AbstractScaleDirective::AbstractScaleDirective(double a,double b) : m_min(a),m_max(b)
87 {
88 }
89 
90 AbscissScaleDirective::AbscissScaleDirective(double a,double b) : AbstractScaleDirective(a,b)
91 {
92 }
93 
94 AdvancedPlotExtension::DirectiveProducer* AbscissScaleDirective::widget(QWidget* parent)
95 {
96  return new AbscissScaleControl(parent);
97 }
98 
99 OrdinateScaleDirective::OrdinateScaleDirective(double a,double b) : AbstractScaleDirective(a,b)
100 {
101 }
102 
103 AdvancedPlotExtension::DirectiveProducer* OrdinateScaleDirective::widget(QWidget* parent)
104 {
105  return new OrdinateScaleControl(parent);
106 }
107 
108 }
Cantor::PlotTitleDirective::widget
static AdvancedPlotExtension::DirectiveProducer * widget(QWidget *parent)
Definition: plotdirectives.cpp:72
QWidget
Cantor::AbscissScaleDirective::widget
static AdvancedPlotExtension::DirectiveProducer * widget(QWidget *parent)
Definition: plotdirectives.cpp:94
Cantor::PlotTitleDirective::PlotTitleDirective
PlotTitleDirective(const QString &str)
Definition: plotdirectives.cpp:68
Cantor::AbstractScaleDirective::AbstractScaleDirective
AbstractScaleDirective(double a, double b)
Definition: plotdirectives.cpp:86
Cantor::AbscissScaleDirective::AbscissScaleDirective
AbscissScaleDirective(double a, double b)
Definition: plotdirectives.cpp:90
Cantor::AdvancedPlotExtension::DirectiveControl< Ui_PlotTitleControl >::AbstractParent
DirectiveControl< Ui_PlotTitleControl > AbstractParent
Definition: extension.h:254
Cantor::AbstractScaleDirective::max
double max() const
Definition: plotdirectives.cpp:81
Cantor::AbstractScaleDirective
Definition: plotdirectives.h:43
Cantor::PlotTitleDirective::title
const QString & title() const
Definition: plotdirectives.cpp:63
Cantor::OrdinateScaleDirective::OrdinateScaleDirective
OrdinateScaleDirective(double a, double b)
Definition: plotdirectives.cpp:99
Cantor::OrdinateScaleDirective::widget
static AdvancedPlotExtension::DirectiveProducer * widget(QWidget *parent)
Definition: plotdirectives.cpp:103
plotdirectives.h
Cantor::AbstractScaleDirective::min
double min() const
Definition: plotdirectives.cpp:77
Cantor::AdvancedPlotExtension::DirectiveProducer
Definition: extension.h:242
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:42:50 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

cantor/src/lib

Skip menu "cantor/src/lib"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal