summaryrefslogtreecommitdiff
path: root/cui/source/options/opthtml.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'cui/source/options/opthtml.cxx')
-rw-r--r--cui/source/options/opthtml.cxx242
1 files changed, 181 insertions, 61 deletions
diff --git a/cui/source/options/opthtml.cxx b/cui/source/options/opthtml.cxx
index fca286ddbb7a..f8d9619b1faf 100644
--- a/cui/source/options/opthtml.cxx
+++ b/cui/source/options/opthtml.cxx
@@ -18,31 +18,45 @@
*/
#include <svtools/langtab.hxx>
-#include <svtools/htmlcfg.hxx>
+#include <comphelper/configuration.hxx>
+#include <officecfg/Office/Common.hxx>
#include "opthtml.hxx"
OfaHtmlTabPage::OfaHtmlTabPage(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rSet)
- : SfxTabPage(pPage, pController, "cui/ui/opthtmlpage.ui", "OptHtmlPage", &rSet)
- , m_xSize1NF(m_xBuilder->weld_spin_button("size1"))
- , m_xSize2NF(m_xBuilder->weld_spin_button("size2"))
- , m_xSize3NF(m_xBuilder->weld_spin_button("size3"))
- , m_xSize4NF(m_xBuilder->weld_spin_button("size4"))
- , m_xSize5NF(m_xBuilder->weld_spin_button("size5"))
- , m_xSize6NF(m_xBuilder->weld_spin_button("size6"))
- , m_xSize7NF(m_xBuilder->weld_spin_button("size7"))
- , m_xNumbersEnglishUSCB(m_xBuilder->weld_check_button("numbersenglishus"))
- , m_xUnknownTagCB(m_xBuilder->weld_check_button("unknowntag"))
- , m_xIgnoreFontNamesCB(m_xBuilder->weld_check_button("ignorefontnames"))
- , m_xStarBasicCB(m_xBuilder->weld_check_button("starbasic"))
- , m_xStarBasicWarningCB(m_xBuilder->weld_check_button("starbasicwarning"))
- , m_xPrintExtensionCB(m_xBuilder->weld_check_button("printextension"))
- , m_xSaveGrfLocalCB(m_xBuilder->weld_check_button("savegrflocal"))
- , m_xCharSetLB(new SvxTextEncodingBox(m_xBuilder->weld_combo_box("charset")))
+ : SfxTabPage(pPage, pController, u"cui/ui/opthtmlpage.ui"_ustr, u"OptHtmlPage"_ustr, &rSet)
+ , m_xSize1NF(m_xBuilder->weld_spin_button(u"size1"_ustr))
+ , m_xSize1Img(m_xBuilder->weld_widget(u"locksize1"_ustr))
+ , m_xSize2NF(m_xBuilder->weld_spin_button(u"size2"_ustr))
+ , m_xSize2Img(m_xBuilder->weld_widget(u"locksize2"_ustr))
+ , m_xSize3NF(m_xBuilder->weld_spin_button(u"size3"_ustr))
+ , m_xSize3Img(m_xBuilder->weld_widget(u"locksize3"_ustr))
+ , m_xSize4NF(m_xBuilder->weld_spin_button(u"size4"_ustr))
+ , m_xSize4Img(m_xBuilder->weld_widget(u"locksize4"_ustr))
+ , m_xSize5NF(m_xBuilder->weld_spin_button(u"size5"_ustr))
+ , m_xSize5Img(m_xBuilder->weld_widget(u"locksize5"_ustr))
+ , m_xSize6NF(m_xBuilder->weld_spin_button(u"size6"_ustr))
+ , m_xSize6Img(m_xBuilder->weld_widget(u"locksize6"_ustr))
+ , m_xSize7NF(m_xBuilder->weld_spin_button(u"size7"_ustr))
+ , m_xSize7Img(m_xBuilder->weld_widget(u"locksize7"_ustr))
+ , m_xNumbersEnglishUSCB(m_xBuilder->weld_check_button(u"numbersenglishus"_ustr))
+ , m_xNumbersEnglishUSImg(m_xBuilder->weld_widget(u"locknumbersenglishus"_ustr))
+ , m_xUnknownTagCB(m_xBuilder->weld_check_button(u"unknowntag"_ustr))
+ , m_xUnknownTagImg(m_xBuilder->weld_widget(u"lockunknowntag"_ustr))
+ , m_xIgnoreFontNamesCB(m_xBuilder->weld_check_button(u"ignorefontnames"_ustr))
+ , m_xIgnoreFontNamesImg(m_xBuilder->weld_widget(u"lockignorefontnames"_ustr))
+ , m_xStarBasicCB(m_xBuilder->weld_check_button(u"starbasic"_ustr))
+ , m_xStarBasicImg(m_xBuilder->weld_widget(u"lockstarbasic"_ustr))
+ , m_xStarBasicWarningCB(m_xBuilder->weld_check_button(u"starbasicwarning"_ustr))
+ , m_xStarBasicWarningImg(m_xBuilder->weld_widget(u"lockstarbasicwarning"_ustr))
+ , m_xPrintExtensionCB(m_xBuilder->weld_check_button(u"printextension"_ustr))
+ , m_xPrintExtensionImg(m_xBuilder->weld_widget(u"lockprintextension"_ustr))
+ , m_xSaveGrfLocalCB(m_xBuilder->weld_check_button(u"savegrflocal"_ustr))
+ , m_xSaveGrfLocalImg(m_xBuilder->weld_widget(u"locksavegrflocal"_ustr))
{
// replace placeholder with UI string from language list
OUString aText(m_xNumbersEnglishUSCB->get_label());
- OUString aPlaceholder("%ENGLISHUSLOCALE");
+ OUString aPlaceholder(u"%ENGLISHUSLOCALE"_ustr);
sal_Int32 nPos;
if ((nPos = aText.indexOf( aPlaceholder)) != -1)
{
@@ -55,9 +69,6 @@ OfaHtmlTabPage::OfaHtmlTabPage(weld::Container* pPage, weld::DialogController* p
}
m_xStarBasicCB->connect_toggled(LINK(this, OfaHtmlTabPage, CheckBoxHdl_Impl));
-
- // initialize the characterset listbox
- m_xCharSetLB->FillWithMimeAndSelectBest();
}
OfaHtmlTabPage::~OfaHtmlTabPage()
@@ -70,70 +81,183 @@ std::unique_ptr<SfxTabPage> OfaHtmlTabPage::Create( weld::Container* pPage, weld
return std::make_unique<OfaHtmlTabPage>(pPage, pController, *rAttrSet);
}
+OUString OfaHtmlTabPage::GetAllStrings()
+{
+ OUString sAllStrings;
+ OUString labels[] = { u"label1"_ustr, u"label2"_ustr, u"label3"_ustr, u"size1FT"_ustr, u"size2FT"_ustr,
+ u"size3FT"_ustr, u"size4FT"_ustr, u"size5FT"_ustr, u"size6FT"_ustr, u"size7FT"_ustr };
+
+ for (const auto& label : labels)
+ {
+ if (const auto& pString = m_xBuilder->weld_label(label))
+ sAllStrings += pString->get_label() + " ";
+ }
+
+ OUString checkButton[] = { u"numbersenglishus"_ustr, u"unknowntag"_ustr, u"ignorefontnames"_ustr, u"starbasic"_ustr,
+ u"starbasicwarning"_ustr, u"printextension"_ustr, u"savegrflocal"_ustr };
+
+ for (const auto& check : checkButton)
+ {
+ if (const auto& pString = m_xBuilder->weld_check_button(check))
+ sAllStrings += pString->get_label() + " ";
+ }
+
+ return sAllStrings.replaceAll("_", "");
+}
+
bool OfaHtmlTabPage::FillItemSet( SfxItemSet* )
{
- SvxHtmlOptions& rHtmlOpt = SvxHtmlOptions::Get();
+ std::shared_ptr<comphelper::ConfigurationChanges> xChanges = comphelper::ConfigurationChanges::create();
if(m_xSize1NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(0, static_cast<sal_uInt16>(m_xSize1NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_1::set(
+ static_cast<sal_uInt16>(m_xSize1NF->get_value()), xChanges);
if(m_xSize2NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(1, static_cast<sal_uInt16>(m_xSize2NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_2::set(
+ static_cast<sal_uInt16>(m_xSize2NF->get_value()), xChanges);
if(m_xSize3NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(2, static_cast<sal_uInt16>(m_xSize3NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_3::set(
+ static_cast<sal_uInt16>(m_xSize3NF->get_value()), xChanges);
if(m_xSize4NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(3, static_cast<sal_uInt16>(m_xSize4NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_4::set(
+ static_cast<sal_uInt16>(m_xSize4NF->get_value()), xChanges);
if(m_xSize5NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(4, static_cast<sal_uInt16>(m_xSize5NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_5::set(
+ static_cast<sal_uInt16>(m_xSize5NF->get_value()), xChanges);
if(m_xSize6NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(5, static_cast<sal_uInt16>(m_xSize6NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_6::set(
+ static_cast<sal_uInt16>(m_xSize6NF->get_value()), xChanges);
if(m_xSize7NF->get_value_changed_from_saved())
- rHtmlOpt.SetFontSize(6, static_cast<sal_uInt16>(m_xSize7NF->get_value()));
+ officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_7::set(
+ static_cast<sal_uInt16>(m_xSize7NF->get_value()), xChanges);
if(m_xNumbersEnglishUSCB->get_state_changed_from_saved())
- rHtmlOpt.SetNumbersEnglishUS(m_xNumbersEnglishUSCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Import::NumbersEnglishUS::set(
+ m_xNumbersEnglishUSCB->get_active(), xChanges);
if(m_xUnknownTagCB->get_state_changed_from_saved())
- rHtmlOpt.SetImportUnknown(m_xUnknownTagCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Import::UnknownTag::set(
+ m_xUnknownTagCB->get_active(), xChanges);
if(m_xIgnoreFontNamesCB->get_state_changed_from_saved())
- rHtmlOpt.SetIgnoreFontFamily(m_xIgnoreFontNamesCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Import::FontSetting::set(
+ m_xIgnoreFontNamesCB->get_active(), xChanges);
if(m_xStarBasicCB->get_state_changed_from_saved())
- rHtmlOpt.SetStarBasic(m_xStarBasicCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Export::Basic::set(
+ m_xStarBasicCB->get_active(), xChanges);
if(m_xStarBasicWarningCB->get_state_changed_from_saved())
- rHtmlOpt.SetStarBasicWarning(m_xStarBasicWarningCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Export::Warning::set(
+ m_xStarBasicWarningCB->get_active(), xChanges);
if(m_xSaveGrfLocalCB->get_state_changed_from_saved())
- rHtmlOpt.SetSaveGraphicsLocal(m_xSaveGrfLocalCB->get_active());
+ officecfg::Office::Common::Filter::HTML::Export::LocalGraphic::set(
+ m_xSaveGrfLocalCB->get_active(), xChanges);
if(m_xPrintExtensionCB->get_state_changed_from_saved())
- rHtmlOpt.SetPrintLayoutExtension(m_xPrintExtensionCB->get_active());
-
- if( m_xCharSetLB->GetSelectTextEncoding() != rHtmlOpt.GetTextEncoding() )
- rHtmlOpt.SetTextEncoding( m_xCharSetLB->GetSelectTextEncoding() );
+ officecfg::Office::Common::Filter::HTML::Export::PrintLayout::set(
+ m_xPrintExtensionCB->get_active(), xChanges);
+ xChanges->commit();
return false;
}
void OfaHtmlTabPage::Reset( const SfxItemSet* )
{
- SvxHtmlOptions& rHtmlOpt = SvxHtmlOptions::Get();
- m_xSize1NF->set_value(rHtmlOpt.GetFontSize(0));
- m_xSize2NF->set_value(rHtmlOpt.GetFontSize(1));
- m_xSize3NF->set_value(rHtmlOpt.GetFontSize(2));
- m_xSize4NF->set_value(rHtmlOpt.GetFontSize(3));
- m_xSize5NF->set_value(rHtmlOpt.GetFontSize(4));
- m_xSize6NF->set_value(rHtmlOpt.GetFontSize(5));
- m_xSize7NF->set_value(rHtmlOpt.GetFontSize(6));
- m_xNumbersEnglishUSCB->set_active(rHtmlOpt.IsNumbersEnglishUS());
- m_xUnknownTagCB->set_active(rHtmlOpt.IsImportUnknown());
- m_xIgnoreFontNamesCB->set_active(rHtmlOpt.IsIgnoreFontFamily());
-
- m_xStarBasicCB->set_active(rHtmlOpt.IsStarBasic());
- m_xStarBasicWarningCB->set_active(rHtmlOpt.IsStarBasicWarning());
- m_xStarBasicWarningCB->set_sensitive(!m_xStarBasicCB->get_active());
- m_xSaveGrfLocalCB->set_active(rHtmlOpt.IsSaveGraphicsLocal());
- m_xPrintExtensionCB->set_active(rHtmlOpt.IsPrintLayoutExtension());
+ m_xSize1NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_1::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_1::isReadOnly())
+ {
+ m_xSize1NF->set_sensitive(false);
+ m_xSize1Img->set_visible(true);
+ }
+
+ m_xSize2NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_2::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_2::isReadOnly())
+ {
+ m_xSize2NF->set_sensitive(false);
+ m_xSize2Img->set_visible(true);
+ }
+
+ m_xSize3NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_3::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_3::isReadOnly())
+ {
+ m_xSize3NF->set_sensitive(false);
+ m_xSize3Img->set_visible(true);
+ }
+
+ m_xSize4NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_4::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_4::isReadOnly())
+ {
+ m_xSize4NF->set_sensitive(false);
+ m_xSize4Img->set_visible(true);
+ }
+
+ m_xSize5NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_5::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_5::isReadOnly())
+ {
+ m_xSize5NF->set_sensitive(false);
+ m_xSize5Img->set_visible(true);
+ }
+
+ m_xSize6NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_6::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_6::isReadOnly())
+ {
+ m_xSize6NF->set_sensitive(false);
+ m_xSize6Img->set_visible(true);
+ }
+
+ m_xSize7NF->set_value(officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_7::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSize::Size_7::isReadOnly())
+ {
+ m_xSize7NF->set_sensitive(false);
+ m_xSize7Img->set_visible(true);
+ }
+
+ m_xNumbersEnglishUSCB->set_active(officecfg::Office::Common::Filter::HTML::Import::NumbersEnglishUS::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::NumbersEnglishUS::isReadOnly())
+ {
+ m_xNumbersEnglishUSCB->set_sensitive(false);
+ m_xNumbersEnglishUSImg->set_visible(true);
+ }
+
+ m_xUnknownTagCB->set_active(officecfg::Office::Common::Filter::HTML::Import::UnknownTag::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::UnknownTag::isReadOnly())
+ {
+ m_xUnknownTagCB->set_sensitive(false);
+ m_xUnknownTagImg->set_visible(true);
+ }
+
+ m_xIgnoreFontNamesCB->set_active(officecfg::Office::Common::Filter::HTML::Import::FontSetting::get());
+ if (officecfg::Office::Common::Filter::HTML::Import::FontSetting::isReadOnly())
+ {
+ m_xIgnoreFontNamesCB->set_sensitive(false);
+ m_xIgnoreFontNamesImg->set_visible(true);
+ }
+
+ m_xStarBasicCB->set_active(officecfg::Office::Common::Filter::HTML::Export::Basic::get());
+ if (officecfg::Office::Common::Filter::HTML::Export::Basic::isReadOnly())
+ {
+ m_xStarBasicCB->set_sensitive(false);
+ m_xStarBasicImg->set_visible(true);
+ }
+
+ m_xStarBasicWarningCB->set_active(officecfg::Office::Common::Filter::HTML::Export::Warning::get());
+ m_xStarBasicWarningCB->set_sensitive(!m_xStarBasicCB->get_active() && !officecfg::Office::Common::Filter::HTML::Export::Warning::isReadOnly());
+ m_xStarBasicWarningImg->set_visible(officecfg::Office::Common::Filter::HTML::Export::Warning::isReadOnly());
+
+ m_xSaveGrfLocalCB->set_active(officecfg::Office::Common::Filter::HTML::Export::LocalGraphic::get());
+ if (officecfg::Office::Common::Filter::HTML::Export::LocalGraphic::isReadOnly())
+ {
+ m_xSaveGrfLocalCB->set_sensitive(false);
+ m_xSaveGrfLocalImg->set_visible(true);
+ }
+
+ m_xPrintExtensionCB->set_active(officecfg::Office::Common::Filter::HTML::Export::PrintLayout::get());
+ if (officecfg::Office::Common::Filter::HTML::Export::PrintLayout::isReadOnly())
+ {
+ m_xPrintExtensionCB->set_sensitive(false);
+ m_xPrintExtensionImg->set_visible(true);
+ }
m_xPrintExtensionCB->save_state();
m_xStarBasicCB->save_state();
@@ -149,13 +273,9 @@ void OfaHtmlTabPage::Reset( const SfxItemSet* )
m_xNumbersEnglishUSCB->save_state();
m_xUnknownTagCB->save_state();
m_xIgnoreFontNamesCB->save_state();
-
- if( !rHtmlOpt.IsDefaultTextEncoding() &&
- m_xCharSetLB->GetSelectTextEncoding() != rHtmlOpt.GetTextEncoding() )
- m_xCharSetLB->SelectTextEncoding( rHtmlOpt.GetTextEncoding() );
}
-IMPL_LINK(OfaHtmlTabPage, CheckBoxHdl_Impl, weld::ToggleButton&, rBox, void)
+IMPL_LINK(OfaHtmlTabPage, CheckBoxHdl_Impl, weld::Toggleable&, rBox, void)
{
m_xStarBasicWarningCB->set_sensitive(!rBox.get_active());
}