aw081 resync to m77

This commit is contained in:
Armin Le Grand
2010-05-05 16:54:24 +02:00
35 changed files with 142 additions and 751 deletions

View File

@@ -1,9 +0,0 @@
UDK_3_0_0 {
global:
component_getImplementationEnvironment;
component_writeInfo;
component_getFactory;
component_canUnload;
local:
*;
};

View File

@@ -48,7 +48,7 @@ SLOFILES = $(SLO)$/animcore.obj\
$(SLO)$/targetpropertiescreator.obj
SHL1TARGET= $(TARGET)
SHL1VERSIONMAP= $(TARGET).map
SHL1VERSIONMAP=$(SOLARENV)/src/unloadablecomponent.map
SHL1STDLIBS= \
$(SALLIB) \

View File

@@ -44,3 +44,4 @@ sd sd\source\ui\framework\factories nmake - all sd_framework_factories sd
sd sd\source\ui\framework\tools nmake - all sd_framework_tools sd_inc NULL
sd sd\source\ui\annotations nmake - all sd_uiannotations sd_inc NULL
sd sd\util nmake - all sd_util sd_app sd_cgm sd_core sd_dlg sd_docsh sd_eppt sd_filt sd_func sd_grf sd_unid sd_view sd_xml sd_html sd_ppt sd_accessibility sd_animations sd_toolpanel sd_toolpanel_controls sd_tools sd_slsshell sd_slsmodel sd_slsview sd_slscontroller sd_slscache sd_notes sd_table sd_slideshow sd_presenter sd_undo sd_helper sd_framework_configuration sd_framework_module sd_framework_tools sd_framework_factories sd_text sd_annotations sd_uiannotations NULL
sd sd\qa\unoapi nmake - all sd_qa_unoapi NULL

View File

@@ -1,92 +0,0 @@
@echo off
REM *****************************************************************
REM * MAKE
REM * (c) Copyright 1992-1994 STAR DIVISION
REM * Beschreibung: Uebersetzt aktuelle Version
REM * Aufruf: MAKE [Option1 .. OptionN]
REM * Optionen: PRODUCT - Product-Version (FULL)
REM * DEMO - Product-Version (DEMO)
REM * DEPEND - Depend-Listen erzeugen
REM * OPTIMIZE - Version mit Optimierung
REM * DEBUG - Version mit Debuginformationen
REM * PROFILE - Version fuer Profiling
REM * DBGUITL - Version mit Assertions
REM * ESO: PCH - Precompiled Header verwenden
REM *****************************************************************
IF "%1" == "" goto Next
set STEMPFILE=%temp%\temp.mak
echo. >%STEMPFILE%
set MAKECMD=@%STEMPFILE%
REM *** Parameter parsen ***
:Loop
IF "%1" == "" goto Next
IF "%1" == "product" echo product=full >>%STEMPFILE%
IF "%1" == "Product" echo product=full >>%STEMPFILE%
IF "%1" == "PRODUCT" echo product=full >>%STEMPFILE%
IF "%1" == "demo" echo product=demo >>%STEMPFILE%
IF "%1" == "Demo" echo product=demo >>%STEMPFILE%
IF "%1" == "DEMO" echo product=demo >>%STEMPFILE%
IF "%1" == "depend" echo depend=true >>%STEMPFILE%
IF "%1" == "Depend" echo depend=true >>%STEMPFILE%
IF "%1" == "DEPEND" echo depend=true >>%STEMPFILE%
IF "%1" == "optimize" echo optimize=true >>%STEMPFILE%
IF "%1" == "Optimize" echo optimize=true >>%STEMPFILE%
IF "%1" == "OPTIMIZE" echo optimize=true >>%STEMPFILE%
IF "%1" == "debug" echo debug=true >>%STEMPFILE%
IF "%1" == "Debug" echo debug=true >>%STEMPFILE%
IF "%1" == "DEBUG" echo debug=true >>%STEMPFILE%
IF "%1" == "profile" echo product=full profile=true >>%STEMPFILE%
IF "%1" == "Profile" echo product=full profile=true >>%STEMPFILE%
IF "%1" == "PROFILE" echo product=full profile=true >>%STEMPFILE%
IF "%1" == "dbgutil" echo dbgutil=true >>%STEMPFILE%
IF "%1" == "Dbgutil" echo dbgutil=true >>%STEMPFILE%
IF "%1" == "DBGUTIL" echo dbgutil=true >>%STEMPFILE%
IF "%1" == "seg" echo product=full seg=true >>%STEMPFILE%
IF "%1" == "Seg" echo product=full seg=true >>%STEMPFILE%
IF "%1" == "SEG" echo product=full seg=true >>%STEMPFILE%
IF "%1" == "tcv" echo product=full tcv=-2000 >>%STEMPFILE%
IF "%1" == "tcv" echo product=full tcv=-2000 >>%STEMPFILE%
IF "%1" == "TCV" echo product=full tcv=-2000 >>%STEMPFILE%
IF "%1" == "siz" echo product=full siz=true >>%STEMPFILE%
IF "%1" == "Siz" echo product=full siz=true >>%STEMPFILE%
IF "%1" == "SIZ" echo product=full siz=true >>%STEMPFILE%
IF "%1" == "pch" echo prjpch=true >>%STEMPFILE%
IF "%1" == "Pch" echo prjpch=true >>%STEMPFILE%
IF "%1" == "PCH" echo prjpch=true >>%STEMPFILE%
IF "%1" == "-i" echo -i >>%STEMPFILE%
IF "%1" == "-I" echo -i >>%STEMPFILE%
shift
goto Loop
:Next
REM *** Kommando setzen ***
SET STREECMD=nmake %MAKECMD%
REM *** Kommando ausfuehren ***
echo ******************************************************
echo MAKE - (c) 1992-1994 STAR DIVISION
call stree MAKE
REM *** Aufraeumen ***
IF NOT "%STEMPFILE%" == "" del %STEMPFILE%
SET STREECMD=
set STEMPFILE=
set MAKECMD=
echo on

