actualizacion automatica 2024-07-08

This commit is contained in:
Artukryp 2024-07-08 18:47:25 -06:00
commit e97cad58e0
462 changed files with 11141 additions and 4677 deletions

View file

@ -202,6 +202,13 @@ $(WORKDIR)/download: $(BUILDDIR)/config_$(gb_Side).mk $(SRCDIR)/download.lst $(S
$(call fetch_Optional,MORE_FONTS,FONT_AMIRI_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_REEM_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_SCHEHERAZADE_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_AGDASIMA_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_BACASIME_ANTIQUE_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_BELANOSIMA_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_CAPRASIMO_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_LUGRASIMO_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_LUMANOSIMO_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_LUNASIMA_TARBALL) \
$(call fetch_Optional,MSPUB,MSPUB_TARBALL) \
$(call fetch_Optional,MWAW,MWAW_TARBALL) \
$(call fetch_Optional,MYTHES,MYTHES_TARBALL) \

View file

@ -1081,6 +1081,13 @@ $(eval $(call gb_Helper_register_packages_for_install,ooo_fonts,\
fonts_noto_serif_lao \
fonts_reem \
fonts_scheherazade \
fonts_agdasima \
fonts_bacasime_antique \
fonts_belanosima \
fonts_caprasimo \
fonts_lugrasimo \
fonts_lumanosimo \
fonts_lunasima \
) \
))

View file

@ -9,6 +9,7 @@
#include <basegfx/utils/bgradient.hxx>
#include <basegfx/utils/gradienttools.hxx>
#include <basegfx/color/bcolormodifier.hxx>
#include <com/sun/star/awt/Gradient2.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <map>
@ -732,6 +733,19 @@ void BColorStops::doApplySteps(sal_uInt16 nStepCount)
*this = aNewColorStops;
}
void BColorStops::tryToApplyBColorModifierStack(const BColorModifierStack& rBColorModifierStack)
{
if (0 == rBColorModifierStack.count())
// no content on stack, done
return;
for (auto& candidate : *this)
{
candidate = BColorStop(candidate.getStopOffset(),
rBColorModifierStack.getModifiedColor(candidate.getStopColor()));
}
}
std::string BGradient::GradientStyleToString(css::awt::GradientStyle eStyle)
{
switch (eStyle)

View file

@ -888,6 +888,60 @@ CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testChartDataTableWithMultipleLegendEntr
CPPUNIT_ASSERT(xDataTableShape.is());
}
namespace
{
void lcl_assertAngles(const Reference<chart2::XAxis>& rAxis, const double& rExpectedLabelAngle,
const double& rExpectedTitleAngle)
{
Reference<beans::XPropertySet> xPS(rAxis, uno::UNO_QUERY_THROW);
double fAxisLabelAngle = 0.0;
xPS->getPropertyValue(u"TextRotation"_ustr) >>= fAxisLabelAngle;
CPPUNIT_ASSERT_DOUBLES_EQUAL(rExpectedLabelAngle, fAxisLabelAngle, 1e-10);
Reference<chart2::XTitled> xAxisTitled(rAxis, uno::UNO_QUERY_THROW);
Reference<chart2::XTitle> xAxisTitle = xAxisTitled->getTitleObject();
CPPUNIT_ASSERT(xAxisTitle.is());
Reference<beans::XPropertySet> xPropSet(xAxisTitle, uno::UNO_QUERY_THROW);
double fAxisTitleAngle = 0.0;
xPropSet->getPropertyValue(u"TextRotation"_ustr) >>= fAxisTitleAngle;
CPPUNIT_ASSERT_DOUBLES_EQUAL(rExpectedTitleAngle, fAxisTitleAngle, 1e-10);
}
} // end namespace
CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testAngleUnits)
{
loadFromFile(u"fods/tdf161483_AngleUnits.fods");
double fExpXAxisLabelAngle = 344.61; // = 382.9grad = 6.01457913529766rad
double fExpXAxisTitleAngle = 342.63; // = 380.7grad = 5.98002161610817rad
double fExpYAxisLabelAngle = 15.12; // = 16.8grad = 0.263893782901543rad
double fExpYAxisTitleAngle = 14.94; // = 16.6grad = 0.260752190247953rad
double fExpZAxisLabelAngle = 344.16; // = 382.4grad = 6.00672515366369rad
double fExpZAxisTitleAngle = 60.39; // = 67.1grad = 1.05400433527938rad
// sheet 0: no unit; sheet 1: unit deg; sheet 2: unit rad; sheet 3: unit grad
// Without fix, the values with unit grad and rad were read as if they are in degrees.
for (size_t i = 0; i < 4; i++)
{
uno::Reference<chart2::XChartDocument> xChartDoc = getChartDocFromSheet(i, mxComponent);
CPPUNIT_ASSERT_MESSAGE("failed to load chart", xChartDoc.is());
// x-axis
Reference<chart2::XAxis> xAxis = getAxisFromDoc(xChartDoc, 0, 0, 0);
CPPUNIT_ASSERT(xAxis.is());
lcl_assertAngles(xAxis, fExpXAxisLabelAngle, fExpXAxisTitleAngle);
// y-axis
xAxis = getAxisFromDoc(xChartDoc, 0, 1, 0);
CPPUNIT_ASSERT(xAxis.is());
lcl_assertAngles(xAxis, fExpYAxisLabelAngle, fExpYAxisTitleAngle);
//z-axis
xAxis = getAxisFromDoc(xChartDoc, 0, 2, 0);
CPPUNIT_ASSERT(xAxis.is());
lcl_assertAngles(xAxis, fExpZAxisLabelAngle, fExpZAxisTitleAngle);
}
}
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

File diff suppressed because it is too large Load diff

View file

