/* -*- 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/. * * 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 . */ #pragma once #include class SvStream; class VCL_DLLPUBLIC SvmReader { private: SvStream& mrStream; void ReadColor(::Color& rColor); public: SvmReader(SvStream& rIStm); SvStream& Read(GDIMetaFile& rMetaFile, ImplMetaReadData* pData = nullptr); rtl::Reference MetaActionHandler(ImplMetaReadData* pData); rtl::Reference LineColorHandler(); rtl::Reference FillColorHandler(); rtl::Reference RectHandler(); rtl::Reference PointHandler(); rtl::Reference PixelHandler(); rtl::Reference LineHandler(); rtl::Reference RoundRectHandler(); rtl::Reference EllipseHandler(); rtl::Reference ArcHandler(); rtl::Reference PieHandler(); rtl::Reference ChordHandler(); rtl::Reference PolyLineHandler(); rtl::Reference PolygonHandler(); rtl::Reference PolyPolygonHandler(); rtl::Reference TextHandler(const ImplMetaReadData* pData); rtl::Reference TextArrayHandler(const ImplMetaReadData* pData); rtl::Reference StretchTextHandler(const ImplMetaReadData* pData); rtl::Reference TextRectHandler(const ImplMetaReadData* pData); rtl::Reference TextLineHandler(); rtl::Reference BmpHandler(); rtl::Reference BmpScaleHandler(); rtl::Reference BmpScalePartHandler(); rtl::Reference BmpExHandler(); rtl::Reference BmpExScaleHandler(); rtl::Reference BmpExScalePartHandler(); rtl::Reference MaskHandler(); rtl::Reference MaskScaleHandler(); rtl::Reference MaskScalePartHandler(); rtl::Reference GradientHandler(); rtl::Reference GradientExHandler(); rtl::Reference HatchHandler(); rtl::Reference WallpaperHandler(); rtl::Reference ClipRegionHandler(); rtl::Reference ISectRectClipRegionHandler(); rtl::Reference ISectRegionClipRegionHandler(); rtl::Reference MoveClipRegionHandler(); rtl::Reference TextColorHandler(); rtl::Reference TextFillColorHandler(); rtl::Reference TextLineColorHandler(); rtl::Reference OverlineColorHandler(); rtl::Reference TextAlignHandler(); rtl::Reference MapModeHandler(); rtl::Reference FontHandler(ImplMetaReadData* pData); rtl::Reference PushHandler(); rtl::Reference PopHandler(); rtl::Reference RasterOpHandler(); rtl::Reference TransparentHandler(); rtl::Reference FloatTransparentHandler(ImplMetaReadData* pData); rtl::Reference EPSHandler(); rtl::Reference RefPointHandler(); rtl::Reference CommentHandler(); rtl::Reference LayoutModeHandler(); rtl::Reference TextLanguageHandler(); static rtl::Reference DefaultHandler(); }; /* vim:set shiftwidth=4 softtabstop=4 expandtab: */