View File

@@ -1,2 +0,0 @@
quit

View File

@@ -1,151 +0,0 @@
REM *****************************************************************
REM * STREE
REM * (c) Copyright 1992-1994 STAR DIVISION
REM * Beschreibung: Arbeitet Source-Verzeichnis-Baum von TOOLS ab
REM * Aufruf: STREE DIR
REM * DIR: ALL - Alle Verzeichnisse
REM * MAKE - Alle Verzeichnisse mit MAKEFILE
REM * Umgebung: GUI - Systemversion
REM * COM - Systemversion
REM * GUIBASE - Abhaengiges Source-Verzeichnis
REM * STREECMD - Auszufuehrendes Kommando (z.B. nmake)
REM *****************************************************************
REM *** Parameter parsen und Variablen ueberpruefen ***
IF "%GUI%" == "" GOTO Error1
IF "%COM%" == "" GOTO Error1
IF "%GUIBASE%" == "" GOTO Error1
IF "%1" == "" GOTO Error3
IF "%STREECMD%" == "" GOTO Error3
REM *** Kommando ausgeben ***
echo Kommando: %STREECMD%
REM *** In die Root wechseln
cd ..
REM *** Include - Verzeichnisse ***
IF NOT "%1" == "ALL" goto NotAll
cd inc
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd res
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd source\ui\inc
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..\..\..
REM *** Verzeichnisse mit Makefile ***
:NotAll
cd sdi
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
REM stardiv/sd -> ONE
cd source\ui
cd app
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd dlg
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd docshell
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd view
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd func
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd unoidl
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..\..
cd core
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
cd filter
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
echo ------------------------------------------------------
cd
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
echo ------------------------------------------------------
cd util
%STREECMD%
IF ERRORLEVEL 1 goto Error2
cd ..
echo ------------------------------------------------------
cd prj
goto End
REM *** Fehler ausgeben ***
:Error1
echo Error: Keine Systemversion oder nicht vollstaendig gesetzt !
goto End
:Error2
echo Error: Fehler bei Ausf<73>hrung eines Kommandos !
goto End
:Error3
echo Error: Falsche Parameter wurden an STREE uebergeben !
goto End
REM *** Aufraeumen ***
:End

