mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#3883 Annotations. Validate line thickness
This commit is contained in:
parent
024aa8af51
commit
a2e2907e41
@ -19,6 +19,29 @@
|
||||
#include "RimAnnotationLineAppearance.h"
|
||||
#include "RimAnnotationCollection.h"
|
||||
|
||||
#include "RiaStdStringTools.h"
|
||||
|
||||
#include "QValidator.h"
|
||||
|
||||
#include "cafPdmUiLineEditor.h"
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
class ThicknessValidator : public QValidator
|
||||
{
|
||||
public:
|
||||
State validate(QString &input, int &pos) const override
|
||||
{
|
||||
if (input.isEmpty()) return State::Intermediate;
|
||||
|
||||
int val = RiaStdStringTools::toInt(input.toStdString());
|
||||
if (val > 0 && val < 8) return State::Acceptable;
|
||||
else return State::Invalid;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
namespace caf
|
||||
{
|
||||
template<>
|
||||
@ -108,6 +131,23 @@ void RimAnnotationLineAppearance::fieldChangedByUi(const caf::PdmFieldHandle* ch
|
||||
annColl->scheduleRedrawOfRelevantViews();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimAnnotationLineAppearance::defineEditorAttribute(const caf::PdmFieldHandle* field,
|
||||
QString uiConfigName,
|
||||
caf::PdmUiEditorAttribute* attribute)
|
||||
{
|
||||
if (field == &m_thickness)
|
||||
{
|
||||
auto myAttr = dynamic_cast<caf::PdmUiLineEditorAttribute*>(attribute);
|
||||
if (myAttr)
|
||||
{
|
||||
myAttr->validator = new ThicknessValidator();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CAF_PDM_SOURCE_INIT(RimPolylineAppearance, "RimPolylineAppearance");
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -52,6 +52,9 @@ public:
|
||||
protected:
|
||||
void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
|
||||
void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
|
||||
void defineEditorAttribute(const caf::PdmFieldHandle* field,
|
||||
QString uiConfigName,
|
||||
caf::PdmUiEditorAttribute* attribute) override;
|
||||
|
||||
private:
|
||||
caf::PdmField<cvf::Color3f> m_color;
|
||||
|
Loading…
Reference in New Issue
Block a user