Difference between revisions of "User:Ericb/Sallayout.hxx"
Line 5: | Line 5: | ||
Classes defined | Classes defined | ||
− | - ImplLayoutRuns | + | - ImplLayoutRuns : used for managing runs e.g. for Bidi, gliph and script fallback |
ImplLayoutRuns methods: various methods around actions in progress | ImplLayoutRuns methods: various methods around actions in progress | ||
Clear( ), AddPos( ), AddRun( ), IsEmpty( ), ResetPos( ), NextRun( ), GetRun( ), GetNextPos( ), PosIsInRun( ) | Clear( ), AddPos( ), AddRun( ), IsEmpty( ), ResetPos( ), NextRun( ), GetRun( ), GetNextPos( ), PosIsInRun( ) | ||
− | - ImplLayoutArgs | + | - ImplLayoutArgs |
ImplLayoutArgs : various methods around parameters to provide "Run" methods [FIXME] : not completely sure, needs verification | ImplLayoutArgs : various methods around parameters to provide "Run" methods [FIXME] : not completely sure, needs verification | ||
SetLayoutWidth( ), SetDXArray( ), SetOrientation( ), ResetPos( ), GetNextPos( ), GetNextRun(), NeedFallback( ) | SetLayoutWidth( ), SetDXArray( ), SetOrientation( ), ResetPos( ), GetNextPos( ), GetNextRun(), NeedFallback( ) | ||
( three definitions, with two overloaded), PrepareFallback( ) [FIXME] : define fallback properly | ( three definitions, with two overloaded), PrepareFallback( ) [FIXME] : define fallback properly | ||
+ | Protected : AddRun( ) | ||
+ | Helper functions often used with ImplLayoutArgs : GetVerticalFlags( ), GetVerticalChar( ), GetMirroredChar( ), GetLocalizedChar( ) | ||
- SalLayout <= all text implementations inherit from this class, from far essential | - SalLayout <= all text implementations inherit from this class, from far essential |
Revision as of 22:05, 31 May 2006
Content description : classes , structures, etc ...
Several classes are pure virtual classes, and will be linked with architecture part (libvclplug_aqua on native port )
Classes defined
- ImplLayoutRuns : used for managing runs e.g. for Bidi, gliph and script fallback ImplLayoutRuns methods: various methods around actions in progress Clear( ), AddPos( ), AddRun( ), IsEmpty( ), ResetPos( ), NextRun( ), GetRun( ), GetNextPos( ), PosIsInRun( )
- ImplLayoutArgs ImplLayoutArgs : various methods around parameters to provide "Run" methods [FIXME] : not completely sure, needs verification SetLayoutWidth( ), SetDXArray( ), SetOrientation( ), ResetPos( ), GetNextPos( ), GetNextRun(), NeedFallback( ) ( three definitions, with two overloaded), PrepareFallback( ) [FIXME] : define fallback properly Protected : AddRun( ) Helper functions often used with ImplLayoutArgs : GetVerticalFlags( ), GetVerticalChar( ), GetMirroredChar( ), GetLocalizedChar( )
- SalLayout <= all text implementations inherit from this class, from far essential SalLayout methods: InitFonts( ), LayoutText( ), AdjustLayout( ),FillDXArray( ) DrawBase() , DrawOffset( ), DrawText( ),GetTextBreak( ), GetNextGlyph( ), GetOutLine( ), GetBoundREct( ), IsSpacingGlyph( ), GetCaretPosition( ), GetDrawPosition( ), GetUnitPerPixels( ), GetOrientation( ), GetDrawPosition( )
- MultiSalLyout [FIXME] not completely clear - Generic SalLayout
Corresponding implementation : sallayout.cxx
Includes from STLport : list, vector
Other includes : tools.h , dllapi.h
class MultiSalLayout : inherits of SalLayout
class GenericSalLayout : inherits of SalLayout
Helper functions (used with ImplLayoutArgs
Sources using this header in vcl
One main file for font services in OpenOffice.org, this header is mainly used in vcl :
./salatslayout.cxx:#include <sallayout.hxx>
./source/gdi/outdev.cxx:#include <sallayout.hxx>
./source/gdi/outdev2.cxx:#include <sallayout.hxx>
./source/gdi/outdev3.cxx:#include <sallayout.hxx>
./source/gdi/pdfwriter_impl.cxx:#include <sallayout.hxx>
./source/gdi/print2.cxx:#include <sallayout.hxx>
./source/gdi/salgdilayout.cxx:#include <sallayout.hxx>
./source/gdi/sallayout.cxx:#include <sallayout.hxx>
./source/glyphs/gcach_layout.cxx:#include <sallayout.hxx>
./unx/inc/pspgraphics.h:#include <sallayout.hxx>
./unx/inc/xfont.hxx:#include <sallayout.hxx>
./unx/source/window/salframe.cxx:#include <sallayout.hxx>
./win/inc/salgdi.h:#include <sallayout.hxx>
Windows specific :
./win/source/gdi/salgdi3.cxx:#include <sallayout.hxx>
./win/source/gdi/winlayout.cxx:#include <sallayout.hxx>
./win/source/window/salframe.cxx:#include <sallayout.hxx>
./source/window/window.cxx:#include <sallayout.hxx>
Several approaches are necessary :
To be implemented
-> same implementation in vcl/aqua directories