summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-06-08 11:32:38 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-06-08 13:42:51 +0200
commit465fedc3501284cc5db43b03163d5bd9fc344cd7 (patch)
tree09dfa4924ba49326b0788f272577e95d274f1895 /vcl
parenta7db7f3ce699a46ce7e9eafdf4388a3213264464 (diff)
sync tristate/inconsistent feature
Change-Id: Id1107f4fb1f51f377ad546f9b673f9037fee1538 Reviewed-on: https://gerrit.libreoffice.org/55459 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/app/salvtables.cxx3
-rw-r--r--vcl/source/window/builder.cxx3
2 files changed, 6 insertions, 0 deletions
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 443e562192e8..0772b53943ee 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -1129,6 +1129,7 @@ public:
virtual void set_active(bool active) override
{
m_bBlockNotify = true;
+ m_xCheckButton->EnableTriState(false);
m_xCheckButton->Check(active);
m_bBlockNotify = false;
}
@@ -1141,6 +1142,7 @@ public:
virtual void set_inconsistent(bool inconsistent) override
{
m_bBlockNotify = true;
+ m_xCheckButton->EnableTriState(true);
m_xCheckButton->SetState(inconsistent ? TRISTATE_INDET : TRISTATE_FALSE);
m_bBlockNotify = false;
}
@@ -1160,6 +1162,7 @@ IMPL_LINK_NOARG(SalInstanceCheckButton, ToggleHdl, CheckBox&, void)
{
if (m_bBlockNotify)
return;
+ m_xCheckButton->EnableTriState(false);
signal_toggled();
}
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 72f41efad638..8ba726cfdfed 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -1550,7 +1550,10 @@ VclPtr<vcl::Window> VclBuilder::makeObject(vcl::Window *pParent, const OString &
else
xCheckBox = VclPtr<CheckBox>::Create(pParent, nBits);
if (bIsTriState)
+ {
+ xCheckBox->EnableTriState(true);
xCheckBox->SetState(TRISTATE_INDET);
+ }
xCheckBox->SetImageAlign(ImageAlign::Left); //default to left
xWindow = xCheckBox;