tdf#157843 - UI: Part 8 - Unify lockdown behavior of Options dialog

for OpenCL Page.

Change-Id: I94c4a1afc7703de378ae65c0173d178954f647a9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158424
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
diff --git a/cui/source/options/optopencl.cxx b/cui/source/options/optopencl.cxx
index c3e1540..129cbc1 100644
--- a/cui/source/options/optopencl.cxx
+++ b/cui/source/options/optopencl.cxx
@@ -30,11 +30,13 @@ SvxOpenCLTabPage::SvxOpenCLTabPage(weld::Container* pPage, weld::DialogControlle
    : SfxTabPage(pPage, pController, "cui/ui/optopenclpage.ui", "OptOpenCLPage", &rSet)
    , maConfig(OpenCLConfig::get())
    , mxUseOpenCL(m_xBuilder->weld_check_button("useopencl"))
    , mxUseOpenImg(m_xBuilder->weld_widget("lockuseopencl"))
    , mxOclUsed(m_xBuilder->weld_label("openclused"))
    , mxOclNotUsed(m_xBuilder->weld_label("openclnotused"))
{
    mxUseOpenCL->set_active(maConfig.mbUseOpenCL);
    mxUseOpenCL->set_sensitive(!officecfg::Office::Common::Misc::UseOpenCL::isReadOnly());
    mxUseOpenImg->set_visible(officecfg::Office::Common::Misc::UseOpenCL::isReadOnly());

    bool bCLUsed = openclwrapper::GPUEnv::isOpenCLEnabled();
    mxOclUsed->set_visible(bCLUsed);
@@ -97,6 +99,7 @@ void SvxOpenCLTabPage::Reset( const SfxItemSet* )
    maConfig = OpenCLConfig::get();

    mxUseOpenCL->set_active(maConfig.mbUseOpenCL);
    mxUseOpenImg->set_visible(officecfg::Office::Common::Misc::UseOpenCL::isReadOnly());
    mxUseOpenCL->save_state();
}

diff --git a/cui/source/options/optopencl.hxx b/cui/source/options/optopencl.hxx
index 1fce5e3..e641424 100644
--- a/cui/source/options/optopencl.hxx
+++ b/cui/source/options/optopencl.hxx
@@ -27,6 +27,7 @@ private:
    OpenCLConfig maConfig;

    std::unique_ptr<weld::CheckButton> mxUseOpenCL;
    std::unique_ptr<weld::Widget> mxUseOpenImg;
    std::unique_ptr<weld::Label> mxOclUsed;
    std::unique_ptr<weld::Label> mxOclNotUsed;

diff --git a/cui/uiconfig/ui/optopenclpage.ui b/cui/uiconfig/ui/optopenclpage.ui
index ac5cac2..8014e37 100644
--- a/cui/uiconfig/ui/optopenclpage.ui
+++ b/cui/uiconfig/ui/optopenclpage.ui
@@ -1,32 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.16.1 -->
<!-- Generated with glade 3.38.2 -->
<interface domain="cui">
  <requires lib="gtk+" version="3.20"/>
  <object class="GtkFrame" id="OptOpenCLPage">
    <property name="visible">True</property>
    <property name="can_focus">False</property>
    <property name="can-focus">False</property>
    <property name="hexpand">True</property>
    <property name="border_width">6</property>
    <property name="label_xalign">0</property>
    <property name="shadow_type">none</property>
    <property name="border-width">6</property>
    <property name="label-xalign">0</property>
    <property name="shadow-type">none</property>
    <child>
      <object class="GtkBox" id="denylistbox">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="can-focus">False</property>
        <property name="margin-start">12</property>
        <property name="margin-top">6</property>
        <property name="hexpand">True</property>
        <property name="vexpand">True</property>
        <property name="orientation">vertical</property>
        <property name="spacing">12</property>
        <property name="margin-start">12</property>
        <property name="margin-top">6</property>
        <child>
          <object class="GtkCheckButton" id="useopencl">
            <property name="label" translatable="yes" context="optopenclpage|useopencl">Allow use of OpenCL</property>
          <!-- n-columns=2 n-rows=1 -->
          <object class="GtkGrid">
            <property name="visible">True</property>
            <property name="can_focus">True</property>
            <property name="receives_default">False</property>
            <property name="use_underline">True</property>
            <property name="draw_indicator">True</property>
            <property name="can-focus">False</property>
            <property name="hexpand">True</property>
            <property name="column-spacing">6</property>
            <child>
              <object class="GtkCheckButton" id="useopencl">
                <property name="label" translatable="yes" context="optopenclpage|useopencl">Allow use of OpenCL</property>
                <property name="visible">True</property>
                <property name="can-focus">True</property>
                <property name="receives-default">False</property>
                <property name="use-underline">True</property>
                <property name="draw-indicator">True</property>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockuseopencl">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
@@ -35,10 +61,9 @@
          </packing>
        </child>
        <child>
          <object class="GtkLabel" id="openclused">
            <property name="visible">False</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes" context="optopenclpage|openclused">OpenCL is available for use.</property>
          <object class="GtkLabel" id="openclnotused">
            <property name="can-focus">False</property>
            <property name="label" translatable="yes" context="optopenclpage|openclnotused">OpenCL is not used.</property>
          </object>
          <packing>
            <property name="expand">False</property>
@@ -47,10 +72,9 @@
          </packing>
        </child>
        <child>
          <object class="GtkLabel" id="openclnotused">
            <property name="visible">False</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes" context="optopenclpage|openclnotused">OpenCL is not used.</property>
          <object class="GtkLabel" id="openclused">
            <property name="can-focus">False</property>
            <property name="label" translatable="yes" context="optopenclpage|openclused">OpenCL is available for use.</property>
          </object>
          <packing>
            <property name="expand">False</property>
@@ -63,7 +87,7 @@
    <child type="label">
      <object class="GtkLabel" id="label1">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="can-focus">False</property>
        <property name="label" translatable="yes" context="optopenclpage|label1">OpenCL Options</property>
        <attributes>
          <attribute name="weight" value="bold"/>