summaryrefslogtreecommitdiff
path: root/dbaccess/source/ui/control/FieldDescControl.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'dbaccess/source/ui/control/FieldDescControl.cxx')
-rw-r--r--dbaccess/source/ui/control/FieldDescControl.cxx16
1 files changed, 12 insertions, 4 deletions
diff --git a/dbaccess/source/ui/control/FieldDescControl.cxx b/dbaccess/source/ui/control/FieldDescControl.cxx
index bb10fb787f9f..28f3c9662500 100644
--- a/dbaccess/source/ui/control/FieldDescControl.cxx
+++ b/dbaccess/source/ui/control/FieldDescControl.cxx
@@ -78,6 +78,7 @@ OFieldDescControl::OFieldDescControl(weld::Container* pPage, OTableDesignHelpBar
, m_nEditWidth(50)
, pActFieldDescr(nullptr)
{
+ m_pHelp->connect_focus_out(LINK(this, OFieldDescControl, HelpFocusOut));
}
OFieldDescControl::~OFieldDescControl()
@@ -170,7 +171,7 @@ void OFieldDescControl::SetReadOnly( bool bReadOnly )
, m_xScale.get(), m_xColumnName.get()
, m_xType.get(), m_xAutoIncrementValue.get()
};
- weld::Widget* ppAggregatesText[] = { m_xRequiredText.get(), m_xNumTypeText.get()
+ weld::Widget* ppAggregatesText[] = { m_xRequiredText.get(), m_xNumTypeText.get()
, m_xAutoIncrementText.get(), m_xDefaultText.get()
, m_xTextLenText.get(), m_xLengthText.get()
, m_xScaleText.get(), m_xColumnNameText.get()
@@ -1145,8 +1146,10 @@ void OFieldDescControl::UpdateFormatSample(OFieldDescription const * pFieldDescr
m_xFormatSample->set_text(getControlDefault(pFieldDescr,false));
}
-void OFieldDescControl::GetFocus()
+void OFieldDescControl::GrabFocus()
{
+ m_xContainer->grab_focus();
+
// Set the Focus to the Control that has been active last
if (m_pLastFocusWindow)
{
@@ -1166,9 +1169,9 @@ void OFieldDescControl::implFocusLost(weld::Widget* _pWhich)
m_pHelp->SetHelpText( OUString() );
}
-void OFieldDescControl::LoseFocus()
+IMPL_LINK_NOARG(OFieldDescControl, HelpFocusOut, weld::Widget&, void)
{
- implFocusLost(nullptr);
+ m_pHelp->SetHelpText(OUString());
}
bool OFieldDescControl::IsFocusInEditableWidget() const
@@ -1190,6 +1193,11 @@ bool OFieldDescControl::IsFocusInEditableWidget() const
return false;
}
+bool OFieldDescControl::HasChildPathFocus() const
+{
+ return m_pActFocusWindow && m_pActFocusWindow->has_focus();
+}
+
bool OFieldDescControl::isCopyAllowed()
{
int nStartPos, nEndPos;