6#include <QtCore/QObject>
7#include <QtCore/QPointer>
8#include <QtWidgets/QLabel>
9#include <QtWidgets/QLineEdit>
12#include <istd/TRange.h>
13#include <istd/TPointerVector.h>
14#include <imod/TModelWrap.h>
15#include <imod/TSingleModelObserverBase.h>
16#include <iqtgui/TGuiObserverWrap.h>
17#include <iprm/INameParam.h>
19#include <imtgui/ILayoutFittableModelEditor.h>
26class CNameLayoutFittableEditorGui:
28 public ILayoutFittableModelEditor,
29 public imod::TSingleModelObserverBase<iprm::INameParam>
34 typedef imod::TSingleModelObserverBase<iprm::INameParam> BaseClass;
36 CNameLayoutFittableEditorGui(QObject* parentPtr =
nullptr);
39 virtual bool PlaceWidgetToGridLayout(QGridLayout& layout,
int rowIndex = -1,
int columnIndex = 1)
override;
42 virtual bool OnModelAttached(imod::IModel* modelPtr, istd::IChangeable::ChangeSet& changeMask)
override;
45 virtual void UpdateEditor(
const istd::IChangeable::ChangeSet& changeSet)
override;
46 virtual void UpdateModelFromEditor()
const override;
47 virtual bool IsReadOnly()
const override;
48 virtual void SetReadOnly(
bool state)
override;
52 virtual void OnUpdate(
const istd::IChangeable::ChangeSet& changeSet)
override;
55 void OnObjectNameChanged(
const QString newObjectName);
56 void OnInputValueChanged();
59 QPointer<QLineEdit> m_nameLineEditPtr;