@ -501,7 +501,8 @@ void ChartController::executeDispatch_InsertTrendline()
// note: when a user pressed "OK" but didn't change any settings in the
// dialog, the SfxTabDialog returns "Cancel"
SfxTabDialogController::runAsync(aDialog, [this, aDialog, aItemConverter, xUndoGuard=std::move(xUndoGuard)](int nResult) {
SfxTabDialogController::runAsync(aDialog, [this, aDialog, aItemConverter = std::move(aItemConverter),
xUndoGuard=std::move(xUndoGuard)](int nResult) {
if ( nResult == RET_OK || aDialog->DialogWasClosedWithOK() )
{
const SfxItemSet* pOutItemSet = aDialog->GetOutputItemSet();

View file

@ -712,7 +712,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::CopyAndGetEmb
// this is an OOo link, it has no persistence
OUString aURL = xOrigLinkage->getLinkURL();
if ( aURL.isEmpty() )
throw uno::RuntimeException();
throw uno::RuntimeException("URL of the linked object is empty");
// create new linked object from the URL the link is based on
uno::Reference < embed::XEmbeddedObjectCreator > xCreator =
@ -760,7 +760,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::CopyAndGetEmb
// copy all the properties from xOrigProps to xTargetProps
uno::Reference< beans::XPropertySetInfo > xOrigInfo = xOrigProps->getPropertySetInfo();
if ( !xOrigInfo.is() )
throw uno::RuntimeException();
throw uno::RuntimeException("Object has no properties");
const uno::Sequence< beans::Property > aPropertiesList = xOrigInfo->getProperties();
for ( const auto & p : aPropertiesList )

View file

@ -369,9 +369,9 @@ namespace comphelper
void EnumerableMap::impl_initValues_throw( const Sequence< Pair< Any, Any > >& _initialValues )
{
OSL_PRECOND( m_aData.m_pValues && m_aData.m_pValues->empty(), "EnumerableMap::impl_initValues_throw: illegal call!" );
if (!m_aData.m_pValues || !m_aData.m_pValues->empty())
throw RuntimeException();
if (!m_aData.m_pValues || !m_aData.m_pValues->empty()){
throw IllegalTypeException("EnumerableMap m_aData container is invalid or not empty.", *this);
}
for (auto& mapping : _initialValues)
{
impl_checkValue_throw(mapping.Second);

View file

@ -566,10 +566,17 @@ uno::Sequence< beans::NamedValue > OStorageHelper::CreateGpgPackageEncryptionDat
bool OStorageHelper::IsValidZipEntryFileName( std::u16string_view aName, bool bSlashAllowed )
{
long nDots{0};
for ( size_t i = 0; i < aName.size(); i++ )
{
switch ( aName[i] )
{
case '.':
if (nDots != -1)
{
++nDots;
}
break;
case '\\':
case '?':
case '<':
@ -579,15 +586,17 @@ bool OStorageHelper::IsValidZipEntryFileName( std::u16string_view aName, bool bS
case ':':
return false;
case '/':
if ( !bSlashAllowed )
if (!bSlashAllowed || nDots == 1 || nDots == 2 || i == 0)
return false;
nDots = 0;
break;
default:
nDots = -1;
if ( aName[i] < 32 || (aName[i] >= 0xD800 && aName[i] <= 0xDFFF) )
return false;
}
}
return true;
return nDots != 1 && nDots != 2;
}

View file

@ -2740,9 +2740,9 @@ AC_ARG_WITH(perl-home,
libo_FUZZ_ARG_WITH(doxygen,
AS_HELP_STRING(
[--with-doxygen=<absolute path to doxygen executable>],
[Specifies the doxygen executable to use when generating ODK C/C++
documentation. --without-doxygen disables generation of ODK C/C++
documentation. Not relevant in the --disable-odk case.]),
[Only relevant when --enable-odk is set. Specifies the doxygen
executable to use when generating ODK C/C++ documentation.
--without-doxygen disables generation of ODK C/C++ documentation.]),
,with_doxygen=yes)
AC_ARG_WITH(visual-studio,
@ -10286,8 +10286,8 @@ fi
if test \( "$cross_compiling" = yes -a -z "$PYTHON_FOR_BUILD" \) -o "$enable_python" = internal; then
SYSTEM_PYTHON=
PYTHON_VERSION_MAJOR=3
PYTHON_VERSION_MINOR=9
PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.19
PYTHON_VERSION_MINOR=10
PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.14
if ! grep -q -i python.*${PYTHON_VERSION} ${SRC_ROOT}/download.lst; then
AC_MSG_ERROR([PYTHON_VERSION ${PYTHON_VERSION} but no matching file in download.lst])
fi

View file

@ -486,12 +486,14 @@ void SvxMacroTabPage_::GenericHandler_Impl(const weld::Button* pBtn)
if (bAppEvents)
{
EventsHash::iterator h_it = m_appEventsHash.find(sEventName);
assert(h_it != m_appEventsHash.end());
h_it->second.first = sEventType;
h_it->second.second = sEventURL;
}
else
{
EventsHash::iterator h_it = m_docEventsHash.find(sEventName);
assert(h_it != m_docEventsHash.end());
h_it->second.first = sEventType;
h_it->second.second = sEventURL;
}

View file

@ -1248,9 +1248,9 @@ namespace
void ExtractErrorDescription(const EECharAttrib& rEECharAttrib, SpellErrorDescription& rSpellErrorDescription)
{
css::uno::Sequence<css::uno::Any> aSequence;
const auto pGrabBag = static_cast<const SfxGrabBagItem*>(rEECharAttrib.pAttr)->GetGrabBag();
const auto iter = pGrabBag.find(u"SpellErrorDescription"_ustr);
assert(iter != pGrabBag.end());
const auto& rGrabBag = static_cast<const SfxGrabBagItem*>(rEECharAttrib.pAttr)->GetGrabBag();
const auto iter = rGrabBag.find(u"SpellErrorDescription"_ustr);
assert(iter != rGrabBag.end());
iter->second >>= aSequence;
rSpellErrorDescription.fromSequence(aSequence);
}

View file

@ -2488,13 +2488,13 @@ void SvxCharPositionPage::SetEscapement_Impl( SvxEscapement nEsc )
if ( SvxEscapement::Superscript == nEsc )
{
aEscItm.GetEsc() = m_nSuperEsc;
aEscItm.GetProportionalHeight() = m_nSuperProp;
aEscItm.SetEsc( m_nSuperEsc );
aEscItm.SetProportionalHeight(m_nSuperProp);
}
else if ( SvxEscapement::Subscript == nEsc )
{
aEscItm.GetEsc() = m_nSubEsc;
aEscItm.GetProportionalHeight() = m_nSubProp;
aEscItm.SetEsc( m_nSubEsc );
aEscItm.SetProportionalHeight( m_nSubProp );
}
short nFac = aEscItm.GetEsc() < 0 ? -1 : 1;

View file

@ -0,0 +1,51 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_CppunitTest_CppunitTest,dbaccess_CRMDatabase_test))
$(eval $(call gb_CppunitTest_use_external,dbaccess_CRMDatabase_test,boost_headers))
$(eval $(call gb_CppunitTest_add_exception_objects,dbaccess_CRMDatabase_test, \
dbaccess/qa/unit/CRMDatabase_test \
))
$(eval $(call gb_CppunitTest_use_libraries,dbaccess_CRMDatabase_test, \
comphelper \
cppu \
cppuhelper \
dbaxml \
dbtools \
sal \
subsequenttest \
utl \
test \
tk \
tl \
unotest \
xo \
))
$(eval $(call gb_CppunitTest_use_api,dbaccess_CRMDatabase_test,\
offapi \
oovbaapi \
udkapi \
))
$(eval $(call gb_CppunitTest_use_ure,dbaccess_CRMDatabase_test))
$(eval $(call gb_CppunitTest_use_vcl,dbaccess_CRMDatabase_test))
$(eval $(call gb_CppunitTest_use_rdb,dbaccess_CRMDatabase_test,services))
$(eval $(call gb_CppunitTest_use_configuration,dbaccess_CRMDatabase_test))
$(eval $(call gb_CppunitTest_use_uiconfigs,dbaccess_CRMDatabase_test, \
dbaccess \
))
# vim: set noet sw=4 ts=4:

View file

@ -41,32 +41,7 @@ $(eval $(call gb_CppunitTest_use_api,dbaccess_embeddeddb_performancetest,\
$(eval $(call gb_CppunitTest_use_ure,dbaccess_embeddeddb_performancetest))
$(eval $(call gb_CppunitTest_use_vcl,dbaccess_embeddeddb_performancetest))
$(eval $(call gb_CppunitTest_use_components,dbaccess_embeddeddb_performancetest,\
basic/util/sb \
comphelper/util/comphelp \
configmgr/source/configmgr \
connectivity/source/cpool/dbpool2 \
connectivity/source/drivers/firebird/firebird_sdbc \
connectivity/source/manager/sdbc2 \
dbaccess/util/dba \
dbaccess/source/filter/xml/dbaxml \
dbaccess/util/dbu \
filter/source/config/cache/filterconfig1 \
framework/util/fwk \
i18npool/util/i18npool \
linguistic/source/lng \
package/source/xstor/xstor \
package/util/package2 \
sax/source/expatwrap/expwrap \
sfx2/util/sfx \
svl/source/fsstor/fsstorage \
svl/util/svl \
toolkit/util/tk \
ucb/source/core/ucb1 \
ucb/source/ucp/file/ucpfile1 \
unotools/util/utl \
xmloff/util/xo \
))
$(eval $(call gb_CppunitTest_use_rdb,dbaccess_embeddeddb_performancetest,services))
$(eval $(call gb_CppunitTest_use_configuration,dbaccess_embeddeddb_performancetest))

View file

@ -33,7 +33,6 @@ $(eval $(call gb_JunitTest_add_sourcefiles,dbaccess_complex,\
dbaccess/qa/complex/dbaccess/CRMBasedTestCase \
dbaccess/qa/complex/dbaccess/CopyTableInterActionHandler \
dbaccess/qa/complex/dbaccess/CopyTableWizard \
dbaccess/qa/complex/dbaccess/DataSource \
dbaccess/qa/complex/dbaccess/DatabaseApplication \
dbaccess/qa/complex/dbaccess/DatabaseDocument \
dbaccess/qa/complex/dbaccess/FileHelper \

View file

@ -53,6 +53,7 @@ $(eval $(call gb_Module_add_check_targets,dbaccess,\
CppunitTest_dbaccess_empty_stdlib_save \
CppunitTest_dbaccess_nolib_save \
CppunitTest_dbaccess_hsqlschema_import \
$(if $(ENABLE_FIREBIRD_SDBC),CppunitTest_dbaccess_CRMDatabase_test) \
))
endif

View file

@ -1,68 +0,0 @@
/*
* 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/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
package complex.dbaccess;
import com.sun.star.container.XNameAccess;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.uno.XNamingService;
import connectivity.tools.CRMDatabase;
import connectivity.tools.HsqlDatabase;
// ---------- junit imports -----------------
import org.junit.Test;
import static org.junit.Assert.*;
public class DataSource extends TestCase
{
HsqlDatabase m_database;
connectivity.tools.DataSource m_dataSource;
private void createTestCase() throws Exception
{
if (m_database == null)
{
final CRMDatabase database = new CRMDatabase( getMSF(), false );
m_database = database.getDatabase();
m_dataSource = m_database.getDataSource();
}
}
@Test
public void testRegistrationName() throws Exception
{
createTestCase();
// 1. check the existing "Bibliography" data source whether it has the proper name
String dataSourceName = "Bibliography";
final connectivity.tools.DataSource bibliography = new connectivity.tools.DataSource(getMSF(), dataSourceName);
assertEquals("pre-registered database has a wrong name!", dataSourceName, bibliography.getName());
// 2. register a newly created data source, and verify it has the proper name
dataSourceName = "someDataSource";
final XNamingService dataSourceRegistrations = UnoRuntime.queryInterface(
XNamingService.class, getMSF().createInstance( "com.sun.star.sdb.DatabaseContext" ) );
final XNameAccess existenceCheck = UnoRuntime.queryInterface( XNameAccess.class, dataSourceRegistrations );
if ( existenceCheck.hasByName( "someDataSource" ) )
dataSourceRegistrations.revokeObject( "someDataSource" );
dataSourceRegistrations.registerObject("someDataSource", m_dataSource.getXDataSource());
assertEquals("registration name of a newly registered data source is wrong", dataSourceName, m_dataSource.getName());
}
}

View file

@ -0,0 +1,134 @@
/* -*- 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 "dbtest_base.cxx"
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/sdb/DatabaseContext.hpp>
#include <com/sun/star/sdb/XDocumentDataSource.hpp>
#include <com/sun/star/sdb/XOfficeDatabaseDocument.hpp>
#include <com/sun/star/sdb/XQueriesSupplier.hpp>
#include <com/sun/star/sdbc/XDataSource.hpp>
#include <com/sun/star/sdbcx/XColumnsSupplier.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/uno/XNamingService.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
class CRMDBTest : public DBTestBase
{
public:
void testCRMDatabase();
void testRegistrationName();
CPPUNIT_TEST_SUITE(CRMDBTest);
CPPUNIT_TEST(testCRMDatabase);
CPPUNIT_TEST(testRegistrationName);
CPPUNIT_TEST_SUITE_END();
};
void CRMDBTest::testCRMDatabase()
{
createDBDocument(u"sdbc:embedded:hsqldb"_ustr);
uno::Reference<sdb::XOfficeDatabaseDocument> xDocument(mxComponent, UNO_QUERY_THROW);
uno::Reference<XDataSource> xDataSource = xDocument->getDataSource();
CPPUNIT_ASSERT(xDataSource.is());
// create queries before establishing connection to database
createQueries(xDataSource);
uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
createTables(xConnection);
// test selection
Reference<XStatement> xStatement = xConnection->createStatement();
Reference<XResultSet> xResults
= xStatement->executeQuery(u"SELECT \"NAME\" FROM \"CATEGORIES\" ORDER BY \"ID\""_ustr);
CPPUNIT_ASSERT(xResults.is());
Reference<XRow> xRow(xResults, UNO_QUERY_THROW);
CPPUNIT_ASSERT(xResults->next());
CPPUNIT_ASSERT_EQUAL(u"Food"_ustr, xRow->getString(1));
CPPUNIT_ASSERT(xResults->next());
CPPUNIT_ASSERT_EQUAL(u"Furniture"_ustr, xRow->getString(1));
// test if the queries have been created and can be used
uno::Reference<XQueriesSupplier> xQuerySupplier(xConnection, UNO_QUERY_THROW);
uno::Reference<container::XNameAccess> xQueryAccess = xQuerySupplier->getQueries();
CPPUNIT_ASSERT(xQueryAccess->hasElements());
// the unshipped orders query depends on the all orders query, so we'll test
// to see if both work
uno::Reference<sdbcx::XColumnsSupplier> xColumns(
xQueryAccess->getByName(u"unshipped orders"_ustr), UNO_QUERY);
uno::Reference<container::XNameAccess> xColumnAccess(xColumns->getColumns());
CPPUNIT_ASSERT(xColumnAccess->hasElements());
Sequence<OUString> ColumnNames = xColumnAccess->getElementNames();
CPPUNIT_ASSERT(ColumnNames.hasElements());
// first column returned should be from the all orders query
CPPUNIT_ASSERT_EQUAL(ColumnNames[0], u"Order No."_ustr);
}
void CRMDBTest::testRegistrationName()
{
// 1. check the existing "Bibliography" data source whether it has the proper name
Reference<container::XNameAccess> xNameAccess(
getMultiServiceFactory()->createInstance(u"com.sun.star.sdb.DatabaseContext"_ustr),
UNO_QUERY);
Reference<sdbc::XDataSource> xBiblioDataSource(xNameAccess->getByName(u"Bibliography"_ustr),
UNO_QUERY);
CPPUNIT_ASSERT(xBiblioDataSource.is());
Reference<beans::XPropertySet> xBiblioProp(xBiblioDataSource, UNO_QUERY);
OUString sBiblioDataSourceName;
xBiblioProp->getPropertyValue(u"Name"_ustr) >>= sBiblioDataSourceName;
CPPUNIT_ASSERT_EQUAL(u"Bibliography"_ustr, sBiblioDataSourceName);
// 2. register a newly created data source, and verify it has the proper name
// Setup the CRMDatabase
createDBDocument(u"sdbc:embedded:hsqldb"_ustr);
uno::Reference<sdb::XOfficeDatabaseDocument> xDocument(mxComponent, UNO_QUERY_THROW);
uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
createTables(xConnection);
uno::Reference<XDataSource> xDataSource = xDocument->getDataSource();
CPPUNIT_ASSERT(xDataSource.is());
// Get a XDatabaseContext from XSingleService factory in order to register the DataSource
Reference<sdb::XDatabaseContext> xDatabaseContext(xNameAccess, UNO_QUERY_THROW);
CPPUNIT_ASSERT(xDatabaseContext.is());
// Register the datasource
xDatabaseContext->registerObject(u"SomeNewHsqlDataSource"_ustr, xDataSource);
// Check the newly created data source to see if it has the proper name
Reference<beans::XPropertySet> xProp(xDataSource, UNO_QUERY);
OUString sDataSourceName;
xProp->getPropertyValue(u"Name"_ustr) >>= sDataSourceName;
CPPUNIT_ASSERT_EQUAL(u"SomeNewHsqlDataSource"_ustr, sDataSourceName);
CPPUNIT_ASSERT_THROW_MESSAGE(
"Bibliography already exists",
xDatabaseContext->registerObject(u"Bibliography"_ustr, xDataSource),
container::ElementExistException);
}
CPPUNIT_TEST_SUITE_REGISTRATION(CRMDBTest);
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View file

@ -13,10 +13,15 @@
#include <test/unoapi_test.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/sdb/XOfficeDatabaseDocument.hpp>
#include <com/sun/star/sdb/XQueryDefinitionsSupplier.hpp>
#include <com/sun/star/sdbc/XConnection.hpp>
#include <com/sun/star/sdbc/XDataSource.hpp>
#include <com/sun/star/sdbc/XStatement.hpp>
#include <com/sun/star/util/XCloseable.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::beans;
@ -37,6 +42,12 @@ public:
uno::Reference< XOfficeDatabaseDocument > const & xDocument);
void createDBDocument(const OUString& rDriverURL);
void createTables(Reference< XConnection > xConnection);
void createQueries(Reference< XDataSource > xDataSource);
void createQuery(OUString sQuery, bool bEscapeProcessing,
OUString sQueryName, Reference<XDataSource> xDataSource);
virtual void tearDown() override;
};
uno::Reference<XOfficeDatabaseDocument> DBTestBase::getDocumentForUrl(OUString const & url) {
@ -74,4 +85,112 @@ void DBTestBase::createDBDocument(const OUString& rDriverURL)
CPPUNIT_ASSERT(mxComponent);
}
void DBTestBase::createTables(Reference<XConnection> xConnection)
{
uno::Reference<XStatement> xStatement = xConnection->createStatement();
xStatement->execute(
u"CREATE TABLE \"CATEGORIES\" ( \"ID\" INTEGER NOT NULL PRIMARY KEY "
", \"NAME\" VARCHAR (50) , \"DESCRIPTION\" VARCHAR (1024), \"IMAGE\" LONGVARBINARY"
")"_ustr);
xStatement->execute(u"INSERT INTO \"CATEGORIES\" (\"ID\", \"NAME\") VALUES ( 1, 'Food' )"_ustr);
xStatement->execute(u"INSERT INTO \"CATEGORIES\" (\"ID\", \"NAME\") VALUES ( 2, 'Furniture' )"_ustr);
xStatement->execute(
u"CREATE TABLE \"PRODUCTS\" ( \"ID\" INTEGER NOT NULL PRIMARY KEY "
", \"NAME\" VARCHAR (50) , \"CATEGORYID\" INTEGER NOT NULL, FOREIGN KEY (\"CATEGORYID\")"
"REFERENCES \"CATEGORIES\" (\"ID\") )"_ustr);
xStatement->execute(u"INSERT INTO \"PRODUCTS\" VALUES ( 1, 'Orange', 1 )"_ustr);
xStatement->execute(u"INSERT INTO \"PRODUCTS\" VALUES ( 2, 'Apples', 1 )"_ustr);
xStatement->execute(u"INSERT INTO \"PRODUCTS\" VALUES ( 3, 'Pears', 1 )"_ustr);
xStatement->execute(u"INSERT INTO \"PRODUCTS\" VALUES ( 4, 'Strawberries', 1 )"_ustr);
xStatement->execute(
u"CREATE TABLE \"CUSTOMERS\" ( \"ID\" INTEGER NOT NULL PRIMARY KEY "
", \"NAME\" VARCHAR (50) , \"ADDRESS\" VARCHAR (50), \"CITY\" VARCHAR (50), \"POSTAL\" VARCHAR (50)"
", \"COMMENT\" LONGVARCHAR )"_ustr);
xStatement->execute(u"INSERT INTO \"CUSTOMERS\" VALUES(1,'Food, Inc.','Down Under','Melbourne','509','Preferred')"_ustr);
xStatement->execute(u"INSERT INTO \"CUSTOMERS\" VALUES(2,'Simply Delicious','Down Under','Melbourne','518',null)"_ustr);
xStatement->execute(u"INSERT INTO \"CUSTOMERS\" VALUES(3,'Pure Health','10 Fish St.','San Francisco','94107',null)"_ustr);
xStatement->execute(u"INSERT INTO \"CUSTOMERS\" VALUES(4,'Milk And More','Arlington Road 21','Dublin','31021','Good one.')"_ustr);
xStatement->execute(
u"CREATE TABLE \"ORDERS\" ( \"ID\" INTEGER NOT NULL PRIMARY KEY, \"CUSTOMERID\" INTEGER NOT NULL "
", \"ORDERDATE\" DATE, \"SHIPDATE\" DATE, FOREIGN KEY (\"CUSTOMERID\")"
"REFERENCES \"CUSTOMERS\" (\"ID\") )"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS\" (\"ID\", \"CUSTOMERID\", \"ORDERDATE\") VALUES(1, 1, {D '2009-01-01'})"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS\" VALUES(2, 2, {D '2009-01-01'}, {D '2009-01-23'})"_ustr);
xStatement->execute(
u"CREATE TABLE \"ORDERS_DETAILS\" ( \"ORDERID\" INTEGER NOT NULL, \"PRODUCTID\" INTEGER NOT NULL, \"QUANTITY\" INTEGER"
", FOREIGN KEY (\"ORDERID\") REFERENCES \"ORDERS\" (\"ID\") "
", FOREIGN KEY (\"PRODUCTID\") REFERENCES \"PRODUCTS\" (\"ID\"), PRIMARY KEY(\"ORDERID\", \"PRODUCTID\") )"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS_DETAILS\" VALUES(1, 1, 100)"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS_DETAILS\" VALUES(1, 2, 100)"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS_DETAILS\" VALUES(2, 2, 2000)"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS_DETAILS\" VALUES(2, 3, 2000)"_ustr);
xStatement->execute(u"INSERT INTO \"ORDERS_DETAILS\" VALUES(2, 4, 2000)"_ustr);
xConnection->commit();
}
void DBTestBase::createQueries(Reference<XDataSource> xDataSource)
{
createQuery(
u"SELECT \"ORDERS\".\"ID\" AS \"Order No.\", "
"\"CUSTOMERS\".\"NAME\" AS \"Customer Name\", "
"\"ORDERS\".\"ORDERDATE\" AS \"Order Date\", "
"\"ORDERS\".\"SHIPDATE\" AS \"Ship Date\", "
"\"ORDERS_DETAILS\".\"QUANTITY\", "
"\"PRODUCTS\".\"NAME\" AS \"Product Name\" "
"FROM \"ORDERS_DETAILS\" AS \"ORDERS_DETAILS\", "
"\"ORDERS\" AS \"ORDERS\", "
"\"PRODUCTS\" AS \"PRODUCTS\", "
"\"CUSTOMERS\" AS \"CUSTOMERS\" "
"WHERE ( \"ORDERS_DETAILS\".\"ORDERID\" = \"ORDERS\".\"ID\" "
"AND \"ORDERS_DETAILS\".\"PRODUCTID\" = \"PRODUCTS\".\"ID\" "
"AND \"ORDERS\".\"CUSTOMERID\" = \"CUSTOMERS\".\"ID\" )"_ustr,
true, u"all orders"_ustr, xDataSource);
createQuery(
u"SELECT *"
"FROM \"all orders\""
"WHERE ( \"SHIPDATE\" IS NULL )"_ustr, true, u"unshipped orders"_ustr, xDataSource);
createQuery(u"SELECT * FROM \"CUSTOMERS\""_ustr, true, u"parseable"_ustr, xDataSource);
createQuery(u"SELECT * FROM INFORMATION_SCHEMA.SYSTEM_VIEWS"_ustr, false, u"parseable native"_ustr, xDataSource);
}
void DBTestBase::createQuery(OUString sQuery, bool bEscapeProcessing, OUString sQueryName, Reference<XDataSource> xDataSource)
{
Reference<XQueryDefinitionsSupplier> xQuerySupplier(xDataSource, UNO_QUERY_THROW);
Reference<container::XNameAccess> xQueryAccess = xQuerySupplier->getQueryDefinitions();
CPPUNIT_ASSERT(xQueryAccess.is());
Reference<lang::XSingleServiceFactory> xSingleServiceFactory(xQueryAccess, UNO_QUERY_THROW);
Reference<beans::XPropertySet> xQueryProp(xSingleServiceFactory->createInstance(), UNO_QUERY_THROW);
xQueryProp->setPropertyValue(u"Command"_ustr, Any(sQuery));
xQueryProp->setPropertyValue(u"EscapeProcessing"_ustr, Any(bEscapeProcessing));
Reference<container::XNameContainer> xNameContainer(xQueryAccess, UNO_QUERY_THROW);
xNameContainer->insertByName(sQueryName, Any(xQueryProp));
}
void DBTestBase::tearDown()
{
if (mxComponent)
{
// In order to close all windows
css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
xCloseable->close(false);
}
UnoApiTest::tearDown();
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View file

@ -15,7 +15,6 @@
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XStatement.hpp>
#include <com/sun/star/util/XCloseable.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::sdb;
@ -48,9 +47,6 @@ void FirebirdTest::testEmptyDBConnection()
getDocumentForUrl(maTempFile.GetURL());
getConnectionForDocument(xDocument);
css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
xCloseable->close(false);
}
/**
@ -90,9 +86,6 @@ void FirebirdTest::testIntegerDatabase()
xRow->getString(xColumnLocate->findColumn(u"_VARCHAR"_ustr)));
CPPUNIT_ASSERT(!xResultSet->next()); // Should only be one row
css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
xCloseable->close(false);
}
void FirebirdTest::testTdf132924()
@ -118,9 +111,6 @@ void FirebirdTest::testTdf132924()
// - Actual : The column name 'TestId' is not valid
CPPUNIT_ASSERT_EQUAL(sal_Int16(1), xRow->getShort(xColumnLocate->findColumn(u"TestId"_ustr)));
CPPUNIT_ASSERT_EQUAL(u"TestName"_ustr, xRow->getString(xColumnLocate->findColumn(u"TestName"_ustr)));
css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
xCloseable->close(false);
}
CPPUNIT_TEST_SUITE_REGISTRATION(FirebirdTest);

View file

@ -313,9 +313,9 @@ namespace sdbtools
if ( aMeta.supportsSubqueriesInFrom() )
pReturn = std::make_shared<CombinedNameCheck>( pTableCheck, pQueryCheck );
else if ( _nCommandType == CommandType::TABLE )
pReturn = pTableCheck;
pReturn = std::move(pTableCheck);
else
pReturn = pQueryCheck;
pReturn = std::move(pQueryCheck);
return pReturn;
}

View file

@ -2575,7 +2575,7 @@ bool SbaTableQueryBrowser::implSelect(const weld::TreeIter* pEntry)
selectPath(m_xCurrentlyDisplayed.get());
// get the name of the data source currently selected
ensureConnection(m_xCurrentlyDisplayed.get(), pConData->xConnection);
(void)ensureConnection(m_xCurrentlyDisplayed.get(), pConData->xConnection);
if ( !pConData->xConnection.is() )
{

View file

@ -184,7 +184,7 @@ namespace dbaui
{
if ( _pErrorInfo )
{
*_pErrorInfo = aInfo;
*_pErrorInfo = std::move(aInfo);
}
else
{

View file

@ -5350,7 +5350,7 @@ static void doc_postUnoCommand(LibreOfficeKitDocument* pThis, const char* pComma
{
bResult = comphelper::dispatchCommand(aCommand, comphelper::containerToSequence(aPropertyValuesVector),
new DispatchResultListener(pCommand, pDocument->mpCallbackFlushHandlers[nView],
pDocSh->IsModified()));
pDocSh && pDocSh->IsModified()));
}
else
bResult = comphelper::dispatchCommand(aCommand, comphelper::containerToSequence(aPropertyValuesVector));
@ -8018,8 +8018,8 @@ static int lo_initialize(LibreOfficeKit* pThis, const char* pAppPath, const char
#else
// Fun conversion dance back and forth between URLs and system paths...
OUString aAppURL;
::osl::Module::getUrlFromAddress( reinterpret_cast< oslGenericFunction >(lo_initialize),
aAppURL);
(void)::osl::Module::getUrlFromAddress(reinterpret_cast<oslGenericFunction>(lo_initialize),
aAppURL);
osl::FileBase::getSystemPathFromFileURL( aAppURL, aAppPath );
#endif

View file

@ -265,6 +265,41 @@ FONT_SCHEHERAZADE_TARBALL := Scheherazade-2.100.zip
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_AGDASIMA_TARBALL := Agdasima-2.002.zip
FONT_AGDASIMA_SHA256SUM := b4c17499f8bc183320ffdcf1f8491c778dd68a237adc056dc08e1fcb2da488f3
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_BACASIME_ANTIQUE_TARBALL := Bacasime_Antique-2.000.zip
FONT_BACASIME_ANTIQUE_SHA256SUM := 81127cebc97d4ee0b950c2bc2d6be0ed29abfe0d5988435eb9a39e382557250a
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_BELANOSIMA_TARBALL := Belanosima-2.000.zip
FONT_BELANOSIMA_SHA256SUM := 9c30e9e7cdb0797b651113a77f6b789659b8d8598a466b2ba92754e9dec30449
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_CAPRASIMO_TARBALL := Caprasimo-1.001.zip
FONT_CAPRASIMO_SHA256SUM := f066d27cfc99b6601083be102d08b4039da8d2834e2795aabd890f16c6fd1b9b
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_LUGRASIMO_TARBALL := Lugrasimo-1.001.zip
FONT_LUGRASIMO_SHA256SUM := db24dff31e8ddf6a113556c947a219f9534b072852e9ce2079a08c94854a7503
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_LUMANOSIMO_TARBALL := Lumanosimo-1.010.zip
FONT_LUMANOSIMO_SHA256SUM := d4545ad6afded9a55d9a7728cfc7453cf5637861db87aafe0a730676a0cb960f
# three static lines
# so that git cherry-pick
# will not run into conflicts
FONT_LUNASIMA_TARBALL := Lunasima-2.009.zip
FONT_LUNASIMA_SHA256SUM := 4302809cf4b95b481bec53de87484d919b391c90a518d065f6c775fd435a5393
# three static lines
# so that git cherry-pick
# will not run into conflicts
FREEHAND_SHA256SUM := 0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac
FREEHAND_TARBALL := libfreehand-0.1.2.tar.xz
# three static lines
@ -427,14 +462,14 @@ XMLSEC_TARBALL := xmlsec1-1.3.4.tar.gz
# three static lines
# so that git cherry-pick
# will not run into conflicts
LIBXML_SHA256SUM := 25239263dc37f5f55a5393eff27b35f0b7d9ea4b2a7653310598ea8299e3b741
LIBXML_VERSION_MICRO := 1
LIBXML_TARBALL := libxml2-2.13.$(LIBXML_VERSION_MICRO).tar.xz
LIBXML_SHA256SUM := 43ad877b018bc63deb2468d71f95219c2fac196876ef36d1bee51d226173ec93
LIBXML_VERSION_MICRO := 8
LIBXML_TARBALL := libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz
# three static lines
# so that git cherry-pick
# will not run into conflicts
LIBXSLT_SHA256SUM := 3ad392af91115b7740f7b50d228cc1c5fc13afc1da7f16cb0213917a37f71bda
LIBXSLT_VERSION_MICRO := 41
LIBXSLT_SHA256SUM := 85ca62cac0d41fc77d3f6033da9df6fd73d20ea2fc18b0a3609ffb4110e1baeb
LIBXSLT_VERSION_MICRO := 42
LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz
# three static lines
# so that git cherry-pick
@ -558,8 +593,8 @@ POSTGRESQL_TARBALL := postgresql-14.12.tar.bz2
# three static lines
# so that git cherry-pick
# will not run into conflicts
PYTHON_SHA256SUM := d4892cd1618f6458cb851208c030df1482779609d0f3939991bd38184f8c679e
PYTHON_TARBALL := Python-3.9.19.tar.xz
PYTHON_SHA256SUM := 9c50481faa8c2832329ba0fc8868d0a606a680fc4f60ec48d26ce8e076751fda
PYTHON_TARBALL := Python-3.10.14.tar.xz
# three static lines
# so that git cherry-pick
# will not run into conflicts

View file

@ -77,6 +77,7 @@ endif
ifeq ($(USE_HEADLESS_CODE),TRUE)
$(eval $(call gb_Library_add_exception_objects,drawinglayer,\
drawinglayer/source/processor2d/cairopixelprocessor2d \
drawinglayer/source/processor2d/SDPRProcessor2dTools \
))
endif

View file

@ -184,7 +184,7 @@ bool prepareBitmapForDirectRender(
basegfx::B2DRange aDiscreteRange(basegfx::B2DRange::getUnitB2DRange());
aDiscreteRange.transform(aLocalTransform);
if (!rDiscreteViewPort.overlaps(rDiscreteViewPort))
if (!aDiscreteRange.overlaps(rDiscreteViewPort))
{
// we have a Viewport and visible range of geometry is outside -> not visible, done
return false;

File diff suppressed because it is too large Load diff

View file

@ -1803,7 +1803,7 @@ void D2DPixelProcessor2D::processFillGraphicPrimitive2D(
{
BitmapEx aPreparedBitmap;
basegfx::B2DRange aFillUnitRange(rFillGraphicPrimitive2D.getFillGraphic().getGraphicRange());
static double fBigDiscreteArea(300.0 * 300.0);
constexpr double fBigDiscreteArea(300.0 * 300.0);
// use tooling to do various checks and prepare tiled rendering, see
// description of method, parameters and return value there

View file

@ -315,6 +315,8 @@ void VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(
// set parameters and paint text snippet
const basegfx::BColor aRGBFontColor(
maBColorModifierStack.getModifiedColor(rTextCandidate.getFontColor()));
// Store previous complex text layout state, to be restored after drawing
const vcl::text::ComplexTextLayoutFlags nOldLayoutMode(mpOutputDevice->GetLayoutMode());
if (rTextCandidate.getFontAttribute().getRTL())
@ -325,6 +327,14 @@ void VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(
| vcl::text::ComplexTextLayoutFlags::TextOriginLeft;
mpOutputDevice->SetLayoutMode(nRTLLayoutMode);
}
else
{
// tdf#101686: This is LTR text, but the output device may have RTL state.
vcl::text::ComplexTextLayoutFlags nLTRLayoutMode(nOldLayoutMode);
nLTRLayoutMode = nLTRLayoutMode & ~vcl::text::ComplexTextLayoutFlags::BiDiRtl;
nLTRLayoutMode = nLTRLayoutMode & ~vcl::text::ComplexTextLayoutFlags::BiDiStrong;
mpOutputDevice->SetLayoutMode(nLTRLayoutMode);
}
OUString aText(rTextCandidate.getText());
sal_Int32 nPos = rTextCandidate.getTextPosition();
@ -460,10 +470,8 @@ void VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(
}
}
if (rTextCandidate.getFontAttribute().getRTL())
{
mpOutputDevice->SetLayoutMode(nOldLayoutMode);
}
// Restore previous layout mode
mpOutputDevice->SetLayoutMode(nOldLayoutMode);
if (bChangeMapMode)
mpOutputDevice->Pop();

View file

@ -1705,7 +1705,7 @@ namespace emfplushelper
stringLength,
std::move(emptyVector), // EMF-PLUS has no DX-array
{},
fontAttribute,
std::move(fontAttribute),
locale,
color.getBColor(), // Font Color
COL_TRANSPARENT, // Fill Color
@ -1725,7 +1725,7 @@ namespace emfplushelper
stringLength,
std::move(emptyVector), // EMF-PLUS has no DX-array
{},
fontAttribute,
std::move(fontAttribute),
locale,
color.getBColor());
}

View file

@ -138,9 +138,9 @@ bool SvxPaperBinItem::GetPresentation
}
SvxSizeItem::SvxSizeItem( const sal_uInt16 nId, const Size& rSize ) :
SvxSizeItem::SvxSizeItem( const sal_uInt16 nId, const Size& rSize, SfxItemType eItemType ) :
SfxPoolItem( nId, SfxItemType::SvxSizeItemType ),
SfxPoolItem( nId, eItemType ),
m_aSize( rSize )
{
@ -173,6 +173,7 @@ bool SvxSizeItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxSizeItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -228,6 +229,19 @@ SvxSizeItem::SvxSizeItem( const sal_uInt16 nId ) :
}
bool SvxSizeItem::isHashable() const
{
return true;
}
size_t SvxSizeItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_aSize.Width());
o3tl::hash_combine(seed, m_aSize.Height());
return seed;
}
bool SvxSizeItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -607,6 +621,7 @@ bool SvxLeftMarginItem::QueryValue(uno::Any& rVal, sal_uInt8 nMemberId) const
bool SvxLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -643,6 +658,19 @@ bool SvxLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
return true;
}
bool SvxLeftMarginItem::isHashable() const
{
return true;
}
size_t SvxLeftMarginItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nLeftMargin);
o3tl::hash_combine(seed, m_nPropLeftMargin);
return seed;
}
bool SvxLeftMarginItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -784,6 +812,7 @@ bool SvxTextLeftMarginItem::QueryValue(uno::Any& rVal, sal_uInt8 nMemberId) cons
bool SvxTextLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -820,6 +849,19 @@ bool SvxTextLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
return true;
}
bool SvxTextLeftMarginItem::isHashable() const
{
return true;
}
size_t SvxTextLeftMarginItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nTextLeftMargin);
o3tl::hash_combine(seed, m_nPropLeftMargin);
return seed;
}
bool SvxTextLeftMarginItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -955,6 +997,7 @@ bool SvxFirstLineIndentItem::QueryValue(uno::Any& rVal, sal_uInt8 nMemberId) con
bool SvxFirstLineIndentItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -995,6 +1038,20 @@ bool SvxFirstLineIndentItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
return true;
}
bool SvxFirstLineIndentItem::isHashable() const
{
return true;
}
size_t SvxFirstLineIndentItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nFirstLineOffset);
o3tl::hash_combine(seed, m_nPropFirstLineOffset);
o3tl::hash_combine(seed, m_bAutoFirst);
return seed;
}
bool SvxFirstLineIndentItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1139,6 +1196,7 @@ bool SvxRightMarginItem::QueryValue(uno::Any& rVal, sal_uInt8 nMemberId) const
bool SvxRightMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -1175,6 +1233,19 @@ bool SvxRightMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
return true;
}
bool SvxRightMarginItem::isHashable() const
{
return true;
}
size_t SvxRightMarginItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nRightMargin);
o3tl::hash_combine(seed, m_nPropRightMargin);
return seed;
}
bool SvxRightMarginItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1300,6 +1371,7 @@ bool SvxGutterLeftMarginItem::QueryValue(uno::Any& rVal, sal_uInt8 nMemberId) co
bool SvxGutterLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -1323,6 +1395,18 @@ bool SvxGutterLeftMarginItem::PutValue(const uno::Any& rVal, sal_uInt8 nMemberId
return true;
}
bool SvxGutterLeftMarginItem::isHashable() const
{
return true;
}
size_t SvxGutterLeftMarginItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nGutterMargin);
return seed;
}
bool SvxGutterLeftMarginItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1410,6 +1494,7 @@ bool SvxGutterRightMarginItem::QueryValue(uno::Any& /*rVal*/, sal_uInt8 nMemberI
bool SvxGutterRightMarginItem::PutValue(const uno::Any& /*rVal*/, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
//bool bConvert = 0 != (nMemberId & CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
@ -1429,6 +1514,18 @@ bool SvxGutterRightMarginItem::PutValue(const uno::Any& /*rVal*/, sal_uInt8 nMem
}
bool SvxGutterRightMarginItem::isHashable() const
{
return true;
}
size_t SvxGutterRightMarginItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, m_nRightGutterMargin);
return seed;
}
bool SvxGutterRightMarginItem::operator==(const SfxPoolItem& rAttr) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1489,6 +1586,28 @@ boost::property_tree::ptree SvxGutterRightMarginItem::dumpAsJSON() const
}
bool SvxLRSpaceItem::isHashable() const
{
return true;
}
size_t SvxLRSpaceItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, nFirstLineOffset);
o3tl::hash_combine(seed, m_nGutterMargin);
o3tl::hash_combine(seed, m_nRightGutterMargin);
o3tl::hash_combine(seed, nLeftMargin);
o3tl::hash_combine(seed, nRightMargin);
o3tl::hash_combine(seed, nPropFirstLineOffset);
o3tl::hash_combine(seed, nPropLeftMargin);
o3tl::hash_combine(seed, nPropRightMargin);
o3tl::hash_combine(seed, bAutoFirst);
o3tl::hash_combine(seed, bExplicitZeroMarginValRight);
o3tl::hash_combine(seed, bExplicitZeroMarginValLeft);
return seed;
}
bool SvxLRSpaceItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1713,6 +1832,7 @@ bool SvxULSpaceItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxULSpaceItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
sal_Int32 nVal = 0;
@ -1773,6 +1893,22 @@ bool SvxULSpaceItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
}
bool SvxULSpaceItem::isHashable() const
{
return true;
}
size_t SvxULSpaceItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, nUpper);
o3tl::hash_combine(seed, nLower);
o3tl::hash_combine(seed, bContext);
o3tl::hash_combine(seed, nPropUpper);
o3tl::hash_combine(seed, nPropLower);
return seed;
}
bool SvxULSpaceItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1943,6 +2079,20 @@ bool SvxOpaqueItem::GetPresentation
}
bool SvxProtectItem::isHashable() const
{
return true;
}
size_t SvxProtectItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, bCntnt);
o3tl::hash_combine(seed, bSize);
o3tl::hash_combine(seed, bPos);
return seed;
}
bool SvxProtectItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1975,6 +2125,7 @@ bool SvxProtectItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxProtectItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
bool bVal( Any2Bool(rVal) );
switch(nMemberId)
@ -2143,6 +2294,20 @@ bool SvxShadowItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
}
bool SvxShadowItem::isHashable() const
{
return true;
}
size_t SvxShadowItem::hashCode() const
{
std::size_t seed = 0;
o3tl::hash_combine(seed, static_cast<sal_Int32>(aShadowColor));
o3tl::hash_combine(seed, nWidth);
o3tl::hash_combine(seed, eLocation);
return seed;
}
bool SvxShadowItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -2358,7 +2523,6 @@ static bool CompareBorderLine(const std::unique_ptr<SvxBorderLine> & pBrd1, cons
return *pBrd1 == *pBrd2;
}
bool SvxBoxItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -3263,12 +3427,6 @@ SvxBoxInfoItem::SvxBoxInfoItem(const sal_uInt16 nId)
ResetFlags();
}
ItemInstanceManager* SvxBoxItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxBoxItem).hash_code());
return &aInstanceManager;
}
SvxBoxInfoItem::SvxBoxInfoItem( const SvxBoxInfoItem& rCopy )
: SfxPoolItem(rCopy)
, mpHorizontalLine(rCopy.mpHorizontalLine ? new SvxBorderLine(*rCopy.mpHorizontalLine) : nullptr)
@ -3983,12 +4141,6 @@ void SvxLineItem::SetLine( const SvxBorderLine* pNew )
pLine.reset( pNew ? new SvxBorderLine( *pNew ) : nullptr );
}
ItemInstanceManager* SvxBrushItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxBrushItem).hash_code());
return &aInstanceManager;
}
SvxBrushItem::SvxBrushItem(sal_uInt16 _nWhich)
: SfxPoolItem(_nWhich, SfxItemType::SvxBrushItemType)
, aColor(COL_TRANSPARENT)
@ -4600,12 +4752,6 @@ void SvxBrushItem::dumpAsXml(xmlTextWriterPtr pWriter) const
(void)xmlTextWriterEndElement(pWriter);
}
ItemInstanceManager* SvxFrameDirectionItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxFrameDirectionItem).hash_code());
return &aInstanceManager;
}
SvxFrameDirectionItem::SvxFrameDirectionItem( SvxFrameDirection nValue ,
sal_uInt16 _nWhich )
: SfxEnumItem<SvxFrameDirection>( _nWhich, SfxItemType::SvxFrameDirectionItemType, nValue )

