Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

EMF::GLOBALOBJECTS Class Reference

#include <libemf.h>

List of all members.

Public Methods

 GLOBALOBJECTS (void)
 ~GLOBALOBJECTS (void)
HGDIOBJ add (OBJECT *object)
OBJECTfind (const HGDIOBJ handle)
void remove (const OBJECT *object)
std::vector<EMF::OBJECT*>::const_iterator begin (void) const
std::vector<EMF::OBJECT*>::const_iterator end (void) const
METARECORDCTOR newRecord (DWORD iType) const

Static Public Methods

EMF::METARECORDnew_eof (DATASTREAM &ds)
EMF::METARECORDnew_setviewportorgex (DATASTREAM &ds)
EMF::METARECORDnew_setwindoworgex (DATASTREAM &ds)
EMF::METARECORDnew_setviewportextex (DATASTREAM &ds)
EMF::METARECORDnew_setwindowextex (DATASTREAM &ds)
EMF::METARECORDnew_scaleviewportextex (DATASTREAM &ds)
EMF::METARECORDnew_scalewindowextex (DATASTREAM &ds)
EMF::METARECORDnew_modifyworldtransform (DATASTREAM &ds)
EMF::METARECORDnew_setworldtransform (DATASTREAM &ds)
EMF::METARECORDnew_settextalign (DATASTREAM &ds)
EMF::METARECORDnew_settextcolor (DATASTREAM &ds)
EMF::METARECORDnew_setbkcolor (DATASTREAM &ds)
EMF::METARECORDnew_setbkmode (DATASTREAM &ds)
EMF::METARECORDnew_setpolyfillmode (DATASTREAM &ds)
EMF::METARECORDnew_setmapmode (DATASTREAM &ds)
EMF::METARECORDnew_selectobject (DATASTREAM &ds)
EMF::METARECORDnew_deleteobject (DATASTREAM &ds)
EMF::METARECORDnew_movetoex (DATASTREAM &ds)
EMF::METARECORDnew_lineto (DATASTREAM &ds)
EMF::METARECORDnew_arc (DATASTREAM &ds)
EMF::METARECORDnew_arcto (DATASTREAM &ds)
EMF::METARECORDnew_rectangle (DATASTREAM &ds)
EMF::METARECORDnew_ellipse (DATASTREAM &ds)
EMF::METARECORDnew_polyline (DATASTREAM &ds)
EMF::METARECORDnew_polyline16 (DATASTREAM &ds)
EMF::METARECORDnew_polygon (DATASTREAM &ds)
EMF::METARECORDnew_polypolygon (DATASTREAM &ds)
EMF::METARECORDnew_polypolygon16 (DATASTREAM &ds)
EMF::METARECORDnew_polybezier (DATASTREAM &ds)
EMF::METARECORDnew_polybezier16 (DATASTREAM &ds)
EMF::METARECORDnew_polybezierto (DATASTREAM &ds)
EMF::METARECORDnew_polybezierto16 (DATASTREAM &ds)
EMF::METARECORDnew_polylineto (DATASTREAM &ds)
EMF::METARECORDnew_polylineto16 (DATASTREAM &ds)
EMF::METARECORDnew_exttextouta (DATASTREAM &ds)
EMF::METARECORDnew_setpixelv (DATASTREAM &ds)
EMF::METARECORDnew_createpen (DATASTREAM &ds)
EMF::METARECORDnew_extcreatepen (DATASTREAM &ds)
EMF::METARECORDnew_createbrushindirect (DATASTREAM &ds)
EMF::METARECORDnew_extcreatefontindirectw (DATASTREAM &ds)
EMF::METARECORDnew_fillpath (DATASTREAM &ds)
EMF::METARECORDnew_strokepath (DATASTREAM &ds)
EMF::METARECORDnew_beginpath (DATASTREAM &ds)
EMF::METARECORDnew_endpath (DATASTREAM &ds)
EMF::METARECORDnew_closefigure (DATASTREAM &ds)
EMF::METARECORDnew_savedc (DATASTREAM &ds)
EMF::METARECORDnew_restoredc (DATASTREAM &ds)
EMF::METARECORDnew_setmetargn (DATASTREAM &ds)


Constructor & Destructor Documentation

EMF::GLOBALOBJECTS::GLOBALOBJECTS ( void )
 

EMF::GLOBALOBJECTS::~GLOBALOBJECTS ( void )
 


Member Function Documentation

HGDIOBJ EMF::GLOBALOBJECTS::add ( OBJECT * object )
 

Add an object to the global vector. The object's handle is simply its index in the global object vector, which is computed by the very interesting "difference between two iterators" method.

Parameters:
object   pointer to a real instance of an object, not its handle.

std::vector< EMF::OBJECT *>::const_iterator EMF::GLOBALOBJECTS::begin<EMF::OBJECT*> ( void ) const [inline]
 

std::vector< EMF::OBJECT *>::const_iterator EMF::GLOBALOBJECTS::end<EMF::OBJECT*> ( void ) const [inline]
 

OBJECT * EMF::GLOBALOBJECTS::find ( const HGDIOBJ handle )
 

Look up a object by handle in the global object vector. Note: Stock objects (like a gray brush or the black pen) have their high order bit set, so this has to be masked out when using their handles.

Parameters:
handle   the object's handle.
Returns:
pointer to object.

METARECORDCTOR EMF::GLOBALOBJECTS::newRecord ( DWORD iType ) const
 

See if we have a constructor for a record of the given type.

Parameters:
iType   metarecord type.
Returns:
pointer to "virtual" constructor.

EMF::METARECORD * EMF::GLOBALOBJECTS::new_arc ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_arcto ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_beginpath ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_closefigure ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_createbrushindirect ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_createpen ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_deleteobject ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_ellipse ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_endpath ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_eof ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_extcreatefontindirectw ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_extcreatepen ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_exttextouta ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_fillpath ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_lineto ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_modifyworldtransform ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_movetoex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polybezier ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polybezier16 ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polybezierto ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polybezierto16 ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polygon ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polyline ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polyline16 ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polylineto ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polylineto16 ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polypolygon ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_polypolygon16 ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_rectangle ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_restoredc ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_savedc ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_scaleviewportextex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_scalewindowextex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_selectobject ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setbkcolor ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setbkmode ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setmapmode ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setmetargn ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setpixelv ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setpolyfillmode ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_settextalign ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_settextcolor ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setviewportextex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setviewportorgex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setwindowextex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setwindoworgex ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_setworldtransform ( DATASTREAM & ds ) [static]
 

EMF::METARECORD * EMF::GLOBALOBJECTS::new_strokepath ( DATASTREAM & ds ) [static]
 

void EMF::GLOBALOBJECTS::remove ( const OBJECT * object )
 

A call to the metafile function DeleteObject() allows a particular object's handle to be reused, so some care has to be taken to erase it.

Parameters:
object   pointer to object to delete.


The documentation for this class was generated from the following files:
Generated at Sun Jan 27 15:27:02 2002 for EMF by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001