Git commit e92009156c861a2abed1bf18c063e78bf655eb11 by Stefan Gerlach.
Committed on 02/07/2016 at 10:21.
Pushed by sgerlach into branch 'frameworks'.

Merge branch 'master' into frameworks

Conflicts:
        src/CMakeLists.txt
        src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
        src/backend/worksheet/plots/cartesian/XYFitCurve.cpp
        src/commonfrontend/worksheet/WorksheetView.cpp
        src/kdefrontend/dockwidgets/XYFourierFilterCurveDock.cpp

M  +1    -1    CMakeLists.txt
M  +19   -5    doc/index.docbook
M  +9    -2    src/CMakeLists.txt
M  +5    -0    src/backend/core/Project.cpp
M  +16   -0    src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
M  +4    -1    src/backend/worksheet/plots/cartesian/XYFitCurve.cpp
M  +13   -10   src/backend/worksheet/plots/cartesian/XYSmoothCurve.cpp
M  +11   -0    src/commonfrontend/worksheet/WorksheetView.cpp
M  +2    -0    src/commonfrontend/worksheet/WorksheetView.h
M  +19   -1    src/kdefrontend/GuiObserver.cpp
M  +1    -0    src/kdefrontend/MainWin.cpp
M  +2    -0    src/kdefrontend/MainWin.h
M  +29   -44   src/kdefrontend/dockwidgets/XYInterpolationCurveDock.cpp
M  +14   -32   src/kdefrontend/dockwidgets/XYSmoothCurveDock.cpp

http://commits.kde.org/labplot/e92009156c861a2abed1bf18c063e78bf655eb11

diff --cc doc/index.docbook
index b688690,5585285..68a52e4
--- a/doc/index.docbook
+++ b/doc/index.docbook
@@@ -95,13 -88,9 +95,13 @@@ Features
  <listitem><para>Great variety of editing capabilities for properties of 
worksheet and its objects</para></listitem>
  <listitem><para>Cartesian plots, created either from imported or manually 
created data sets or via mathematical equation</para></listitem>
  <listitem><para>Definition of mathematical formulas is supported by 
syntax-highlighting and completion and by the list of thematicaly grouped 
mathematical and physical constants and functions</para></listitem>
- <listitem><para>Analysis of plotted data is supported by many zooming and 
navigation features</para></listitem>
- <listitem><para>Several interpolation, smoothing and Fourier filter methods 
for filtering data</para></listitem>
+ <listitem><para>Investigation of plotted data is supported by many zooming 
and navigation features</para></listitem>
+ <listitem><para>Several analysis functions and methods for interpolation, 
smoothing, (nonlinear) fitting, Fourier filter and Fourier 
transform</para></listitem>
  <listitem><para>Linear and non-linear fits to data, several fit-models are 
predefined and custom models with arbitrary number of parameters can be 
provided</para></listitem>
 +<listitem><para>Supports many CAS backends like Maxima, Python, KAlgebra, 
Sage</para></listitem>
 +<listitem><para>Nice Worksheet view for evaluating 
expressions</para></listitem>
 +<listitem><para>Easy plugin based structure to add different 
Backends</para></listitem>
 +<listitem><para>Plugin based assistant dialogs for common tasks (like 
integrating a function or entering a matrix)</para></listitem>
  <listitem><para>Datapicker for manual or (semi-)automatic data extraction 
from imported images containing plots and curves.</para></listitem>
  </itemizedlist>
  </para>
