diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2019-01-10 07:26:18 +0100 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2019-03-04 12:28:51 +0100 |
commit | 3fc464ae8571f1eb4df3556149914848fd9c8e9d (patch) | |
tree | f76b6ff445a1b6a576d836242ffb25683c26713e /vcl/qa/cppunit/widgetdraw | |
parent | b47bca7fd71abb7fb65269f377446a26cd41cb91 (diff) |
Read style colors from a xml widget definition file
WidgetDefinitionReader is responsible to read the definitions from
an xml file. The first implemented definitions are style colors.
They are read from the file and stored into class fields.
This also adds the unit test which tests that the reader is
functioning as expected for a small certain subset of colors.
Change-Id: Icd44cb465b084c32db8323e2f2f7dfa57823d559
Reviewed-on: https://gerrit.libreoffice.org/68642
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl/qa/cppunit/widgetdraw')
-rw-r--r-- | vcl/qa/cppunit/widgetdraw/WidgetDefinitionReaderTest.cxx | 61 | ||||
-rw-r--r-- | vcl/qa/cppunit/widgetdraw/data/definition1.xml | 56 |
2 files changed, 117 insertions, 0 deletions
diff --git a/vcl/qa/cppunit/widgetdraw/WidgetDefinitionReaderTest.cxx b/vcl/qa/cppunit/widgetdraw/WidgetDefinitionReaderTest.cxx new file mode 100644 index 000000000000..e58770706535 --- /dev/null +++ b/vcl/qa/cppunit/widgetdraw/WidgetDefinitionReaderTest.cxx @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <cppunit/TestAssert.h> +#include <cppunit/TestFixture.h> +#include <cppunit/extensions/HelperMacros.h> +#include <cppunit/plugin/TestPlugIn.h> +#include <unotest/bootstrapfixturebase.hxx> + +#include <widgetdraw/WidgetDefinitionReader.hxx> + +namespace +{ +static OUString const gaDataUrl("/vcl/qa/cppunit/widgetdraw/data/"); + +class WidgetDefinitionReaderTest : public test::BootstrapFixtureBase +{ +private: + OUString getFullUrl(const OUString& sFileName) + { + return m_directories.getURLFromSrc(gaDataUrl) + sFileName; + } + +public: + void testRead(); + + CPPUNIT_TEST_SUITE(WidgetDefinitionReaderTest); + CPPUNIT_TEST(testRead); + CPPUNIT_TEST_SUITE_END(); +}; + +void WidgetDefinitionReaderTest::testRead() +{ + vcl::WidgetDefinitionReader aWidgetDefinitionReader(getFullUrl("definition1.xml")); + + CPPUNIT_ASSERT_EQUAL(OUString("000000"), aWidgetDefinitionReader.maFaceColor.AsRGBHexString()); + CPPUNIT_ASSERT_EQUAL(OUString("000000"), + aWidgetDefinitionReader.maCheckedColor.AsRGBHexString()); + CPPUNIT_ASSERT_EQUAL(OUString("000000"), aWidgetDefinitionReader.maLightColor.AsRGBHexString()); + + aWidgetDefinitionReader.read(); + + CPPUNIT_ASSERT_EQUAL(OUString("f7f7f7"), aWidgetDefinitionReader.maFaceColor.AsRGBHexString()); + CPPUNIT_ASSERT_EQUAL(OUString("c0c0c0"), + aWidgetDefinitionReader.maCheckedColor.AsRGBHexString()); + CPPUNIT_ASSERT_EQUAL(OUString("ffffff"), aWidgetDefinitionReader.maLightColor.AsRGBHexString()); +} + +} // namespace + +CPPUNIT_TEST_SUITE_REGISTRATION(WidgetDefinitionReaderTest); + +CPPUNIT_PLUGIN_IMPLEMENT(); + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/qa/cppunit/widgetdraw/data/definition1.xml b/vcl/qa/cppunit/widgetdraw/data/definition1.xml new file mode 100644 index 000000000000..0dd3a94f38b7 --- /dev/null +++ b/vcl/qa/cppunit/widgetdraw/data/definition1.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<widgets> + <style> + <faceColor value="#F7F7F7"/> + <checkedColor value="#C0C0C0"/> + <lightColor value="#FFFFFF"/> + <lightBorderColor value="#F7F7F7"/> + <shadowColor value="#808080"/> + <darkShadowColor value="#000000"/> + <buttonTextColor value="#000000"/> + <buttonRolloverTextColor value="#000000"/> + <radioCheckTextColor value="#000000"/> + <groupTextColor value="#000000"/> + <labelTextColor value="#000000"/> + <windowColor value="#FFFFFF"/> + <windowTextColor value="#000000"/> + <dialogColor value="#FFFFFF"/> + <dialogTextColor value="#000000"/> + <workspaceColor value="#F7F7F7"/> + <monoColor value="#000000"/> + <fieldColor value="#FFFFFF"/> + <fieldTextColor value="#000000"/> + <fieldRolloverTextColor value="#000000"/> + <activeColor value="#0B87E7"/> + <activeTextColor value="#FFFFFF"/> + <activeBorderColor value="#C0C0C0"/> + <deactiveColor value="#808080"/> + <deactiveTextColor value="#C0C0C0"/> + <deactiveBorderColor value="#C0C0C0"/> + <menuColor value="#FFFFFF"/> + <menuBarColor value="#FFFFFF"/> + <menuBarRolloverColor value="#0B87E7"/> + <menuBorderColor value="#C0C0C0"/> + <menuTextColor value="#000000"/> + <menuBarTextColor value="#000000"/> + <menuBarRolloverTextColor value="#000000"/> + <menuBarHighlightTextColor value="#000000"/> + <menuHighlightColor value="#0B87E7"/> + <menuHighlightTextColor value="#FFFFFF"/> + <highlightColor value="#0B87E7"/> + <highlightTextColor value="#FFFFFF"/> + <activeTabColor value="#FFFFFF"/> + <inactiveTabColor value="#C0C0C0"/> + <tabTextColor value="#000000"/> + <tabRolloverTextColor value="#000000"/> + <tabHighlightTextColor value="#000000"/> + <disableColor value="#808080"/> + <helpColor value="#FFFFE0"/> + <helpTextColor value="#000000"/> + <linkColor value="#0B87E7"/> + <visitedLinkColor value="#0464AA"/> + <toolTextColor value="#000000"/> + <fontColor value="#000000"/> + </style> +</widgets> |