diff options
author | Caolán McNamara <caolanm@redhat.com> | 2017-04-02 12:35:41 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2017-04-02 16:31:48 +0000 |
commit | 2f33a8cd231d3842a1e5521e3a61d8e73517137b (patch) | |
tree | 184c69d8545ce64cfc1c9e25fe4df9319eb252f4 /vcl | |
parent | fb41ebff32371ee7a7e07f671f7c769a8bb18718 (diff) |
coverity#1403662 Mixing enum types
Change-Id: Ic5e797c65dfc736a9ef0ab14f3ae563216143947
Reviewed-on: https://gerrit.libreoffice.org/36020
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/unohelp.cxx | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/vcl/source/app/unohelp.cxx b/vcl/source/app/unohelp.cxx index a515d6ed8a9f..e47d69ba9594 100644 --- a/vcl/source/app/unohelp.cxx +++ b/vcl/source/app/unohelp.cxx @@ -27,6 +27,8 @@ #include <com/sun/star/i18n/BreakIterator.hpp> #include <com/sun/star/i18n/CharacterClassification.hpp> +#include <com/sun/star/awt/FontWeight.hpp> +#include <com/sun/star/awt/FontWidth.hpp> #include <com/sun/star/awt/XExtendedToolkit.hpp> #include <com/sun/star/accessibility/AccessibleEventObject.hpp> #include <com/sun/star/accessibility/AccessibleStateType.hpp> @@ -64,4 +66,169 @@ void vcl::unohelper::NotifyAccessibleStateEventGlobally( const css::accessibilit } } +float vcl::unohelper::ConvertFontWidth( FontWidth eWidth ) +{ + if( eWidth == WIDTH_DONTKNOW ) + return css::awt::FontWidth::DONTKNOW; + else if( eWidth == WIDTH_ULTRA_CONDENSED ) + return css::awt::FontWidth::ULTRACONDENSED; + else if( eWidth == WIDTH_EXTRA_CONDENSED ) + return css::awt::FontWidth::EXTRACONDENSED; + else if( eWidth == WIDTH_CONDENSED ) + return css::awt::FontWidth::CONDENSED; + else if( eWidth == WIDTH_SEMI_CONDENSED ) + return css::awt::FontWidth::SEMICONDENSED; + else if( eWidth == WIDTH_NORMAL ) + return css::awt::FontWidth::NORMAL; + else if( eWidth == WIDTH_SEMI_EXPANDED ) + return css::awt::FontWidth::SEMIEXPANDED; + else if( eWidth == WIDTH_EXPANDED ) + return css::awt::FontWidth::EXPANDED; + else if( eWidth == WIDTH_EXTRA_EXPANDED ) + return css::awt::FontWidth::EXTRAEXPANDED; + else if( eWidth == WIDTH_ULTRA_EXPANDED ) + return css::awt::FontWidth::ULTRAEXPANDED; + + OSL_FAIL( "Unknown FontWidth" ); + return css::awt::FontWidth::DONTKNOW; +} + +FontWidth vcl::unohelper::ConvertFontWidth( float f ) +{ + if( f <= css::awt::FontWidth::DONTKNOW ) + return WIDTH_DONTKNOW; + else if( f <= css::awt::FontWidth::ULTRACONDENSED ) + return WIDTH_ULTRA_CONDENSED; + else if( f <= css::awt::FontWidth::EXTRACONDENSED ) + return WIDTH_EXTRA_CONDENSED; + else if( f <= css::awt::FontWidth::CONDENSED ) + return WIDTH_CONDENSED; + else if( f <= css::awt::FontWidth::SEMICONDENSED ) + return WIDTH_SEMI_CONDENSED; + else if( f <= css::awt::FontWidth::NORMAL ) + return WIDTH_NORMAL; + else if( f <= css::awt::FontWidth::SEMIEXPANDED ) + return WIDTH_SEMI_EXPANDED; + else if( f <= css::awt::FontWidth::EXPANDED ) + return WIDTH_EXPANDED; + else if( f <= css::awt::FontWidth::EXTRAEXPANDED ) + return WIDTH_EXTRA_EXPANDED; + else if( f <= css::awt::FontWidth::ULTRAEXPANDED ) + return WIDTH_ULTRA_EXPANDED; + + OSL_FAIL( "Unknown FontWidth" ); + return WIDTH_DONTKNOW; +} + +float vcl::unohelper::ConvertFontWeight( FontWeight eWeight ) +{ + if( eWeight == WEIGHT_DONTKNOW ) + return css::awt::FontWeight::DONTKNOW; + else if( eWeight == WEIGHT_THIN ) + return css::awt::FontWeight::THIN; + else if( eWeight == WEIGHT_ULTRALIGHT ) + return css::awt::FontWeight::ULTRALIGHT; + else if( eWeight == WEIGHT_LIGHT ) + return css::awt::FontWeight::LIGHT; + else if( eWeight == WEIGHT_SEMILIGHT ) + return css::awt::FontWeight::SEMILIGHT; + else if( ( eWeight == WEIGHT_NORMAL ) || ( eWeight == WEIGHT_MEDIUM ) ) + return css::awt::FontWeight::NORMAL; + else if( eWeight == WEIGHT_SEMIBOLD ) + return css::awt::FontWeight::SEMIBOLD; + else if( eWeight == WEIGHT_BOLD ) + return css::awt::FontWeight::BOLD; + else if( eWeight == WEIGHT_ULTRABOLD ) + return css::awt::FontWeight::ULTRABOLD; + else if( eWeight == WEIGHT_BLACK ) + return css::awt::FontWeight::BLACK; + + OSL_FAIL( "Unknown FontWeight" ); + return css::awt::FontWeight::DONTKNOW; +} + +FontWeight vcl::unohelper::ConvertFontWeight( float f ) +{ + if( f <= css::awt::FontWeight::DONTKNOW ) + return WEIGHT_DONTKNOW; + else if( f <= css::awt::FontWeight::THIN ) + return WEIGHT_THIN; + else if( f <= css::awt::FontWeight::ULTRALIGHT ) + return WEIGHT_ULTRALIGHT; + else if( f <= css::awt::FontWeight::LIGHT ) + return WEIGHT_LIGHT; + else if( f <= css::awt::FontWeight::SEMILIGHT ) + return WEIGHT_SEMILIGHT; + else if( f <= css::awt::FontWeight::NORMAL ) + return WEIGHT_NORMAL; + else if( f <= css::awt::FontWeight::SEMIBOLD ) + return WEIGHT_SEMIBOLD; + else if( f <= css::awt::FontWeight::BOLD ) + return WEIGHT_BOLD; + else if( f <= css::awt::FontWeight::ULTRABOLD ) + return WEIGHT_ULTRABOLD; + else if( f <= css::awt::FontWeight::BLACK ) + return WEIGHT_BLACK; + + OSL_FAIL( "Unknown FontWeight" ); + return WEIGHT_DONTKNOW; +} + +css::awt::FontSlant vcl::unohelper::ConvertFontSlant(FontItalic eItalic) +{ + css::awt::FontSlant eRet(css::awt::FontSlant_DONTKNOW); + switch (eItalic) + { + case ITALIC_NONE: + eRet = css::awt::FontSlant_NONE; + break; + case ITALIC_OBLIQUE: + eRet = css::awt::FontSlant_OBLIQUE; + break; + case ITALIC_NORMAL: + eRet = css::awt::FontSlant_ITALIC; + break; + case ITALIC_DONTKNOW: + eRet = css::awt::FontSlant_DONTKNOW; + break; + case FontItalic_FORCE_EQUAL_SIZE: + eRet = css::awt::FontSlant_MAKE_FIXED_SIZE; + break; + } + return eRet; +} + +FontItalic vcl::unohelper::ConvertFontSlant(css::awt::FontSlant eSlant) +{ + FontItalic eRet = ITALIC_DONTKNOW; + switch (eSlant) + { + case css::awt::FontSlant_NONE: + eRet = ITALIC_NONE; + break; + case css::awt::FontSlant_OBLIQUE: + eRet = ITALIC_OBLIQUE; + break; + case css::awt::FontSlant_ITALIC: + eRet = ITALIC_NORMAL; + break; + case css::awt::FontSlant_DONTKNOW: + eRet = ITALIC_DONTKNOW; + break; + case css::awt::FontSlant_REVERSE_OBLIQUE: + //there is no vcl reverse oblique + eRet = ITALIC_OBLIQUE; + break; + case css::awt::FontSlant_REVERSE_ITALIC: + //there is no vcl reverse normal + eRet = ITALIC_NORMAL; + break; + case css::awt::FontSlant_MAKE_FIXED_SIZE: + eRet = FontItalic_FORCE_EQUAL_SIZE; + break; + } + return eRet; +} + + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |