1*24f6443dSAndrew Rist /************************************************************** 2fc9fd3f1SPedro Giffuni * 3*24f6443dSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*24f6443dSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*24f6443dSAndrew Rist * distributed with this work for additional information 6*24f6443dSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*24f6443dSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*24f6443dSAndrew Rist * "License"); you may not use this file except in compliance 9*24f6443dSAndrew Rist * with the License. You may obtain a copy of the License at 10fc9fd3f1SPedro Giffuni * 11*24f6443dSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12fc9fd3f1SPedro Giffuni * 13*24f6443dSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*24f6443dSAndrew Rist * software distributed under the License is distributed on an 15*24f6443dSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*24f6443dSAndrew Rist * KIND, either express or implied. See the License for the 17*24f6443dSAndrew Rist * specific language governing permissions and limitations 18*24f6443dSAndrew Rist * under the License. 19fc9fd3f1SPedro Giffuni * 20*24f6443dSAndrew Rist *************************************************************/ 21*24f6443dSAndrew Rist 22*24f6443dSAndrew Rist 23fc9fd3f1SPedro Giffuni 24fc9fd3f1SPedro Giffuni #ifndef _SV_SALLAYOUT_H 25fc9fd3f1SPedro Giffuni #define _SV_SALLAYOUT_H 26fc9fd3f1SPedro Giffuni 27fc9fd3f1SPedro Giffuni #if 0 28fc9fd3f1SPedro Giffuni #include <sv.h> 29fc9fd3f1SPedro Giffuni #include <sallayout.hxx> 30fc9fd3f1SPedro Giffuni 31fc9fd3f1SPedro Giffuni class ImplOs2FontEntry; 32fc9fd3f1SPedro Giffuni 33fc9fd3f1SPedro Giffuni class Os2SalLayout : public GenericSalLayout 34fc9fd3f1SPedro Giffuni { 35fc9fd3f1SPedro Giffuni public: 36fc9fd3f1SPedro Giffuni Os2SalLayout( HPS); 37fc9fd3f1SPedro Giffuni virtual bool LayoutText( ImplLayoutArgs& ); 38fc9fd3f1SPedro Giffuni virtual void AdjustLayout( ImplLayoutArgs& ); 39fc9fd3f1SPedro Giffuni virtual void DrawText( SalGraphics& ) const; 40fc9fd3f1SPedro Giffuni 41fc9fd3f1SPedro Giffuni protected: 42fc9fd3f1SPedro Giffuni HPS mhPS; 43fc9fd3f1SPedro Giffuni FONTMETRICS FontMetrics; 44fc9fd3f1SPedro Giffuni int mnBaseAdv; 45fc9fd3f1SPedro Giffuni 46fc9fd3f1SPedro Giffuni private: 47fc9fd3f1SPedro Giffuni int mnGlyphCount; 48fc9fd3f1SPedro Giffuni int mnCharCount; 49fc9fd3f1SPedro Giffuni sal_Unicode* mpOutGlyphs; 50fc9fd3f1SPedro Giffuni int* mpGlyphAdvances; // if possible this is shared with mpGlyphAdvances[] 51fc9fd3f1SPedro Giffuni int* mpGlyphOrigAdvs; 52fc9fd3f1SPedro Giffuni int* mpCharWidths; // map rel char pos to char width 53fc9fd3f1SPedro Giffuni int* mpChars2Glyphs; // map rel char pos to abs glyph pos 54fc9fd3f1SPedro Giffuni int* mpGlyphs2Chars; // map abs glyph pos to abs char pos 55fc9fd3f1SPedro Giffuni bool* mpGlyphRTLFlags; // BiDi status for glyphs: true=>RTL 56fc9fd3f1SPedro Giffuni mutable long mnWidth; 57fc9fd3f1SPedro Giffuni bool mbDisableGlyphs; 58fc9fd3f1SPedro Giffuni 59fc9fd3f1SPedro Giffuni int mnNotdefWidth; 60fc9fd3f1SPedro Giffuni BYTE mnCharSet; 61fc9fd3f1SPedro Giffuni 62fc9fd3f1SPedro Giffuni }; 63fc9fd3f1SPedro Giffuni #endif 64fc9fd3f1SPedro Giffuni 65fc9fd3f1SPedro Giffuni #endif // _SV_SALLAYOUT_H 66