51
sd/qa/unoapi/Test.java Normal file
View File

@@ -0,0 +1,51 @@
/*************************************************************************
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
************************************************************************/
package org.openoffice.sd.qa.unoapi;
import org.openoffice.Runner;
import org.openoffice.test.OfficeConnection;
import static org.junit.Assert.*;
public final class Test {
@org.junit.Before public void setUp() throws Exception {
connection.setUp();
}
@org.junit.After public void tearDown()
throws InterruptedException, com.sun.star.uno.Exception
{
connection.tearDown();
}
@org.junit.Test public void test() {
assertTrue(
Runner.run(
"-sce", "sd.sce", "-xcl", "knownissues.xcl", "-cs",
connection.getDescription()));
}
private final OfficeConnection connection = new OfficeConnection();
}

View File

@@ -50,3 +50,7 @@ sd.DrawController_OutlineView::com::sun::star::beans::XPropertySet
### i88537 ###
sd.DrawController_PresentationView::com::sun::star::beans::XPropertySet
### i109518 ###
sd.SdXPresentation::com::sun::star::presentation::XPresentation
sd.SdXPresentation::com::sun::star::beans::XPropertySet

View File

@@ -1,7 +1,6 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
#
# Copyright 2000, 2010 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
@@ -22,19 +21,28 @@
# version 3 along with OpenOffice.org. If not, see
# <http://www.openoffice.org/license.html>
# for a copy of the LGPLv3 License.
#
#*************************************************************************
#***********************************************************************/
PRJ=..$/..
.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
nothing .PHONY:
.ELSE
PRJNAME=sd
TARGET=qa_unoapi
PRJ = ../..
PRJNAME = sd
TARGET = qa_unoapi
.IF "$(OOO_JUNIT_JAR)" != ""
PACKAGE = org/openoffice/sd/qa/unoapi
JAVATESTFILES = Test.java
JAVAFILES = $(JAVATESTFILES)
JARFILES = OOoRunner.jar ridl.jar test.jar
EXTRAJARFILES = $(OOO_JUNIT_JAR)
.END
.INCLUDE: settings.mk
.INCLUDE: target.mk
.INCLUDE: installationtest.mk
ALLTAR : UNOAPI_TEST
ALLTAR : javatest
UNOAPI_TEST:
+$(SOLARENV)$/bin$/checkapi -sce sd.sce -xcl knownissues.xcl -tdoc $(PWD)$/testdocuments -THRCNT 1
.END

View File

@@ -95,11 +95,7 @@ $(INCCOM)$/sddll0.hxx: makefile.mk
.IF "$(GUI)"=="UNX"
echo \#define DLL_NAME \"libsd$(DLLPOSTFIX)$(DLLPOST)\" >$@
.ELSE # "$(GUI)"=="UNX"
.IF "$(USE_SHELL)"!="4nt"
echo \#define DLL_NAME \"sd$(DLLPOSTFIX).DLL\" >$@
.ELSE # "$(USE_SHELL)"!="4nt"
echo #define DLL_NAME "sd$(DLLPOSTFIX).DLL" >$@
.ENDIF # "$(USE_SHELL)"!="4nt"
.ENDIF # "$(GUI)"=="UNX"
LOCALIZE_ME = tbxids_tmpl.src menuids2_tmpl.src menu_tmpl.src menuids_tmpl.src menuids4_tmpl.src popup2_tmpl.src toolbox2_tmpl.src menuportal_tmpl.src menuids3_tmpl.src

View File

@@ -1,30 +0,0 @@
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sd.hxx"

View File