diff --cc src/CMakeLists.txt
index 122fc6a,81063bd..758f464
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@@ -232,9 -225,9 +239,9 @@@ add_subdirectory( pics/colorchooser 
  # set(LABPLOT_SRCS ${GUI_SOURCES} ${PLOTS_SOURCES} parser/parser.tab.c)
  set(LABPLOT_SRCS ${GUI_SOURCES} ${PLOTS_SOURCES})
  INCLUDE_DIRECTORIES(. ${GSL_INCLUDE_DIR} ${GSL_INCLUDEDIR}/..)
 -kde4_add_ui_files(LABPLOT_SRCS ${UI_SOURCES})
 -kde4_add_executable(labplot2 ${LABPLOT_SRCS} ${BACKEND_SOURCES} 
${DATASOURCES_SOURCES} ${COMMONFRONTEND_SOURCES} ${TOOLS_SOURCES})
 -target_link_libraries(labplot2 ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} 
${GSL_LIBRARIES} ${GSL_CBLAS_LIBRARIES} ${HDF5_LIBRARY} ${NETCDF_LIBRARY} 
${FFTW_LIBRARIES})
 +qt5_wrap_ui(LABPLOT_SRCS ${UI_SOURCES})
 +add_executable(labplot2 ${LABPLOT_SRCS} ${BACKEND_SOURCES} ${CANTOR_SOURCES} 
${DATASOURCES_SOURCES} ${COMMONFRONTEND_SOURCES} ${TOOLS_SOURCES} ${QTMOC_HDRS})
- target_link_libraries(labplot2 KF5::KDELibs4Support KF5::Archive KF5::XmlGui 
Qt5::Svg ${GSL_LIBRARIES} ${GSL_CBLAS_LIBRARIES} ${CANTOR_LIBS} ${HDF5_LIBRARY} 
${NETCDF_LIBRARY})
++target_link_libraries(labplot2 KF5::KDELibs4Support KF5::Archive KF5::XmlGui 
Qt5::Svg ${GSL_LIBRARIES} ${GSL_CBLAS_LIBRARIES} ${CANTOR_LIBS} ${HDF5_LIBRARY} 
${NETCDF_LIBRARY} ${FFTW_LIBRARIES})
  # ${OPJ_LIBRARY}
  
  ############## installation ################################
