Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | Related Pages | Examples

inked_area.h

00001 //  Copyright (c) 1996-2001 by Autodesk, Inc.
00002 //
00003 //  By using this code, you are agreeing to the terms and conditions of
00004 //  the License Agreement included in the documentation for this code.
00005 //
00006 //  AUTODESK MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE CORRECTNESS
00007 //  OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE IT. AUTODESK
00008 //  PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY DISCLAIMS ANY
00009 //  LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL DAMAGES FOR ERRORS,
00010 //  OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00011 //
00012 //  Use, duplication, or disclosure by the U.S. Government is subject to
00013 //  restrictions set forth in FAR 52.227-19 (Commercial Computer Software
00014 //  Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) (Rights in Technical
00015 //  Data and Computer Software), as applicable.
00016 //
00017 
00018 #if !defined INKED_AREA_HEADER
00019 #define INKED_AREA_HEADER
00020 
00025 // ====================================================================================
00027 
00031 class WHIPTK_API WT_Inked_Area : public WT_Attribute
00032 {
00033 private:
00034     WT_Logical_Point *       m_bounds;
00035     int                      m_materialization_counter;
00036 
00037     enum
00038     {
00039         Getting_Operand,
00040         Getting_Bounds,
00041         Getting_Close_Paren,
00042         Completed
00043     } m_stage;
00044 
00045 public:
00046 
00048 
00049     WT_Inked_Area()
00050         : m_bounds (WD_Null), m_stage(Getting_Operand)
00051     {}
00053     WT_Inked_Area(WT_Logical_Point const * pos);
00055     WT_Inked_Area(WT_Inked_Area const & bounds);
00057     ~WT_Inked_Area();
00059 
00061 
00062     WT_Logical_Point const * bounds() const  { return m_bounds; }
00064     void        de_relativize(WT_File & file);
00066     WT_Logical_Point const * get_inked_area() const;
00068     void        relativize(WT_File & file);
00070     void set(WT_Logical_Point const * bounds);
00072     void set_inked_area(WT_Logical_Point const * bounds);
00074     void        transform(WT_Transform const & transform);
00076     WT_Inked_Area const &   operator=(WT_Inked_Area const & inked_area);
00078 
00080     WT_ID            object_id() const;
00081     WT_Result        materialize(WT_Opcode const & opcode, WT_File & file);
00082     WT_Result        process(WT_File & file);
00083     WT_Result        skip_operand(WT_Opcode const & opcode, WT_File & file);
00084     WT_Result        serialize (WT_File & file) const;
00085     WT_Result        sync (WT_File & file) const;
00086     WT_Boolean       operator== (WT_Attribute const & attrib) const;
00088 
00090 
00092     static WT_Result default_process(
00093         WT_Inked_Area & item, 
00094         WT_File & file 
00095         );
00096 };
00097 
00099 
00100 #endif // INKED_AREA_HEADER

Generated on Tue May 17 12:07:44 2005 for Autodesk DWF Whip 2D Toolkit by  doxygen 1.4.1