diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2019-11-30 17:48:32 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2019-12-01 14:57:16 +0100 |
commit | 7e403195e574be5174815a51cf5c42f06f76a87a (patch) | |
tree | c6147bcac095cd387f06dee63a25e15db6ca84c6 /svtools | |
parent | 7b3190eda387bcd897095205732f6752dedf01ef (diff) |
Introduce o3tl::optional as an alias for std::optional
...with a boost::optional fallback for Xcode < 10 (as std::optional is only
available starting with Xcode 10 according to
<https://en.cppreference.com/w/cpp/compiler_support>, and our baseline for iOS
and macOS is still Xcode 9.3 according to README.md). And mechanically rewrite
all code to use o3tl::optional instead of boost::optional.
One immediate benefit is that disabling -Wmaybe-uninitialized for GCC as per
fed7c3deb3f4ec81f78967c2d7f3c4554398cb9d "Slience bogus
-Werror=maybe-uninitialized" should no longer be necessary (and whose check
happened to no longer trigger for GCC 10 trunk, even though that compiler would
still emit bogus -Wmaybe-uninitialized for uses of boost::optional under
--enable-optimized, which made me ponder whether this switch from
boost::optional to std::optional would be a useful thing to do; I keep that
configure.ac check for now, though, and will only remove it in a follow up
commit).
Another longer-term benefit is that the code is now already in good shape for an
eventual switch to std::optional (a switch we would have done anyway once we no
longer need to support Xcode < 10).
Only desktop/qa/desktop_lib/test_desktop_lib.cxx heavily uses
boost::property_tree::ptree::get_child_optional returning boost::optional, so
let it keep using boost::optional for now.
After a number of preceding commits have paved the way for this change, this
commit is completely mechanical, done with
> git ls-files -z | grep -vz -e '^bin/find-unneeded-includes$' -e '^configure.ac$' -e '^desktop/qa/desktop_lib/test_desktop_lib.cxx$' -e '^dictionaries$' -e '^external/' -e '^helpcontent2$' -e '^include/IwyuFilter_include.yaml$' -e '^sc/IwyuFilter_sc.yaml$' -e '^solenv/gdb/boost/optional.py$' -e '^solenv/vs/LibreOffice.natvis$' -e '^translations$' -e '\.svg$' | xargs -0 sed -i -E -e 's|\<boost(/optional)?/optional\.hpp\>|o3tl/optional.hxx|g' -e 's/\<boost(\s*)::(\s*)(make_)?optional\>/o3tl\1::\2\3optional/g' -e 's/\<boost(\s*)::(\s*)none\>/o3tl\1::\2nullopt/g'
(before committing include/o3tl/optional.hxx, and relying on some GNU features).
It excludes some files where mention of boost::optional et al should apparently
not be changed (and the sub-repo directory stubs). It turned out that all uses
of boost::none across the code base were in combination with boost::optional, so
had all to be rewritten as o3tl::nullopt.
Change-Id: Ibfd9f4b3d5a8aee6e6eed310b988c4e5ffd8b11b
Reviewed-on: https://gerrit.libreoffice.org/84128
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'svtools')
-rw-r--r-- | svtools/inc/pch/precompiled_svt.hxx | 2 | ||||
-rw-r--r-- | svtools/source/misc/sampletext.cxx | 4 | ||||
-rw-r--r-- | svtools/source/table/gridtablerenderer.cxx | 14 | ||||
-rw-r--r-- | svtools/source/table/tablecontrol_impl.cxx | 40 | ||||
-rw-r--r-- | svtools/source/uno/svtxgridcontrol.cxx | 4 | ||||
-rw-r--r-- | svtools/source/uno/unocontroltablemodel.cxx | 42 | ||||
-rw-r--r-- | svtools/source/uno/unocontroltablemodel.hxx | 20 |
7 files changed, 63 insertions, 63 deletions
diff --git a/svtools/inc/pch/precompiled_svt.hxx b/svtools/inc/pch/precompiled_svt.hxx index 156ae9c81991..70ab87528f59 100644 --- a/svtools/inc/pch/precompiled_svt.hxx +++ b/svtools/inc/pch/precompiled_svt.hxx @@ -48,7 +48,7 @@ #include <unordered_map> #include <utility> #include <vector> -#include <boost/optional.hpp> +#include <o3tl/optional.hxx> #include <boost/property_tree/ptree.hpp> #endif // PCH_LEVEL >= 1 #if PCH_LEVEL >= 2 diff --git a/svtools/source/misc/sampletext.cxx b/svtools/source/misc/sampletext.cxx index 1d85d4a94d87..e62da1690090 100644 --- a/svtools/source/misc/sampletext.cxx +++ b/svtools/source/misc/sampletext.cxx @@ -705,7 +705,7 @@ static OUString makeRepresentativeTextForLanguage(LanguageType eLang) namespace { #if OSL_DEBUG_LEVEL > 0 - void lcl_dump_unicode_coverage(const boost::optional<std::bitset<vcl::UnicodeCoverage::MAX_UC_ENUM>> &roIn) + void lcl_dump_unicode_coverage(const o3tl::optional<std::bitset<vcl::UnicodeCoverage::MAX_UC_ENUM>> &roIn) { if (!roIn) { @@ -976,7 +976,7 @@ namespace SAL_INFO("svtools", "RESERVED5"); } - void lcl_dump_codepage_coverage(const boost::optional<std::bitset<vcl::CodePageCoverage::MAX_CP_ENUM>> &roIn) + void lcl_dump_codepage_coverage(const o3tl::optional<std::bitset<vcl::CodePageCoverage::MAX_CP_ENUM>> &roIn) { if (!roIn) { diff --git a/svtools/source/table/gridtablerenderer.cxx b/svtools/source/table/gridtablerenderer.cxx index 0f58e4dec291..f30a8e9e719e 100644 --- a/svtools/source/table/gridtablerenderer.cxx +++ b/svtools/source/table/gridtablerenderer.cxx @@ -203,7 +203,7 @@ namespace svt { namespace table namespace { - Color lcl_getEffectiveColor(boost::optional<Color> const& i_modelColor, + Color lcl_getEffectiveColor(o3tl::optional<Color> const& i_modelColor, StyleSettings const& i_styleSettings, Color const& (StyleSettings::*i_getDefaultColor) () const) { @@ -229,7 +229,7 @@ namespace svt { namespace table rRenderContext.DrawRect(_rArea); // delimiter lines at bottom/right - boost::optional<Color> aLineColor(m_pImpl->rModel.getLineColor()); + o3tl::optional<Color> aLineColor(m_pImpl->rModel.getLineColor()); Color const lineColor = !aLineColor ? _rStyle.GetSeparatorColor() : *aLineColor; rRenderContext.SetLineColor(lineColor); rRenderContext.DrawLine(_rArea.BottomLeft(), _rArea.BottomRight()); @@ -261,7 +261,7 @@ namespace svt { namespace table nDrawTextFlags |= DrawTextFlags::Disable; rRenderContext.DrawText( aTextRect, sHeaderText, nDrawTextFlags ); - boost::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); + o3tl::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); Color const lineColor = !aLineColor ? _rStyle.GetSeparatorColor() : *aLineColor; rRenderContext.SetLineColor( lineColor ); rRenderContext.DrawLine( _rArea.BottomRight(), _rArea.TopRight()); @@ -309,7 +309,7 @@ namespace svt { namespace table Color backgroundColor = _rStyle.GetFieldColor(); - boost::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); + o3tl::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); Color lineColor = !aLineColor ? _rStyle.GetSeparatorColor() : *aLineColor; Color const activeSelectionBackColor = lcl_getEffectiveColor(m_pImpl->rModel.getActiveSelectionBackColor(), @@ -325,7 +325,7 @@ namespace svt { namespace table } else { - boost::optional< std::vector<Color> > aRowColors = m_pImpl->rModel.getRowBackgroundColors(); + o3tl::optional< std::vector<Color> > aRowColors = m_pImpl->rModel.getRowBackgroundColors(); if (!aRowColors) { // use alternating default colors @@ -370,7 +370,7 @@ namespace svt { namespace table { rRenderContext.Push( PushFlags::LINECOLOR | PushFlags::TEXTCOLOR ); - boost::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); + o3tl::optional<Color> const aLineColor( m_pImpl->rModel.getLineColor() ); Color const lineColor = !aLineColor ? _rStyle.GetSeparatorColor() : *aLineColor; rRenderContext.SetLineColor(lineColor); rRenderContext.DrawLine(_rArea.BottomLeft(), _rArea.BottomRight()); @@ -428,7 +428,7 @@ namespace svt { namespace table if ( m_pImpl->bUseGridLines ) { - ::boost::optional< ::Color > aLineColor( m_pImpl->rModel.getLineColor() ); + ::o3tl::optional< ::Color > aLineColor( m_pImpl->rModel.getLineColor() ); ::Color lineColor = !aLineColor ? _rStyle.GetSeparatorColor() : *aLineColor; if ( _bSelected && !aLineColor ) diff --git a/svtools/source/table/tablecontrol_impl.cxx b/svtools/source/table/tablecontrol_impl.cxx index 8dfaf9d7450b..42e65a02b7a4 100644 --- a/svtools/source/table/tablecontrol_impl.cxx +++ b/svtools/source/table/tablecontrol_impl.cxx @@ -149,45 +149,45 @@ namespace svt { namespace table } virtual void addTableModelListener( const PTableModelListener& ) override {} virtual void removeTableModelListener( const PTableModelListener& ) override {} - virtual ::boost::optional< ::Color > getLineColor() const override + virtual ::o3tl::optional< ::Color > getLineColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getHeaderBackgroundColor() const override + virtual ::o3tl::optional< ::Color > getHeaderBackgroundColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getHeaderTextColor() const override + virtual ::o3tl::optional< ::Color > getHeaderTextColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getActiveSelectionBackColor() const override + virtual ::o3tl::optional< ::Color > getActiveSelectionBackColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getInactiveSelectionBackColor() const override + virtual ::o3tl::optional< ::Color > getInactiveSelectionBackColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getActiveSelectionTextColor() const override + virtual ::o3tl::optional< ::Color > getActiveSelectionTextColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getInactiveSelectionTextColor() const override + virtual ::o3tl::optional< ::Color > getInactiveSelectionTextColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getTextColor() const override + virtual ::o3tl::optional< ::Color > getTextColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::Color > getTextLineColor() const override + virtual ::o3tl::optional< ::Color > getTextLineColor() const override { - return ::boost::optional< ::Color >(); + return ::o3tl::optional< ::Color >(); } - virtual ::boost::optional< ::std::vector< ::Color > > getRowBackgroundColors() const override + virtual ::o3tl::optional< ::std::vector< ::Color > > getRowBackgroundColors() const override { - return ::boost::optional< ::std::vector< ::Color > >(); + return ::o3tl::optional< ::std::vector< ::Color > >(); } virtual css::style::VerticalAlignment getVerticalAlign() const override { diff --git a/svtools/source/uno/svtxgridcontrol.cxx b/svtools/source/uno/svtxgridcontrol.cxx index 98c212e13cb3..31f46d0d9d7a 100644 --- a/svtools/source/uno/svtxgridcontrol.cxx +++ b/svtools/source/uno/svtxgridcontrol.cxx @@ -452,7 +452,7 @@ void SVTXGridControl::impl_checkTableModelInit() namespace { - void lcl_convertColor( ::boost::optional< ::Color > const & i_color, Any & o_colorValue ) + void lcl_convertColor( ::o3tl::optional< ::Color > const & i_color, Any & o_colorValue ) { if ( !i_color ) o_colorValue.clear(); @@ -535,7 +535,7 @@ Any SVTXGridControl::getProperty( const OUString& PropertyName ) case BASEPROPERTY_GRID_ROW_BACKGROUND_COLORS: { - ::boost::optional< ::std::vector< ::Color > > aColors( m_xTableModel->getRowBackgroundColors() ); + ::o3tl::optional< ::std::vector< ::Color > > aColors( m_xTableModel->getRowBackgroundColors() ); if ( !aColors ) aPropertyValue.clear(); else diff --git a/svtools/source/uno/unocontroltablemodel.cxx b/svtools/source/uno/unocontroltablemodel.cxx index 9962969cc4a2..dce3b908d320 100644 --- a/svtools/source/uno/unocontroltablemodel.cxx +++ b/svtools/source/uno/unocontroltablemodel.cxx @@ -70,16 +70,16 @@ namespace svt { namespace table TableMetrics nRowHeight; TableMetrics nColumnHeaderHeight; TableMetrics nRowHeaderWidth; - ::boost::optional< ::Color > m_aGridLineColor; - ::boost::optional< ::Color > m_aHeaderBackgroundColor; - ::boost::optional< ::Color > m_aHeaderTextColor; - ::boost::optional< ::Color > m_aActiveSelectionBackColor; - ::boost::optional< ::Color > m_aInactiveSelectionBackColor; - ::boost::optional< ::Color > m_aActiveSelectionTextColor; - ::boost::optional< ::Color > m_aInactiveSelectionTextColor; - ::boost::optional< ::Color > m_aTextColor; - ::boost::optional< ::Color > m_aTextLineColor; - ::boost::optional< ::std::vector< ::Color > > m_aRowColors; + ::o3tl::optional< ::Color > m_aGridLineColor; + ::o3tl::optional< ::Color > m_aHeaderBackgroundColor; + ::o3tl::optional< ::Color > m_aHeaderTextColor; + ::o3tl::optional< ::Color > m_aActiveSelectionBackColor; + ::o3tl::optional< ::Color > m_aInactiveSelectionBackColor; + ::o3tl::optional< ::Color > m_aActiveSelectionTextColor; + ::o3tl::optional< ::Color > m_aInactiveSelectionTextColor; + ::o3tl::optional< ::Color > m_aTextColor; + ::o3tl::optional< ::Color > m_aTextLineColor; + ::o3tl::optional< ::std::vector< ::Color > > m_aRowColors; VerticalAlignment m_eVerticalAlign; bool bEnabled; ModellListeners m_aListeners; @@ -532,7 +532,7 @@ namespace svt { namespace table namespace { - void lcl_setColor( Any const & i_color, ::boost::optional< ::Color > & o_convertedColor ) + void lcl_setColor( Any const & i_color, ::o3tl::optional< ::Color > & o_convertedColor ) { if ( !i_color.hasValue() ) o_convertedColor.reset(); @@ -552,7 +552,7 @@ namespace svt { namespace table } - ::boost::optional< ::Color > UnoControlTableModel::getLineColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getLineColor() const { DBG_CHECK_ME(); return m_pImpl->m_aGridLineColor; @@ -566,7 +566,7 @@ namespace svt { namespace table } - ::boost::optional< ::Color > UnoControlTableModel::getHeaderBackgroundColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getHeaderBackgroundColor() const { DBG_CHECK_ME(); return m_pImpl->m_aHeaderBackgroundColor; @@ -580,35 +580,35 @@ namespace svt { namespace table } - ::boost::optional< ::Color > UnoControlTableModel::getHeaderTextColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getHeaderTextColor() const { DBG_CHECK_ME(); return m_pImpl->m_aHeaderTextColor; } - ::boost::optional< ::Color > UnoControlTableModel::getActiveSelectionBackColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getActiveSelectionBackColor() const { DBG_CHECK_ME(); return m_pImpl->m_aActiveSelectionBackColor; } - ::boost::optional< ::Color > UnoControlTableModel::getInactiveSelectionBackColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getInactiveSelectionBackColor() const { DBG_CHECK_ME(); return m_pImpl->m_aInactiveSelectionBackColor; } - ::boost::optional< ::Color > UnoControlTableModel::getActiveSelectionTextColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getActiveSelectionTextColor() const { DBG_CHECK_ME(); return m_pImpl->m_aActiveSelectionTextColor; } - ::boost::optional< ::Color > UnoControlTableModel::getInactiveSelectionTextColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getInactiveSelectionTextColor() const { DBG_CHECK_ME(); return m_pImpl->m_aInactiveSelectionTextColor; @@ -650,7 +650,7 @@ namespace svt { namespace table } - ::boost::optional< ::Color > UnoControlTableModel::getTextColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getTextColor() const { DBG_CHECK_ME(); return m_pImpl->m_aTextColor; @@ -664,7 +664,7 @@ namespace svt { namespace table } - ::boost::optional< ::Color > UnoControlTableModel::getTextLineColor() const + ::o3tl::optional< ::Color > UnoControlTableModel::getTextLineColor() const { DBG_CHECK_ME(); return m_pImpl->m_aTextColor; @@ -678,7 +678,7 @@ namespace svt { namespace table } - ::boost::optional< ::std::vector< ::Color > > UnoControlTableModel::getRowBackgroundColors() const + ::o3tl::optional< ::std::vector< ::Color > > UnoControlTableModel::getRowBackgroundColors() const { DBG_CHECK_ME(); return m_pImpl->m_aRowColors; diff --git a/svtools/source/uno/unocontroltablemodel.hxx b/svtools/source/uno/unocontroltablemodel.hxx index f8745420c212..feb63c1de647 100644 --- a/svtools/source/uno/unocontroltablemodel.hxx +++ b/svtools/source/uno/unocontroltablemodel.hxx @@ -68,16 +68,16 @@ namespace svt { namespace table virtual void getCellContent( ColPos const i_col, RowPos const i_row, css::uno::Any& o_cellContent ) override; virtual void getCellToolTip( ColPos const i_col, RowPos const i_row, css::uno::Any & o_cellToolTip ) override; virtual css::uno::Any getRowHeading( RowPos const i_rowPos ) const override; - virtual ::boost::optional< ::Color > getLineColor() const override; - virtual ::boost::optional< ::Color > getHeaderBackgroundColor() const override; - virtual ::boost::optional< ::Color > getHeaderTextColor() const override; - virtual ::boost::optional< ::Color > getActiveSelectionBackColor() const override; - virtual ::boost::optional< ::Color > getInactiveSelectionBackColor() const override; - virtual ::boost::optional< ::Color > getActiveSelectionTextColor() const override; - virtual ::boost::optional< ::Color > getInactiveSelectionTextColor() const override; - virtual ::boost::optional< ::Color > getTextColor() const override; - virtual ::boost::optional< ::Color > getTextLineColor() const override; - virtual ::boost::optional< ::std::vector< ::Color > > + virtual ::o3tl::optional< ::Color > getLineColor() const override; + virtual ::o3tl::optional< ::Color > getHeaderBackgroundColor() const override; + virtual ::o3tl::optional< ::Color > getHeaderTextColor() const override; + virtual ::o3tl::optional< ::Color > getActiveSelectionBackColor() const override; + virtual ::o3tl::optional< ::Color > getInactiveSelectionBackColor() const override; + virtual ::o3tl::optional< ::Color > getActiveSelectionTextColor() const override; + virtual ::o3tl::optional< ::Color > getInactiveSelectionTextColor() const override; + virtual ::o3tl::optional< ::Color > getTextColor() const override; + virtual ::o3tl::optional< ::Color > getTextLineColor() const override; + virtual ::o3tl::optional< ::std::vector< ::Color > > getRowBackgroundColors() const override; virtual css::style::VerticalAlignment getVerticalAlign() const override; |