@@ -61,7 +61,6 @@ SLOFILES = \
$(SLO)$/fuscale.obj \
$(SLO)$/futransf.obj \
$(SLO)$/futext.obj \
$(SLO)$/futext2.obj \
$(SLO)$/fuline.obj \
$(SLO)$/sdundo.obj \
$(SLO)$/sdundogr.obj \
@@ -133,7 +132,6 @@ LIB1OBJFILES= \
$(SLO)$/fuscale.obj \
$(SLO)$/futransf.obj \
$(SLO)$/futext.obj \
$(SLO)$/futext2.obj \
$(SLO)$/fuline.obj \
$(SLO)$/sdundo.obj \
$(SLO)$/sdundogr.obj \

View File

@@ -1,223 +0,0 @@
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sd.hxx"
/*
#include "ControlDescriptorIterator.hxx"
#include "ControlContainer.hxx"
#include "ControlContainerDescriptor.hxx"
namespace sd { namespace toolpanel {
ControlDescriptorIterator::ControlDescriptorIterator (void)
: mpContainer (NULL),
mbSkipInvisibleControls(true)
{
}
ControlDescriptorIterator::ControlDescriptorIterator (
ControlDescriptorList& rContainer,
const ControlDescriptorList::iterator& aIterator,
bool bSkipInvisibleControls)
: mpContainer(&rContainer),
maIterator (aIterator),
mbSkipInvisibleControls(bSkipInvisibleControls)
{
AdvanceToNextVisibleControl();
}
ControlDescriptorIterator::ControlDescriptorIterator (
const ControlDescriptorIterator& aIterator)
: mpContainer (aIterator.mpContainer),
maIterator (aIterator.maIterator),
mbSkipInvisibleControls (aIterator.mbSkipInvisibleControls)
{
}
ControlDescriptorIterator& ControlDescriptorIterator::operator= (
const ControlDescriptorIterator& aIterator)
{
mpContainer = aIterator.mpContainer;
maIterator = aIterator.maIterator;
mbSkipInvisibleControls = aIterator.mbSkipInvisibleControls;
AdvanceToNextVisibleControl();
return *this;
}
ControlDescriptorIterator::value_type&
ControlDescriptorIterator::operator* (void)
{
return *maIterator;
}
const ControlDescriptorIterator::value_type&
ControlDescriptorIterator::operator* (void)
const
{
return *maIterator;
}
ControlDescriptorIterator::value_type&
ControlDescriptorIterator::operator-> (void)
{
return *maIterator;
}
const ControlDescriptorIterator::value_type&
ControlDescriptorIterator::operator-> (void)
const
{
return *maIterator;
}
bool ControlDescriptorIterator::operator== (
const ControlDescriptorIterator& aIterator) const
{
return ! operator!=(aIterator);
}
bool ControlDescriptorIterator::operator!= (
const ControlDescriptorIterator& aIterator) const
{
return maIterator != aIterator.maIterator;
}
ControlDescriptorIterator& ControlDescriptorIterator::operator++ (void)
{
maIterator++;
AdvanceToNextVisibleControl();
return *this;
}
ControlDescriptorIterator ControlDescriptorIterator::operator++ (int)
{
ControlDescriptorIterator aIterator (*this);
++(*this);
return aIterator;
}
ControlDescriptorIterator& ControlDescriptorIterator::operator-- (void)
{
maIterator--;
AdvanceToPreviousVisibleControl();
return *this;
}
ControlDescriptorIterator ControlDescriptorIterator::operator-- (int)
{
ControlDescriptorIterator aIterator (*this);
--(*this);
return aIterator;
}
ControlDescriptorIterator ControlDescriptorIterator::operator+ (
int nValue) const
{
return ControlDescriptorIterator (*mpContainer, maIterator+nValue);
}
ControlDescriptorIterator ControlDescriptorIterator::operator- (
int nValue) const
{
return ControlDescriptorIterator (*mpContainer, maIterator-nValue);
}
void ControlDescriptorIterator::AdvanceToNextVisibleControl (void)
{
if (mbSkipInvisibleControls && mpContainer!=NULL)
{
while (maIterator != mpContainer->end()
&& ! (**maIterator).IsVisible())
++maIterator;
}
}
void ControlDescriptorIterator::AdvanceToPreviousVisibleControl (void)
{
if (mbSkipInvisibleControls && mpContainer!=NULL)
{
while (maIterator != mpContainer->begin()
&& ! (**maIterator).IsVisible())
--maIterator;
}
}
} } // end of namespace ::sd::toolpanel
*/

