summaryrefslogtreecommitdiffstats
path: root/kmplot/kmplot/keditparametric.h
diff options
context:
space:
mode:
Diffstat (limited to 'kmplot/kmplot/keditparametric.h')
-rw-r--r--kmplot/kmplot/keditparametric.h81
1 files changed, 81 insertions, 0 deletions
diff --git a/kmplot/kmplot/keditparametric.h b/kmplot/kmplot/keditparametric.h
new file mode 100644
index 00000000..0ce5b2d4
--- /dev/null
+++ b/kmplot/kmplot/keditparametric.h
@@ -0,0 +1,81 @@
+/*
+* KmPlot - a math. function plotter for the KDE-Desktop
+*
+* Copyright (C) 1998, 1999 Klaus-Dieter Möller
+* 2000, 2002 kd.moeller@t-online.de
+*
+* This file is part of the KDE Project.
+* KmPlot is part of the KDE-EDU Project.
+*
+* This program is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+#ifndef KEDITPARAMETRIC_H
+#define KEDITPARAMETRIC_H
+
+#include "qeditparametric.h"
+#include "xparser.h"
+
+class View;
+class XParser;
+
+/** @short Dialog window editing a parametric plot and its properties. */
+class KEditParametric : public QEditParametric
+{
+ Q_OBJECT
+ public:
+ /// @param parser points to the parser instance.
+ /// @param parent points to the parent widget.
+ /// @param name of this instance.
+ KEditParametric( XParser* parser, QWidget* parent = NULL, const char* name = NULL );
+ /// Nothing special to do.
+ virtual ~KEditParametric() {}
+
+ /// Fill the dialog's widgets with the properties of the parser function number id.
+ void initDialog( int x_id = -1, int y_id = -1 );
+ /// Returns a pointer to the added/inserted y-function, or 0 if the user havn't pressed OK yet
+ Ufkt *functionItem();
+
+ private:
+ /// Clear alls widgets values
+ void clearWidgets();
+ /// Fill the dialog's widgets with values from the parser
+ void setWidgets();
+ /// Returns the well formed function equation
+ QString xFunction();
+ /// Returns the well formed function equation
+ QString yFunction();
+ /// extract function \a name and \a expression from a given \a equation
+ void splitEquation( const QString equation, QString &name, QString &expression );
+ /// Pointer to the parser instance.
+ XParser* m_parser;
+ //@{
+ /// Current function indices.
+ int m_x_id, m_y_id;
+ //@}
+
+ protected slots:
+ /// Overwrites the dialog's accept() method to make sure, that the user's input is valid.
+ virtual void accept();
+ /// Invokes the HelpCenter.
+ void slotHelp();
+ void customMaxRange_toggled(bool);
+ void customMinRange_toggled(bool);
+
+ Ufkt *m_updatedfunction;
+};
+
+#endif