View file

@ -50,6 +50,7 @@
#include <editeng/memberids.h>
#include <editeng/itemtype.hxx>
#include <editeng/eerdll.hxx>
#include <o3tl/hash_combine.hxx>
using namespace ::com::sun::star;
@ -339,12 +340,6 @@ void SvxLineSpacingItem::SetEnumValue( sal_uInt16 nVal )
// class SvxAdjustItem ---------------------------------------------------
ItemInstanceManager* SvxAdjustItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxAdjustItem).hash_code());
return &aInstanceManager;
}
SvxAdjustItem::SvxAdjustItem(const SvxAdjust eAdjst, const sal_uInt16 nId )
: SfxEnumItemInterface( nId, SfxItemType::SvxAdjustItemType ),
bOneBlock( false ), bLastCenter( false ), bLastBlock( false )
@ -352,6 +347,17 @@ SvxAdjustItem::SvxAdjustItem(const SvxAdjust eAdjst, const sal_uInt16 nId )
SetAdjust( eAdjst );
}
bool SvxAdjustItem::isHashable() const { return true; }
size_t SvxAdjustItem::hashCode() const
{
std::size_t seed(0);
o3tl::hash_combine(seed, GetAdjust());
o3tl::hash_combine(seed, bOneBlock);
o3tl::hash_combine(seed, bLastCenter);
o3tl::hash_combine(seed, bLastBlock);
return seed;
}
bool SvxAdjustItem::operator==( const SfxPoolItem& rAttr ) const
{
@ -383,6 +389,7 @@ bool SvxAdjustItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxAdjustItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
switch( nMemberId )
{
@ -559,7 +566,7 @@ bool SvxOrphansItem::GetPresentation
// class SvxHyphenZoneItem -----------------------------------------------
SvxHyphenZoneItem::SvxHyphenZoneItem( const bool bHyph, const sal_uInt16 nId ) :
SfxPoolItem( nId, SfxItemType::SvxHyphenZoneItem ),
SfxPoolItem( nId, SfxItemType::SvxHyphenZoneItemType ),
bHyphen(bHyph),
bKeep(false),
bNoCapsHyphenation(false),

View file

@ -159,30 +159,21 @@ bool SvxFontListItem::GetPresentation
// class SvxFontItem -----------------------------------------------------
namespace
bool SvxFontItem::isHashable() const
{
class SvxFontItemInstanceManager : public TypeSpecificItemInstanceManager<SvxFontItem>
{
protected:
virtual size_t hashCode(const SfxPoolItem& rItem) const override
{
const SvxFontItem& rFontItem(static_cast<const SvxFontItem&>(rItem));
std::size_t seed(0);
o3tl::hash_combine(seed, rItem.Which());
o3tl::hash_combine(seed, rFontItem.GetFamilyName().hashCode());
o3tl::hash_combine(seed, rFontItem.GetStyleName().hashCode());
o3tl::hash_combine(seed, rFontItem.GetFamily());
o3tl::hash_combine(seed, rFontItem.GetPitch());
o3tl::hash_combine(seed, rFontItem.GetCharSet());
return seed;
}
};
return true;
}
ItemInstanceManager* SvxFontItem::getItemInstanceManager() const
size_t SvxFontItem::hashCode() const
{
static SvxFontItemInstanceManager aInstanceManager;
return &aInstanceManager;
std::size_t seed(0);
o3tl::hash_combine(seed, Which());
o3tl::hash_combine(seed, GetFamilyName().hashCode());
o3tl::hash_combine(seed, GetStyleName().hashCode());
o3tl::hash_combine(seed, GetFamily());
o3tl::hash_combine(seed, GetPitch());
o3tl::hash_combine(seed, GetCharSet());
return seed;
}
SvxFontItem::SvxFontItem(
@ -243,6 +234,7 @@ bool SvxFontItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxFontItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
switch(nMemberId)
{
@ -409,28 +401,6 @@ void SvxFontItem::dumpAsXml(xmlTextWriterPtr pWriter) const
// class SvxPostureItem --------------------------------------------------
namespace
{
class SvxPostureItemInstanceManager : public TypeSpecificItemInstanceManager<SvxPostureItem>
{
protected:
virtual size_t hashCode(const SfxPoolItem& rItem) const override
{
auto const & rPostureItem = static_cast<const SvxPostureItem&>(rItem);
std::size_t seed(0);
o3tl::hash_combine(seed, rPostureItem.Which());
o3tl::hash_combine(seed, rPostureItem. GetEnumValue());
return seed;
}
};
}
ItemInstanceManager* SvxPostureItem::getItemInstanceManager() const
{
static SvxPostureItemInstanceManager aInstanceManager;
return &aInstanceManager;
}
SvxPostureItem::SvxPostureItem( const FontItalic ePosture, const sal_uInt16 nId ) :
SfxEnumItem( nId, SfxItemType::SvxPostureItemType, ePosture )
{
@ -495,6 +465,7 @@ bool SvxPostureItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxPostureItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
switch( nMemberId )
{
@ -547,12 +518,6 @@ void SvxPostureItem::dumpAsXml(xmlTextWriterPtr pWriter) const
// class SvxWeightItem ---------------------------------------------------
ItemInstanceManager* SvxWeightItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxWeightItem).hash_code());
return &aInstanceManager;
}
SvxWeightItem::SvxWeightItem( const FontWeight eWght, const sal_uInt16 nId ) :
SfxEnumItem( nId, SfxItemType::SvxWeightItemType, eWght )
{
@ -677,28 +642,18 @@ void SvxWeightItem::dumpAsXml(xmlTextWriterPtr pWriter) const
// class SvxFontHeightItem -----------------------------------------------
namespace
bool SvxFontHeightItem::isHashable() const
{
class SvxFontHeightItemInstanceManager : public TypeSpecificItemInstanceManager<SvxFontHeightItem>
{
protected:
virtual size_t hashCode(const SfxPoolItem& rItem) const override
{
auto const & rFontHeightItem = static_cast<const SvxFontHeightItem&>(rItem);
std::size_t seed(0);
o3tl::hash_combine(seed, rFontHeightItem.Which());
o3tl::hash_combine(seed, rFontHeightItem.GetHeight());
o3tl::hash_combine(seed, rFontHeightItem.GetProp());
o3tl::hash_combine(seed, rFontHeightItem.GetPropUnit());
return seed;
}
};
return true;
}
ItemInstanceManager* SvxFontHeightItem::getItemInstanceManager() const
size_t SvxFontHeightItem::hashCode() const
{
static SvxFontHeightItemInstanceManager aInstanceManager;
return &aInstanceManager;
std::size_t seed(0);
o3tl::hash_combine(seed, GetHeight());
o3tl::hash_combine(seed, GetProp());
o3tl::hash_combine(seed, GetPropUnit());
return seed;
}
SvxFontHeightItem::SvxFontHeightItem( const sal_uInt32 nSz,
@ -862,6 +817,7 @@ static sal_uInt32 lcl_GetRealHeight_Impl(sal_uInt32 nHeight, sal_uInt16 nProp, M
bool SvxFontHeightItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
nMemberId &= ~CONVERT_TWIPS;
switch( nMemberId )
@ -1042,8 +998,8 @@ void SvxFontHeightItem::dumpAsXml(xmlTextWriterPtr pWriter) const
// class SvxTextLineItem ------------------------------------------------
SvxTextLineItem::SvxTextLineItem( const FontLineStyle eSt, const sal_uInt16 nId )
: SfxEnumItem(nId, SfxItemType::SvxTextLineItemType,eSt)
SvxTextLineItem::SvxTextLineItem( const FontLineStyle eSt, const sal_uInt16 nId, SfxItemType eItemType )
: SfxEnumItem(nId, eItemType, eSt)
, maColor(COL_TRANSPARENT)
{
}
@ -1194,14 +1150,8 @@ bool SvxTextLineItem::operator==( const SfxPoolItem& rItem ) const
// class SvxUnderlineItem ------------------------------------------------
ItemInstanceManager* SvxUnderlineItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxUnderlineItem).hash_code());
return &aInstanceManager;
}
SvxUnderlineItem::SvxUnderlineItem( const FontLineStyle eSt, const sal_uInt16 nId )
: SvxTextLineItem( eSt, nId )
: SvxTextLineItem( eSt, nId, SfxItemType::SvxUnderlineItemType )
{
}
@ -1241,14 +1191,8 @@ OUString SvxUnderlineItem::GetValueTextByPos( sal_uInt16 nPos ) const
// class SvxOverlineItem ------------------------------------------------
ItemInstanceManager* SvxOverlineItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxOverlineItem).hash_code());
return &aInstanceManager;
}
SvxOverlineItem::SvxOverlineItem( const FontLineStyle eSt, const sal_uInt16 nId )
: SvxTextLineItem( eSt, nId )
: SvxTextLineItem( eSt, nId, SfxItemType::SvxOverlineItemType )
{
}
@ -1288,12 +1232,6 @@ OUString SvxOverlineItem::GetValueTextByPos( sal_uInt16 nPos ) const
// class SvxCrossedOutItem -----------------------------------------------
ItemInstanceManager* SvxCrossedOutItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxCrossedOutItem).hash_code());
return &aInstanceManager;
}
SvxCrossedOutItem::SvxCrossedOutItem( const FontStrikeout eSt, const sal_uInt16 nId )
: SfxEnumItem( nId, SfxItemType::SvxCrossedOutItemType, eSt )
{
@ -1530,6 +1468,16 @@ SvxColorItem::~SvxColorItem()
{
}
bool SvxColorItem::isHashable() const { return true; }
size_t SvxColorItem::hashCode() const
{
std::size_t seed(0);
o3tl::hash_combine(seed, static_cast<sal_Int32>(mColor));
o3tl::hash_combine(seed, maComplexColor);
return seed;
}
bool SvxColorItem::operator==( const SfxPoolItem& rAttr ) const
{
assert(SfxPoolItem::operator==(rAttr));
@ -1618,6 +1566,7 @@ bool SvxColorItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxColorItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
switch(nMemberId)
{
@ -1957,6 +1906,15 @@ SvxEscapementItem::SvxEscapementItem( const short _nEsc,
{
}
bool SvxEscapementItem::isHashable() const { return true; }
size_t SvxEscapementItem::hashCode() const
{
std::size_t seed(0);
o3tl::hash_combine(seed, nEsc);
o3tl::hash_combine(seed, nProp);
return seed;
}
bool SvxEscapementItem::operator==( const SfxPoolItem& rAttr ) const
{
@ -2046,6 +2004,7 @@ bool SvxEscapementItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
bool SvxEscapementItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
nMemberId &= ~CONVERT_TWIPS;
switch(nMemberId)
{
@ -2090,12 +2049,6 @@ bool SvxEscapementItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
// class SvxLanguageItem -------------------------------------------------
ItemInstanceManager* SvxLanguageItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxLanguageItem).hash_code());
return &aInstanceManager;
}
SvxLanguageItem::SvxLanguageItem( const LanguageType eLang, const sal_uInt16 nId )
: SvxLanguageItem_Base( nId , SfxItemType::SvxLanguageItemType, eLang )
{
@ -2238,12 +2191,6 @@ bool SvxBlinkItem::GetPresentation
// class SvxEmphaisMarkItem ---------------------------------------------------
ItemInstanceManager* SvxEmphasisMarkItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxEmphasisMarkItem).hash_code());
return &aInstanceManager;
}
SvxEmphasisMarkItem::SvxEmphasisMarkItem( const FontEmphasisMark nValue,
TypedWhichId<SvxEmphasisMarkItem> nId )
: SfxUInt16Item( nId, static_cast<sal_uInt16>(nValue), SfxItemType::SvxEmphasisMarkItemType )
@ -2457,8 +2404,8 @@ bool SvxTwoLinesItem::GetPresentation( SfxItemPresentation /*ePres*/,
|* class SvxTextRotateItem
*************************************************************************/
SvxTextRotateItem::SvxTextRotateItem(Degree10 nValue, TypedWhichId<SvxTextRotateItem> nW)
: SfxUInt16Item(nW, nValue.get(), SfxItemType::SvxTextRotateItemType)
SvxTextRotateItem::SvxTextRotateItem(Degree10 nValue, TypedWhichId<SvxTextRotateItem> nW, SfxItemType eItemType)
: SfxUInt16Item(nW, nValue.get(), eItemType)
{
}
@ -2537,7 +2484,8 @@ void SvxTextRotateItem::dumpAsXml(xmlTextWriterPtr pWriter) const
SvxCharRotateItem::SvxCharRotateItem( Degree10 nValue,
bool bFitIntoLine,
TypedWhichId<SvxCharRotateItem> nW )
: SvxTextRotateItem(nValue, nW), bFitToLine( bFitIntoLine )
: SvxTextRotateItem(nValue, nW, SfxItemType::SvxCharRotateItemType),
bFitToLine( bFitIntoLine )
{
}
@ -2626,7 +2574,7 @@ void SvxCharRotateItem::dumpAsXml(xmlTextWriterPtr pWriter) const
SvxCharScaleWidthItem::SvxCharScaleWidthItem( sal_uInt16 nValue,
TypedWhichId<SvxCharScaleWidthItem> nW )
: SfxUInt16Item( nW, nValue, SfxItemType::SvxCharScaleWidthItem )
: SfxUInt16Item( nW, nValue, SfxItemType::SvxCharScaleWidthItemType )
{
}
@ -2678,12 +2626,6 @@ bool SvxCharScaleWidthItem::QueryValue( uno::Any& rVal, sal_uInt8 /*nMemberId*/
|* class SvxCharReliefItem
*************************************************************************/
ItemInstanceManager* SvxCharReliefItem::getItemInstanceManager() const
{
static DefaultItemInstanceManager aInstanceManager(typeid(SvxCharReliefItem).hash_code());
return &aInstanceManager;
}
SvxCharReliefItem::SvxCharReliefItem( FontRelief eValue,
const sal_uInt16 nId )
: SfxEnumItem( nId, SfxItemType::SvxCharReliefItemType, eValue )
@ -2967,28 +2909,6 @@ void GetDefaultFonts( SvxFontItem& rLatin, SvxFontItem& rAsian, SvxFontItem& rCo
// class SvxRsidItem -----------------------------------------------------
namespace
{
class SvxRsidItemInstanceManager : public TypeSpecificItemInstanceManager<SvxRsidItem>
{
protected:
virtual size_t hashCode(const SfxPoolItem& rItem) const override
{
auto const & rRsidItem = static_cast<const SvxRsidItem&>(rItem);
std::size_t seed(0);
o3tl::hash_combine(seed, rRsidItem.Which());
o3tl::hash_combine(seed, rRsidItem.GetValue());
return seed;
}
};
}
ItemInstanceManager* SvxRsidItem::getItemInstanceManager() const
{
static SvxRsidItemInstanceManager aInstanceManager;
return &aInstanceManager;
}
bool SvxRsidItem::QueryValue( uno::Any& rVal, sal_uInt8 ) const
{
rVal <<= GetValue();
@ -2997,6 +2917,7 @@ bool SvxRsidItem::QueryValue( uno::Any& rVal, sal_uInt8 ) const
bool SvxRsidItem::PutValue( const uno::Any& rVal, sal_uInt8 )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
sal_uInt32 nRsid = 0;
if( !( rVal >>= nRsid ) )
return false;

View file

@ -2072,7 +2072,9 @@ SvxAutoCorrect::SearchWordsInList(
CreateLanguageFile(aLanguageTag, false)))
{
//the language is available - so bring it on
SvxAutoCorrectLanguageLists& rList = m_aLangTable.find(aLanguageTag)->second;
const auto iter = m_aLangTable.find(aLanguageTag);
assert(iter != m_aLangTable.end());
SvxAutoCorrectLanguageLists& rList = iter->second;
auto pRet = lcl_SearchWordsInList( &rList, rTxt, rStt, nEndPos );
if( pRet )
{

View file

@ -164,7 +164,8 @@ EditPaM SvxReadXML( EditEngine& rEditEngine, SvStream& rStream, const ESelection
{
uno::Reference<uno::XComponentContext> xContext( ::comphelper::getProcessComponentContext() );
uno::Reference<io::XInputStream> xInputStream = new utl::OInputStreamWrapper( rStream );
xml::sax::InputSource aParserInput;
aParserInput.aInputStream = new utl::OInputStreamWrapper(rStream);
/* testcode
static constexpr OUStringLiteral aURL( u"file:///e:/test.xml" );
@ -201,8 +202,6 @@ EditPaM SvxReadXML( EditEngine& rEditEngine, SvStream& rStream, const ESelection
// uno::Reference< XDocumentHandler > xHandler( new SvxXMLXTextImportComponent( xText ) );
rtl::Reference< SvxXMLXTextImportComponent > xImport( new SvxXMLXTextImportComponent( xContext, pUnoText ) );
xml::sax::InputSource aParserInput;
aParserInput.aInputStream = xInputStream;
// aParserInput.sSystemId = aMedium.GetName();
xImport->parseStream( aParserInput );
}

View file

@ -375,7 +375,7 @@ bool OCommonEmbeddedObject::getAllowLinkUpdate() const
uno::Reference<container::XChild> xGrandParent(xParent->getParent(), uno::UNO_QUERY);
if (!xGrandParent)
break;
xParent = xGrandParent;
xParent = std::move(xGrandParent);
}
uno::Reference<beans::XPropertySet> xPropSet(xParent, uno::UNO_QUERY);

View file

@ -26,8 +26,7 @@ class Test : public test::BootstrapFixture, public unotest::MacrosTest
CPPUNIT_TEST_FIXTURE(Test, testBibliographyLoader)
{
// Given a bibliography provider:
uno::Reference<container::XNameAccess> xBibAccess
= frame::Bibliography::create(mxComponentContext);
uno::Reference<container::XNameAccess> xBibAccess = frame::Bibliography::create(m_xContext);
uno::Reference<beans::XPropertySet> xPropSet(xBibAccess, uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aSeq;

View file

@ -21,7 +21,7 @@ else # COM=MSC
$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.dll,win32/bin.msvc/libxml2.dll))
endif
else # OS!=WNT
$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.13.$(LIBXML_VERSION_MICRO)))
$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.12.$(LIBXML_VERSION_MICRO)))
endif
endif # DISABLE_DYNLOADING

View file

@ -1,11 +1,11 @@
--- include/libxml/xmlexports.h 2023-05-24 12:48:46.179570708 +0100
+++ include/libxml/xmlexports.h 2023-05-24 12:48:56.563577488 +0100
@@ -31,8 +31,6 @@
#define XMLPUBVAR XMLPUBLIC extern
@@ -38,8 +38,6 @@
/** DOC_DISABLE */
/* Compatibility */
-#define XMLCALL
-#define XMLCDECL
#ifndef LIBXML_DLL_IMPORT
#define LIBXML_DLL_IMPORT XMLPUBVAR
#if !defined(LIBXML_DLL_IMPORT)
#define LIBXML_DLL_IMPORT XMLPUBVAR
#endif

View file

@ -3,14 +3,14 @@ Find bundled ICU in workdir and use debug .libs when needed
diff -up win32/Makefile.msvc.dt win32/Makefile.msvc
--- win32/Makefile.msvc.dt 2014-07-18 19:00:23.372103963 +0200
+++ win32/Makefile.msvc 2014-07-18 19:01:39.347982929 +0200
@@ -42,6 +42,7 @@
@@ -46,6 +46,7 @@ CPPFLAGS = $(CPPFLAGS) /D "_REENTRANT"
CC = cl.exe
CFLAGS = /nologo /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W3 /wd4244 /wd4267 $(CRUNTIME)
CFLAGS = $(CFLAGS) /I$(XML_SRCDIR) /I$(XML_SRCDIR)\include /I$(INCPREFIX)
+CFLAGS = $(CFLAGS) /I$(WORKDIR)/UnpackedTarball/icu/source/i18n /I$(WORKDIR)/UnpackedTarball/icu/source/common
!if "$(WITH_THREADS)" == "ctls"
CFLAGS = $(CFLAGS) /D "XML_THREAD_LOCAL=__declspec(thread)"
!else if "$(WITH_THREADS)" == "posix"
!if "$(WITH_THREADS)" != "no"
CFLAGS = $(CFLAGS) /D "_REENTRANT"
!endif
@@ -62,7 +63,9 @@
# The linker and its options.
LD = link.exe

View file

@ -3,14 +3,14 @@ Find bundled ICU in workdir and use debug .libs when needed
diff -up win32/Makefile.msvc.dt win32/Makefile.msvc
--- win32/Makefile.msvc.dt 2014-07-18 19:00:23.372103963 +0200
+++ win32/Makefile.msvc 2014-07-18 19:01:39.347982929 +0200
@@ -42,6 +42,7 @@
@@ -45,6 +45,7 @@ CPPFLAGS = $(CPPFLAGS) /D "_REENTRANT"
CC = cl.exe
CFLAGS = /nologo /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W3 /wd4244 /wd4267 $(CRUNTIME)
CFLAGS = $(CFLAGS) /I$(XML_SRCDIR) /I$(XML_SRCDIR)\include /I$(INCPREFIX)
+CFLAGS = $(CFLAGS) /I$(WORKDIR)/UnpackedTarball/icu/source/i18n /I$(WORKDIR)/UnpackedTarball/icu/source/common
!if "$(WITH_THREADS)" == "ctls"
CFLAGS = $(CFLAGS) /D "XML_THREAD_LOCAL=__declspec(thread)"
!else if "$(WITH_THREADS)" == "posix"
!if "$(WITH_THREADS)" != "no"
CFLAGS = $(CFLAGS) /D "_REENTRANT"
!endif
@@ -67,6 +68,7 @@ CFLAGS = $(CFLAGS) $(SOLARINC)
# The linker and its options.
LD = link.exe

View file

@ -25,7 +25,7 @@ $(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.dl
endif
else # OS!=WNT
$(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libxslt.so.1,libxslt/.libs/libxslt.so.1.1.$(LIBXSLT_VERSION_MICRO)))
$(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.22))
$(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.23))
endif
endif # DISABLE_DYNLOADING

View file

@ -0,0 +1,17 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_agdasima,font_agdasima))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_agdasima,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Agdasima-Regular.ttf \
Agdasima-Bold.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,16 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_bacasime_antique,font_bacasime_antique))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_bacasime_antique,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
BacasimeAntique-Regular.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,18 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_belanosima,font_belanosima))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_belanosima,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Belanosima-Regular.ttf \
Belanosima-SemiBold.ttf \
Belanosima-Bold.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,16 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_caprasimo,font_caprasimo))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_caprasimo,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Caprasimo-Regular.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,16 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_lugrasimo,font_lugrasimo))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_lugrasimo,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Lugrasimo-Regular.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,16 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_lumanosimo,font_lumanosimo))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_lumanosimo,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Lumanosimo-Regular.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,17 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_ExternalPackage_ExternalPackage,fonts_lunasima,font_lunasima))
$(eval $(call gb_ExternalPackage_add_unpacked_files,fonts_lunasima,$(LIBO_SHARE_FOLDER)/fonts/truetype,\
Lunasima-Regular.ttf \
Lunasima-Bold.ttf \
))
# vim: set noet sw=4 ts=4:

