change ComplexColor to show more useful properties

Change-Id: Ie19f080f2faf388f9b8ba3e9a4b3c0926d5ebdd4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151674
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
diff --git a/docmodel/source/uno/UnoComplexColor.cxx b/docmodel/source/uno/UnoComplexColor.cxx
index bffa813..673627b 100644
--- a/docmodel/source/uno/UnoComplexColor.cxx
+++ b/docmodel/source/uno/UnoComplexColor.cxx
@@ -13,7 +13,14 @@

using namespace css;

css::util::Color UnoComplexColor::getColor() { return css::util::Color(maColor.getRGBColor()); }
sal_Int32 UnoComplexColor::getType() { return sal_Int32(maColor.getType()); }

sal_Int32 UnoComplexColor::getSchemeColorType() { return sal_Int32(maColor.getSchemeType()); }

util::Color UnoComplexColor::resolveColor(uno::Reference<util::XTheme> const& /*xTheme*/)
{
    return util::Color(maColor.getRGBColor());
}

namespace model::color
{
@@ -22,8 +29,7 @@ uno::Reference<util::XComplexColor> createXComplexColor(model::ComplexColor cons
    return new UnoComplexColor(rColor);
}

model::ComplexColor
getFromXComplexColor(css::uno::Reference<css::util::XComplexColor> const& rxColor)
model::ComplexColor getFromXComplexColor(uno::Reference<util::XComplexColor> const& rxColor)
{
    model::ComplexColor aComplexColor;
    UnoComplexColor const* pUnoComplexColor = static_cast<UnoComplexColor const*>(rxColor.get());
diff --git a/include/docmodel/uno/UnoComplexColor.hxx b/include/docmodel/uno/UnoComplexColor.hxx
index 69a0fe4..c15e534 100644
--- a/include/docmodel/uno/UnoComplexColor.hxx
+++ b/include/docmodel/uno/UnoComplexColor.hxx
@@ -36,7 +36,10 @@ public:
    model::ComplexColor const& getComplexColor() const { return maColor; }

    // XComplexColor
    css::util::Color SAL_CALL getColor() override;
    sal_Int32 SAL_CALL getType() override;
    sal_Int32 SAL_CALL getSchemeColorType() override;
    css::util::Color SAL_CALL
    resolveColor(css::uno::Reference<css::util::XTheme> const& xTheme) override;
};

namespace model::color
diff --git a/offapi/com/sun/star/util/XComplexColor.idl b/offapi/com/sun/star/util/XComplexColor.idl
index 864e4b1..668b7b3 100644
--- a/offapi/com/sun/star/util/XComplexColor.idl
+++ b/offapi/com/sun/star/util/XComplexColor.idl
@@ -17,8 +17,13 @@ module com {  module sun {  module star {  module util {
*/
interface XComplexColor
{
    /** */
    Color getColor();
    long getType();

    long getSchemeColorType();

    /** resolve the color */
    Color resolveColor([in] com::sun::star::util::XTheme xTheme);

};

}; }; }; };