View File

@@ -160,7 +160,7 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
< "Original colors" ; > ;
< "Grayscale" ; > ;
< "Black & White" ; > ;
< "Black & white" ; > ;
};
};
StringArray _STR_IMPRESS_PRINT_UI_QUALITY_CHOICES_HELP
@@ -184,8 +184,8 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
< "Original size" ; > ;
< "Fit to printable page" ; > ;
< "Distribute on multiple paper sheets" ; > ;
< "Tile paper sheet with repeated slides" ; > ;
< "Distribute on multiple sheets of paper" ; > ;
< "Tile sheet of paper with repeated slides" ; > ;
};
};
StringArray _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_DRAW
@@ -194,8 +194,8 @@ Resource _STR_IMPRESS_PRINT_UI_OPTIONS
{
< "Original size" ; > ;
< "Fit to printable page" ; > ;
< "Distribute on multiple paper sheets" ; > ;
< "Tile paper sheet with repeated pages" ; > ;
< "Distribute on multiple sheets of paper" ; > ;
< "Tile sheet of paper with repeated pages" ; > ;
};
};
StringArray _STR_IMPRESS_PRINT_UI_PAGE_OPTIONS_CHOICES_HELP

View File

@@ -53,7 +53,6 @@ SLOFILES = \
$(SLO)$/sdview2.obj \
$(SLO)$/sdview3.obj \
$(SLO)$/sdview4.obj \
$(SLO)$/sdview5.obj \
$(SLO)$/viewshel.obj \
$(SLO)$/viewshe2.obj \
$(SLO)$/viewshe3.obj \

View File

@@ -1,29 +0,0 @@
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sd.hxx"

View File

@@ -156,7 +156,7 @@ LIB6FILES= \
# sdd
SHL2TARGET= sdd$(DLLPOSTFIX)
SHL2IMPLIB= sddimp
SHL2VERSIONMAP= sdd.map
SHL2VERSIONMAP=$(SOLARENV)/src/component.map
SHL2DEF=$(MISC)$/$(SHL2TARGET).def
DEF2NAME= $(SHL2TARGET)

View File

@@ -1,8 +0,0 @@
SD_1_0 {
global:
component_getImplementationEnvironment;
component_writeInfo;
component_getFactory;
local:
*;
};

View File

@@ -1,8 +0,0 @@
SCH_1_0 {
global:
component_getImplementationEnvironment;
component_writeInfo;
component_getFactory;
local:
*;
};

View File