diff --cc src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
index 1c35bff,8239f7d..a415f61
--- a/src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
+++ b/src/backend/worksheet/plots/cartesian/CartesianPlot.cpp
@@@ -346,16 -346,17 +347,17 @@@ void CartesianPlot::initDefault(Type ty
  
  void CartesianPlot::initActions() {
        //"add new" actions
 -      addCurveAction = new KAction(KIcon("labplot-xy-curve"), 
i18n("xy-curve"), this);
 -      addEquationCurveAction = new 
KAction(KIcon("labplot-xy-equation-curve"), i18n("xy-curve from a mathematical 
equation"), this);
 -      addFitCurveAction = new KAction(KIcon("labplot-xy-fit-curve"), 
i18n("xy-curve from a fit to data"), this);
 -      addFourierFilterCurveAction = new 
KAction(KIcon("labplot-xy-fourier_filter-curve"), i18n("xy-curve from a Fourier 
filter"), this);
 -      addFourierTransformCurveAction = new 
KAction(KIcon("labplot-xy-fourier_transform-curve"), i18n("xy-curve from a 
Fourier transform"), this);
 -      addInterpolationCurveAction = new 
KAction(KIcon("labplot-xy-interpolation-curve"), i18n("xy-curve from an 
interpolation"), this);
 -      addSmoothCurveAction = new KAction(KIcon("labplot-xy-smooth-curve"), 
i18n("xy-curve from a smooth"), this);
 -      addLegendAction = new KAction(KIcon("text-field"), i18n("legend"), 
this);
 -      addHorizontalAxisAction = new KAction(KIcon("labplot-axis-horizontal"), 
i18n("horizontal axis"), this);
 -      addVerticalAxisAction = new KAction(KIcon("labplot-axis-vertical"), 
i18n("vertical axis"), this);
 -      addCustomPointAction = new KAction(KIcon("draw-cross"), i18n("custom 
point"), this);
 +      addCurveAction = new QAction(QIcon::fromTheme("labplot-xy-curve"), 
i18n("xy-curve"), this);
 +      addEquationCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-equation-curve"), i18n("xy-curve from a 
mathematical equation"), this);
 +      addFitCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fit-curve"), i18n("xy-curve from a fit to 
data"), this);
 +      addFourierFilterCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_filter-curve"), i18n("xy-curve 
from a Fourier filter"), this);
++      addFourierTransformCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_transform-curve"), i18n("xy-curve 
from a Fourier transform"), this);
 +      addInterpolationCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-interpolation-curve"), i18n("xy-curve from 
an interpolation"), this);
 +      addSmoothCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-smooth-curve"), i18n("xy-curve from a 
smooth"), this);
 +      addLegendAction = new QAction(QIcon::fromTheme("text-field"), 
i18n("legend"), this);
 +      addHorizontalAxisAction = new 
QAction(QIcon::fromTheme("labplot-axis-horizontal"), i18n("horizontal axis"), 
this);
 +      addVerticalAxisAction = new 
QAction(QIcon::fromTheme("labplot-axis-vertical"), i18n("vertical axis"), this);
 +      addCustomPointAction = new QAction(QIcon::fromTheme("draw-cross"), 
i18n("custom point"), this);
  
        connect(addCurveAction, SIGNAL(triggered()), SLOT(addCurve()));
        connect(addEquationCurveAction, SIGNAL(triggered()), 
SLOT(addEquationCurve()));
diff --cc src/backend/worksheet/plots/cartesian/XYFitCurve.cpp
index 463c3ae,d03e557..33943a9
--- a/src/backend/worksheet/plots/cartesian/XYFitCurve.cpp
+++ b/src/backend/worksheet/plots/cartesian/XYFitCurve.cpp
@@@ -49,10 -49,10 +49,10 @@@ extern "C" 
  #include <gsl/gsl_version.h>
  }
  
 -#include <KIcon>
 -#include <KLocale>
  #include <QElapsedTimer>
 +#include <QIcon>
- 
 +#include <KLocalizedString>
+ #include <QThreadPool>
  
  XYFitCurve::XYFitCurve(const QString& name)
                : XYCurve(name, new XYFitCurvePrivate(this)) {
diff --cc src/commonfrontend/worksheet/WorksheetView.cpp
index 0b82801,c2a2863..a6a66d4
--- a/src/commonfrontend/worksheet/WorksheetView.cpp
+++ b/src/commonfrontend/worksheet/WorksheetView.cpp
@@@ -272,50 -272,52 +272,52 @@@ void WorksheetView::initActions() 
        connect(cartesianPlotMouseModeActionGroup, SIGNAL(triggered(QAction*)), 
SLOT(cartesianPlotMouseModeChanged(QAction*)));
  
        QActionGroup* cartesianPlotAddNewActionGroup = new QActionGroup(this);
 -      addCurveAction = new KAction(KIcon("labplot-xy-curve"), 
i18n("xy-curve"), cartesianPlotAddNewActionGroup);
 -      addEquationCurveAction = new 
KAction(KIcon("labplot-xy-equation-curve"), i18n("xy-curve from a mathematical 
equation"), cartesianPlotAddNewActionGroup);
 -      addInterpolationCurveAction = new 
KAction(KIcon("labplot-xy-interpolation-curve"), i18n("xy-curve from an 
interpolation"), cartesianPlotAddNewActionGroup);
 -      addSmoothCurveAction = new KAction(KIcon("labplot-xy-smooth-curve"), 
i18n("xy-curve from a smooth"), cartesianPlotAddNewActionGroup);
 -      addFitCurveAction = new KAction(KIcon("labplot-xy-fit-curve"), 
i18n("xy-curve from a fit to data"), cartesianPlotAddNewActionGroup);
 -      addFourierFilterCurveAction = new 
KAction(KIcon("labplot-xy-fourier_filter-curve"), i18n("xy-curve from a Fourier 
filter"), cartesianPlotAddNewActionGroup);
 -      addFourierTransformCurveAction = new 
KAction(KIcon("labplot-xy-fourier_transform-curve"), i18n("xy-curve from a 
Fourier transform"), cartesianPlotAddNewActionGroup);
 -      addLegendAction = new KAction(KIcon("text-field"), i18n("legend"), 
cartesianPlotAddNewActionGroup);
 -      addHorizontalAxisAction = new KAction(KIcon("labplot-axis-horizontal"), 
i18n("horizontal axis"), cartesianPlotAddNewActionGroup);
 -      addVerticalAxisAction = new KAction(KIcon("labplot-axis-vertical"), 
i18n("vertical axis"), cartesianPlotAddNewActionGroup);
 -      addCustomPointAction = new KAction(KIcon("draw-cross"), i18n("custom 
point"), cartesianPlotAddNewActionGroup);
 +      addCurveAction = new QAction(QIcon::fromTheme("labplot-xy-curve"), 
i18n("xy-curve"), cartesianPlotAddNewActionGroup);
 +      addEquationCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-equation-curve"), i18n("xy-curve from a 
mathematical equation"), cartesianPlotAddNewActionGroup);
 +      addInterpolationCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-interpolation-curve"), i18n("xy-curve from 
an interpolation"), cartesianPlotAddNewActionGroup);
 +      addSmoothCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-smooth-curve"), i18n("xy-curve from a 
smooth"), cartesianPlotAddNewActionGroup);
 +      addFitCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fit-curve"), i18n("xy-curve from a fit to 
data"), cartesianPlotAddNewActionGroup);
 +      addFourierFilterCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_filter-curve"), i18n("xy-curve 
from a Fourier filter"), cartesianPlotAddNewActionGroup);
++      addFourierTransformCurveAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_transform-curve"), i18n("xy-curve 
from a Fourier transform"), cartesianPlotAddNewActionGroup);
 +      addLegendAction = new QAction(QIcon::fromTheme("text-field"), 
i18n("legend"), cartesianPlotAddNewActionGroup);
 +      addHorizontalAxisAction = new 
QAction(QIcon::fromTheme("labplot-axis-horizontal"), i18n("horizontal axis"), 
cartesianPlotAddNewActionGroup);
 +      addVerticalAxisAction = new 
QAction(QIcon::fromTheme("labplot-axis-vertical"), i18n("vertical axis"), 
cartesianPlotAddNewActionGroup);
 +      addCustomPointAction = new QAction(QIcon::fromTheme("draw-cross"), 
i18n("custom point"), cartesianPlotAddNewActionGroup);
        connect(cartesianPlotAddNewActionGroup, SIGNAL(triggered(QAction*)), 
SLOT(cartesianPlotAddNew(QAction*)));
  
        // Analysis menu
 -      addInterpolationAction = new 
KAction(KIcon("labplot-xy-interpolation-curve"), i18n("Interpolation"), 
cartesianPlotAddNewActionGroup);
 -      addSmoothAction = new KAction(KIcon("labplot-xy-smooth-curve"), 
i18n("Smooth"), cartesianPlotAddNewActionGroup);
 -      addFitAction = new KAction(KIcon("labplot-xy-fit-curve"), i18n("Data 
fitting"), cartesianPlotAddNewActionGroup);
 -      addFourierFilterAction = new 
KAction(KIcon("labplot-xy-fourier_filter-curve"), i18n("Fourier filter"), 
cartesianPlotAddNewActionGroup);
 -      addFourierTransformAction = new 
KAction(KIcon("labplot-xy-fourier_transform-curve"), i18n("Fourier transform"), 
cartesianPlotAddNewActionGroup);
 +      addInterpolationAction = new 
QAction(QIcon::fromTheme("labplot-xy-interpolation-curve"), 
i18n("Interpolation"), cartesianPlotAddNewActionGroup);
 +      addSmoothAction = new 
QAction(QIcon::fromTheme("labplot-xy-smooth-curve"), i18n("Smooth"), 
cartesianPlotAddNewActionGroup);
 +      addFitAction = new QAction(QIcon::fromTheme("labplot-xy-fit-curve"), 
i18n("Data fitting"), cartesianPlotAddNewActionGroup);
 +      addFourierFilterAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_filter-curve"), i18n("Fourier 
filter"), cartesianPlotAddNewActionGroup);
++      addFourierTransformAction = new 
QAction(QIcon::fromTheme("labplot-xy-fourier_transform-curve"), i18n("Fourier 
transform"), cartesianPlotAddNewActionGroup);
  
        QActionGroup* cartesianPlotNavigationGroup = new QActionGroup(this);
 -      scaleAutoAction = new KAction(KIcon("labplot-auto-scale-all"), 
i18n("auto scale"), cartesianPlotNavigationGroup);
 +      scaleAutoAction = new 
QAction(QIcon::fromTheme("labplot-auto-scale-all"), i18n("auto scale"), 
cartesianPlotNavigationGroup);
        scaleAutoAction->setData(CartesianPlot::ScaleAuto);
 -      scaleAutoXAction = new KAction(KIcon("labplot-auto-scale-x"), 
i18n("auto scale X"), cartesianPlotNavigationGroup);
 +      scaleAutoXAction = new 
QAction(QIcon::fromTheme("labplot-auto-scale-x"), i18n("auto scale X"), 
cartesianPlotNavigationGroup);
        scaleAutoXAction->setData(CartesianPlot::ScaleAutoX);
 -      scaleAutoYAction = new KAction(KIcon("labplot-auto-scale-y"), 
i18n("auto scale Y"), cartesianPlotNavigationGroup);
 +      scaleAutoYAction = new 
QAction(QIcon::fromTheme("labplot-auto-scale-y"), i18n("auto scale Y"), 
cartesianPlotNavigationGroup);
        scaleAutoYAction->setData(CartesianPlot::ScaleAutoY);
 -      zoomInAction = new KAction(KIcon("zoom-in"), i18n("zoom in"), 
cartesianPlotNavigationGroup);
 +      zoomInAction = new QAction(QIcon::fromTheme("zoom-in"), i18n("zoom 
in"), cartesianPlotNavigationGroup);
        zoomInAction->setData(CartesianPlot::ZoomIn);
 -      zoomOutAction = new KAction(KIcon("zoom-out"), i18n("zoom out"), 
cartesianPlotNavigationGroup);
 +      zoomOutAction = new QAction(QIcon::fromTheme("zoom-out"), i18n("zoom 
out"), cartesianPlotNavigationGroup);
        zoomOutAction->setData(CartesianPlot::ZoomOut);
 -      zoomInXAction = new KAction(KIcon("labplot-zoom-in-x"), i18n("zoom in 
X"), cartesianPlotNavigationGroup);
 +      zoomInXAction = new QAction(QIcon::fromTheme("labplot-zoom-in-x"), 
i18n("zoom in X"), cartesianPlotNavigationGroup);
        zoomInXAction->setData(CartesianPlot::ZoomInX);
 -      zoomOutXAction = new KAction(KIcon("labplot-zoom-out-x"), i18n("zoom 
out X"), cartesianPlotNavigationGroup);
 +      zoomOutXAction = new QAction(QIcon::fromTheme("labplot-zoom-out-x"), 
i18n("zoom out X"), cartesianPlotNavigationGroup);
        zoomOutXAction->setData(CartesianPlot::ZoomOutX);
 -      zoomInYAction = new KAction(KIcon("labplot-zoom-in-y"), i18n("zoom in 
Y"), cartesianPlotNavigationGroup);
 +      zoomInYAction = new QAction(QIcon::fromTheme("labplot-zoom-in-y"), 
i18n("zoom in Y"), cartesianPlotNavigationGroup);
        zoomInYAction->setData(CartesianPlot::ZoomInY);
 -      zoomOutYAction = new KAction(KIcon("labplot-zoom-out-y"), i18n("zoom 
out Y"), cartesianPlotNavigationGroup);
 +      zoomOutYAction = new QAction(QIcon::fromTheme("labplot-zoom-out-y"), 
i18n("zoom out Y"), cartesianPlotNavigationGroup);
        zoomOutYAction->setData(CartesianPlot::ZoomOutY);
 -      shiftLeftXAction = new KAction(KIcon("labplot-shift-left-x"), 
i18n("shift left X"), cartesianPlotNavigationGroup);
 +      shiftLeftXAction = new 
QAction(QIcon::fromTheme("labplot-shift-left-x"), i18n("shift left X"), 
cartesianPlotNavigationGroup);
        shiftLeftXAction->setData(CartesianPlot::ShiftLeftX);
 -      shiftRightXAction = new KAction(KIcon("labplot-shift-right-x"), 
i18n("shift right X"), cartesianPlotNavigationGroup);
 +      shiftRightXAction = new 
QAction(QIcon::fromTheme("labplot-shift-right-x"), i18n("shift right X"), 
cartesianPlotNavigationGroup);
        shiftRightXAction->setData(CartesianPlot::ShiftRightX);
 -      shiftUpYAction = new KAction(KIcon("labplot-shift-up-y"), i18n("shift 
up Y"), cartesianPlotNavigationGroup);
 +      shiftUpYAction = new QAction(QIcon::fromTheme("labplot-shift-up-y"), 
i18n("shift up Y"), cartesianPlotNavigationGroup);
        shiftUpYAction->setData(CartesianPlot::ShiftUpY);
 -      shiftDownYAction = new KAction(KIcon("labplot-shift-down-y"), 
i18n("shift down Y"), cartesianPlotNavigationGroup);
 +      shiftDownYAction = new 
QAction(QIcon::fromTheme("labplot-shift-down-y"), i18n("shift down Y"), 
cartesianPlotNavigationGroup);
        shiftDownYAction->setData(CartesianPlot::ShiftDownY);
  
        connect(cartesianPlotNavigationGroup, SIGNAL(triggered(QAction*)), 
SLOT(cartesianPlotNavigationChanged(QAction*)));
diff --cc src/kdefrontend/dockwidgets/XYInterpolationCurveDock.cpp
index bf89e91,f9f46c4..dd1b07c
--- a/src/kdefrontend/dockwidgets/XYInterpolationCurveDock.cpp
+++ b/src/kdefrontend/dockwidgets/XYInterpolationCurveDock.cpp
@@@ -84,35 -84,20 +84,20 @@@ void XYInterpolationCurveDock::setupGen
        cbYDataColumn = new TreeViewComboBox(generalTab);
        gridLayout->addWidget(cbYDataColumn, 5, 3, 1, 2);
  
-       uiGeneralTab.cbType->addItem(i18n("linear"));
-       uiGeneralTab.cbType->addItem(i18n("polynomial"));
-       uiGeneralTab.cbType->addItem(i18n("cubic spline (natural)"));
-       uiGeneralTab.cbType->addItem(i18n("cubic spline (periodic)"));
-       uiGeneralTab.cbType->addItem(i18n("Akima-spline (natural)"));
-       uiGeneralTab.cbType->addItem(i18n("Akima-spline (periodic)"));
-       uiGeneralTab.cbType->addItem(i18n("Steffen spline"));
-       uiGeneralTab.cbType->addItem(i18n("cosine"));
-       uiGeneralTab.cbType->addItem(i18n("exponential"));
-       uiGeneralTab.cbType->addItem(i18n("piecewise cubic Hermite (PCH)"));
-       uiGeneralTab.cbType->addItem(i18n("rational functions"));
+       for(int i=0; i < NSL_INTERP_TYPE_COUNT; i++)
+               uiGeneralTab.cbType->addItem(i18n(nsl_interp_type_name[i]));
  #if GSL_MAJOR_VERSION < 2
-       // disable Steffen spline
+       // disable Steffen spline item
        const QStandardItemModel* model = qobject_cast<const 
QStandardItemModel*>(uiGeneralTab.cbType->model());
-       QStandardItem* item = model->item(XYInterpolationCurve::Steffen);
+       QStandardItem* item = model->item(nsl_interp_type_steffen);
        item->setFlags(item->flags() & 
~(Qt::ItemIsSelectable|Qt::ItemIsEnabled));
  #endif
- 
-       uiGeneralTab.cbVariant->addItem(i18n("finite differences"));
-       uiGeneralTab.cbVariant->addItem(i18n("Catmull-Rom"));
-       uiGeneralTab.cbVariant->addItem(i18n("cardinal"));
-       uiGeneralTab.cbVariant->addItem(i18n("Kochanek-Bartels (TCB)"));
- 
-       uiGeneralTab.cbEval->addItem(i18n("function"));
-       uiGeneralTab.cbEval->addItem(i18n("derivative"));
-       uiGeneralTab.cbEval->addItem(i18n("second derivative"));
-       uiGeneralTab.cbEval->addItem(i18n("integral"));
+       for(int i=0; i < NSL_INTERP_PCH_VARIANT_COUNT; i++)
+               
uiGeneralTab.cbVariant->addItem(i18n(nsl_interp_pch_variant_name[i]));
+       for(int i=0; i < NSL_INTERP_EVALUATE_COUNT; i++)
+               uiGeneralTab.cbEval->addItem(i18n(nsl_interp_evaluate_name[i]));
  
 -      uiGeneralTab.pbRecalculate->setIcon(KIcon("run-build"));
 +      uiGeneralTab.pbRecalculate->setIcon(QIcon::fromTheme("run-build"));
  
        QHBoxLayout* layout = new QHBoxLayout(ui.tabGeneral);
        layout->setMargin(0);
diff --cc src/kdefrontend/dockwidgets/XYSmoothCurveDock.cpp
index 62cb5f9,601d755..5a7d3cf
--- a/src/kdefrontend/dockwidgets/XYSmoothCurveDock.cpp
+++ b/src/kdefrontend/dockwidgets/XYSmoothCurveDock.cpp
@@@ -85,34 -85,16 +85,16 @@@ void XYSmoothCurveDock::setupGeneral() 
        cbYDataColumn = new TreeViewComboBox(generalTab);
        gridLayout->addWidget(cbYDataColumn, 5, 3, 1, 2);
  
-       uiGeneralTab.cbType->addItem(i18n("moving average (central)"));
-       uiGeneralTab.cbType->addItem(i18n("moving average (lagged)"));
-       uiGeneralTab.cbType->addItem(i18n("percentile"));
-       uiGeneralTab.cbType->addItem(i18n("Savitzky-Golay"));
- //    uiGeneralTab.cbType->addItem(i18n("LOWESS/LOESS"));
- //    etc.
- 
-       uiGeneralTab.cbWeight->addItem(i18n("uniform (rectangular)"));
-       uiGeneralTab.cbWeight->addItem(i18n("triangular"));
-       uiGeneralTab.cbWeight->addItem(i18n("binomial"));
-       uiGeneralTab.cbWeight->addItem(i18n("parabolic (Epanechnikov)"));
-       uiGeneralTab.cbWeight->addItem(i18n("quartic (biweight)"));
-       uiGeneralTab.cbWeight->addItem(i18n("triweight"));
-       uiGeneralTab.cbWeight->addItem(i18n("tricube"));
-       uiGeneralTab.cbWeight->addItem(i18n("cosine"));
- // TODO: IIR  -> np="all"?
- //    uiGeneralTab.cbWeight->addItem(i18n("exponential"));
- //    uiGeneralTab.cbWeight->addItem(i18n("Gaussian"));
- //    etc. -> see nsl_sf_kernel
- 
-       uiGeneralTab.cbMode->addItem(i18n("none"));
-       uiGeneralTab.cbMode->addItem(i18n("interpolating"));
-       uiGeneralTab.cbMode->addItem(i18n("mirror"));
-       uiGeneralTab.cbMode->addItem(i18n("nearest"));
-       uiGeneralTab.cbMode->addItem(i18n("constant"));
-       uiGeneralTab.cbMode->addItem(i18n("periodic"));
+       for(int i=0; i < NSL_SMOOTH_TYPE_COUNT; i++)
+               uiGeneralTab.cbType->addItem(i18n(nsl_smooth_type_name[i]));
+ 
+       for(int i=0; i < NSL_SMOOTH_WEIGHT_TYPE_COUNT; i++)
+               
uiGeneralTab.cbWeight->addItem(i18n(nsl_smooth_weight_type_name[i]));
+ 
+       for(int i=0; i < NSL_SMOOTH_PAD_MODE_COUNT; i++)
+               uiGeneralTab.cbMode->addItem(i18n(nsl_smooth_pad_mode_name[i]));
  
 -      uiGeneralTab.pbRecalculate->setIcon(KIcon("run-build"));
 +      uiGeneralTab.pbRecalculate->setIcon(QIcon::fromTheme("run-build"));
  
        QHBoxLayout* layout = new QHBoxLayout(ui.tabGeneral);
        layout->setMargin(0);
_______________________________________________
kde-doc-english mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kde-doc-english

Reply via email to