1*fc9fd3f1SPedro Giffuni /************************************************************************* 2*fc9fd3f1SPedro Giffuni * 3*fc9fd3f1SPedro Giffuni * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*fc9fd3f1SPedro Giffuni * 5*fc9fd3f1SPedro Giffuni * Copyright 2000, 2010 Oracle and/or its affiliates. 6*fc9fd3f1SPedro Giffuni * 7*fc9fd3f1SPedro Giffuni * OpenOffice.org - a multi-platform office productivity suite 8*fc9fd3f1SPedro Giffuni * 9*fc9fd3f1SPedro Giffuni * This file is part of OpenOffice.org. 10*fc9fd3f1SPedro Giffuni * 11*fc9fd3f1SPedro Giffuni * OpenOffice.org is free software: you can redistribute it and/or modify 12*fc9fd3f1SPedro Giffuni * it under the terms of the GNU Lesser General Public License version 3 13*fc9fd3f1SPedro Giffuni * only, as published by the Free Software Foundation. 14*fc9fd3f1SPedro Giffuni * 15*fc9fd3f1SPedro Giffuni * OpenOffice.org is distributed in the hope that it will be useful, 16*fc9fd3f1SPedro Giffuni * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*fc9fd3f1SPedro Giffuni * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*fc9fd3f1SPedro Giffuni * GNU Lesser General Public License version 3 for more details 19*fc9fd3f1SPedro Giffuni * (a copy is included in the LICENSE file that accompanied this code). 20*fc9fd3f1SPedro Giffuni * 21*fc9fd3f1SPedro Giffuni * You should have received a copy of the GNU Lesser General Public License 22*fc9fd3f1SPedro Giffuni * version 3 along with OpenOffice.org. If not, see 23*fc9fd3f1SPedro Giffuni * <http://www.openoffice.org/license.html> 24*fc9fd3f1SPedro Giffuni * for a copy of the LGPLv3 License. 25*fc9fd3f1SPedro Giffuni * 26*fc9fd3f1SPedro Giffuni ************************************************************************/ 27*fc9fd3f1SPedro Giffuni 28*fc9fd3f1SPedro Giffuni #ifndef _SV_SALLAYOUT_H 29*fc9fd3f1SPedro Giffuni #define _SV_SALLAYOUT_H 30*fc9fd3f1SPedro Giffuni 31*fc9fd3f1SPedro Giffuni #if 0 32*fc9fd3f1SPedro Giffuni #include <sv.h> 33*fc9fd3f1SPedro Giffuni #include <sallayout.hxx> 34*fc9fd3f1SPedro Giffuni 35*fc9fd3f1SPedro Giffuni class ImplOs2FontEntry; 36*fc9fd3f1SPedro Giffuni 37*fc9fd3f1SPedro Giffuni class Os2SalLayout : public GenericSalLayout 38*fc9fd3f1SPedro Giffuni { 39*fc9fd3f1SPedro Giffuni public: 40*fc9fd3f1SPedro Giffuni Os2SalLayout( HPS); 41*fc9fd3f1SPedro Giffuni virtual bool LayoutText( ImplLayoutArgs& ); 42*fc9fd3f1SPedro Giffuni virtual void AdjustLayout( ImplLayoutArgs& ); 43*fc9fd3f1SPedro Giffuni virtual void DrawText( SalGraphics& ) const; 44*fc9fd3f1SPedro Giffuni 45*fc9fd3f1SPedro Giffuni protected: 46*fc9fd3f1SPedro Giffuni HPS mhPS; 47*fc9fd3f1SPedro Giffuni FONTMETRICS FontMetrics; 48*fc9fd3f1SPedro Giffuni int mnBaseAdv; 49*fc9fd3f1SPedro Giffuni 50*fc9fd3f1SPedro Giffuni private: 51*fc9fd3f1SPedro Giffuni int mnGlyphCount; 52*fc9fd3f1SPedro Giffuni int mnCharCount; 53*fc9fd3f1SPedro Giffuni sal_Unicode* mpOutGlyphs; 54*fc9fd3f1SPedro Giffuni int* mpGlyphAdvances; // if possible this is shared with mpGlyphAdvances[] 55*fc9fd3f1SPedro Giffuni int* mpGlyphOrigAdvs; 56*fc9fd3f1SPedro Giffuni int* mpCharWidths; // map rel char pos to char width 57*fc9fd3f1SPedro Giffuni int* mpChars2Glyphs; // map rel char pos to abs glyph pos 58*fc9fd3f1SPedro Giffuni int* mpGlyphs2Chars; // map abs glyph pos to abs char pos 59*fc9fd3f1SPedro Giffuni bool* mpGlyphRTLFlags; // BiDi status for glyphs: true=>RTL 60*fc9fd3f1SPedro Giffuni mutable long mnWidth; 61*fc9fd3f1SPedro Giffuni bool mbDisableGlyphs; 62*fc9fd3f1SPedro Giffuni 63*fc9fd3f1SPedro Giffuni int mnNotdefWidth; 64*fc9fd3f1SPedro Giffuni BYTE mnCharSet; 65*fc9fd3f1SPedro Giffuni 66*fc9fd3f1SPedro Giffuni }; 67*fc9fd3f1SPedro Giffuni #endif 68*fc9fd3f1SPedro Giffuni 69*fc9fd3f1SPedro Giffuni #endif // _SV_SALLAYOUT_H 70