View file

@ -38,6 +38,13 @@ $(eval $(call gb_Module_add_targets,more_fonts,\
ExternalPackage_noto_serif_lao \
ExternalPackage_reem \
ExternalPackage_scheherazade \
ExternalPackage_agdasima \
ExternalPackage_bacasime_antique \
ExternalPackage_belanosima \
ExternalPackage_caprasimo \
ExternalPackage_lugrasimo \
ExternalPackage_lumanosimo \
ExternalPackage_lunasima \
UnpackedTarball_alef \
UnpackedTarball_amiri \
UnpackedTarball_gmx \
@ -66,6 +73,13 @@ $(eval $(call gb_Module_add_targets,more_fonts,\
UnpackedTarball_noto_serif_lao \
UnpackedTarball_reem \
UnpackedTarball_scheherazade \
UnpackedTarball_agdasima \
UnpackedTarball_bacasime_antique \
UnpackedTarball_belanosima \
UnpackedTarball_caprasimo \
UnpackedTarball_lugrasimo \
UnpackedTarball_lumanosimo \
UnpackedTarball_lunasima \
))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_agdasima))
$(eval $(call gb_UnpackedTarball_set_tarball,font_agdasima,$(FONT_AGDASIMA_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_bacasime_antique))
$(eval $(call gb_UnpackedTarball_set_tarball,font_bacasime_antique,$(FONT_BACASIME_ANTIQUE_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_belanosima))
$(eval $(call gb_UnpackedTarball_set_tarball,font_belanosima,$(FONT_BELANOSIMA_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_caprasimo))
$(eval $(call gb_UnpackedTarball_set_tarball,font_caprasimo,$(FONT_CAPRASIMO_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_lugrasimo))
$(eval $(call gb_UnpackedTarball_set_tarball,font_lugrasimo,$(FONT_LUGRASIMO_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_lumanosimo))
$(eval $(call gb_UnpackedTarball_set_tarball,font_lumanosimo,$(FONT_LUMANOSIMO_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -0,0 +1,14 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,font_lunasima))
$(eval $(call gb_UnpackedTarball_set_tarball,font_lunasima,$(FONT_LUNASIMA_TARBALL),0))
# vim: set noet sw=4 ts=4:

View file

@ -27,3 +27,52 @@
<family>Caladea</family>
</accept>
</alias>
<alias binding="same">
<family>Agency FB</family>
<accept>
<family>Agdasima</family>
</accept>
</alias>
<alias binding="same">
<family>Baskerville Old Face</family>
<accept>
<family>Bacasime Antique</family>
</accept>
</alias>
<alias binding="same">
<family>Berlin Sans FB</family>
<accept>
<family>Belanosima</family>
</accept>
</alias>
<alias binding="same">
<family>Cooper Black</family>
<accept>
<family>Caprasimo</family>
</accept>
</alias>
<alias binding="same">
<family>Lucida Grande</family>
<accept>
<family>Lunasima</family>
</accept>
</alias>
<alias binding="same">
<family>Lucida Handwriting</family>
<accept>
<family>Lumanosimo</family>
</accept>
</alias>
<alias binding="same">
<family>Lucida Calligraphy</family>
<accept>
<family>Lugrasimo</family>
</accept>
</alias>

View file

@ -96,7 +96,6 @@ python3_EXTENSION_MODULES= \
LO_lib/_multiprocessing.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/_opcode.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/ossaudiodev.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/parser.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/_pickle.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/_posixshmem.$(python3_EXTENSION_MODULE_SUFFIX).so \
LO_lib/_posixsubprocess.$(python3_EXTENSION_MODULE_SUFFIX).so \
@ -186,7 +185,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/__future__.py \
Lib/__phello__.foo.py \
Lib/_aix_support.py \
Lib/_bootlocale.py \
Lib/_bootsubprocess.py \
Lib/_collections_abc.py \
Lib/_compat_pickle.py \
@ -240,7 +238,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/filecmp.py \
Lib/fileinput.py \
Lib/fnmatch.py \
Lib/formatter.py \
Lib/fractions.py \
Lib/ftplib.py \
Lib/functools.py \
@ -325,7 +322,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/struct.py \
Lib/subprocess.py \
Lib/sunau.py \
Lib/symbol.py \
Lib/symtable.py \
Lib/sysconfig.py \
Lib/tabnanny.py \
@ -372,6 +368,7 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/asyncio/futures.py \
Lib/asyncio/locks.py \
Lib/asyncio/log.py \
Lib/asyncio/mixins.py \
Lib/asyncio/proactor_events.py \
Lib/asyncio/protocols.py \
Lib/asyncio/queues.py \
@ -462,7 +459,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/distutils/command/bdist_dumb.py \
Lib/distutils/command/bdist_msi.py \
Lib/distutils/command/bdist_rpm.py \
Lib/distutils/command/bdist_wininst.py \
Lib/distutils/command/build.py \
Lib/distutils/command/build_clib.py \
Lib/distutils/command/build_ext.py \
@ -481,15 +477,6 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
Lib/distutils/command/register.py \
Lib/distutils/command/sdist.py \
Lib/distutils/command/upload.py \
Lib/distutils/command/wininst-10.0.exe \
Lib/distutils/command/wininst-10.0-amd64.exe \
Lib/distutils/command/wininst-14.0.exe \
Lib/distutils/command/wininst-14.0-amd64.exe \
Lib/distutils/command/wininst-6.0.exe \
Lib/distutils/command/wininst-7.1.exe \
Lib/distutils/command/wininst-8.0.exe \
Lib/distutils/command/wininst-9.0.exe \
Lib/distutils/command/wininst-9.0-amd64.exe \
))
$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/email,\
@ -669,16 +656,27 @@ $(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/importlib,\
Lib/importlib/__init__.py \
Lib/importlib/_abc.py \
Lib/importlib/_adapters.py \
Lib/importlib/_bootstrap.py \
Lib/importlib/_bootstrap_external.py \
Lib/importlib/_common.py \
Lib/importlib/abc.py \
Lib/importlib/machinery.py \
Lib/importlib/metadata.py \
Lib/importlib/resources.py \
Lib/importlib/util.py \
))
$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/importlib/metadata,\
Lib/importlib/metadata/__init__.py \
Lib/importlib/metadata/_adapters.py \
Lib/importlib/metadata/_collections.py \
Lib/importlib/metadata/_functools.py \
Lib/importlib/metadata/_itertools.py \
Lib/importlib/metadata/_meta.py \
Lib/importlib/metadata/_text.py \
))
$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/json,\
Lib/json/__init__.py \
Lib/json/decoder.py \

View file

@ -22,16 +22,15 @@ $(eval $(call gb_UnpackedTarball_set_patchflags,python3,--binary))
endif
$(eval $(call gb_UnpackedTarball_add_patches,python3,\
external/python3/distutils_deprecated.patch.0 \
external/python3/i100492-freebsd.patch.1 \
external/python3/python-3.3.0-darwin.patch.1 \
external/python3/python-3.8-msvc-libffi.patch.1 \
external/python3/python-3.7.6-msvc-ssl.patch.1 \
external/python3/python-3.5.4-msvc-disable.patch.1 \
external/python3/ubsan.patch.0 \
external/python3/py_deprecated_warning.patch.0 \
external/python3/python-3.5.tweak.strip.soabi.patch \
external/python3/darwin.patch.0 \
external/python3/macos-11.patch.0 \
external/python3/tsan.patch.0 \
external/python3/init-sys-streams-cant-initialize-stdin.patch.0 \
))

View file

@ -0,0 +1,33 @@
--- Lib/distutils/__init__.py 2024-07-06 14:41:11.881840873 +0200
+++ Lib/distutils/__init__.py 2024-07-06 14:41:31.725586707 +0200
@@ -7,14 +7,3 @@
setup (...)
"""
-
-import sys
-import warnings
-
-__version__ = sys.version[:sys.version.index(' ')]
-
-_DEPRECATION_MESSAGE = ("The distutils package is deprecated and slated for "
- "removal in Python 3.12. Use setuptools or check "
- "PEP 632 for potential alternatives")
-warnings.warn(_DEPRECATION_MESSAGE,
- DeprecationWarning, 2)
--- Lib/distutils/sysconfig.py 2024-07-06 18:03:30.397986006 +0200
+++ Lib/distutils/sysconfig.py 2024-07-06 18:03:58.637312653 +0200
@@ -55,13 +55,6 @@
if os.name == "nt":
from sysconfig import _fix_pcbuild
-warnings.warn(
- 'The distutils.sysconfig module is deprecated, use sysconfig instead',
- DeprecationWarning,
- stacklevel=2
-)
-
-
# Following functions are the same as in sysconfig but with different API
def parse_config_h(fp, g=None):
return sysconfig_parse_config_h(fp, vars=g)

View file

@ -21,7 +21,7 @@
/* stdin is always opened in buffered mode, first because it shouldn't
make a difference in common use cases, second because TextIOWrapper
depends on the presence of a read1() method which only exists on
@@ -1971,19 +1971,6 @@
@@ -2335,19 +2335,6 @@
PyStatus res = _PyStatus_OK();
const PyConfig *config = _PyInterpreterState_GetConfig(tstate->interp);
@ -38,6 +38,6 @@
- }
-#endif
-
/* Hack to avoid a nasty recursion issue when Python is invoked
in verbose mode: pre-import the Latin-1 and UTF-8 codecs */
if ((m = PyImport_ImportModule("encodings.utf_8")) == NULL) {
if (!(iomod = PyImport_ImportModule("io"))) {
goto error;
}

View file

@ -1,34 +0,0 @@
--- setup.py
+++ setup.py
@@ -655,7 +655,10 @@
add_dir_to_list(self.compiler.include_dirs,
sysconfig.get_config_var("INCLUDEDIR"))
- system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib']
+ if MACOS:
+ system_lib_dirs = ['/usr/lib', macosx_sdk_root()+'/usr/lib']
+ else:
+ system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib']
system_include_dirs = ['/usr/include']
# lib_dirs and inc_dirs are used to search for files;
# if a file is found in one of those directories, it can
--- Modules/_posixsubprocess.c
+++ Modules/_posixsubprocess.c
@@ -30,6 +30,8 @@
# define SYS_getdents64 __NR_getdents64
#endif
+#include <limits.h>
+
#if defined(__sun) && defined(__SVR4)
/* readdir64 is used to work around Solaris 9 bug 6395699. */
# define readdir readdir64
@@ -201,7 +203,7 @@
#endif
#ifdef _SC_OPEN_MAX
local_max_fd = sysconf(_SC_OPEN_MAX);
- if (local_max_fd == -1)
+ if (local_max_fd == -1 || local_max_fd == LONG_MAX)
#endif
local_max_fd = 256; /* Matches legacy Lib/subprocess.py behavior. */
return local_max_fd;

View file

@ -1,20 +0,0 @@
--- Include/cpython/unicodeobject.h 2024-06-10 10:53:20.049824821 +0200
+++ Include/cpython/unicodeobject.h 2024-06-10 10:54:50.776970835 +0200
@@ -548,7 +548,7 @@
only allowed if u was set to NULL.
The buffer is copied into the new object. */
-Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode(
+/*Py_DEPRECATED(3.3)*/ PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode(
const Py_UNICODE *u, /* Unicode buffer */
Py_ssize_t size /* size of buffer */
);
@@ -577,7 +577,7 @@
Py_UNICODE buffer.
If the wchar_t/Py_UNICODE representation is not yet available, this
function will calculate it. */
-Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
+/*Py_DEPRECATED(3.3)*/ PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
PyObject *unicode /* Unicode object */
);

View file

@ -5,10 +5,10 @@ set RPATH (only to be used on ELF platforms)
diff -ru python3.orig/Makefile.pre.in python3/Makefile.pre.in
--- python3.orig/Makefile.pre.in 2015-07-26 20:29:07.126194320 +0200
+++ python3/Makefile.pre.in 2015-07-26 20:37:21.814227530 +0200
@@ -589,7 +589,7 @@
@@ -586,7 +586,7 @@
# Build the interpreter
$(BUILDPYTHON): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) $(EXPORTSYMS)
$(BUILDPYTHON): Programs/python.o $(LIBRARY_DEPS)
- $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS)
+ $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) -Wl,-rpath,\$$ORIGIN

View file

@ -21,7 +21,7 @@ diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcxproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}"
@@ -41,24 +37,14 @@
@@ -41,22 +37,14 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testimportmultiple", "_testimportmultiple.vcxproj", "{36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}"
EndProject
@ -37,8 +37,6 @@ diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "..\PC\bdist_wininst\bdist_wininst.vcxproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}"
@ -46,7 +44,7 @@ diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}"
@@ -93,8 +79,6 @@
@@ -93,8 +81,6 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_queue", "_queue.vcxproj", "{78D80A15-BD8C-44E2-B49E-1F05B0A0A687}"
EndProject

View file

@ -29,7 +29,7 @@ $(call gb_ExternalProject_get_state_target,raptor,build):
$(if $(SYSBASE),$(if $(filter LINUX SOLARIS,$(OS)),-L$(SYSBASE)/lib -L$(SYSBASE)/usr/lib -lpthread -ldl))" \
CPPFLAGS="$(if $(SYSBASE),-I$(SYSBASE)/usr/include) $(gb_EMSCRIPTEN_CPPFLAGS)" \
$(gb_RUN_CONFIGURE) ./configure --disable-gtk-doc \
--enable-parsers="rdfxml ntriples turtle trig guess rss-tag-soup" \
--enable-parsers="rdfxml ntriples turtle trig guess rss-tag-soup" \
--without-www \
--without-xslt-config \
$(gb_CONFIGURE_PLATFORMS) \

View file

@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:block-list="http://openoffice.org/2001/block-list" xmlns:text="http://openoffice.org/2000/text" xmlns:office="http://openoffice.org/2000/office" block-list:list-name="Standard"><office:body><text:p>sedecznie dziękujemy za ofertę podjęcia pracy w &lt;field:company&gt;.</text:p><text:p>Niestety nie dysponujemy w tej chwili stanowiskiem pracy odpowiadającym Pańskim życzeniom i kwalifikacjom. Ta sytuacja może się oczywiście w każdej chwili zmienić.</text:p><text:p>Jeśli wyrazi Pani/Pan zgodę, to zatrzymamy Pański list motywacyjny do naszej dyspozycji. W tej sytuacji skontaktujemy się ewentualnie z Panią/z Panem w późniejszym terminie.</text:p><text:p/></office:body></office:document>
<office:document xmlns:block-list="http://openoffice.org/2001/block-list" xmlns:text="http://openoffice.org/2000/text" xmlns:office="http://openoffice.org/2000/office" block-list:list-name="Standard"><office:body><text:p>serdecznie dziękujemy za ofertę podjęcia pracy w &lt;field:company&gt;.</text:p><text:p>Niestety nie dysponujemy w tej chwili stanowiskiem pracy odpowiadającym Pańskim życzeniom i kwalifikacjom. Ta sytuacja może się oczywiście w każdej chwili zmienić.</text:p><text:p>Jeśli wyrazi Pani/Pan zgodę, to zatrzymamy Pański list motywacyjny do naszej dyspozycji. W tej sytuacji skontaktujemy się ewentualnie z Panią/z Panem w późniejszym terminie.</text:p><text:p/></office:body></office:document>

View file

@ -53,7 +53,7 @@ CPPUNIT_TEST_FIXTURE(Test, testSignCertificateSubjectName)
return;
uno::Reference<xml::crypto::XSEInitializer> xSEInitializer
= xml::crypto::SEInitializer::create(mxComponentContext);
= xml::crypto::SEInitializer::create(m_xContext);
uno::Reference<xml::crypto::XXMLSecurityContext> xSecurityContext
= xSEInitializer->createSecurityContext(OUString());
uno::Reference<xml::crypto::XSecurityEnvironment> xSecurityEnvironment

View file

@ -4531,7 +4531,7 @@ sal_uInt32 EscherConnectorListEntry::GetConnectorRule( bool bFirst )
*pType >>= sShapeType;
MSO_SPT eSpType = EnhancedCustomShapeTypeNames::Get( sShapeType );
uno::Any* pGluePointType = const_cast<SdrCustomShapeGeometryItem&>(rGeometryItem).GetPropertyValueByName( u"Path"_ustr, u"GluePointType"_ustr );
const uno::Any* pGluePointType = rGeometryItem.GetPropertyValueByName( u"Path"_ustr, u"GluePointType"_ustr );
sal_Int16 nGluePointType = sal_Int16();
if ( !( pGluePointType &&

View file

@ -98,9 +98,8 @@ bool XmlFilterAdaptor::importImpl( const Sequence< css::beans::PropertyValue >&
if (It != aMediaMap.end() && (It->second >>= aFilterName)
&& aFilterName == "OpenDocument Text Flat XML")
{
PropertyValue EmptyDbFieldHidesPara(u"EmptyDbFieldHidesPara"_ustr, 0, Any(false),
PropertyState::PropertyState_DIRECT_VALUE);
Sequence<PropertyValue> aSettings{ EmptyDbFieldHidesPara };
Sequence<PropertyValue> aSettings{ PropertyValue(u"EmptyDbFieldHidesPara"_ustr, 0,
Any(false), PropertyState::PropertyState_DIRECT_VALUE) };
xInfoSet->setPropertyValue(u"DefaultDocumentSettings"_ustr, Any(aSettings));
}
Sequence< Any > aAnys{ Any(xInfoSet) };

View file

@ -51,7 +51,7 @@ CPPUNIT_TEST_FIXTURE(Test, checkDefaultTitle)
uno::Reference<frame::XTitle> xTitle(xFrame, css::uno::UNO_QUERY);
OUString defaultTitle = xTitle->getTitle();
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(mxComponentContext));
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(m_xContext));
// Open print preview window and get title.
util::URL printPreviewURL;
@ -113,7 +113,7 @@ CPPUNIT_TEST_FIXTURE(Test, setTitleAndCheck)
uno::Reference<frame::XDispatchProvider> xDispatchProvider(xModel->getCurrentController(),
uno::UNO_QUERY);
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(mxComponentContext));
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(m_xContext));
util::URL printPreviewURL;
printPreviewURL.Complete = u".uno::PrintPreview"_ustr;

View file

@ -182,7 +182,7 @@ CPPUNIT_TEST_FIXTURE(DispatchTest, testSfxOfficeDispatchDispose)
uno::Reference<frame::XDispatchProvider> xFrame(xController->getFrame(), uno::UNO_QUERY);
CPPUNIT_ASSERT(xFrame.is());
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(mxComponentContext));
uno::Reference<util::XURLTransformer> xParser(util::URLTransformer::create(m_xContext));
util::URL url;
url.Complete = xModel->getURL() + "#dummy";
xParser->parseStrict(url);

View file

@ -118,7 +118,7 @@ CPPUNIT_TEST_FIXTURE(Test, testURLTransformer_parseSmart)
css::util::URL aURL;
aURL.Complete = "www.example.com:8080/foo/bar?q=baz#F";
css::uno::Reference xParser(css::util::URLTransformer::create(mxComponentContext));
css::uno::Reference xParser(css::util::URLTransformer::create(m_xContext));
CPPUNIT_ASSERT(xParser->parseSmart(aURL, u"http:"_ustr));
CPPUNIT_ASSERT_EQUAL(u"http://www.example.com:8080/foo/bar?q=baz#F"_ustr, aURL.Complete);
CPPUNIT_ASSERT_EQUAL(u"http://www.example.com:8080/foo/bar"_ustr, aURL.Main);

View file

@ -279,11 +279,10 @@ Sequence< Sequence< css::beans::PropertyValue > > ToolbarsMenuController::getLay
const sal_uInt32 nCount = aToolBarArray.size();
for ( sal_uInt32 i = 0; i < nCount; i++ )
{
Sequence< css::beans::PropertyValue > aTbSeq{
pSeq[i] = Sequence<css::beans::PropertyValue>{
comphelper::makePropertyValue(g_aPropUIName, aToolBarArray[i].aToolBarUIName),
comphelper::makePropertyValue(g_aPropResourceURL, aToolBarArray[i].aToolBarResName)
};
pSeq[i] = aTbSeq;
}
return aSeq;

@ -1 +1 @@
Subproject commit 5e39c70b93559a266ba9f68344fe8c4c3f2feacf
Subproject commit f2bf7ec5f1192052bc00bdb113885a41e6fb901b

View file

@ -32,7 +32,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testNumberingIdentifi
std::vector<OString> aFail;
uno::Reference<text::XNumberingTypeInfo> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
// Do not use getSupportedNumberingTypes() because it depends on
// configuration whether CTL and CJK numberings are included or not.
@ -83,7 +83,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testArabicZero)
{
// 1 -> "01"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(u"NumberingType"_ustr,
static_cast<sal_uInt16>(style::NumberingType::ARABIC_ZERO)),
@ -109,7 +109,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testArabicZero3)
{
// 10 -> "010"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(u"NumberingType"_ustr,
static_cast<sal_uInt16>(style::NumberingType::ARABIC_ZERO3)),
@ -135,7 +135,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testArabicZero4)
{
// 100 -> "0100"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(u"NumberingType"_ustr,
static_cast<sal_uInt16>(style::NumberingType::ARABIC_ZERO4)),
@ -161,7 +161,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testArabicZero5)
{
// 1000 -> "01000"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(u"NumberingType"_ustr,
static_cast<sal_uInt16>(style::NumberingType::ARABIC_ZERO5)),
@ -187,7 +187,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testKoreanCounting)
{
// 1 -> "일"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(
u"NumberingType"_ustr, static_cast<sal_uInt16>(style::NumberingType::NUMBER_HANGUL_KO)),
@ -222,7 +222,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testKoreanLegal)
{
// 1 -> "하나"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(
u"NumberingType"_ustr, static_cast<sal_uInt16>(style::NumberingType::NUMBER_LEGAL_KO)),
@ -399,7 +399,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testKoreanDigital)
{
// 1 -> "일"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(
u"NumberingType"_ustr,
@ -437,7 +437,7 @@ CPPUNIT_TEST_FIXTURE(I18npoolDefaultnumberingproviderTest, testKoreanDigital2)
{
// 1 -> "一"
uno::Reference<text::XNumberingFormatter> xFormatter(
text::DefaultNumberingProvider::create(mxComponentContext), uno::UNO_QUERY);
text::DefaultNumberingProvider::create(m_xContext), uno::UNO_QUERY);
uno::Sequence<beans::PropertyValue> aProperties = {
comphelper::makePropertyValue(
u"NumberingType"_ustr,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

View file

@ -16,6 +16,11 @@
#include <tools/degree.hxx>
#include <boost/property_tree/ptree_fwd.hpp>
namespace basegfx
{
class BColorModifierStack;
}
namespace basegfx
{
/* MCGR: Provide ColorStop definition
@ -256,6 +261,9 @@ public:
// apply Steps as 'hard' color stops
void doApplySteps(sal_uInt16 nStepCount);
// Apply BColorModifierStack changes
void tryToApplyBColorModifierStack(const BColorModifierStack& rBColorModifierStack);
};
class BASEGFX_DLLPUBLIC BGradient final

View file

@ -33,6 +33,8 @@ class PolygonStrokePrimitive2D;
class LineRectanglePrimitive2D;
class FilledRectanglePrimitive2D;
class SingleLinePrimitive2D;
class FillGradientPrimitive2D;
class FillGraphicPrimitive2D;
}
namespace drawinglayer::processor2d
@ -73,16 +75,31 @@ class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) CairoPixelProcessor2D final : pub
const primitive2d::FilledRectanglePrimitive2D& rFilledRectanglePrimitive2D);
void
processSingleLinePrimitive2D(const primitive2d::SingleLinePrimitive2D& rSingleLinePrimitive2D);
void processFillGradientPrimitive2D(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
void processFillGraphicPrimitive2D(
const primitive2d::FillGraphicPrimitive2D& rFillGraphicPrimitive2D);
/* the local processor for BasePrimitive2D-Implementation based primitives,
called from the common process()-implementation
*/
virtual void processBasePrimitive2D(const primitive2d::BasePrimitive2D& rCandidate) override;
protected:
// local protected minimal constructor for usage in derivates, e.g. helpers
CairoPixelProcessor2D(const geometry::ViewInformation2D& rViewInformation);
// helpers for gradients
void processFillGradientPrimitive2D_fallback_decompose(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
void processFillGradientPrimitive2D_drawOutputRange(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
bool processFillGradientPrimitive2D_isCompletelyBordered(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
void processFillGradientPrimitive2D_linear_axial(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
void processFillGradientPrimitive2D_radial_elliptical(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
void processFillGradientPrimitive2D_square_rect(
const primitive2d::FillGradientPrimitive2D& rFillGradientPrimitive2D);
protected:
bool hasError() const { return cairo_status(mpRT) != CAIRO_STATUS_SUCCESS; }
void setRenderTarget(cairo_t* mpNewRT) { mpRT = mpNewRT; }
bool hasRenderTarget() const { return nullptr != mpRT; }

View file

@ -44,9 +44,6 @@ class EDITENG_DLLPUBLIC SvxAdjustItem final : public SfxEnumItemInterface
bool bLastCenter : 1;
bool bLastBlock : 1;
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();
@ -54,6 +51,8 @@ public:
const sal_uInt16 nId );
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==( const SfxPoolItem& ) const override;
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;

View file

@ -73,9 +73,6 @@ class EDITENG_DLLPUBLIC SvxBoxItem final : public SfxPoolItem
void tryMigrateComplexColor(SvxBoxItemLine eLine);
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -54,9 +54,6 @@ class EDITENG_DLLPUBLIC SvxBrushItem final : public SfxPoolItem
void ApplyGraphicTransparency_Impl();
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -33,9 +33,6 @@
class EDITENG_DLLPUBLIC SvxCharReliefItem final : public SfxEnumItem<FontRelief>
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -35,7 +35,7 @@
class EDITENG_DLLPUBLIC SvxTextRotateItem : public SfxUInt16Item
{
public:
SvxTextRotateItem(Degree10 nValue, TypedWhichId<SvxTextRotateItem> nId);
SvxTextRotateItem(Degree10 nValue, TypedWhichId<SvxTextRotateItem> nId, SfxItemType eItemType = SfxItemType::SvxTextRotateItemType);
virtual SvxTextRotateItem* Clone(SfxItemPool *pPool = nullptr) const override;

View file

@ -43,6 +43,8 @@ public:
virtual ~SvxColorItem() override;
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem& rPoolItem) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
virtual bool PutValue(const css::uno::Any& rVal, sal_uInt8 nMemberId) override;
@ -60,6 +62,7 @@ public:
}
void SetValue(const Color& rNewColor)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
mColor = rNewColor;
}
@ -69,11 +72,12 @@ public:
}
void setColor(const Color& rNewColor)
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
mColor = rNewColor;
}
model::ComplexColor const& getComplexColor() const { return maComplexColor; }
void setComplexColor(model::ComplexColor const& rComplexColor) { maComplexColor = rComplexColor; }
void setComplexColor(model::ComplexColor const& rComplexColor) { ASSERT_CHANGE_REFCOUNTED_ITEM; maComplexColor = rComplexColor; }
void dumpAsXml(xmlTextWriterPtr pWriter) const override;
};

View file

@ -31,9 +31,6 @@
class EDITENG_DLLPUBLIC SvxCrossedOutItem final : public SfxEnumItem<FontStrikeout>
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -32,9 +32,6 @@
class EDITENG_DLLPUBLIC SvxEmphasisMarkItem final : public SfxUInt16Item
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -51,6 +51,8 @@ public:
const sal_uInt16 nId );
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==( const SfxPoolItem& ) const override;
virtual bool GetPresentation( SfxItemPresentation ePres,
MapUnit eCoreMetric,
@ -64,6 +66,7 @@ public:
void SetEscapement( const SvxEscapement eNew )
{
ASSERT_CHANGE_REFCOUNTED_ITEM;
if( SvxEscapement::Off == eNew )
{
nEsc = 0;
@ -80,11 +83,11 @@ public:
}
SvxEscapement GetEscapement() const { return static_cast< SvxEscapement >( GetEnumValue() ); }
short &GetEsc() { return nEsc; }
short GetEsc() const { return nEsc; }
void SetEsc(short nNewEsc) { ASSERT_CHANGE_REFCOUNTED_ITEM; nEsc = nNewEsc; }
sal_uInt8 &GetProportionalHeight() { return nProp; }
sal_uInt8 GetProportionalHeight() const { return nProp; }
sal_uInt8 GetProportionalHeight() const { return nProp; }
void SetProportionalHeight(sal_uInt8 n) { ASSERT_CHANGE_REFCOUNTED_ITEM; nProp = n; }
virtual sal_uInt16 GetValueCount() const override;
static OUString GetValueTextByPos( sal_uInt16 nPos );

View file

@ -44,9 +44,6 @@ class EDITENG_DLLPUBLIC SvxFontHeightItem final : public SfxPoolItem
friend void Create_legacy_direct_set(SvxFontHeightItem& rItem, sal_uInt32 nH, sal_uInt16 nP, MapUnit eP);
void legacy_direct_set(sal_uInt32 nH, sal_uInt16 nP, MapUnit eP) { nHeight = nH; nProp = nP; ePropUnit = eP; }
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();
@ -54,6 +51,8 @@ public:
const sal_uInt16 nId );
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==( const SfxPoolItem& ) const override;
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
virtual bool PutValue( const css::uno::Any& rVal, sal_uInt8 nMemberId ) override;

View file

@ -34,9 +34,6 @@ class EDITENG_DLLPUBLIC SvxFontItem final : public SfxPoolItem
FontPitch ePitch;
rtl_TextEncoding eTextEncoding;
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();
@ -48,6 +45,8 @@ public:
const sal_uInt16 nId);
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem& rItem) const override;
virtual SvxFontItem* Clone(SfxItemPool *pPool = nullptr) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;

View file

@ -30,9 +30,6 @@
class EDITENG_DLLPUBLIC SvxFrameDirectionItem final : public SfxEnumItem<SvxFrameDirection>
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
SvxFrameDirectionItem( SvxFrameDirection nValue, sal_uInt16 nWhich );
virtual ~SvxFrameDirectionItem() override;

View file

@ -40,9 +40,6 @@ protected:
class EDITENG_DLLPUBLIC SvxLanguageItem final : public SvxLanguageItem_Base
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -68,6 +68,8 @@ public:
SvxLeftMarginItem(SvxLeftMarginItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -110,6 +112,8 @@ public:
SvxTextLeftMarginItem(SvxTextLeftMarginItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -145,17 +149,19 @@ public:
void SetTextFirstLineOffset(const short nF, const sal_uInt16 nProp = 100);
short GetTextFirstLineOffset() const { return m_nFirstLineOffset; }
void SetPropTextFirstLineOffset(const sal_uInt16 nProp)
{ m_nPropFirstLineOffset = nProp; }
{ ASSERT_CHANGE_REFCOUNTED_ITEM; m_nPropFirstLineOffset = nProp; }
sal_uInt16 GetPropTextFirstLineOffset() const
{ return m_nPropFirstLineOffset; }
void SetTextFirstLineOffsetValue(const short nValue)
{ m_nFirstLineOffset = nValue; }
{ ASSERT_CHANGE_REFCOUNTED_ITEM; m_nFirstLineOffset = nValue; }
explicit SvxFirstLineIndentItem(const sal_uInt16 nId);
SvxFirstLineIndentItem(const short nOffset, const sal_uInt16 nId);
SvxFirstLineIndentItem(SvxFirstLineIndentItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -195,6 +201,8 @@ public:
SvxRightMarginItem(SvxRightMarginItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -221,13 +229,15 @@ private:
tools::Long m_nGutterMargin = 0;
public:
void SetGutterMargin(const tools::Long nGutterMargin) { m_nGutterMargin = nGutterMargin; }
void SetGutterMargin(const tools::Long nGutterMargin) { ASSERT_CHANGE_REFCOUNTED_ITEM; m_nGutterMargin = nGutterMargin; }
tools::Long GetGutterMargin() const { return m_nGutterMargin; }
explicit SvxGutterLeftMarginItem(const sal_uInt16 nId);
SvxGutterLeftMarginItem(SvxGutterLeftMarginItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -260,6 +270,8 @@ public:
SvxGutterRightMarginItem(SvxGutterRightMarginItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==(const SfxPoolItem&) const override;
virtual bool QueryValue(css::uno::Any& rVal, sal_uInt8 nMemberId = 0) const override;
@ -305,6 +317,8 @@ public:
SvxLRSpaceItem(SvxLRSpaceItem const &) = default; // SfxPoolItem copy function dichotomy
// "pure virtual Methods" from SfxPoolItem
virtual bool isHashable() const override;
virtual size_t hashCode() const override;
virtual bool operator==( const SfxPoolItem& ) const override;
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
@ -326,15 +340,15 @@ public:
// Query/direct setting of the absolute values
tools::Long GetLeft() const { return nLeftMargin; }
tools::Long GetRight() const { return nRightMargin;}
void SetLeftValue( const tools::Long nL ) { assert(nFirstLineOffset == 0); nLeftMargin = nL; }
void SetRightValue( const tools::Long nR ) { nRightMargin = nR; }
void SetLeftValue( const tools::Long nL ) { ASSERT_CHANGE_REFCOUNTED_ITEM; assert(nFirstLineOffset == 0); nLeftMargin = nL; }
void SetRightValue( const tools::Long nR ) { ASSERT_CHANGE_REFCOUNTED_ITEM; nRightMargin = nR; }
bool IsAutoFirst() const { return bAutoFirst; }
void SetAutoFirst( const bool bNew ) { bAutoFirst = bNew; }
void SetAutoFirst( const bool bNew ) { ASSERT_CHANGE_REFCOUNTED_ITEM; bAutoFirst = bNew; }
bool IsExplicitZeroMarginValRight() const { return bExplicitZeroMarginValRight; }
bool IsExplicitZeroMarginValLeft() const { return bExplicitZeroMarginValLeft; }
void SetExplicitZeroMarginValRight( const bool eR ) { bExplicitZeroMarginValRight = eR; }
void SetExplicitZeroMarginValLeft( const bool eL ) { bExplicitZeroMarginValLeft = eL; }
void SetExplicitZeroMarginValRight( const bool eR ) { ASSERT_CHANGE_REFCOUNTED_ITEM; bExplicitZeroMarginValRight = eR; }
void SetExplicitZeroMarginValLeft( const bool eL ) { ASSERT_CHANGE_REFCOUNTED_ITEM; bExplicitZeroMarginValLeft = eL; }
sal_uInt16 GetPropLeft() const { return nPropLeftMargin; }
sal_uInt16 GetPropRight() const { return nPropRightMargin;}
@ -345,14 +359,14 @@ public:
void SetTextFirstLineOffset(const short nF, const sal_uInt16 nProp = 100);
short GetTextFirstLineOffset() const { return nFirstLineOffset; }
void SetPropTextFirstLineOffset( const sal_uInt16 nProp )
{ nPropFirstLineOffset = nProp; }
{ ASSERT_CHANGE_REFCOUNTED_ITEM; nPropFirstLineOffset = nProp; }
sal_uInt16 GetPropTextFirstLineOffset() const
{ return nPropFirstLineOffset; }
void SetTextFirstLineOffsetValue( const short nValue )
{ nFirstLineOffset = nValue; }
void SetGutterMargin(const tools::Long nGutterMargin) { m_nGutterMargin = nGutterMargin; }
{ ASSERT_CHANGE_REFCOUNTED_ITEM; nFirstLineOffset = nValue; }
void SetGutterMargin(const tools::Long nGutterMargin) { ASSERT_CHANGE_REFCOUNTED_ITEM; m_nGutterMargin = nGutterMargin; }
tools::Long GetGutterMargin() const { return m_nGutterMargin; }
void SetRightGutterMargin(const tools::Long nRightGutterMargin) { m_nRightGutterMargin = nRightGutterMargin; }
void SetRightGutterMargin(const tools::Long nRightGutterMargin) { ASSERT_CHANGE_REFCOUNTED_ITEM; m_nRightGutterMargin = nRightGutterMargin; }
tools::Long GetRightGutterMargin() const { return m_nRightGutterMargin; }
void dumpAsXml(xmlTextWriterPtr pWriter) const override;

View file

@ -45,7 +45,7 @@ public:
};
inline SvxOpaqueItem::SvxOpaqueItem( const sal_uInt16 nId, const bool bOpa )
: SfxBoolItem( nId, bOpa )
: SfxBoolItem( nId, bOpa, SfxItemType::SvxOpaqueItemType )
{}
#endif

View file

@ -50,7 +50,7 @@ public:
};
inline SvxPaperBinItem::SvxPaperBinItem( const sal_uInt16 nId, const sal_uInt8 nT )
: SfxByteItem( nId, nT )
: SfxByteItem( nId, nT, SfxItemType::SvxPaperBinItemType )
{}
#endif

View file

@ -32,9 +32,6 @@
class EDITENG_DLLPUBLIC SvxPostureItem final : public SfxEnumItem<FontItalic>
{
protected:
virtual ItemInstanceManager* getItemInstanceManager() const override;
public:
static SfxPoolItem* CreateDefault();

View file

@ -47,7 +47,7 @@ public:
};
inline SvxPrintItem::SvxPrintItem( const sal_uInt16 nId, const bool bPrt )
: SfxBoolItem( nId, bPrt )
: SfxBoolItem( nId, bPrt, SfxItemType::SvxPrintItemType )
{}
#endif

Some files were not shown because too many files have changed in this diff Show more