#4167 Implement option for inverting axes

This commit is contained in:
Gaute Lindkvist 2019-03-07 14:34:47 +01:00
parent d2393cb8a5
commit 804a196ce3
3 changed files with 14 additions and 1 deletions

View File

@ -621,6 +621,7 @@ void RimGridCrossPlot::updateAxisInQwt(RiaDefines::PlotAxis axisType)
m_qwtPlot->setAxisMaxMinor(axisProperties->qwtPlotAxisType(), 3); m_qwtPlot->setAxisMaxMinor(axisProperties->qwtPlotAxisType(), 3);
} }
} }
m_qwtPlot->axisScaleEngine(axisProperties->qwtPlotAxisType())->setAttribute(QwtScaleEngine::Inverted, axisProperties->isAxisInverted());
if (axisProperties->isAutoZoom()) if (axisProperties->isAutoZoom())
{ {

View File

@ -88,6 +88,7 @@ RimPlotAxisProperties::RimPlotAxisProperties()
CAF_PDM_InitField(&m_isAutoZoom, "AutoZoom", true, "Set Range Automatically", "", "", ""); CAF_PDM_InitField(&m_isAutoZoom, "AutoZoom", true, "Set Range Automatically", "", "", "");
CAF_PDM_InitField(&isLogarithmicScaleEnabled, "LogarithmicScale", false, "Logarithmic Scale", "", "", ""); CAF_PDM_InitField(&isLogarithmicScaleEnabled, "LogarithmicScale", false, "Logarithmic Scale", "", "", "");
CAF_PDM_InitField(&m_isAxisInverted, "AxisInverted", false, "Invert Axis", "", "", "");
updateOptionSensitivity(); updateOptionSensitivity();
} }
@ -185,6 +186,7 @@ void RimPlotAxisProperties::defineUiOrdering(QString uiConfigName, caf::PdmUiOrd
caf::PdmUiGroup& scaleGroup = *(uiOrdering.addNewGroup("Axis Values")); caf::PdmUiGroup& scaleGroup = *(uiOrdering.addNewGroup("Axis Values"));
scaleGroup.add(&isLogarithmicScaleEnabled); scaleGroup.add(&isLogarithmicScaleEnabled);
scaleGroup.add(&m_isAxisInverted);
scaleGroup.add(&numberFormat); scaleGroup.add(&numberFormat);
if (numberFormat() != NUMBER_FORMAT_AUTO) if (numberFormat() != NUMBER_FORMAT_AUTO)
@ -279,6 +281,14 @@ void RimPlotAxisProperties::setAutoZoom(bool enableAutoZoom)
m_isAutoZoom = enableAutoZoom; m_isAutoZoom = enableAutoZoom;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimPlotAxisProperties::isAxisInverted() const
{
return m_isAxisInverted();
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@ -65,6 +65,7 @@ public:
bool showUnitText() const; bool showUnitText() const;
bool isAutoZoom() const; bool isAutoZoom() const;
void setAutoZoom(bool enableAutoZoom); void setAutoZoom(bool enableAutoZoom);
bool isAxisInverted() const;
caf::PdmField<QString> customTitle; caf::PdmField<QString> customTitle;
caf::PdmField<int> titleFontSize; caf::PdmField<int> titleFontSize;
@ -80,7 +81,7 @@ public:
caf::PdmField<int> valuesFontSize; caf::PdmField<int> valuesFontSize;
bool isActive() const; bool isActive() const;
protected: protected:
void initAfterRead() override; void initAfterRead() override;
caf::PdmFieldHandle* userDescriptionField() override; caf::PdmFieldHandle* userDescriptionField() override;
@ -103,6 +104,7 @@ private:
caf::PdmField<bool> m_displayLongName; caf::PdmField<bool> m_displayLongName;
caf::PdmField<bool> m_displayUnitText; caf::PdmField<bool> m_displayUnitText;
caf::PdmField<bool> m_isAutoZoom; caf::PdmField<bool> m_isAutoZoom;
caf::PdmField<bool> m_isAxisInverted;
caf::PdmField<QString> m_name; caf::PdmField<QString> m_name;
QwtPlot::Axis m_axis; QwtPlot::Axis m_axis;