@@ -1,4 +1,4 @@
PPTEXPORTER_1_0 {
UDK_3_0_0 {
global:
ExportPPT;
ImportPPT;

View File

@@ -1,4 +1,4 @@
CUI_1_0 {
UDK_3_0_0 {
global:
CreateDialogFactory;
local:

View File

@@ -1,8 +0,0 @@
SLI_1_0 {
global:
component_getImplementationEnvironment;
component_writeInfo;
component_getFactory;
local:
*;
};

View File

@@ -68,7 +68,7 @@ SHL1IMPLIB=i$(TARGET)
SHL1LIBS=$(SLB)$/$(TARGET).lib
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
SHL1VERSIONMAP=exports.map
SHL1VERSIONMAP=$(SOLARENV)/src/component.map
DEF1NAME=$(SHL1TARGET)
DEF1EXPORTFILE=exports.dxp

View File

@@ -159,7 +159,7 @@ namespace slideshow
// ================================
// clamp nT to permissible [0,1] range
nT = ::canvas::tools::clamp( nT, 0.0, 1.0 );
nT = ::basegfx::clamp( nT, 0.0, 1.0 );
// take acceleration/deceleration into account. if the sum
// of mnAccelerationFraction and mnDecelerationFraction

View File

@@ -35,6 +35,7 @@
#include <continuouskeytimeactivitybase.hxx>
#include <boost/tuple/tuple.hpp>
#include <algorithm>
#include <iterator>
@@ -45,34 +46,14 @@ namespace slideshow
{
ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase( const ActivityParameters& rParms ) :
SimpleContinuousActivityBase( rParms ),
maKeyTimes( rParms.maDiscreteTimes ),
mnLastIndex( 0 )
maLerper( rParms.maDiscreteTimes )
{
ENSURE_OR_THROW( maKeyTimes.size() > 1,
ENSURE_OR_THROW( rParms.maDiscreteTimes.size() > 1,
"ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase(): key times vector must have two entries or more" );
#ifdef DBG_UTIL
// check parameters: rKeyTimes must be sorted in
// ascending order, and contain values only from the range
// [0,1]
for( ::std::size_t i=1, len=maKeyTimes.size(); i<len; ++i )
{
if( maKeyTimes[i] < 0.0 ||
maKeyTimes[i] > 1.0 ||
maKeyTimes[i-1] < 0.0 ||
maKeyTimes[i-1] > 1.0 )
{
ENSURE_OR_THROW( false, "ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase(): time values not within [0,1] range!" );
}
if( maKeyTimes[i-1] > maKeyTimes[i] )
{
ENSURE_OR_THROW( false, "ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase(): time vector is not sorted in ascending order!" );
}
}
// TODO(E2): check this also in production code?
#endif
ENSURE_OR_THROW( rParms.maDiscreteTimes.front() == 0.0,
"ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase(): key times vector first entry must be zero" );
ENSURE_OR_THROW( rParms.maDiscreteTimes.back() <= 1.0,
"ContinuousKeyTimeActivityBase::ContinuousKeyTimeActivityBase(): key times vector last entry must be less or equal 1" );
}
void ContinuousKeyTimeActivityBase::simplePerform( double nSimpleTime,
@@ -81,40 +62,14 @@ namespace slideshow
// calc simple time from global time - sweep through the
// array multiple times for repeated animations (according to
// SMIL spec).
const double nT( calcAcceleratedTime( nSimpleTime ) );
double fAlpha( calcAcceleratedTime( nSimpleTime ) );
std::ptrdiff_t nIndex;
// determine position within key times vector from
// current simple time
// shortcut: cached value still okay?
if( maKeyTimes[ mnLastIndex ] < nT ||
maKeyTimes[ mnLastIndex+1 ] >= nT )
{
// nope, find new index
mnLastIndex = ::std::min< ::std::ptrdiff_t >(
maKeyTimes.size()-2,
// range is ensured by max below
::std::max< ::std::ptrdiff_t >(
0,
::std::distance( maKeyTimes.begin(),
::std::lower_bound( maKeyTimes.begin(),
maKeyTimes.end(),
nT ) ) - 1 ) );
}
OSL_ENSURE( mnLastIndex+1 < maKeyTimes.size(),
"ContinuousKeyTimeActivityBase::simplePerform(): index out of range" );
// mnLastIndex is now valid and up-to-date
// calc current simple time, as a fractional value ([0,1] range).
// I.e. the relative position between the two index times.
const double nCurrFractionalSimplTime( (nT - maKeyTimes[ mnLastIndex ]) /
(maKeyTimes[ mnLastIndex+1 ] - maKeyTimes[ mnLastIndex ]) );
boost::tuples::tie(nIndex,fAlpha) = maLerper.lerp(fAlpha);
perform(
mnLastIndex,
nCurrFractionalSimplTime,
nIndex,
fAlpha,
nRepeatCount );
}
}

View File

@@ -29,6 +29,8 @@
#define INCLUDED_SLIDESHOW_CONTINUOUSKEYTIMEACTIVITYBASE_HXX
#include "simplecontinuousactivitybase.hxx"
#include <basegfx/tools/keystoplerp.hxx>
#include <vector>
@@ -73,10 +75,7 @@ namespace slideshow
sal_uInt32 nRepeatCount ) const;
private:
const ::std::vector< double > maKeyTimes;
/// last active index in maKeyTimes (to avoid frequent searching)
mutable ::std::size_t mnLastIndex;
const ::basegfx::tools::KeyStopLerp maLerper;
};
}
}

View File

@@ -28,11 +28,11 @@
#ifndef INCLUDED_SLIDESHOW_INTERPOLATION_HXX
#define INCLUDED_SLIDESHOW_INTERPOLATION_HXX
#include "lerp.hxx"
#include <basegfx/tools/lerp.hxx>
namespace slideshow
namespace basegfx
{
namespace internal
namespace tools
{
// Interpolator specializations
// ============================
@@ -42,9 +42,10 @@ namespace slideshow
// not-straight-forward-interpolatable types
/// Specialization for RGBColor, to employ color-specific interpolator
template<> RGBColor lerp< RGBColor >( const RGBColor& rFrom,
const RGBColor& rTo,
double t )
template<> ::slideshow::internal::RGBColor lerp< ::slideshow::internal::RGBColor >(
const ::slideshow::internal::RGBColor& rFrom,
const ::slideshow::internal::RGBColor& rTo,
double t )
{
return interpolate( rFrom, rTo, t );
}
@@ -78,14 +79,20 @@ namespace slideshow
"lerp<bool> called" );
return rTo;
}
}
}
namespace slideshow
{
namespace internal
{
template< typename ValueType > struct Interpolator
{
ValueType operator()( const ValueType& rFrom,
const ValueType& rTo,
double t ) const
{
return lerp( rFrom, rTo, t );
return basegfx::tools::lerp( rFrom, rTo, t );
}
};

View File

@@ -57,7 +57,6 @@
#include "viewshape.hxx"
#include "tools.hxx"
#include "lerp.hxx"
#include <boost/bind.hpp>
@@ -461,9 +460,9 @@ namespace slideshow
if( mbForceUpdate || (nUpdateFlags & ALPHA) )
{
mpSprite->setAlpha( (pAttr && pAttr->isAlphaValid()) ?
::canvas::tools::clamp(pAttr->getAlpha(),
0.0,
1.0) :
::basegfx::clamp(pAttr->getAlpha(),
0.0,
1.0) :
1.0 );
}
if( mbForceUpdate || (nUpdateFlags & CLIP) )

View File

@@ -33,7 +33,7 @@
#include <basegfx/range/b2drange.hxx>
#include <basegfx/range/b1drange.hxx>
#include <basegfx/range/b2dmultirange.hxx>
#include <basegfx/range/b2dpolyrange.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
@@ -199,7 +199,8 @@ namespace slideshow
{
// TODO(Q1): move this to B2DMultiRange
if( !rUpdateRange.isEmpty() )
maUpdateAreas.addRange( rUpdateRange );
maUpdateAreas.appendElement( rUpdateRange,
basegfx::ORIENTATION_POSITIVE );
}
void Layer::updateBounds( ShapeSharedPtr const& rShape )
@@ -245,7 +246,7 @@ namespace slideshow
void Layer::clearUpdateRanges()
{
maUpdateAreas.reset();
maUpdateAreas.clear();
}
void Layer::clearContent()
@@ -281,12 +282,12 @@ namespace slideshow
Layer::EndUpdater Layer::beginUpdate()
{
if( !maUpdateAreas.isEmpty() )
if( maUpdateAreas.count() )
{
// perform proper layer update. That means, setup proper
// clipping, and render each shape that intersects with
// the calculated update area
::basegfx::B2DPolyPolygon aClip( maUpdateAreas.getPolyPolygon() );
::basegfx::B2DPolyPolygon aClip( maUpdateAreas.solveCrossovers() );
// actually, if there happen to be shapes with zero
// update area in the maUpdateAreas vector, the

View File

@@ -28,7 +28,7 @@
#ifndef INCLUDED_SLIDESHOW_LAYER_HXX
#define INCLUDED_SLIDESHOW_LAYER_HXX
#include <basegfx/range/b2dmultirange.hxx>
#include <basegfx/range/b2dpolyrange.hxx>
#include <cppcanvas/spritecanvas.hxx>
#include "view.hxx"
@@ -184,7 +184,7 @@ namespace slideshow
@return true, if any non-empty addUpdateRange() calls
have been made since the last render()/update() call.
*/
bool isUpdatePending() const { return !maUpdateAreas.isEmpty(); }
bool isUpdatePending() const { return maUpdateAreas.count()!=0; }
/** Update layer bound rect from shape bounds
*/
@@ -294,7 +294,7 @@ namespace slideshow
typedef ::std::vector< ViewEntry > ViewEntryVector;
ViewEntryVector maViewEntries;
basegfx::B2DMultiRange maUpdateAreas;
basegfx::B2DPolyRange maUpdateAreas;
basegfx::B2DRange maBounds;
basegfx::B2DRange maNewBounds;
const basegfx::B2DRange maMaxBounds; // maBounds is clipped against this

View File

@@ -48,11 +48,11 @@
#include <basegfx/vector/b2ivector.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/numeric/ftools.hxx>
#include <basegfx/tools/lerp.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <cppcanvas/basegfxfactory.hxx>
#include "lerp.hxx"
#include "unoview.hxx"
#include "smilfunctionparser.hxx"
#include "tools.hxx"
@@ -638,18 +638,18 @@ namespace slideshow
const ::basegfx::B2DRange& rShapeBounds )
{
return ::basegfx::B2DRectangle(
lerp( rShapeBounds.getMinX(),
rShapeBounds.getMaxX(),
rUnitBounds.getMinX() ),
lerp( rShapeBounds.getMinY(),
rShapeBounds.getMaxY(),
rUnitBounds.getMinY() ),
lerp( rShapeBounds.getMinX(),
rShapeBounds.getMaxX(),
rUnitBounds.getMaxX() ),
lerp( rShapeBounds.getMinY(),
rShapeBounds.getMaxY(),
rUnitBounds.getMaxY() ) );
basegfx::tools::lerp( rShapeBounds.getMinX(),
rShapeBounds.getMaxX(),
rUnitBounds.getMinX() ),
basegfx::tools::lerp( rShapeBounds.getMinY(),
rShapeBounds.getMaxY(),
rUnitBounds.getMinY() ),
basegfx::tools::lerp( rShapeBounds.getMinX(),
rShapeBounds.getMaxX(),
rUnitBounds.getMaxX() ),
basegfx::tools::lerp( rShapeBounds.getMinY(),
rShapeBounds.getMaxY(),
rUnitBounds.getMaxY() ) );
}
::basegfx::B2DRectangle getShapePosSize( const ::basegfx::B2DRectangle& rOrigBounds,

View File

@@ -1,59 +0,0 @@
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
#ifndef INCLUDED_SLIDESHOW_LERP_HXX
#define INCLUDED_SLIDESHOW_LERP_HXX
#include <sal/types.h>
namespace slideshow
{
namespace internal
{
/** Generic linear interpolator
@tpl ValueType
Must have operator+ and operator* defined, and should
have value semantics.
@param t
As usual, t must be in the [0,1] range
*/
template< typename ValueType > ValueType lerp( const ValueType& rFrom,
const ValueType& rTo,
double t )
{
// This is only to suppress a double->int warning. All other
// types should be okay here.
return static_cast<ValueType>( (1.0-t)*rFrom + t*rTo );
}
}
}
#endif /* INCLUDED_SLIDESHOW_LERP_HXX */

View File

@@ -25,7 +25,7 @@
#
#*************************************************************************
UDK_3.1 {
UDK_3_0_0 {
global:
registerAllTestFunction;

View File

@@ -1,8 +0,0 @@
SHW_1_0 {
global:
component_getImplementationEnvironment;
component_writeInfo;
component_getFactory;
local:
*;
};

View File

@@ -70,7 +70,7 @@ SHL1IMPLIB=i$(TARGET)
SHL1LIBS=$(SLB)$/$(TARGET).lib
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
SHL1VERSIONMAP=exports.map
SHL1VERSIONMAP=$(SOLARENV)/src/component.map
DEF1NAME=$(SHL1TARGET)
DEF1EXPORTFILE=exports.dxp