Kaydet (Commit) 766e0a09 authored tarafından Caolán McNamara's avatar Caolán McNamara Kaydeden (comit) Andras Timar

Resolves: tdf#95352 resize the columns when the edits reposition

instead of assuming they are in their final position when the
top level dialog resizes. Cause there's a timer/idle involved
so the final position isn't known yet

(cherry picked from commit d4d4e00a)

Change-Id: I713e938b0e275f181514315cb4ce4531f36191ca

loplugin:vclwidgets

(cherry picked from commit 4882664e)

Change-Id: I3e5d88bdc2ecae6164c75da8ddf1b8cfe0ed325f
Reviewed-on: https://gerrit.libreoffice.org/19796Reviewed-by: 's avatarMiklos Vajna <vmiklos@collabora.co.uk>
Tested-by: 's avatarMiklos Vajna <vmiklos@collabora.co.uk>
(cherry picked from commit 6213ce4a)
üst a50165a9
...@@ -183,21 +183,39 @@ public: ...@@ -183,21 +183,39 @@ public:
class AutoCorrEdit : public Edit class AutoCorrEdit : public Edit
{ {
Link<> aActionLink; Link<> aActionLink;
bool bSpaces; VclPtr<SvTabListBox> m_xReplaceTLB;
sal_Int32 m_nCol;
bool bSpaces;
public: void dispose() override;
AutoCorrEdit(vcl::Window* pParent, const ResId& rResId) :
Edit(pParent, rResId), bSpaces(false){} public:
AutoCorrEdit(vcl::Window* pParent) : AutoCorrEdit(vcl::Window* pParent, const ResId& rResId)
Edit(pParent), bSpaces(false){} : Edit(pParent, rResId)
, m_nCol(0)
, bSpaces(false)
{
}
AutoCorrEdit(vcl::Window* pParent)
: Edit(pParent)
, m_nCol(0)
, bSpaces(false)
{
}
virtual ~AutoCorrEdit();
void SetActionHdl( const Link<>& rLink ) void SetActionHdl( const Link<>& rLink )
{ aActionLink = rLink;} { aActionLink = rLink;}
void ConnectColumn(const VclPtr<SvTabListBox>& rTable, sal_Int32 nCol);
void SetSpaces(bool bSet) void SetSpaces(bool bSet)
{bSpaces = bSet;} {bSpaces = bSet;}
virtual void KeyInput( const KeyEvent& rKEvent ) SAL_OVERRIDE; virtual void KeyInput( const KeyEvent& rKEvent ) SAL_OVERRIDE;
virtual void Resize() SAL_OVERRIDE;
}; };
// class OfaAutocorrReplacePage ------------------------------------------ // class OfaAutocorrReplacePage ------------------------------------------
...@@ -259,7 +277,6 @@ private: ...@@ -259,7 +277,6 @@ private:
LanguageType eOldLanguage, LanguageType eOldLanguage,
LanguageType eNewLanguage); LanguageType eNewLanguage);
void setTabs();
public: public:
OfaAutocorrReplacePage( vcl::Window* pParent, const SfxItemSet& rSet ); OfaAutocorrReplacePage( vcl::Window* pParent, const SfxItemSet& rSet );
virtual ~OfaAutocorrReplacePage(); virtual ~OfaAutocorrReplacePage();
...@@ -271,8 +288,6 @@ public: ...@@ -271,8 +288,6 @@ public:
virtual void Reset( const SfxItemSet* rSet ) SAL_OVERRIDE; virtual void Reset( const SfxItemSet* rSet ) SAL_OVERRIDE;
virtual void ActivatePage( const SfxItemSet& ) SAL_OVERRIDE; virtual void ActivatePage( const SfxItemSet& ) SAL_OVERRIDE;
virtual sfxpg DeactivatePage( SfxItemSet* pSet = 0 ) SAL_OVERRIDE; virtual sfxpg DeactivatePage( SfxItemSet* pSet = 0 ) SAL_OVERRIDE;
virtual void Resize() SAL_OVERRIDE;
virtual void StateChanged(StateChangedType nStateChange) SAL_OVERRIDE;
void SetLanguage(LanguageType eSet); void SetLanguage(LanguageType eSet);
void DeleteEntry(const OUString& sShort, const OUString& sLong); void DeleteEntry(const OUString& sShort, const OUString& sLong);
......
...@@ -906,28 +906,9 @@ OfaAutocorrReplacePage::OfaAutocorrReplacePage( vcl::Window* pParent, ...@@ -906,28 +906,9 @@ OfaAutocorrReplacePage::OfaAutocorrReplacePage( vcl::Window* pParent,
m_pReplaceED->SetSpaces(true); m_pReplaceED->SetSpaces(true);
m_pShortED->SetSpaces(true); m_pShortED->SetSpaces(true);
}
void OfaAutocorrReplacePage::setTabs()
{
m_pReplaceTLB->SetTab(0, m_pShortED->GetPosPixel().X(), MAP_PIXEL);
m_pReplaceTLB->SetTab(1, m_pReplaceED->GetPosPixel().X(), MAP_PIXEL);
}
void OfaAutocorrReplacePage::StateChanged(StateChangedType nStateChange)
{
SfxTabPage::StateChanged(nStateChange);
if (nStateChange == StateChangedType::InitShow) m_pShortED->ConnectColumn(m_pReplaceTLB, 0);
{ m_pReplaceED->ConnectColumn(m_pReplaceTLB, 1);
setTabs();
}
}
void OfaAutocorrReplacePage::Resize()
{
SfxTabPage::Resize();
setTabs();
} }
OfaAutocorrReplacePage::~OfaAutocorrReplacePage() OfaAutocorrReplacePage::~OfaAutocorrReplacePage()
...@@ -1752,6 +1733,22 @@ IMPL_LINK(OfaAutocorrExceptPage, ModifyHdl, Edit*, pEdt) ...@@ -1752,6 +1733,22 @@ IMPL_LINK(OfaAutocorrExceptPage, ModifyHdl, Edit*, pEdt)
VCL_BUILDER_FACTORY(AutoCorrEdit) VCL_BUILDER_FACTORY(AutoCorrEdit)
void AutoCorrEdit::dispose()
{
m_xReplaceTLB.disposeAndClear();
Edit::dispose();
}
AutoCorrEdit::~AutoCorrEdit() {
disposeOnce();
}
void AutoCorrEdit::ConnectColumn(const VclPtr<SvTabListBox>& rTable, sal_Int32 nCol)
{
m_xReplaceTLB = rTable;
m_nCol = nCol;
}
void AutoCorrEdit::KeyInput( const KeyEvent& rKEvt ) void AutoCorrEdit::KeyInput( const KeyEvent& rKEvt )
{ {
const vcl::KeyCode aKeyCode = rKEvt.GetKeyCode(); const vcl::KeyCode aKeyCode = rKEvt.GetKeyCode();
...@@ -1767,6 +1764,14 @@ void AutoCorrEdit::KeyInput( const KeyEvent& rKEvt ) ...@@ -1767,6 +1764,14 @@ void AutoCorrEdit::KeyInput( const KeyEvent& rKEvt )
Edit::KeyInput(rKEvt); Edit::KeyInput(rKEvt);
} }
void AutoCorrEdit::Resize()
{
Edit::Resize();
if (!m_xReplaceTLB)
return;
m_xReplaceTLB->SetTab(m_nCol, GetPosPixel().X(), MAP_PIXEL);
}
enum OfaQuoteOptions enum OfaQuoteOptions
{ {
ADD_NONBRK_SPACE, ADD_NONBRK_SPACE,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment