diff options
Diffstat (limited to 'canvas/source/null/null_textlayout.cxx')
-rw-r--r-- | canvas/source/null/null_textlayout.cxx | 264 |
1 files changed, 0 insertions, 264 deletions
diff --git a/canvas/source/null/null_textlayout.cxx b/canvas/source/null/null_textlayout.cxx deleted file mode 100644 index 9b3ec566ad..0000000000 --- a/canvas/source/null/null_textlayout.cxx +++ /dev/null @@ -1,264 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * 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_canvas.hxx" - -#include <canvas/debug.hxx> -#include <tools/diagnose_ex.h> -#include <canvas/verbosetrace.hxx> - -#include <basegfx/matrix/b2dhommatrix.hxx> -#include <basegfx/numeric/ftools.hxx> - -#include "null_textlayout.hxx" -#include "null_spritecanvas.hxx" - - -using namespace ::com::sun::star; - -namespace nullcanvas -{ - TextLayout::TextLayout( const rendering::StringContext& aText, - sal_Int8 nDirection, - sal_Int64 /*nRandomSeed*/, - const CanvasFont::ImplRef& rFont ) : - TextLayout_Base( m_aMutex ), - maText( aText ), - maLogicalAdvancements(), - mpFont( rFont ), - mnTextDirection( nDirection ) - { - } - - TextLayout::~TextLayout() - { - } - - void SAL_CALL TextLayout::disposing() - { - mpFont.reset(); - } - - // XTextLayout - uno::Sequence< uno::Reference< rendering::XPolyPolygon2D > > SAL_CALL TextLayout::queryTextShapes( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return uno::Sequence< uno::Reference< rendering::XPolyPolygon2D > >(); - } - - uno::Sequence< geometry::RealRectangle2D > SAL_CALL TextLayout::queryInkMeasures( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return uno::Sequence< geometry::RealRectangle2D >(); - } - - uno::Sequence< geometry::RealRectangle2D > SAL_CALL TextLayout::queryMeasures( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return uno::Sequence< geometry::RealRectangle2D >(); - } - - uno::Sequence< double > SAL_CALL TextLayout::queryLogicalAdvancements( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - return maLogicalAdvancements; - } - - void SAL_CALL TextLayout::applyLogicalAdvancements( const uno::Sequence< double >& aAdvancements ) throw (lang::IllegalArgumentException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - if( aAdvancements.getLength() != maText.Length ) - { - OSL_TRACE( "TextLayout::applyLogicalAdvancements(): mismatching number of advancements" ); - throw lang::IllegalArgumentException(); - } - - maLogicalAdvancements = aAdvancements; - } - - geometry::RealRectangle2D SAL_CALL TextLayout::queryTextBounds( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - ENSURE_OR_THROW( mpFont.get(), - "TextLayout::queryTextBounds(): invalid font" ); - - // fake text bounds by either taking the advancement values, - // or assuming square glyph boxes (width similar to height) - const rendering::FontRequest& rFontRequest( mpFont->getFontRequest() ); - const double nFontSize( ::std::max( rFontRequest.CellSize, - rFontRequest.ReferenceAdvancement ) ); - if( maLogicalAdvancements.getLength() ) - { - return geometry::RealRectangle2D( 0, -nFontSize/2, - maLogicalAdvancements[ maLogicalAdvancements.getLength()-1 ], - nFontSize/2 ); - } - else - { - return geometry::RealRectangle2D( 0, -nFontSize/2, - nFontSize * maText.Length, - nFontSize/2 ); - } - } - - double SAL_CALL TextLayout::justify( double /*nSize*/ ) throw (lang::IllegalArgumentException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return 0.0; - } - - double SAL_CALL TextLayout::combinedJustify( const uno::Sequence< uno::Reference< rendering::XTextLayout > >& /*aNextLayouts*/, - double /*nSize*/ ) throw (lang::IllegalArgumentException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return 0.0; - } - - rendering::TextHit SAL_CALL TextLayout::getTextHit( const geometry::RealPoint2D& /*aHitPoint*/ ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return rendering::TextHit(); - } - - rendering::Caret SAL_CALL TextLayout::getCaret( sal_Int32 /*nInsertionIndex*/, - sal_Bool /*bExcludeLigatures*/ ) throw (lang::IndexOutOfBoundsException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return rendering::Caret(); - } - - sal_Int32 SAL_CALL TextLayout::getNextInsertionIndex( sal_Int32 /*nStartIndex*/, - sal_Int32 /*nCaretAdvancement*/, - sal_Bool /*bExcludeLigatures*/ ) throw (lang::IndexOutOfBoundsException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return 0; - } - - uno::Reference< rendering::XPolyPolygon2D > SAL_CALL TextLayout::queryVisualHighlighting( sal_Int32 /*nStartIndex*/, - sal_Int32 /*nEndIndex*/ ) throw (lang::IndexOutOfBoundsException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return uno::Reference< rendering::XPolyPolygon2D >(); - } - - uno::Reference< rendering::XPolyPolygon2D > SAL_CALL TextLayout::queryLogicalHighlighting( sal_Int32 /*nStartIndex*/, - sal_Int32 /*nEndIndex*/ ) throw (lang::IndexOutOfBoundsException, uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return uno::Reference< rendering::XPolyPolygon2D >(); - } - - double SAL_CALL TextLayout::getBaselineOffset( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - return 0.0; - } - - sal_Int8 SAL_CALL TextLayout::getMainTextDirection( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - return mnTextDirection; - } - - uno::Reference< rendering::XCanvasFont > SAL_CALL TextLayout::getFont( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - return mpFont.getRef(); - } - - rendering::StringContext SAL_CALL TextLayout::getText( ) throw (uno::RuntimeException) - { - ::osl::MutexGuard aGuard( m_aMutex ); - - return maText; - } - - bool TextLayout::draw( const rendering::ViewState& /*rViewState*/, - const rendering::RenderState& /*rRenderState*/, - const uno::Reference< rendering::XGraphicDevice >& /*xGraphicDevice*/ ) const - { - ::osl::MutexGuard aGuard( m_aMutex ); - - // TODO - - return true; - } - - -#define SERVICE_NAME "com.sun.star.rendering.TextLayout" -#define IMPLEMENTATION_NAME "NullCanvas::TextLayout" - - ::rtl::OUString SAL_CALL TextLayout::getImplementationName() throw( uno::RuntimeException ) - { - return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( IMPLEMENTATION_NAME ) ); - } - - sal_Bool SAL_CALL TextLayout::supportsService( const ::rtl::OUString& ServiceName ) throw( uno::RuntimeException ) - { - return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( SERVICE_NAME ) ); - } - - uno::Sequence< ::rtl::OUString > SAL_CALL TextLayout::getSupportedServiceNames() throw( uno::RuntimeException ) - { - uno::Sequence< ::rtl::OUString > aRet(1); - aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( SERVICE_NAME ) ); - - return aRet; - } -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |