include/vcl/texteng.hxx | 3 +-- include/vcl/vclenum.hxx | 7 +++++++ include/vcl/weld.hxx | 2 ++ vcl/inc/salvtables.hxx | 2 ++ vcl/source/app/salvtables.cxx | 20 ++++++++++++++++++++ vcl/unx/gtk3/gtk3gtkinst.cxx | 18 ++++++++++++++++++ 6 files changed, 50 insertions(+), 2 deletions(-)
New commits: commit 011a4932aa35475a81917d5931e2a0f3a43c7336 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Mon Jun 29 14:54:05 2020 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Tue Jun 30 10:33:28 2020 +0200 add set_alignment to Entry Change-Id: I004fb0e19c1bb25bdb5d11ba5d5d5f39b137874c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97423 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/include/vcl/texteng.hxx b/include/vcl/texteng.hxx index ee0ae62e0294..251325d195a0 100644 --- a/include/vcl/texteng.hxx +++ b/include/vcl/texteng.hxx @@ -34,6 +34,7 @@ #include <tools/gen.hxx> #include <tools/color.hxx> #include <vcl/font.hxx> +#include <vcl/vclenum.hxx> #include <com/sun/star/lang/Locale.hpp> #include <com/sun/star/uno/Reference.hxx> @@ -66,8 +67,6 @@ namespace i18n { class LocaleDataWrapper; -enum class TxtAlign { Left, Center, Right }; - typedef std::vector<TextView*> TextViews; class VCL_DLLPUBLIC TextEngine : public SfxBroadcaster diff --git a/include/vcl/vclenum.hxx b/include/vcl/vclenum.hxx index b5423b46e5de..3534fbd2815a 100644 --- a/include/vcl/vclenum.hxx +++ b/include/vcl/vclenum.hxx @@ -340,6 +340,13 @@ enum class DrawFrameStyle NWF = 0x0006, }; +enum class TxtAlign +{ + Left, + Center, + Right +}; + #endif // INCLUDED_VCL_VCLENUM_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index 6d72135b21ee..db13a45a7731 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -1509,6 +1509,8 @@ public: virtual void copy_clipboard() = 0; virtual void paste_clipboard() = 0; + virtual void set_alignment(TxtAlign eXAlign) = 0; + void save_value() { m_sSavedValue = get_text(); } OUString const& get_saved_value() const { return m_sSavedValue; } bool get_value_changed_from_saved() const { return m_sSavedValue != get_text(); } diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx index 527e3cd2b722..7e1e0dc9defa 100644 --- a/vcl/inc/salvtables.hxx +++ b/vcl/inc/salvtables.hxx @@ -607,6 +607,8 @@ public: virtual void paste_clipboard() override; + virtual void set_alignment(TxtAlign eXAlign) override; + virtual ~SalInstanceEntry() override; }; diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index a6012f4ca6a5..e9f0fedc8c97 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -3175,6 +3175,26 @@ void SalInstanceEntry::paste_clipboard() m_xEntry->Paste(); } +void SalInstanceEntry::set_alignment(TxtAlign eXAlign) +{ + WinBits nAlign(0); + switch (eXAlign) + { + case TxtAlign::Left: + nAlign = WB_LEFT; + break; + case TxtAlign::Center: + nAlign = WB_CENTER; + break; + case TxtAlign::Right: + nAlign = WB_RIGHT; + break; + } + WinBits nBits = m_xEntry->GetStyle(); + nBits &= ~(WB_LEFT | WB_CENTER | WB_RIGHT); + m_xEntry->SetStyle(nBits & nAlign); +} + SalInstanceEntry::~SalInstanceEntry() { if (m_aCursorPositionHdl.IsSet()) diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index 620cc74b5fae..8e6ed420a381 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -8864,6 +8864,24 @@ public: enable_notify_events(); } + virtual void set_alignment(TxtAlign eXAlign) override + { + gfloat xalign; + switch (eXAlign) + { + case TxtAlign::Left: + xalign = 0.0; + break; + case TxtAlign::Center: + xalign = 0.5; + break; + case TxtAlign::Right: + xalign = 1.0; + break; + } + gtk_entry_set_alignment(m_pEntry, xalign); + } + virtual ~GtkInstanceEntry() override { g_signal_handler_disconnect(m_pEntry, m_nActivateSignalId); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits