[mapguide-commits] r1152 - trunk/MgDev/Common/MdfModel
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Mon Mar 5 20:18:33 EST 2007
Author: waltweltonlair
Date: 2007-03-05 20:18:33 -0500 (Mon, 05 Mar 2007)
New Revision: 1152
Added:
trunk/MgDev/Common/MdfModel/AreaUsage.cpp
trunk/MgDev/Common/MdfModel/AreaUsage.h
trunk/MgDev/Common/MdfModel/CompositeRule.cpp
trunk/MgDev/Common/MdfModel/CompositeRule.h
trunk/MgDev/Common/MdfModel/CompositeSymbolization.cpp
trunk/MgDev/Common/MdfModel/CompositeSymbolization.h
trunk/MgDev/Common/MdfModel/CompositeTypeStyle.cpp
trunk/MgDev/Common/MdfModel/CompositeTypeStyle.h
trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.cpp
trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.h
trunk/MgDev/Common/MdfModel/GraphicElement.cpp
trunk/MgDev/Common/MdfModel/GraphicElement.h
trunk/MgDev/Common/MdfModel/IGraphicElementVisitor.h
trunk/MgDev/Common/MdfModel/ISymbolDefinitionVisitor.h
trunk/MgDev/Common/MdfModel/IUsageVisitor.h
trunk/MgDev/Common/MdfModel/Image.cpp
trunk/MgDev/Common/MdfModel/Image.h
trunk/MgDev/Common/MdfModel/LineUsage.cpp
trunk/MgDev/Common/MdfModel/LineUsage.h
trunk/MgDev/Common/MdfModel/Override.cpp
trunk/MgDev/Common/MdfModel/Override.h
trunk/MgDev/Common/MdfModel/Parameter.cpp
trunk/MgDev/Common/MdfModel/Parameter.h
trunk/MgDev/Common/MdfModel/Path.cpp
trunk/MgDev/Common/MdfModel/Path.h
trunk/MgDev/Common/MdfModel/PointUsage.cpp
trunk/MgDev/Common/MdfModel/PointUsage.h
trunk/MgDev/Common/MdfModel/ResizeBox.cpp
trunk/MgDev/Common/MdfModel/ResizeBox.h
trunk/MgDev/Common/MdfModel/SimpleSymbol.cpp
trunk/MgDev/Common/MdfModel/SimpleSymbol.h
trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.cpp
trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.h
trunk/MgDev/Common/MdfModel/SymbolDefinition.cpp
trunk/MgDev/Common/MdfModel/SymbolDefinition.h
trunk/MgDev/Common/MdfModel/SymbolInstance.cpp
trunk/MgDev/Common/MdfModel/SymbolInstance.h
trunk/MgDev/Common/MdfModel/Text.cpp
trunk/MgDev/Common/MdfModel/Text.h
trunk/MgDev/Common/MdfModel/TextFrame.cpp
trunk/MgDev/Common/MdfModel/TextFrame.h
trunk/MgDev/Common/MdfModel/Usage.h
Modified:
trunk/MgDev/Common/MdfModel/IFeatureTypeStyleVisitor.h
trunk/MgDev/Common/MdfModel/ISymbolizationVisitor.h
trunk/MgDev/Common/MdfModel/Makefile.am
trunk/MgDev/Common/MdfModel/MdfModel.vcproj
trunk/MgDev/Common/MdfModel/NameStringPair.cpp
trunk/MgDev/Common/MdfModel/NameStringPair.h
trunk/MgDev/Common/MdfModel/Rule.h
Log:
Update MdfModel to support new symbolization (RFC14).
Added: trunk/MgDev/Common/MdfModel/AreaUsage.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/AreaUsage.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/AreaUsage.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,216 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The AreaUsage class implementation.
+//-------------------------------------------------------------------------
+
+#include "AreaUsage.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the AreaUsage class.
+//-------------------------------------------------------------------------
+AreaUsage::AreaUsage()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOAreaUsage::Write to use the correct default values.
+ this->m_eOriginControl = Global;
+ this->m_eAngleControl = FromAngle;
+ this->m_eClippingControl = Clip;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+AreaUsage::~AreaUsage()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+AreaUsage::OriginControl AreaUsage::GetOriginControl() const
+{
+ return this->m_eOriginControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetOriginControl(const OriginControl originControl)
+{
+ this->m_eOriginControl = originControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Usage::AngleControl AreaUsage::GetAngleControl() const
+{
+ return this->m_eAngleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetAngleControl(AngleControl angleControl)
+{
+ this->m_eAngleControl = angleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+AreaUsage::ClippingControl AreaUsage::GetClippingControl() const
+{
+ return this->m_eClippingControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetClippingControl(const ClippingControl clippingControl)
+{
+ this->m_eClippingControl = clippingControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetOriginX() const
+{
+ return this->m_sOriginX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetOriginX(const MdfString& originX)
+{
+ this->m_sOriginX = originX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetOriginY() const
+{
+ return this->m_sOriginY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetOriginY(const MdfString& originY)
+{
+ this->m_sOriginY = originY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetAngle() const
+{
+ return this->m_sAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetAngle(const MdfString& angle)
+{
+ this->m_sAngle = angle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetRepeatX() const
+{
+ return this->m_sRepeatX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetRepeatX(const MdfString& repeatX)
+{
+ this->m_sRepeatX = repeatX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetRepeatY() const
+{
+ return this->m_sRepeatY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetRepeatY(const MdfString& repeatY)
+{
+ this->m_sRepeatY = repeatY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& AreaUsage::GetBufferWidth() const
+{
+ return this->m_sBufferWidth;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::SetBufferWidth(const MdfString& bufferWidth)
+{
+ this->m_sBufferWidth = bufferWidth;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void AreaUsage::AcceptVisitor(IUsageVisitor& iuVisitor)
+{
+ iuVisitor.VisitAreaUsage(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/AreaUsage.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/AreaUsage.h
===================================================================
--- trunk/MgDev/Common/MdfModel/AreaUsage.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/AreaUsage.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,98 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef AREAUSAGE_H_
+#define AREAUSAGE_H_
+
+#include "MdfModel.h"
+#include "Usage.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API AreaUsage : public Usage
+ {
+ public:
+ enum OriginControl
+ {
+ Global,
+ Local,
+ Centroid
+ };
+
+ enum ClippingControl
+ {
+ Clip,
+ Inside,
+ Overlap
+ };
+
+ // Construction, destruction, initialization
+ AreaUsage();
+ virtual ~AreaUsage();
+
+ OriginControl GetOriginControl() const;
+ void SetOriginControl(OriginControl originControl);
+
+ AngleControl GetAngleControl() const;
+ void SetAngleControl(AngleControl angleControl);
+
+ ClippingControl GetClippingControl() const;
+ void SetClippingControl(ClippingControl clippingControl);
+
+ const MdfString& GetOriginX() const;
+ void SetOriginX(const MdfString& originX);
+
+ const MdfString& GetOriginY() const;
+ void SetOriginY(const MdfString& originY);
+
+ const MdfString& GetAngle() const;
+ void SetAngle(const MdfString& angle);
+
+ const MdfString& GetRepeatX() const;
+ void SetRepeatX(const MdfString& repeatX);
+
+ const MdfString& GetRepeatY() const;
+ void SetRepeatY(const MdfString& repeatY);
+
+ const MdfString& GetBufferWidth() const;
+ void SetBufferWidth(const MdfString& bufferWidth);
+
+ virtual void AcceptVisitor(IUsageVisitor& iuVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ AreaUsage(const AreaUsage&);
+ AreaUsage& operator=(const AreaUsage&);
+
+ // Data members
+ OriginControl m_eOriginControl;
+ AngleControl m_eAngleControl;
+ ClippingControl m_eClippingControl;
+
+ MdfString m_sOriginX;
+ MdfString m_sOriginY;
+ MdfString m_sAngle;
+ MdfString m_sRepeatX;
+ MdfString m_sRepeatY;
+ MdfString m_sBufferWidth;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // AREAUSAGE_H_
Property changes on: trunk/MgDev/Common/MdfModel/AreaUsage.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeRule.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeRule.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeRule.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,91 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The CompositeRule class implementation. CompositeRule is a concrete
+// subclass of Rule.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "CompositeRule.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the CompositeRule class.
+//-------------------------------------------------------------------------
+CompositeRule::CompositeRule()
+{
+ this->m_pSymbolization = NULL;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+CompositeRule::~CompositeRule()
+{
+ if (this->m_pSymbolization != NULL)
+ delete this->m_pSymbolization;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Accessor for the CompositeSymbolization in this CompositeRule.
+// RETURNS: A pointer to the CompositeSymbolization.
+//-------------------------------------------------------------------------
+CompositeSymbolization* CompositeRule::GetSymbolization()
+{
+ return this->m_pSymbolization;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Method to adopt an CompositeSymbolization object for the Symbolization
+// property defined in this CompositeRule. The CompositeSymbolization is
+// applied to the geometric primitives of the specified features during
+// stylization. This object is now responsible for the deletion of the
+// adopted CompositeSymbolization.
+// PARAMETERS:
+// Input:
+// compositeSymbolization - A pointer to a CompositeSymbolization object
+// created on the heap.
+//-------------------------------------------------------------------------
+void CompositeRule::AdoptSymbolization(CompositeSymbolization* compositeSymbolization)
+{
+ if (this->m_pSymbolization != compositeSymbolization)
+ {
+ if (this->m_pSymbolization != NULL)
+ delete this->m_pSymbolization;
+ this->m_pSymbolization = compositeSymbolization;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Method to orphan the CompositeSymbolization object being held by this
+// rule. The CompositeSymbolization is applied to the geometric primitives
+// of the specified features during stylization. The caller is now
+// responsible for the deletion of the returned CompositeSymbolization
+// object.
+// RETURNS: Pointer to the orphaned CompositeSymbolization object. It may be NULL
+// if it wasn't defined.
+//-------------------------------------------------------------------------
+CompositeSymbolization* CompositeRule::OrphanSymbolization()
+{
+ CompositeSymbolization* pRet = this->m_pSymbolization;
+ this->m_pSymbolization = NULL;
+ return pRet;
+}
Property changes on: trunk/MgDev/Common/MdfModel/CompositeRule.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeRule.h
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeRule.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeRule.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,56 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef COMPOSITERULE_H_
+#define COMPOSITERULE_H_
+
+#include "MdfModel.h"
+#include "Rule.h"
+#include "CompositeSymbolization.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ // A composite Rule can be used for customized rendering of all 3 basic
+ // types of geometry -- point, polylines, and polygons. It combines
+ // a collection of basic Symbol building blocks.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API CompositeRule : public Rule
+ {
+ public:
+ // Construction, destruction, initialization
+ CompositeRule();
+ virtual ~CompositeRule();
+
+ // Operations
+ // Property : Symbolization
+ CompositeSymbolization* GetSymbolization();
+ void AdoptSymbolization(CompositeSymbolization* compositeSymbolization);
+ CompositeSymbolization* OrphanSymbolization();
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ CompositeRule(const CompositeRule&);
+ CompositeRule& operator=(const CompositeRule&);
+
+ // Data members
+ CompositeSymbolization* m_pSymbolization;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // COMPOSITERULE_H_
Property changes on: trunk/MgDev/Common/MdfModel/CompositeRule.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeSymbolization.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeSymbolization.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeSymbolization.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,75 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The CompositeSymbolization class implementation.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "CompositeSymbolization.h"
+#include "ISymbolizationVisitor.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the CompositeSymbolization class.
+//-------------------------------------------------------------------------
+CompositeSymbolization::CompositeSymbolization()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+CompositeSymbolization::~CompositeSymbolization()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SymbolInstanceCollection* CompositeSymbolization::GetSymbolCollection()
+{
+ return &this->m_collSymbols;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+OverrideCollection* CompositeSymbolization::GetParameterOverrides()
+{
+ return &this->m_collOverrides;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Implementation of the Visitor pattern. The pure, virtual method
+// is defined in Symbol and is implemented by all of its concrete
+// subclasses.
+// PARAMETERS:
+// Input:
+// isYVisitor - The ISymbolizationVisitor interface which sports
+// methods that accept the final concrete type this
+// CompositeSymbolization represents as an argument.
+//-------------------------------------------------------------------------
+void CompositeSymbolization::AcceptVisitor(ISymbolizationVisitor& isyVisitor)
+{
+ isyVisitor.VisitCompositeSymbolization(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/CompositeSymbolization.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeSymbolization.h
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeSymbolization.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeSymbolization.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,56 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef COMPOSITESYMBOLIZATION_H_
+#define COMPOSITESYMBOLIZATION_H_
+
+#include "MdfModel.h"
+#include "Symbolization.h"
+#include "SymbolInstance.h"
+#include "Override.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API CompositeSymbolization : public Symbolization
+ {
+ public:
+ // Construction, destruction, initialization
+ CompositeSymbolization();
+ virtual ~CompositeSymbolization();
+
+ SymbolInstanceCollection* GetSymbolCollection();
+
+ OverrideCollection* GetParameterOverrides();
+
+ // Visitor Pattern method defined in Symbolization.
+ virtual void AcceptVisitor(ISymbolizationVisitor& isyVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ CompositeSymbolization(const CompositeSymbolization&);
+ CompositeSymbolization& operator=(CompositeSymbolization&);
+
+ // Data members
+ SymbolInstanceCollection m_collSymbols;
+ OverrideCollection m_collOverrides;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // COMPOSITESYMBOLIZATION_H_
Property changes on: trunk/MgDev/Common/MdfModel/CompositeSymbolization.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeTypeStyle.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeTypeStyle.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeTypeStyle.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,58 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The CompositeTypeStyle class implementation. CompositeTypeStyle is a
+// concrete subclass of FeatureTypeStyle.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "CompositeTypeStyle.h"
+#include "IFeatureTypeStyleVisitor.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the CompositeTypeStyle class.
+//-------------------------------------------------------------------------
+CompositeTypeStyle::CompositeTypeStyle() : FeatureTypeStyle()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+CompositeTypeStyle::~CompositeTypeStyle()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Implementation of the Visitor pattern. The pure, virtual method
+// is defined in FeatureTypeStyle and is implemented by all of its
+// concrete subclasses.
+// PARAMETERS:
+// Input:
+// iftsVisitor - The IFeatureTypeStyleVisitor interface which sports
+// methods that accept the final concrete type this
+// CompositeTypeStyle represents as an argument.
+//-------------------------------------------------------------------------
+void CompositeTypeStyle::AcceptVisitor(IFeatureTypeStyleVisitor& iftsVisitor)
+{
+ iftsVisitor.VisitCompositeTypeStyle(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/CompositeTypeStyle.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompositeTypeStyle.h
===================================================================
--- trunk/MgDev/Common/MdfModel/CompositeTypeStyle.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompositeTypeStyle.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,48 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef COMPOSITETYPESTYLE_H
+#define COMPOSITETYPESTYLE_H
+
+#include "MdfModel.h"
+#include "FeatureTypeStyle.h"
+#include "CompositeRule.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API CompositeTypeStyle : public FeatureTypeStyle
+ {
+ public:
+ // Construction, destruction, initialization
+ CompositeTypeStyle();
+ virtual ~CompositeTypeStyle();
+
+ // Operations
+ // Implementation of FeatureTypeStyle Visitor pattern method.
+ virtual void AcceptVisitor(IFeatureTypeStyleVisitor& iftsVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ CompositeTypeStyle(const CompositeTypeStyle&);
+ CompositeTypeStyle& operator=(const CompositeTypeStyle&);
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // COMPOSITETYPESTYLE_H
Property changes on: trunk/MgDev/Common/MdfModel/CompositeTypeStyle.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,59 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The CompoundSymbolDefinition class implementation.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "CompoundSymbolDefinition.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the CompoundSymbolDefinition class.
+//-------------------------------------------------------------------------
+CompoundSymbolDefinition::CompoundSymbolDefinition()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+CompoundSymbolDefinition::~CompoundSymbolDefinition()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SimpleSymbolCollection* CompoundSymbolDefinition::GetSymbols()
+{
+ return &this->m_collSymbols;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void CompoundSymbolDefinition::AcceptVisitor(ISymbolDefinitionVisitor& isdVisitor)
+{
+ isdVisitor.VisitCompoundSymbolDefinition(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.h
===================================================================
--- trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,51 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef COMPOUNDSYMBOLDEFINITION_H_
+#define COMPOUNDSYMBOLDEFINITION_H_
+
+#include "MdfModel.h"
+#include "SymbolDefinition.h"
+#include "SimpleSymbol.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API CompoundSymbolDefinition : public SymbolDefinition
+ {
+ public:
+ // Construction, destruction, initialization
+ CompoundSymbolDefinition();
+ virtual ~CompoundSymbolDefinition();
+
+ SimpleSymbolCollection* GetSymbols();
+
+ virtual void AcceptVisitor(ISymbolDefinitionVisitor& isdVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ CompoundSymbolDefinition(const CompoundSymbolDefinition&);
+ CompoundSymbolDefinition& operator=(const CompoundSymbolDefinition&);
+
+ // Data members
+ SimpleSymbolCollection m_collSymbols;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // COMPOUNDSYMBOLDEFINITION_H_
Property changes on: trunk/MgDev/Common/MdfModel/CompoundSymbolDefinition.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/GraphicElement.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/GraphicElement.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/GraphicElement.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,63 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The GraphicElement class implementation.
+//-------------------------------------------------------------------------
+
+#include "GraphicElement.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Construct and initialize an instance of the GraphicElement class.
+//-------------------------------------------------------------------------
+GraphicElement::GraphicElement()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOGraphicElement::Write to use the correct default values.
+ this->m_eResizeControl = ResizeNone;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+GraphicElement::~GraphicElement()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Accessor method for the ResizeControl property.
+// RETURNS: The resize control for this graphic element.
+//-------------------------------------------------------------------------
+GraphicElement::ResizeControl GraphicElement::GetResizeControl() const
+{
+ return this->m_eResizeControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Accessor method for the ResizeControl property.
+// PARAMETERS:
+// Input:
+// eResizeControl - The resize control for this graphic element.
+//-------------------------------------------------------------------------
+void GraphicElement::SetResizeControl(GraphicElement::ResizeControl eResizeControl)
+{
+ this->m_eResizeControl = eResizeControl;
+}
Property changes on: trunk/MgDev/Common/MdfModel/GraphicElement.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/GraphicElement.h
===================================================================
--- trunk/MgDev/Common/MdfModel/GraphicElement.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/GraphicElement.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,74 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef GRAPHICELEMENT_H_
+#define GRAPHICELEMENT_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "MdfOwnerCollection.h"
+#include "IGraphicElementVisitor.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ // Building block of the graphics of a SymbolDefinition.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API GraphicElement : public MdfRootObject
+ {
+ public:
+ // The ResizeControl enum specifies how this graphic element interacts
+ // with the resize box. AddToResizeBox means the element's graphical
+ // extent is added to the resize box, but the element is not resized
+ // or repositioned if the resize box grows. AdjustToResizeBox means
+ // the element is resized and repositioned relative to the resize box,
+ // but its extent is not added to the box. ResizeNone, the default,
+ // means the element does not interact with the resize box.
+ enum ResizeControl
+ {
+ ResizeNone,
+ AddToResizeBox,
+ AdjustToResizeBox
+ };
+
+ // Destruction
+ virtual ~GraphicElement();
+
+ // Operations
+ // Property : ResizeControl
+ ResizeControl GetResizeControl() const;
+ void SetResizeControl(ResizeControl resizeControl);
+
+ // Visitor Pattern method defined in GraphicElement.
+ virtual void AcceptVisitor(IGraphicElementVisitor& igeVisitor) = 0;
+
+ protected:
+ // Construction, initialization
+ // Default constructor is protected to make this class abstract.
+ GraphicElement();
+
+ private:
+ // Data members
+ ResizeControl m_eResizeControl;
+ };
+
+ typedef MdfOwnerCollection<GraphicElement> GraphicElementCollection;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<GraphicElement>;
+
+END_NAMESPACE_MDFMODEL
+#endif // GRAPHICELEMENT_H_
Property changes on: trunk/MgDev/Common/MdfModel/GraphicElement.h
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: trunk/MgDev/Common/MdfModel/IFeatureTypeStyleVisitor.h
===================================================================
--- trunk/MgDev/Common/MdfModel/IFeatureTypeStyleVisitor.h 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/IFeatureTypeStyleVisitor.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -25,12 +25,13 @@
class LineTypeStyle;
class PointTypeStyle;
class AreaTypeStyle;
+ class CompositeTypeStyle;
class GridColorStyle;
class GridSurfaceStyle;
//-------------------------------------------------------------------------
// DESCRIPTION:
- // The IFeatureTypeStyleVisitor is an interface that is used for determining the
+ // The IFeatureTypeStyleVisitor is an interface that is used for determining
// the concrete class type of a pointer or reference to the abstract
// FeatureTypeStyle class.
//-------------------------------------------------------------------------
@@ -41,9 +42,10 @@
virtual void VisitLineTypeStyle(LineTypeStyle& fsLineTypeStyle) = 0;
virtual void VisitPointTypeStyle(PointTypeStyle& fsPointTypeStyle) = 0;
virtual void VisitAreaTypeStyle(AreaTypeStyle& fsAreaTypeStyle) = 0;
+ virtual void VisitCompositeTypeStyle(CompositeTypeStyle& fsCompositeTypeStyle) = 0;
virtual void VisitGridColorStyle(GridColorStyle &fsGridStyle) = 0;
virtual void VisitGridSurfaceStyle(GridSurfaceStyle &fsGridStyle) = 0;
};
END_NAMESPACE_MDFMODEL
-#endif //IFEATURETYPESTYLEVISITOR_H_
+#endif // IFEATURETYPESTYLEVISITOR_H_
Added: trunk/MgDev/Common/MdfModel/IGraphicElementVisitor.h
===================================================================
--- trunk/MgDev/Common/MdfModel/IGraphicElementVisitor.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/IGraphicElementVisitor.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,45 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef IGRAPHICELEMENTVISITOR_H_
+#define IGRAPHICELEMENTVISITOR_H_
+
+#include "MdfModel.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ class Path;
+ class Image;
+ class Text;
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ // The IGraphicElementVisitor is an interface that is used for determining
+ // the concrete class type of a pointer or reference to the abstract
+ // GraphicElement class.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API IGraphicElementVisitor
+ {
+ public:
+ // Operations
+ virtual void VisitPath(Path& path) = 0;
+ virtual void VisitImage(Image& image) = 0;
+ virtual void VisitText(Text& text) = 0;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // IGRAPHICELEMENTVISITOR_H_
Property changes on: trunk/MgDev/Common/MdfModel/IGraphicElementVisitor.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/ISymbolDefinitionVisitor.h
===================================================================
--- trunk/MgDev/Common/MdfModel/ISymbolDefinitionVisitor.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/ISymbolDefinitionVisitor.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,43 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef ISYMBOLDEFINITIONVISITOR_H_
+#define ISYMBOLDEFINITIONVISITOR_H_
+
+#include "MdfModel.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ class SimpleSymbolDefinition;
+ class CompoundSymbolDefinition;
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ // The ISymbolDefinitionVisitor is an interface that is used for determining
+ // the concrete class type of a pointer or reference to the abstract
+ // SymbolDefinition class.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API ISymbolDefinitionVisitor
+ {
+ public:
+ // Operations
+ virtual void VisitSimpleSymbolDefinition(SimpleSymbolDefinition& simpleSymbol) = 0;
+ virtual void VisitCompoundSymbolDefinition(CompoundSymbolDefinition& compoundSymbol) = 0;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // ISYMBOLDEFINITIONVISITOR_H_
Property changes on: trunk/MgDev/Common/MdfModel/ISymbolDefinitionVisitor.h
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: trunk/MgDev/Common/MdfModel/ISymbolizationVisitor.h
===================================================================
--- trunk/MgDev/Common/MdfModel/ISymbolizationVisitor.h 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/ISymbolizationVisitor.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -25,12 +25,13 @@
class LineSymbolization2D;
class AreaSymbolization2D;
class PointSymbolization2D;
+ class CompositeSymbolization;
//-------------------------------------------------------------------------
// DESCRIPTION:
- // The IFillVisitor is an interface that is used for determining the
- // the concrete class type of a pointer or reference to the abstract Fill
- // class.
+ // The ISymbolizationVisitor is an interface that is used for determining
+ // the concrete class type of a pointer or reference to the abstract
+ // Symbolization class.
//-------------------------------------------------------------------------
class MDFMODEL_API ISymbolizationVisitor
{
@@ -39,7 +40,8 @@
virtual void VisitLineSymbolization2D(LineSymbolization2D& syLine) = 0;
virtual void VisitAreaSymbolization2D(AreaSymbolization2D& syArea) = 0;
virtual void VisitPointSymbolization2D(PointSymbolization2D& syPoint) = 0;
+ virtual void VisitCompositeSymbolization(CompositeSymbolization& syComp) = 0;
};
END_NAMESPACE_MDFMODEL
-#endif //ISYMBOLIZATIONVISITOR_H_
+#endif // ISYMBOLIZATIONVISITOR_H_
Added: trunk/MgDev/Common/MdfModel/IUsageVisitor.h
===================================================================
--- trunk/MgDev/Common/MdfModel/IUsageVisitor.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/IUsageVisitor.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,45 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef IUSAGEVISITOR_H_
+#define IUSAGEVISITOR_H_
+
+#include "MdfModel.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ class PointUsage;
+ class LineUsage;
+ class AreaUsage;
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ // The IUsageVisitor is an interface that is used for determining
+ // the concrete class type of a pointer or reference to the abstract
+ // Usage class.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API IUsageVisitor
+ {
+ public:
+ // Operations
+ virtual void VisitPointUsage(PointUsage& pointUsage) = 0;
+ virtual void VisitLineUsage(LineUsage& lineUsage) = 0;
+ virtual void VisitAreaUsage(AreaUsage& areaUsage) = 0;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // IUSAGEVISITOR_H_
Property changes on: trunk/MgDev/Common/MdfModel/IUsageVisitor.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Image.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/Image.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/Image.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,183 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The Image class implementation.
+//-------------------------------------------------------------------------
+
+#include "Image.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the Image class.
+//-------------------------------------------------------------------------
+Image::Image()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+Image::~Image()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetContent() const
+{
+ return this->m_sContent;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetContent(const MdfString& content)
+{
+ this->m_sContent = content;
+
+ // Content and Reference are mutually exclusive. Setting one
+ // clears the other.
+ this->m_sReference.clear();
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetReference() const
+{
+ return this->m_sReference;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetReference(const MdfString& reference)
+{
+ this->m_sReference = reference;
+
+ // Content and Reference are mutually exclusive. Setting one
+ // clears the other.
+ this->m_sContent.clear();
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetSizeX() const
+{
+ return this->m_sSizeX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetSizeX(const MdfString& sizeX)
+{
+ this->m_sSizeX = sizeX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetSizeY() const
+{
+ return this->m_sSizeY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetSizeY(const MdfString& sizeY)
+{
+ this->m_sSizeY = sizeY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetPositionX() const
+{
+ return this->m_sPositionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetPositionX(const MdfString& positionX)
+{
+ this->m_sPositionX = positionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetPositionY() const
+{
+ return this->m_sPositionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetPositionY(const MdfString& positionY)
+{
+ this->m_sPositionY = positionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Image::GetAngle() const
+{
+ return this->m_sAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::SetAngle(const MdfString& angle)
+{
+ this->m_sAngle = angle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Image::AcceptVisitor(IGraphicElementVisitor& igeVisitor)
+{
+ igeVisitor.VisitImage(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/Image.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Image.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Image.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Image.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,79 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef IMAGE_H_
+#define IMAGE_H_
+
+#include "MdfModel.h"
+#include "GraphicElement.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION: Building block of the graphics of a SymbolDefinition.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Image : public GraphicElement
+ {
+ public:
+ // Construction, destruction, initialization
+ Image();
+ virtual ~Image();
+
+ // TODO: base64 as unicode, it's just not right! Do something else.
+ const MdfString& GetContent() const;
+ void SetContent(const MdfString& content);
+
+ const MdfString& GetReference() const;
+ void SetReference(const MdfString& reference);
+
+ const MdfString& GetSizeX() const;
+ void SetSizeX(const MdfString& sizeX);
+
+ const MdfString& GetSizeY() const;
+ void SetSizeY(const MdfString& sizeY);
+
+ const MdfString& GetPositionX() const;
+ void SetPositionX(const MdfString& positionX);
+
+ const MdfString& GetPositionY() const;
+ void SetPositionY(const MdfString& positionY);
+
+ const MdfString& GetAngle() const;
+ void SetAngle(const MdfString& angle);
+
+ virtual void AcceptVisitor(IGraphicElementVisitor& igeVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ Image(const Image&);
+ Image& operator=(const Image&);
+
+ // Data members
+ MdfString m_sContent;
+ MdfString m_sReference;
+
+ MdfString m_sSizeX;
+ MdfString m_sSizeY;
+
+ MdfString m_sPositionX;
+ MdfString m_sPositionY;
+
+ MdfString m_sAngle;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // IMAGE_H_
Property changes on: trunk/MgDev/Common/MdfModel/Image.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/LineUsage.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/LineUsage.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/LineUsage.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,236 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The LineUsage class implementation.
+//-------------------------------------------------------------------------
+
+#include "LineUsage.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+LineUsage::LineUsage()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOLineUsage::Write to use the correct default values.
+ this->m_eAngleControl = FromAngle;
+ this->m_eUnitsControl = Absolute;
+ this->m_eVertexControl = OverlapWrap;
+ this->m_pDefaultPath = NULL;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+LineUsage::~LineUsage()
+{
+ if (this->m_pDefaultPath != NULL)
+ delete this->m_pDefaultPath;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Usage::AngleControl LineUsage::GetAngleControl() const
+{
+ return this->m_eAngleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetAngleControl(AngleControl angleControl)
+{
+ this->m_eAngleControl = angleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+LineUsage::UnitsControl LineUsage::GetUnitsControl() const
+{
+ return this->m_eUnitsControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetUnitsControl(UnitsControl unitsControl)
+{
+ this->m_eUnitsControl = unitsControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+LineUsage::VertexControl LineUsage::GetVertexControl() const
+{
+ return this->m_eVertexControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetVertexControl(VertexControl vertexControl)
+{
+ this->m_eVertexControl = vertexControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& LineUsage::GetAngle() const
+{
+ return this->m_sAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetAngle(const MdfString& angle)
+{
+ this->m_sAngle = angle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& LineUsage::GetStartOffset() const
+{
+ return this->m_sStartOffset;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetStartOffset(const MdfString& startOffset)
+{
+ this->m_sStartOffset = startOffset;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& LineUsage::GetEndOffset() const
+{
+ return this->m_sEndOffset;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetEndOffset(const MdfString& endOffset)
+{
+ this->m_sEndOffset = endOffset;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& LineUsage::GetRepeat() const
+{
+ return this->m_sRepeat;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetRepeat(const MdfString& repeat)
+{
+ this->m_sRepeat = repeat;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& LineUsage::GetVertexAngleLimit() const
+{
+ return this->m_sVertexAngleLimit;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::SetVertexAngleLimit(const MdfString& vertexAngleLimit)
+{
+ this->m_sVertexAngleLimit = vertexAngleLimit;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Path* LineUsage::GetDefaultPath()
+{
+ return this->m_pDefaultPath;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::AdoptDefaultPath(Path* defaultPath)
+{
+ if (this->m_pDefaultPath != defaultPath)
+ {
+ if (this->m_pDefaultPath != NULL)
+ delete this->m_pDefaultPath;
+ this->m_pDefaultPath = defaultPath;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Path* LineUsage::OrphanDefaultPath()
+{
+ Path* pRet = this->m_pDefaultPath;
+ this->m_pDefaultPath = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void LineUsage::AcceptVisitor(IUsageVisitor& iuVisitor)
+{
+ iuVisitor.VisitLineUsage(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/LineUsage.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/LineUsage.h
===================================================================
--- trunk/MgDev/Common/MdfModel/LineUsage.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/LineUsage.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,101 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef LINEUSAGE_H_
+#define LINEUSAGE_H_
+
+#include "MdfModel.h"
+#include "Usage.h"
+#include "Path.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API LineUsage : public Usage
+ {
+ public:
+ enum UnitsControl
+ {
+ Absolute,
+ Parametric
+ };
+
+ enum VertexControl
+ {
+ NoOverlap,
+ OverlapDirect,
+ OverlapNoWrap,
+ OverlapWrap
+ };
+
+ // Construction, destruction, initialization
+ LineUsage();
+ virtual ~LineUsage();
+
+ AngleControl GetAngleControl() const;
+ void SetAngleControl(AngleControl angleControl);
+
+ UnitsControl GetUnitsControl() const;
+ void SetUnitsControl(UnitsControl unitsControl);
+
+ VertexControl GetVertexControl() const;
+ void SetVertexControl(VertexControl vertexControl);
+
+ const MdfString& GetAngle() const;
+ void SetAngle(const MdfString& angle);
+
+ const MdfString& GetStartOffset() const;
+ void SetStartOffset(const MdfString& startOffset);
+
+ const MdfString& GetEndOffset() const;
+ void SetEndOffset(const MdfString& endOffset);
+
+ const MdfString& GetRepeat() const;
+ void SetRepeat(const MdfString& repeat);
+
+ const MdfString& GetVertexAngleLimit() const;
+ void SetVertexAngleLimit(const MdfString& vertexAngleLimit);
+
+ Path* GetDefaultPath();
+ void AdoptDefaultPath(Path* defaultPath);
+ Path* OrphanDefaultPath();
+
+ virtual void AcceptVisitor(IUsageVisitor& iuVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ LineUsage(const LineUsage&);
+ LineUsage& operator=(const LineUsage&);
+
+ // Data members
+ AngleControl m_eAngleControl;
+ UnitsControl m_eUnitsControl;
+ VertexControl m_eVertexControl;
+
+ MdfString m_sAngle;
+ MdfString m_sStartOffset;
+ MdfString m_sEndOffset;
+ MdfString m_sRepeat;
+ MdfString m_sVertexAngleLimit;
+
+ Path* m_pDefaultPath;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // LINEUSAGE_H_
Property changes on: trunk/MgDev/Common/MdfModel/LineUsage.h
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: trunk/MgDev/Common/MdfModel/Makefile.am
===================================================================
--- trunk/MgDev/Common/MdfModel/Makefile.am 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/Makefile.am 2007-03-06 01:18:33 UTC (rev 1152)
@@ -8,6 +8,7 @@
AreaRule.cpp \
AreaSymbolization2D.cpp \
AreaTypeStyle.cpp \
+ AreaUsage.cpp \
AttributeRelate.cpp \
BaseMapLayer.cpp \
BaseMapLayerGroup.cpp \
@@ -15,6 +16,10 @@
Box2D.cpp \
CalculatedProperty.cpp \
ChannelBand.cpp \
+ CompositeRule.cpp \
+ CompositeSymbolization.cpp \
+ CompositeTypeStyle.cpp \
+ CompoundSymbolDefinition.cpp \
ConvertUTF.c \
DisplayScale.cpp \
DrawingLayerDefinition.cpp \
@@ -23,6 +28,7 @@
FeatureTypeStyle.cpp \
Fill.cpp \
FontSymbol.cpp \
+ GraphicElement.cpp \
GridColor.cpp \
GridColorRule.cpp \
GridColorStyle.cpp \
@@ -30,6 +36,7 @@
GridScaleRange.cpp \
GridSurfaceStyle.cpp \
HillShade.cpp \
+ Image.cpp \
ImageSymbol.cpp \
Label.cpp \
LayerDefinition.cpp \
@@ -37,6 +44,7 @@
LineRule.cpp \
LineSymbolization2D.cpp \
LineTypeStyle.cpp \
+ LineUsage.cpp \
MapDefinition.cpp \
MapLayer.cpp \
MapLayerGroup.cpp \
@@ -45,15 +53,26 @@
MdfModel.cpp \
MdfRootObject.cpp \
NameStringPair.cpp \
+ Override.cpp \
+ Parameter.cpp \
+ Path.cpp \
PointRule.cpp \
PointSymbolization2D.cpp \
PointTypeStyle.cpp \
+ PointUsage.cpp \
RelateProperty.cpp \
+ ResizeBox.cpp \
Rule.cpp \
+ SimpleSymbol.cpp \
+ SimpleSymbolDefinition.cpp \
Stroke.cpp \
SupplementalSpatialContextInfo.cpp \
Symbol.cpp \
+ SymbolDefinition.cpp \
+ SymbolInstance.cpp \
Symbolization.cpp \
+ Text.cpp \
+ TextFrame.cpp \
TextSymbol.cpp \
UnicodeString.cpp \
Vector.cpp \
@@ -65,6 +84,7 @@
AreaRule.h \
AreaSymbolization2D.h \
AreaTypeStyle.h \
+ AreaUsage.h \
AttributeRelate.h \
Base64.h \
BaseMapLayer.h \
@@ -73,6 +93,10 @@
Box2D.h \
CalculatedProperty.h \
ChannelBand.h \
+ CompositeRule.h \
+ CompositeSymbolization.h \
+ CompositeTypeStyle.h \
+ CompoundSymbolDefinition.h \
ConvertUTF.h \
DisplayScale.h \
DrawingLayerDefinition.h \
@@ -81,6 +105,7 @@
FeatureTypeStyle.h \
Fill.h \
FontSymbol.h \
+ GraphicElement.h \
GridColor.h \
GridColorRule.h \
GridColorStyle.h \
@@ -89,8 +114,12 @@
GridSurfaceStyle.h \
HillShade.h \
IFeatureTypeStyleVisitor.h \
+ IGraphicElementVisitor.h \
+ ISymbolDefinitionVisitor.h \
ISymbolVisitor.h \
ISymbolizationVisitor.h \
+ IUsageVisitor.h \
+ Image.h \
ImageSymbol.h \
Label.h \
LayerDefinition.h \
@@ -98,6 +127,7 @@
LineRule.h \
LineSymbolization2D.h \
LineTypeStyle.h \
+ LineUsage.h \
MapDefinition.h \
MapLayer.h \
MapLayerGroup.h \
@@ -107,18 +137,30 @@
MdfOwnerCollection.h \
MdfRootObject.h \
NameStringPair.h \
+ Override.h \
+ Parameter.h \
+ Path.h \
PointRule.h \
PointSymbolization2D.h \
PointTypeStyle.h \
+ PointUsage.h \
RelateProperty.h \
+ ResizeBox.h \
Rule.h \
+ SimpleSymbol.h \
+ SimpleSymbolDefinition.h \
SizeContexts.h \
Stroke.h \
SupplementalSpatialContextInfo.h \
Symbol.h \
+ SymbolDefinition.h \
+ SymbolInstance.h \
Symbolization.h \
+ Text.h \
+ TextFrame.h \
TextSymbol.h \
UnicodeString.h \
+ Usage.h \
Vector.h \
VectorLayerDefinition.h \
VectorScaleRange.h \
Modified: trunk/MgDev/Common/MdfModel/MdfModel.vcproj
===================================================================
--- trunk/MgDev/Common/MdfModel/MdfModel.vcproj 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/MdfModel.vcproj 2007-03-06 01:18:33 UTC (rev 1152)
@@ -41,7 +41,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""
+ AdditionalIncludeDirectories="..\..\Oem\dbxml-2.2.13\xerces-c-src\src"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;MDFMODEL_EXPORTS;_CRT_SECURE_NO_DEPRECATE"
MinimalRebuild="true"
ExceptionHandling="2"
@@ -124,7 +124,7 @@
Name="VCCLCompilerTool"
InlineFunctionExpansion="1"
OmitFramePointers="true"
- AdditionalIncludeDirectories=""
+ AdditionalIncludeDirectories="..\..\Oem\dbxml-2.2.13\xerces-c-src\src"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;MDFMODEL_EXPORTS;_CRT_SECURE_NO_DEPRECATE"
StringPooling="true"
ExceptionHandling="2"
@@ -185,91 +185,616 @@
<References>
</References>
<Files>
- <File
- RelativePath="AreaRule.cpp"
+ <Filter
+ Name="SymbolDefinition"
>
- </File>
- <File
- RelativePath="AreaRule.h"
+ <File
+ RelativePath=".\AreaUsage.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\AreaUsage.h"
+ >
+ </File>
+ <File
+ RelativePath=".\CompoundSymbolDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CompoundSymbolDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GraphicElement.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GraphicElement.h"
+ >
+ </File>
+ <File
+ RelativePath=".\IGraphicElementVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Image.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Image.h"
+ >
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ISymbolDefinitionVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath=".\IUsageVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath=".\LineUsage.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\LineUsage.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Parameter.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Parameter.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Path.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Path.h"
+ >
+ </File>
+ <File
+ RelativePath=".\PointUsage.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\PointUsage.h"
+ >
+ </File>
+ <File
+ RelativePath=".\ResizeBox.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\ResizeBox.h"
+ >
+ </File>
+ <File
+ RelativePath=".\SimpleSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\SimpleSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath=".\SimpleSymbolDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\SimpleSymbolDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath=".\SymbolDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\SymbolDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Text.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Text.h"
+ >
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\TextFrame.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\TextFrame.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Usage.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="RasterLayer"
>
- </File>
- <File
- RelativePath=".\AreaSymbolization2D.cpp"
+ <File
+ RelativePath=".\ChannelBand.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\ChannelBand.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColor.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColor.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColorRule.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColorRule.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColorStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridColorStyle.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridLayerDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridLayerDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridScaleRange.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridScaleRange.h"
+ >
+ </File>
+ <File
+ RelativePath=".\GridSurfaceStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\GridSurfaceStyle.h"
+ >
+ </File>
+ <File
+ RelativePath=".\HillShade.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\HillShade.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="VectorLayer"
>
- </File>
- <File
- RelativePath=".\AreaSymbolization2D.h"
+ <File
+ RelativePath=".\FeatureSource.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\FeatureSource.h"
+ >
+ </File>
+ <File
+ RelativePath=".\SupplementalSpatialContextInfo.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\SupplementalSpatialContextInfo.h"
+ >
+ </File>
+ <File
+ RelativePath=".\VectorLayerDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\VectorLayerDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath=".\VectorScaleRange.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\VectorScaleRange.h"
+ >
+ </File>
+ <Filter
+ Name="Joins"
+ >
+ <File
+ RelativePath=".\AttributeRelate.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\AttributeRelate.h"
+ >
+ </File>
+ <File
+ RelativePath=".\CalculatedProperty.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CalculatedProperty.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Extension.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Extension.h"
+ >
+ </File>
+ <File
+ RelativePath=".\RelateProperty.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\RelateProperty.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="VectorStyles"
+ >
+ <File
+ RelativePath=".\AreaTypeStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\AreaTypeStyle.h"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeTypeStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeTypeStyle.h"
+ >
+ </File>
+ <File
+ RelativePath=".\FeatureTypeStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\FeatureTypeStyle.h"
+ >
+ </File>
+ <File
+ RelativePath="Fill.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Fill.h"
+ >
+ </File>
+ <File
+ RelativePath=".\IFeatureTypeStyleVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath="Label.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Label.h"
+ >
+ </File>
+ <File
+ RelativePath=".\LineTypeStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\LineTypeStyle.h"
+ >
+ </File>
+ <File
+ RelativePath=".\PointTypeStyle.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\PointTypeStyle.h"
+ >
+ </File>
+ <File
+ RelativePath="Stroke.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Stroke.h"
+ >
+ </File>
+ <Filter
+ Name="Rules"
+ >
+ <File
+ RelativePath="AreaRule.cpp"
+ >
+ </File>
+ <File
+ RelativePath="AreaRule.h"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeRule.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeRule.h"
+ >
+ </File>
+ <File
+ RelativePath="LineRule.cpp"
+ >
+ </File>
+ <File
+ RelativePath="LineRule.h"
+ >
+ </File>
+ <File
+ RelativePath="PointRule.cpp"
+ >
+ </File>
+ <File
+ RelativePath="PointRule.h"
+ >
+ </File>
+ <File
+ RelativePath="Rule.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Rule.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Symbolizations"
+ >
+ <File
+ RelativePath=".\AreaSymbolization2D.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\AreaSymbolization2D.h"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeSymbolization.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CompositeSymbolization.h"
+ >
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="ISymbolizationVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath=".\LineSymbolization2D.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\LineSymbolization2D.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Override.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Override.h"
+ >
+ </File>
+ <File
+ RelativePath=".\PointSymbolization2D.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\PointSymbolization2D.h"
+ >
+ </File>
+ <File
+ RelativePath=".\SymbolInstance.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\SymbolInstance.h"
+ >
+ </File>
+ <File
+ RelativePath="Symbolization.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Symbolization.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Symbols"
+ >
+ <File
+ RelativePath=".\BlockSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\BlockSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath=".\FontSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\FontSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath=".\ImageSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\ImageSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath="ISymbolVisitor.h"
+ >
+ </File>
+ <File
+ RelativePath="MarkSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath="MarkSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath="Symbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Symbol.h"
+ >
+ </File>
+ <File
+ RelativePath="TextSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath="TextSymbol.h"
+ >
+ </File>
+ <File
+ RelativePath=".\W2DSymbol.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\W2DSymbol.h"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="MapDefinition"
>
- </File>
+ <File
+ RelativePath=".\BaseMapLayer.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\BaseMapLayer.h"
+ >
+ </File>
+ <File
+ RelativePath=".\BaseMapLayerGroup.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\BaseMapLayerGroup.h"
+ >
+ </File>
+ <File
+ RelativePath="Box2D.cpp"
+ >
+ </File>
+ <File
+ RelativePath="Box2D.h"
+ >
+ </File>
+ <File
+ RelativePath=".\DisplayScale.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\DisplayScale.h"
+ >
+ </File>
+ <File
+ RelativePath=".\MapDefinition.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\MapDefinition.h"
+ >
+ </File>
+ <File
+ RelativePath="MapLayer.cpp"
+ >
+ </File>
+ <File
+ RelativePath="MapLayer.h"
+ >
+ </File>
+ <File
+ RelativePath="MapLayerGroup.cpp"
+ >
+ </File>
+ <File
+ RelativePath="MapLayerGroup.h"
+ >
+ </File>
+ <File
+ RelativePath=".\MapLayerGroupCommon.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\MapLayerGroupCommon.h"
+ >
+ </File>
+ </Filter>
<File
- RelativePath=".\AreaTypeStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\AreaTypeStyle.h"
- >
- </File>
- <File
- RelativePath=".\AttributeRelate.cpp"
- >
- </File>
- <File
- RelativePath=".\AttributeRelate.h"
- >
- </File>
- <File
RelativePath=".\Base64.h"
>
</File>
<File
- RelativePath=".\BaseMapLayer.cpp"
- >
- </File>
- <File
- RelativePath=".\BaseMapLayer.h"
- >
- </File>
- <File
- RelativePath=".\BaseMapLayerGroup.cpp"
- >
- </File>
- <File
- RelativePath=".\BaseMapLayerGroup.h"
- >
- </File>
- <File
- RelativePath=".\BlockSymbol.cpp"
- >
- </File>
- <File
- RelativePath=".\BlockSymbol.h"
- >
- </File>
- <File
- RelativePath="Box2D.cpp"
- >
- </File>
- <File
- RelativePath="Box2D.h"
- >
- </File>
- <File
- RelativePath=".\CalculatedProperty.cpp"
- >
- </File>
- <File
- RelativePath=".\CalculatedProperty.h"
- >
- </File>
- <File
- RelativePath=".\ChannelBand.cpp"
- >
- </File>
- <File
- RelativePath=".\ChannelBand.h"
- >
- </File>
- <File
RelativePath=".\ConvertUTF.c"
>
</File>
@@ -278,14 +803,6 @@
>
</File>
<File
- RelativePath=".\DisplayScale.cpp"
- >
- </File>
- <File
- RelativePath=".\DisplayScale.h"
- >
- </File>
- <File
RelativePath=".\DrawingLayerDefinition.cpp"
>
</File>
@@ -294,130 +811,6 @@
>
</File>
<File
- RelativePath=".\Extension.cpp"
- >
- </File>
- <File
- RelativePath=".\Extension.h"
- >
- </File>
- <File
- RelativePath=".\FeatureSource.cpp"
- >
- </File>
- <File
- RelativePath=".\FeatureSource.h"
- >
- </File>
- <File
- RelativePath=".\FeatureTypeStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\FeatureTypeStyle.h"
- >
- </File>
- <File
- RelativePath="Fill.cpp"
- >
- </File>
- <File
- RelativePath="Fill.h"
- >
- </File>
- <File
- RelativePath=".\FontSymbol.cpp"
- >
- </File>
- <File
- RelativePath=".\FontSymbol.h"
- >
- </File>
- <File
- RelativePath=".\GridColor.cpp"
- >
- </File>
- <File
- RelativePath=".\GridColor.h"
- >
- </File>
- <File
- RelativePath=".\GridColorRule.cpp"
- >
- </File>
- <File
- RelativePath=".\GridColorRule.h"
- >
- </File>
- <File
- RelativePath=".\GridColorStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\GridColorStyle.h"
- >
- </File>
- <File
- RelativePath=".\GridLayerDefinition.cpp"
- >
- </File>
- <File
- RelativePath=".\GridLayerDefinition.h"
- >
- </File>
- <File
- RelativePath=".\GridScaleRange.cpp"
- >
- </File>
- <File
- RelativePath=".\GridScaleRange.h"
- >
- </File>
- <File
- RelativePath=".\GridSurfaceStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\GridSurfaceStyle.h"
- >
- </File>
- <File
- RelativePath=".\HillShade.cpp"
- >
- </File>
- <File
- RelativePath=".\HillShade.h"
- >
- </File>
- <File
- RelativePath=".\IFeatureTypeStyleVisitor.h"
- >
- </File>
- <File
- RelativePath=".\ImageSymbol.cpp"
- >
- </File>
- <File
- RelativePath=".\ImageSymbol.h"
- >
- </File>
- <File
- RelativePath="ISymbolizationVisitor.h"
- >
- </File>
- <File
- RelativePath="ISymbolVisitor.h"
- >
- </File>
- <File
- RelativePath="Label.cpp"
- >
- </File>
- <File
- RelativePath="Label.h"
- >
- </File>
- <File
RelativePath=".\LayerDefinition.cpp"
>
</File>
@@ -434,70 +827,6 @@
>
</File>
<File
- RelativePath="LineRule.cpp"
- >
- </File>
- <File
- RelativePath="LineRule.h"
- >
- </File>
- <File
- RelativePath=".\LineSymbolization2D.cpp"
- >
- </File>
- <File
- RelativePath=".\LineSymbolization2D.h"
- >
- </File>
- <File
- RelativePath=".\LineTypeStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\LineTypeStyle.h"
- >
- </File>
- <File
- RelativePath=".\MapDefinition.cpp"
- >
- </File>
- <File
- RelativePath=".\MapDefinition.h"
- >
- </File>
- <File
- RelativePath="MapLayer.cpp"
- >
- </File>
- <File
- RelativePath="MapLayer.h"
- >
- </File>
- <File
- RelativePath="MapLayerGroup.cpp"
- >
- </File>
- <File
- RelativePath="MapLayerGroup.h"
- >
- </File>
- <File
- RelativePath=".\MapLayerGroupCommon.cpp"
- >
- </File>
- <File
- RelativePath=".\MapLayerGroupCommon.h"
- >
- </File>
- <File
- RelativePath="MarkSymbol.cpp"
- >
- </File>
- <File
- RelativePath="MarkSymbol.h"
- >
- </File>
- <File
RelativePath=".\MdfModel.cpp"
>
</File>
@@ -530,46 +859,6 @@
>
</File>
<File
- RelativePath="PointRule.cpp"
- >
- </File>
- <File
- RelativePath="PointRule.h"
- >
- </File>
- <File
- RelativePath=".\PointSymbolization2D.cpp"
- >
- </File>
- <File
- RelativePath=".\PointSymbolization2D.h"
- >
- </File>
- <File
- RelativePath=".\PointTypeStyle.cpp"
- >
- </File>
- <File
- RelativePath=".\PointTypeStyle.h"
- >
- </File>
- <File
- RelativePath=".\RelateProperty.cpp"
- >
- </File>
- <File
- RelativePath=".\RelateProperty.h"
- >
- </File>
- <File
- RelativePath="Rule.cpp"
- >
- </File>
- <File
- RelativePath="Rule.h"
- >
- </File>
- <File
RelativePath=".\SizeContexts.h"
>
</File>
@@ -578,46 +867,6 @@
>
</File>
<File
- RelativePath="Stroke.cpp"
- >
- </File>
- <File
- RelativePath="Stroke.h"
- >
- </File>
- <File
- RelativePath=".\SupplementalSpatialContextInfo.cpp"
- >
- </File>
- <File
- RelativePath=".\SupplementalSpatialContextInfo.h"
- >
- </File>
- <File
- RelativePath="Symbol.cpp"
- >
- </File>
- <File
- RelativePath="Symbol.h"
- >
- </File>
- <File
- RelativePath="Symbolization.cpp"
- >
- </File>
- <File
- RelativePath="Symbolization.h"
- >
- </File>
- <File
- RelativePath="TextSymbol.cpp"
- >
- </File>
- <File
- RelativePath="TextSymbol.h"
- >
- </File>
- <File
RelativePath=".\UnicodeString.cpp"
>
</File>
@@ -625,38 +874,6 @@
RelativePath=".\UnicodeString.h"
>
</File>
- <File
- RelativePath=".\Vector.cpp"
- >
- </File>
- <File
- RelativePath=".\Vector.h"
- >
- </File>
- <File
- RelativePath=".\VectorLayerDefinition.cpp"
- >
- </File>
- <File
- RelativePath=".\VectorLayerDefinition.h"
- >
- </File>
- <File
- RelativePath=".\VectorScaleRange.cpp"
- >
- </File>
- <File
- RelativePath=".\VectorScaleRange.h"
- >
- </File>
- <File
- RelativePath=".\W2DSymbol.cpp"
- >
- </File>
- <File
- RelativePath=".\W2DSymbol.h"
- >
- </File>
</Files>
<Globals>
</Globals>
Modified: trunk/MgDev/Common/MdfModel/NameStringPair.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/NameStringPair.cpp 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/NameStringPair.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -28,31 +28,26 @@
using namespace MDFMODEL_NAMESPACE;
//-------------------------------------------------------------------------
-// PURPOSE: Construct and initialize an instance of the NameStringPair
-// class.
-// PARAMETERS:
-// Input:
-// strName - the name
-// strText - the associated text
+// PURPOSE: Initialize an instance of the NameStringPair class.
//-------------------------------------------------------------------------
-NameStringPair::NameStringPair(const MdfString& strName, const MdfString& strValue)
-:m_strName(strName),m_strValue(strValue)
+NameStringPair::NameStringPair()
{
+ //Default Settings
+ this->m_strName = L"";
+ this->m_strValue = L"";
}
//-------------------------------------------------------------------------
-// PURPOSE: Construct and initialize an instance of the NameStringPair
-// class.
+// PURPOSE: Initialize an instance of the NameStringPair class.
// PARAMETERS:
// Input:
// strName - the name
// strText - the associated text
//-------------------------------------------------------------------------
-NameStringPair::NameStringPair()
+NameStringPair::NameStringPair(const MdfString& strName, const MdfString& strValue)
{
- //Default Settings
- this->m_strName = L"";
- this->m_strValue = L"";
+ this->m_strName = strName;
+ this->m_strValue = strValue;
}
//-------------------------------------------------------------------------
Modified: trunk/MgDev/Common/MdfModel/NameStringPair.h
===================================================================
--- trunk/MgDev/Common/MdfModel/NameStringPair.h 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/NameStringPair.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -32,11 +32,12 @@
class MDFMODEL_API NameStringPair : public MdfRootObject
{
public:
- //Constructors,
- //default copy constructor, destructor and assignment operator.
+ // Construction, initialization
+ NameStringPair();
NameStringPair(const MdfString& strName , const MdfString& strValue);
- NameStringPair();
+ //default copy constructor, destructor and assignment operator.
+
// Operations
// Property : Name
const MdfString& GetName() const;
Added: trunk/MgDev/Common/MdfModel/Override.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/Override.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/Override.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,86 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The Override class implementation.
+//-------------------------------------------------------------------------
+
+#include "Override.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the Override class.
+//-------------------------------------------------------------------------
+Override::Override()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Override::GetSymbolName() const
+{
+ return this->m_sSymbolName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Override::SetSymbolName(const MdfString& symbolName)
+{
+ this->m_sSymbolName = symbolName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Override::GetParameterIdentifier() const
+{
+ return this->m_sParameterIdentifier;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Override::SetParameterIdentifier(const MdfString& parameterIdentifier)
+{
+ this->m_sParameterIdentifier = parameterIdentifier;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Override::GetParameterValue() const
+{
+ return this->m_sParameterValue;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Override::SetParameterValue(const MdfString& parameterValue)
+{
+ this->m_sParameterValue = parameterValue;
+}
Property changes on: trunk/MgDev/Common/MdfModel/Override.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Override.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Override.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Override.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,60 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef OVERRIDE_H_
+#define OVERRIDE_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "MdfOwnerCollection.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Override : public MdfRootObject
+ {
+ public:
+ // Construction, initialization
+ Override();
+
+ const MdfString& GetSymbolName() const;
+ void SetSymbolName(const MdfString& symbolName);
+
+ const MdfString& GetParameterIdentifier() const;
+ void SetParameterIdentifier(const MdfString& parameterIdentifier);
+
+ const MdfString& GetParameterValue() const;
+ void SetParameterValue(const MdfString& parameterValue);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ Override(const Override&);
+ Override& operator=(const Override&);
+
+ // Data members
+ MdfString m_sSymbolName;
+ MdfString m_sParameterIdentifier;
+ MdfString m_sParameterValue;
+ };
+
+ typedef MdfOwnerCollection<Override> OverrideCollection;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<Override>;
+
+END_NAMESPACE_MDFMODEL
+#endif // OVERRIDE_H_
Property changes on: trunk/MgDev/Common/MdfModel/Override.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Parameter.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/Parameter.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/Parameter.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,121 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The Parameter class implementation.
+//-------------------------------------------------------------------------
+
+#include "Parameter.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the Parameter class.
+//-------------------------------------------------------------------------
+Parameter::Parameter()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+Parameter::~Parameter()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Parameter::GetIdentifier() const
+{
+ return this->m_sIdentifier;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Parameter::SetIdentifier(const MdfString& identifier)
+{
+ this->m_sIdentifier = identifier;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Parameter::GetDefaultValue() const
+{
+ return this->m_sDefaultValue;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Parameter::SetDefaultValue(const MdfString& defaultValue)
+{
+ this->m_sDefaultValue = defaultValue;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Parameter::GetDisplayName() const
+{
+ return this->m_sDisplayName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Parameter::SetDisplayName(const MdfString& displayName)
+{
+ this->m_sDisplayName = displayName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Parameter::GetDescription() const
+{
+ return this->m_sDescription;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Parameter::SetDescription(const MdfString& description)
+{
+ this->m_sDescription = description;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+ValueList* Parameter::GetValueList()
+{
+ return &this->m_collValueList;
+}
Property changes on: trunk/MgDev/Common/MdfModel/Parameter.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Parameter.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Parameter.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Parameter.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,71 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef PARAMETER_H_
+#define PARAMETER_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "MdfOwnerCollection.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ typedef MdfOwnerCollection<MdfString> ValueList;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<MdfString>;
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION: Definition of a user-configurable parameter in the symbol definition
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Parameter : public MdfRootObject
+ {
+ public:
+ // Construction, destruction, initialization
+ Parameter();
+ virtual ~Parameter();
+
+ const MdfString& GetIdentifier() const;
+ void SetIdentifier(const MdfString& identifier);
+
+ const MdfString& GetDefaultValue() const;
+ void SetDefaultValue(const MdfString& defaultValue);
+
+ const MdfString& GetDisplayName() const;
+ void SetDisplayName(const MdfString& displayName);
+
+ const MdfString& GetDescription() const;
+ void SetDescription(const MdfString& description);
+
+ ValueList* GetValueList();
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ Parameter(const Parameter&);
+ Parameter& operator=(const Parameter&);
+
+ // Data members
+ MdfString m_sIdentifier;
+ MdfString m_sDefaultValue;
+ MdfString m_sDisplayName;
+ MdfString m_sDescription;
+ ValueList m_collValueList;
+ };
+
+ typedef MdfOwnerCollection<Parameter> ParameterCollection;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<Parameter>;
+
+END_NAMESPACE_MDFMODEL
+#endif // PARAMETER_H_
Property changes on: trunk/MgDev/Common/MdfModel/Parameter.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Path.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/Path.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/Path.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,198 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The Path class implementation.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "Path.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the Path class.
+//-------------------------------------------------------------------------
+Path::Path()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOPath::Write to use the correct default values.
+ this->m_eLineCap = CapRound;
+ this->m_eLineJoin = JoinRound;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+Path::~Path()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetGeometry() const
+{
+ return m_sGeometry;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetGeometry(const MdfString& geometry)
+{
+ m_sGeometry = geometry;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetFillColor() const
+{
+ return m_sFillColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetFillColor(const MdfString& fillColor)
+{
+ m_sFillColor = fillColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetLineColor() const
+{
+ return m_sLineColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineColor(const MdfString& lineColor)
+{
+ m_sLineColor = lineColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetLineWeight() const
+{
+ return m_sLineWeight;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineWeight(const MdfString& lineWeight)
+{
+ m_sLineWeight = lineWeight;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetLineWeightScalable() const
+{
+ return m_sLineWeightScalable;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineWeightScalable(const MdfString& lineWeightScalable)
+{
+ m_sLineWeightScalable = lineWeightScalable;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Path::LineCap Path::GetLineCap() const
+{
+ return m_eLineCap;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineCap(LineCap lineCap)
+{
+ m_eLineCap = lineCap;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Path::LineJoin Path::GetLineJoin() const
+{
+ return m_eLineJoin;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineJoin(LineJoin lineJoin)
+{
+ m_eLineJoin = lineJoin;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Path::GetLineMiterLimit() const
+{
+ return m_sLineMiterLimit;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::SetLineMiterLimit(const MdfString& lineMiterLimit)
+{
+ m_sLineMiterLimit = lineMiterLimit;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Path::AcceptVisitor(IGraphicElementVisitor& igeVisitor)
+{
+ igeVisitor.VisitPath(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/Path.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Path.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Path.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Path.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,100 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef PATH_H_
+#define PATH_H_
+
+#include "MdfModel.h"
+#include "GraphicElement.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION: Building block of the geometry of a SymbolDefinition
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Path : public GraphicElement
+ {
+ public:
+ enum LineCap
+ {
+ CapNone,
+ CapRound,
+ CapTriangle,
+ CapSquare
+ };
+
+ enum LineJoin
+ {
+ JoinNone,
+ JoinBevel,
+ JoinRound,
+ JoinMiter
+ };
+
+ // Construction, destruction, initialization
+ Path();
+ virtual ~Path();
+
+ const MdfString& GetGeometry() const;
+ void SetGeometry(const MdfString& geometry);
+
+ const MdfString& GetFillColor() const;
+ void SetFillColor(const MdfString& fillColor);
+
+ const MdfString& GetLineColor() const;
+ void SetLineColor(const MdfString& lineColor);
+
+ const MdfString& GetLineWeight() const;
+ void SetLineWeight(const MdfString& lineWeight);
+
+ // TODO: WCW - should this be a boolean property?
+ const MdfString& GetLineWeightScalable() const;
+ void SetLineWeightScalable(const MdfString& lineWeightScalable);
+
+ // TODO: WCW - should this be a string property?
+ LineCap GetLineCap() const;
+ void SetLineCap(LineCap lineCap);
+
+ // TODO: WCW - should this be a string property?
+ LineJoin GetLineJoin() const;
+ void SetLineJoin(LineJoin lineJoin);
+
+ const MdfString& GetLineMiterLimit() const;
+ void SetLineMiterLimit(const MdfString& lineMiterLimit);
+
+ virtual void AcceptVisitor(IGraphicElementVisitor& igeVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ Path(const Path&);
+ Path& operator=(const Path&);
+
+ // Data members
+ MdfString m_sGeometry;
+
+ MdfString m_sFillColor;
+ MdfString m_sLineColor;
+ MdfString m_sLineWeight;
+ MdfString m_sLineWeightScalable;
+
+ LineCap m_eLineCap;
+ LineJoin m_eLineJoin;
+ MdfString m_sLineMiterLimit;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // PATH_H_
Property changes on: trunk/MgDev/Common/MdfModel/Path.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/PointUsage.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/PointUsage.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/PointUsage.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,124 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The PointUsage class implementation.
+//-------------------------------------------------------------------------
+
+#include "PointUsage.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the PointUsage class.
+//-------------------------------------------------------------------------
+PointUsage::PointUsage()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOPointUsage::Write to use the correct default values.
+ this->m_eAngleControl = FromAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+PointUsage::~PointUsage()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+Usage::AngleControl PointUsage::GetAngleControl() const
+{
+ return this->m_eAngleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void PointUsage::SetAngleControl(AngleControl angleControl)
+{
+ this->m_eAngleControl = angleControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& PointUsage::GetAngle() const
+{
+ return this->m_sAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void PointUsage::SetAngle(const MdfString& angle)
+{
+ this->m_sAngle = angle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& PointUsage::GetOriginOffsetX() const
+{
+ return this->m_sOriginOffsetX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void PointUsage::SetOriginOffsetX(const MdfString& originOffsetX)
+{
+ this->m_sOriginOffsetX = originOffsetX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& PointUsage::GetOriginOffsetY() const
+{
+ return this->m_sOriginOffsetY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void PointUsage::SetOriginOffsetY(const MdfString& originOffsetY)
+{
+ this->m_sOriginOffsetY = originOffsetY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void PointUsage::AcceptVisitor(IUsageVisitor& iuVisitor)
+{
+ iuVisitor.VisitPointUsage(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/PointUsage.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/PointUsage.h
===================================================================
--- trunk/MgDev/Common/MdfModel/PointUsage.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/PointUsage.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,63 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef POINTUSAGE_H_
+#define POINTUSAGE_H_
+
+#include "MdfModel.h"
+#include "Usage.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API PointUsage : public Usage
+ {
+ public:
+ // Construction, destruction, initialization
+ PointUsage();
+ virtual ~PointUsage();
+
+ AngleControl GetAngleControl() const;
+ void SetAngleControl(AngleControl angleControl);
+
+ const MdfString& GetAngle() const;
+ void SetAngle(const MdfString& angle);
+
+ const MdfString& GetOriginOffsetX() const;
+ void SetOriginOffsetX(const MdfString& originOffsetX);
+
+ const MdfString& GetOriginOffsetY() const;
+ void SetOriginOffsetY(const MdfString& originOffsetY);
+
+ virtual void AcceptVisitor(IUsageVisitor& iuVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ PointUsage(const PointUsage&);
+ PointUsage& operator=(const PointUsage&);
+
+ // Data members
+ AngleControl m_eAngleControl;
+ MdfString m_sAngle;
+ MdfString m_sOriginOffsetX;
+ MdfString m_sOriginOffsetY;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // POINTUSAGE_H_
Property changes on: trunk/MgDev/Common/MdfModel/PointUsage.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/ResizeBox.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/ResizeBox.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/ResizeBox.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,133 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The ResizeBox class implementation.
+//-------------------------------------------------------------------------
+
+#include "ResizeBox.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the ResizeBox class.
+//-------------------------------------------------------------------------
+ResizeBox::ResizeBox()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOResizeBox::Write to use the correct default values.
+ this->m_eGrowControl = GrowInXYMaintainAspect;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+ResizeBox::~ResizeBox()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& ResizeBox::GetPositionX() const
+{
+ return this->m_sPositionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void ResizeBox::SetPositionX(const MdfString& positionX)
+{
+ this->m_sPositionX = positionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& ResizeBox::GetPositionY() const
+{
+ return this->m_sPositionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void ResizeBox::SetPositionY(const MdfString& positionY)
+{
+ this->m_sPositionY = positionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& ResizeBox::GetSizeX() const
+{
+ return this->m_sSizeX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void ResizeBox::SetSizeX(const MdfString& sizeX)
+{
+ this->m_sSizeX = sizeX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& ResizeBox::GetSizeY() const
+{
+ return this->m_sSizeY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void ResizeBox::SetSizeY(const MdfString& sizeY)
+{
+ this->m_sSizeY = sizeY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+ResizeBox::GrowControl ResizeBox::GetGrowControl() const
+{
+ return this->m_eGrowControl;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void ResizeBox::SetGrowControl(GrowControl growControl)
+{
+ this->m_eGrowControl = growControl;
+}
Property changes on: trunk/MgDev/Common/MdfModel/ResizeBox.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/ResizeBox.h
===================================================================
--- trunk/MgDev/Common/MdfModel/ResizeBox.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/ResizeBox.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,73 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef RESIZEBOX_H_
+#define RESIZEBOX_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API ResizeBox : public MdfRootObject
+ {
+ public:
+ enum GrowControl
+ {
+ GrowInX,
+ GrowInY,
+ GrowInXY,
+ GrowInXYMaintainAspect
+ };
+
+ // Construction, destruction, initialization
+ ResizeBox();
+ virtual ~ResizeBox();
+
+ const MdfString& GetPositionX() const;
+ void SetPositionX(const MdfString& positionX);
+
+ const MdfString& GetPositionY() const;
+ void SetPositionY(const MdfString& positionY);
+
+ const MdfString& GetSizeX() const;
+ void SetSizeX(const MdfString& sizeX);
+
+ const MdfString& GetSizeY() const;
+ void SetSizeY(const MdfString& sizeY);
+
+ GrowControl GetGrowControl() const;
+ void SetGrowControl(GrowControl growControl);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ ResizeBox(const ResizeBox&);
+ ResizeBox& operator=(const ResizeBox&);
+
+ // Data members
+ MdfString m_sPositionX;
+ MdfString m_sPositionY;
+ MdfString m_sSizeX;
+ MdfString m_sSizeY;
+ GrowControl m_eGrowControl;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // RESIZEBOX_H_
Property changes on: trunk/MgDev/Common/MdfModel/ResizeBox.h
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: trunk/MgDev/Common/MdfModel/Rule.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Rule.h 2007-03-05 18:42:16 UTC (rev 1151)
+++ trunk/MgDev/Common/MdfModel/Rule.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -21,13 +21,13 @@
#include "MdfModel.h"
#include "MdfOwnerCollection.h"
#include "Label.h"
-#include "MdfRootObject.h"
namespace MdfParser
{
class IOAreaRule;
class IOLineRule;
class IOPointRule;
+ class IOCompositeRule;
}
BEGIN_NAMESPACE_MDFMODEL
@@ -40,11 +40,12 @@
// Filtering criteria takes the form of a tree that uses logical operators
// to combine attribute-based and geometry-based filters.
//-------------------------------------------------------------------------
-class MDFMODEL_API Rule : public MdfRootObject
+ class MDFMODEL_API Rule : public MdfRootObject
{
friend class MdfParser::IOAreaRule;
friend class MdfParser::IOLineRule;
friend class MdfParser::IOPointRule;
+ friend class MdfParser::IOCompositeRule;
public:
// Destruction
@@ -52,11 +53,11 @@
// Operations
// Property : LegendLabel
- const MdfString& GetLegendLabel()const;
+ const MdfString& GetLegendLabel() const;
void SetLegendLabel(const MdfString& pstrLegendLabel);
// Property : Filter
- const MdfString& GetFilter()const;
+ const MdfString& GetFilter() const;
void SetFilter(const MdfString& strFilter);
// Property : Label
@@ -82,11 +83,10 @@
// Label for multivariate theming.
Label* m_plblLabel;
-
};
typedef MdfOwnerCollection<Rule> RuleCollection;
EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<Rule>;
END_NAMESPACE_MDFMODEL
-#endif //RULE_H_
+#endif // RULE_H_
Added: trunk/MgDev/Common/MdfModel/SimpleSymbol.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/SimpleSymbol.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/SimpleSymbol.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,125 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The SimpleSymbol class implementation.
+//-------------------------------------------------------------------------
+
+#include "SimpleSymbol.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the SimpleSymbol class.
+//-------------------------------------------------------------------------
+SimpleSymbol::SimpleSymbol()
+{
+ this->m_pSymbolDefinition = NULL;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+SimpleSymbol::~SimpleSymbol()
+{
+ if (this->m_pSymbolDefinition != NULL)
+ delete this->m_pSymbolDefinition;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SimpleSymbolDefinition* SimpleSymbol::GetSymbolDefinition()
+{
+ return this->m_pSymbolDefinition;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbol::AdoptSymbolDefinition(SimpleSymbolDefinition* symbolDefinition)
+{
+ if (this->m_pSymbolDefinition != symbolDefinition)
+ {
+ if (this->m_pSymbolDefinition != NULL)
+ delete this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = symbolDefinition;
+
+ // Definition and Reference are mutually exclusive. Setting one
+ // clears the other.
+ this->m_sSymbolReference.clear();
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SimpleSymbolDefinition* SimpleSymbol::OrphanSymbolDefinition()
+{
+ SimpleSymbolDefinition* pRet = this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SimpleSymbol::GetSymbolReference() const
+{
+ return this->m_sSymbolReference;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbol::SetSymbolReference(const MdfString& symbolReference)
+{
+ this->m_sSymbolReference = symbolReference;
+
+ // Definition and Reference are mutually exclusive. Setting one
+ // clears the other.
+ if (this->m_pSymbolDefinition != NULL)
+ {
+ delete this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = NULL;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SimpleSymbol::GetRenderingPass() const
+{
+ return this->m_sRenderingPass;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbol::SetRenderingPass(const MdfString& renderingPass)
+{
+ this->m_sRenderingPass = renderingPass;
+}
Property changes on: trunk/MgDev/Common/MdfModel/SimpleSymbol.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SimpleSymbol.h
===================================================================
--- trunk/MgDev/Common/MdfModel/SimpleSymbol.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/SimpleSymbol.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,63 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef SIMPLESYMBOL_H_
+#define SIMPLESYMBOL_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "MdfOwnerCollection.h"
+#include "SimpleSymbolDefinition.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API SimpleSymbol : public MdfRootObject
+ {
+ public:
+ // Construction, destruction, initialization
+ SimpleSymbol();
+ virtual ~SimpleSymbol();
+
+ SimpleSymbolDefinition* GetSymbolDefinition();
+ void AdoptSymbolDefinition(SimpleSymbolDefinition* symbolDefinition);
+ SimpleSymbolDefinition* OrphanSymbolDefinition();
+
+ const MdfString& GetSymbolReference() const;
+ void SetSymbolReference(const MdfString& symbolReference);
+
+ const MdfString& GetRenderingPass() const;
+ void SetRenderingPass(const MdfString& renderingPass);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ SimpleSymbol(const SimpleSymbol&);
+ SimpleSymbol& operator=(const SimpleSymbol&);
+
+ // Data members
+ SimpleSymbolDefinition* m_pSymbolDefinition;
+ MdfString m_sSymbolReference;
+ MdfString m_sRenderingPass;
+ };
+
+ typedef MdfOwnerCollection<SimpleSymbol> SimpleSymbolCollection;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<SimpleSymbol>;
+
+END_NAMESPACE_MDFMODEL
+#endif // SIMPLESYMBOL_H_
Property changes on: trunk/MgDev/Common/MdfModel/SimpleSymbol.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,216 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The SimpleSymbolDefinition class implementation.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "SimpleSymbolDefinition.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the SimpleSymbolDefinition class.
+//-------------------------------------------------------------------------
+SimpleSymbolDefinition::SimpleSymbolDefinition()
+{
+ this->m_pResizeBox = NULL;
+ this->m_pPointUsage = NULL;
+ this->m_pLineUsage = NULL;
+ this->m_pAreaUsage = NULL;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+SimpleSymbolDefinition::~SimpleSymbolDefinition()
+{
+ if (this->m_pResizeBox != NULL)
+ delete this->m_pResizeBox;
+ if (this->m_pPointUsage != NULL)
+ delete this->m_pPointUsage;
+ if (this->m_pLineUsage != NULL)
+ delete this->m_pLineUsage;
+ if (this->m_pAreaUsage != NULL)
+ delete this->m_pAreaUsage;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+GraphicElementCollection* SimpleSymbolDefinition::GetGraphics()
+{
+ return &this->m_collGraphics;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+ResizeBox* SimpleSymbolDefinition::GetResizeBox()
+{
+ return this->m_pResizeBox;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbolDefinition::AdoptResizeBox(ResizeBox* resizeBox)
+{
+ if (this->m_pResizeBox != resizeBox)
+ {
+ if (this->m_pResizeBox != NULL)
+ delete this->m_pResizeBox;
+ this->m_pResizeBox = resizeBox;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+ResizeBox* SimpleSymbolDefinition::OrphanResizeBox()
+{
+ ResizeBox* pRet = this->m_pResizeBox;
+ this->m_pResizeBox = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+PointUsage* SimpleSymbolDefinition::GetPointUsage()
+{
+ return this->m_pPointUsage;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbolDefinition::AdoptPointUsage(PointUsage* pointUsage)
+{
+ if (this->m_pPointUsage != pointUsage)
+ {
+ if (this->m_pPointUsage != NULL)
+ delete this->m_pPointUsage;
+ this->m_pPointUsage = pointUsage;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+PointUsage* SimpleSymbolDefinition::OrphanPointUsage()
+{
+ PointUsage* pRet = this->m_pPointUsage;
+ this->m_pPointUsage = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+LineUsage* SimpleSymbolDefinition::GetLineUsage()
+{
+ return this->m_pLineUsage;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbolDefinition::AdoptLineUsage(LineUsage* lineUsage)
+{
+ if (this->m_pLineUsage != lineUsage)
+ {
+ if (this->m_pLineUsage != NULL)
+ delete this->m_pLineUsage;
+ this->m_pLineUsage = lineUsage;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+LineUsage* SimpleSymbolDefinition::OrphanLineUsage()
+{
+ LineUsage* pRet = this->m_pLineUsage;
+ this->m_pLineUsage = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+AreaUsage* SimpleSymbolDefinition::GetAreaUsage()
+{
+ return this->m_pAreaUsage;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbolDefinition::AdoptAreaUsage(AreaUsage* areaUsage)
+{
+ if (this->m_pAreaUsage != areaUsage)
+ {
+ if (this->m_pAreaUsage != NULL)
+ delete this->m_pAreaUsage;
+ this->m_pAreaUsage = areaUsage;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+AreaUsage* SimpleSymbolDefinition::OrphanAreaUsage()
+{
+ AreaUsage* pRet = this->m_pAreaUsage;
+ this->m_pAreaUsage = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+ParameterCollection* SimpleSymbolDefinition::GetParameterDefinition()
+{
+ return &this->m_collParameters;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SimpleSymbolDefinition::AcceptVisitor(ISymbolDefinitionVisitor& isdVisitor)
+{
+ isdVisitor.VisitSimpleSymbolDefinition(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.h
===================================================================
--- trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,79 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef SIMPLESYMBOLDEFINITION_H_
+#define SIMPLESYMBOLDEFINITION_H_
+
+#include "MdfModel.h"
+#include "SymbolDefinition.h"
+#include "GraphicElement.h"
+#include "ResizeBox.h"
+#include "PointUsage.h"
+#include "LineUsage.h"
+#include "AreaUsage.h"
+#include "Parameter.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API SimpleSymbolDefinition : public SymbolDefinition
+ {
+ public:
+ // Construction, destruction, initialization
+ SimpleSymbolDefinition();
+ virtual ~SimpleSymbolDefinition();
+
+ GraphicElementCollection* GetGraphics();
+
+ ResizeBox* GetResizeBox();
+ void AdoptResizeBox(ResizeBox* resizeBox);
+ ResizeBox* OrphanResizeBox();
+
+ PointUsage* GetPointUsage();
+ void AdoptPointUsage(PointUsage* pointUsage);
+ PointUsage* OrphanPointUsage();
+
+ LineUsage* GetLineUsage();
+ void AdoptLineUsage(LineUsage* lineUsage);
+ LineUsage* OrphanLineUsage();
+
+ AreaUsage* GetAreaUsage();
+ void AdoptAreaUsage(AreaUsage* areaUsage);
+ AreaUsage* OrphanAreaUsage();
+
+ ParameterCollection* GetParameterDefinition();
+
+ virtual void AcceptVisitor(ISymbolDefinitionVisitor& isdVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ SimpleSymbolDefinition(const SimpleSymbolDefinition&);
+ SimpleSymbolDefinition& operator=(const SimpleSymbolDefinition&);
+
+ // Data members
+ GraphicElementCollection m_collGraphics;
+ ResizeBox* m_pResizeBox;
+ PointUsage* m_pPointUsage;
+ LineUsage* m_pLineUsage;
+ AreaUsage* m_pAreaUsage;
+ ParameterCollection m_collParameters;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // SIMPLESYMBOLDEFINITION_H_
Property changes on: trunk/MgDev/Common/MdfModel/SimpleSymbolDefinition.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SymbolDefinition.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/SymbolDefinition.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/SymbolDefinition.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,77 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The SymbolDefinition class implementation.
+//-------------------------------------------------------------------------
+
+#include "stdafx.h"
+#include "SymbolDefinition.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the SymbolDefinition class.
+//-------------------------------------------------------------------------
+SymbolDefinition::SymbolDefinition()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+SymbolDefinition::~SymbolDefinition()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolDefinition::SetName(const MdfString& name)
+{
+ this->m_sName = name;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolDefinition::GetName() const
+{
+ return this->m_sName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolDefinition::SetDescription(const MdfString& description)
+{
+ this->m_sDescription = description;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolDefinition::GetDescription() const
+{
+ return this->m_sDescription;
+}
Property changes on: trunk/MgDev/Common/MdfModel/SymbolDefinition.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SymbolDefinition.h
===================================================================
--- trunk/MgDev/Common/MdfModel/SymbolDefinition.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/SymbolDefinition.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,56 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef SYMBOLDEFINITION_H_
+#define SYMBOLDEFINITION_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "ISymbolDefinitionVisitor.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API SymbolDefinition : public MdfRootObject
+ {
+ public:
+ // Destruction
+ virtual ~SymbolDefinition();
+
+ void SetName(const MdfString& name);
+ const MdfString& GetName() const;
+
+ void SetDescription(const MdfString& description);
+ const MdfString& GetDescription() const;
+
+ virtual void AcceptVisitor(ISymbolDefinitionVisitor& isdVisitor) = 0;
+
+ protected:
+ // Construction, initialization
+ // Default constructor is protected to make this class abstract.
+ SymbolDefinition();
+
+ private:
+ // Data members
+ MdfString m_sName;
+ MdfString m_sDescription;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // SYMBOLDEFINITION_H_
Property changes on: trunk/MgDev/Common/MdfModel/SymbolDefinition.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SymbolInstance.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/SymbolInstance.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/SymbolInstance.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,272 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The SymbolInstance class implementation.
+//-------------------------------------------------------------------------
+
+#include "SymbolInstance.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the SymbolInstance class.
+//-------------------------------------------------------------------------
+SymbolInstance::SymbolInstance()
+{
+ // NOTE: if you change any defaults then you must also update
+ // IOSymbolInstance::Write to use the correct default values.
+ this->m_pSymbolDefinition = NULL;
+ this->m_eSizeContext = DeviceUnits;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+SymbolInstance::~SymbolInstance()
+{
+ if (this->m_pSymbolDefinition != NULL)
+ delete this->m_pSymbolDefinition;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SymbolDefinition* SymbolInstance::GetSymbolDefinition()
+{
+ return this->m_pSymbolDefinition;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::AdoptSymbolDefinition(SymbolDefinition* symbolDefinition)
+{
+ if (this->m_pSymbolDefinition != symbolDefinition)
+ {
+ if (this->m_pSymbolDefinition != NULL)
+ delete this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = symbolDefinition;
+
+ // Definition and Reference are mutually exclusive. Setting one
+ // clears the other.
+ this->m_sSymbolReference.clear();
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SymbolDefinition* SymbolInstance::OrphanSymbolDefinition()
+{
+ SymbolDefinition* pRet = this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetSymbolReference() const
+{
+ return this->m_sSymbolReference;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetSymbolReference(const MdfString& symbolReference)
+{
+ this->m_sSymbolReference = symbolReference;
+
+ // Definition and Reference are mutually exclusive. Setting one
+ // clears the other.
+ if (this->m_pSymbolDefinition != NULL)
+ {
+ delete this->m_pSymbolDefinition;
+ this->m_pSymbolDefinition = NULL;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetScaleX() const
+{
+ return this->m_sScaleX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetScaleX(const MdfString& scaleX)
+{
+ this->m_sScaleX = scaleX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetScaleY() const
+{
+ return this->m_sScaleY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetScaleY(const MdfString& scaleY)
+{
+ this->m_sScaleY = scaleY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetInsertionOffsetX() const
+{
+ return this->m_sInsertionOffsetX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetInsertionOffsetX(const MdfString& insertionOffsetX)
+{
+ this->m_sInsertionOffsetX = insertionOffsetX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetInsertionOffsetY() const
+{
+ return this->m_sInsertionOffsetY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetInsertionOffsetY(const MdfString& insertionOffsetY)
+{
+ this->m_sInsertionOffsetY = insertionOffsetY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+SizeContext SymbolInstance::GetSizeContext() const
+{
+ return this->m_eSizeContext;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetSizeContext(SizeContext sizeContext)
+{
+ this->m_eSizeContext = sizeContext;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetDrawLast() const
+{
+ return this->m_sDrawLast;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetDrawLast(const MdfString& drawLast)
+{
+ this->m_sDrawLast = drawLast;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetCheckExclusionRegion() const
+{
+ return this->m_sCheckExclusionRegion;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetCheckExclusionRegion(const MdfString& checkExclusionRegion)
+{
+ this->m_sCheckExclusionRegion = checkExclusionRegion;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetAddToExclusionRegion() const
+{
+ return this->m_sAddToExclusionRegion;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetAddToExclusionRegion(const MdfString& addToExclusionRegion)
+{
+ this->m_sAddToExclusionRegion = addToExclusionRegion;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& SymbolInstance::GetPositioningAlgorithm() const
+{
+ return this->m_sPositioningAlgorithm;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void SymbolInstance::SetPositioningAlgorithm(const MdfString& positioningAlgorithm)
+{
+ this->m_sPositioningAlgorithm = positioningAlgorithm;
+}
Property changes on: trunk/MgDev/Common/MdfModel/SymbolInstance.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/SymbolInstance.h
===================================================================
--- trunk/MgDev/Common/MdfModel/SymbolInstance.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/SymbolInstance.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,101 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef SYMBOLINSTANCE_H_
+#define SYMBOLINSTANCE_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "MdfOwnerCollection.h"
+#include "SymbolDefinition.h"
+#include "SizeContexts.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API SymbolInstance : public MdfRootObject
+ {
+ public:
+ // Construction, destruction, initialization
+ SymbolInstance();
+ virtual ~SymbolInstance();
+
+ SymbolDefinition* GetSymbolDefinition();
+ void AdoptSymbolDefinition(SymbolDefinition* symbolDefinition);
+ SymbolDefinition* OrphanSymbolDefinition();
+
+ const MdfString& GetSymbolReference() const;
+ void SetSymbolReference(const MdfString& symbolReference);
+
+ const MdfString& GetScaleX() const;
+ void SetScaleX(const MdfString& scaleX);
+
+ const MdfString& GetScaleY() const;
+ void SetScaleY(const MdfString& scaleY);
+
+ const MdfString& GetInsertionOffsetX() const;
+ void SetInsertionOffsetX(const MdfString& insertionOffsetX);
+
+ const MdfString& GetInsertionOffsetY() const;
+ void SetInsertionOffsetY(const MdfString& insertionOffsetY);
+
+ SizeContext GetSizeContext() const;
+ void SetSizeContext(SizeContext sizeContext);
+
+ // TODO: WCW - should this be a boolean property?
+ const MdfString& GetDrawLast() const;
+ void SetDrawLast(const MdfString& drawLast);
+
+ // TODO: WCW - should this be a boolean property?
+ const MdfString& GetCheckExclusionRegion() const;
+ void SetCheckExclusionRegion(const MdfString& checkExclusionRegion);
+
+ // TODO: WCW - should this be a boolean property?
+ const MdfString& GetAddToExclusionRegion() const;
+ void SetAddToExclusionRegion(const MdfString& addToExclusionRegion);
+
+ const MdfString& GetPositioningAlgorithm() const;
+ void SetPositioningAlgorithm(const MdfString& positioningAlgorithm);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ SymbolInstance(const SymbolInstance&);
+ SymbolInstance& operator=(const SymbolInstance&);
+
+ // Data members
+ SymbolDefinition* m_pSymbolDefinition;
+ MdfString m_sSymbolReference;
+
+ MdfString m_sScaleX;
+ MdfString m_sScaleY;
+ MdfString m_sInsertionOffsetX;
+ MdfString m_sInsertionOffsetY;
+ SizeContext m_eSizeContext;
+
+ MdfString m_sDrawLast;
+ MdfString m_sCheckExclusionRegion;
+ MdfString m_sAddToExclusionRegion;
+ MdfString m_sPositioningAlgorithm;
+ };
+
+ typedef MdfOwnerCollection<SymbolInstance> SymbolInstanceCollection;
+ EXPIMP_TEMPLATE template class MDFMODEL_API MdfOwnerCollection<SymbolInstance>;
+
+END_NAMESPACE_MDFMODEL
+#endif // SYMBOLINSTANCE_H_
Property changes on: trunk/MgDev/Common/MdfModel/SymbolInstance.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Text.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/Text.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/Text.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,356 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The Text class implementation.
+//-------------------------------------------------------------------------
+
+#include "Text.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the Text class.
+//-------------------------------------------------------------------------
+Text::Text()
+{
+ this->m_pFrame = NULL;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+Text::~Text()
+{
+ if (this->m_pFrame != NULL)
+ delete this->m_pFrame;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetString() const
+{
+ return this->m_sString;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetString(const MdfString& string)
+{
+ this->m_sString = string;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetFontName() const
+{
+ return this->m_sFontName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetFontName(const MdfString& fontName)
+{
+ this->m_sFontName = fontName;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetBold() const
+{
+ return this->m_sBold;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetBold(const MdfString& bold)
+{
+ this->m_sBold = bold;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetItalic() const
+{
+ return this->m_sItalic;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetItalic(const MdfString& italic)
+{
+ this->m_sItalic = italic;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetUnderlined() const
+{
+ return this->m_sUnderlined;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetUnderlined(const MdfString& underlined)
+{
+ this->m_sUnderlined = underlined;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetHeight() const
+{
+ return this->m_sHeight;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetHeight(const MdfString& height)
+{
+ this->m_sHeight = height;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetPositionX() const
+{
+ return this->m_sPositionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetPositionX(const MdfString& positionX)
+{
+ this->m_sPositionX = positionX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetPositionY() const
+{
+ return this->m_sPositionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetPositionY(const MdfString& positionY)
+{
+ this->m_sPositionY = positionY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetAngle() const
+{
+ return this->m_sAngle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetAngle(const MdfString& angle)
+{
+ this->m_sAngle = angle;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetHorizontalAlignment() const
+{
+ return this->m_sHAlignment;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetHorizontalAlignment(const MdfString& hAlignment)
+{
+ this->m_sHAlignment = hAlignment;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetVerticalAlignment() const
+{
+ return this->m_sVAlignment;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetVerticalAlignment(const MdfString& vAlignment)
+{
+ this->m_sVAlignment = vAlignment;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetJustification() const
+{
+ return this->m_sJustification;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetJustification(const MdfString& justification)
+{
+ this->m_sJustification = justification;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetLineSpacing() const
+{
+ return this->m_sLineSpacing;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetLineSpacing(const MdfString& lineSpacing)
+{
+ this->m_sLineSpacing = lineSpacing;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetTextColor() const
+{
+ return this->m_sTextColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetTextColor(const MdfString& textColor)
+{
+ this->m_sTextColor = textColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& Text::GetGhostColor() const
+{
+ return this->m_sGhostColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::SetGhostColor(const MdfString& ghostColor)
+{
+ this->m_sGhostColor = ghostColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+TextFrame* Text::GetFrame()
+{
+ return this->m_pFrame;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::AdoptFrame(TextFrame* frame)
+{
+ if (this->m_pFrame != frame)
+ {
+ if (this->m_pFrame != NULL)
+ delete this->m_pFrame;
+ this->m_pFrame = frame;
+ }
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+TextFrame* Text::OrphanFrame()
+{
+ TextFrame* pRet = this->m_pFrame;
+ this->m_pFrame = NULL;
+ return pRet;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void Text::AcceptVisitor(IGraphicElementVisitor& igeVisitor)
+{
+ igeVisitor.VisitText(*this);
+}
Property changes on: trunk/MgDev/Common/MdfModel/Text.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Text.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Text.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Text.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,118 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef TEXT_H_
+#define TEXT_H_
+
+#include "MdfModel.h"
+#include "GraphicElement.h"
+#include "TextFrame.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION: Building block of the graphics of a SymbolDefinition.
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Text : public GraphicElement
+ {
+ public:
+ // Construction, destruction, initialization
+ Text();
+ virtual ~Text();
+
+ const MdfString& GetString() const;
+ void SetString(const MdfString& string);
+
+ const MdfString& GetFontName() const;
+ void SetFontName(const MdfString& fontName);
+
+ const MdfString& GetBold() const;
+ void SetBold(const MdfString& bold);
+
+ const MdfString& GetItalic() const;
+ void SetItalic(const MdfString& italic);
+
+ const MdfString& GetUnderlined() const;
+ void SetUnderlined(const MdfString& underlined);
+
+ const MdfString& GetHeight() const;
+ void SetHeight(const MdfString& height);
+
+ const MdfString& GetPositionX() const;
+ void SetPositionX(const MdfString& positionX);
+
+ const MdfString& GetPositionY() const;
+ void SetPositionY(const MdfString& positionY);
+
+ const MdfString& GetAngle() const;
+ void SetAngle(const MdfString& angle);
+
+ const MdfString& GetHorizontalAlignment() const;
+ void SetHorizontalAlignment(const MdfString& hAlignment);
+
+ const MdfString& GetVerticalAlignment() const;
+ void SetVerticalAlignment(const MdfString& vAlignment);
+
+ const MdfString& GetJustification() const;
+ void SetJustification(const MdfString& justification);
+
+ const MdfString& GetLineSpacing() const;
+ void SetLineSpacing(const MdfString& lineSpacing);
+
+ const MdfString& GetTextColor() const;
+ void SetTextColor(const MdfString& textColor);
+
+ const MdfString& GetGhostColor() const;
+ void SetGhostColor(const MdfString& ghostColor);
+
+ TextFrame* GetFrame();
+ void AdoptFrame(TextFrame* frame);
+ TextFrame* OrphanFrame();
+
+ virtual void AcceptVisitor(IGraphicElementVisitor& igeVisitor);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ Text(const Text&);
+ Text& operator=(const Text&);
+
+ // Data members
+ MdfString m_sString;
+ MdfString m_sFontName;
+
+ MdfString m_sBold;
+ MdfString m_sItalic;
+ MdfString m_sUnderlined;
+
+ MdfString m_sHeight;
+ MdfString m_sPositionX;
+ MdfString m_sPositionY;
+ MdfString m_sAngle;
+
+ MdfString m_sHAlignment;
+ MdfString m_sVAlignment;
+ MdfString m_sJustification;
+
+ MdfString m_sLineSpacing;
+ MdfString m_sTextColor;
+ MdfString m_sGhostColor;
+
+ TextFrame* m_pFrame;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // TEXT_H_
Property changes on: trunk/MgDev/Common/MdfModel/Text.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/TextFrame.cpp
===================================================================
--- trunk/MgDev/Common/MdfModel/TextFrame.cpp (rev 0)
+++ trunk/MgDev/Common/MdfModel/TextFrame.cpp 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,112 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+//-------------------------------------------------------------------------
+// DESCRIPTION:
+// The TextFrame class implementation.
+//-------------------------------------------------------------------------
+
+#include "TextFrame.h"
+
+using namespace MDFMODEL_NAMESPACE;
+
+//-------------------------------------------------------------------------
+// PURPOSE: Initialize an instance of the TextFrame class.
+//-------------------------------------------------------------------------
+TextFrame::TextFrame()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE: Destructor. Delete all objects that have been created on the
+// heap or have been adopted.
+//-------------------------------------------------------------------------
+TextFrame::~TextFrame()
+{
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& TextFrame::GetLineColor() const
+{
+ return this->m_sLineColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void TextFrame::SetLineColor(const MdfString& color)
+{
+ this->m_sLineColor = color;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& TextFrame::GetFillColor() const
+{
+ return this->m_sFillColor;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void TextFrame::SetFillColor(const MdfString& color)
+{
+ this->m_sFillColor = color;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& TextFrame::GetOffsetX() const
+{
+ return this->m_sOffsetX;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void TextFrame::SetOffsetX(const MdfString& offset)
+{
+ this->m_sOffsetX = offset;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+const MdfString& TextFrame::GetOffsetY() const
+{
+ return this->m_sOffsetY;
+}
+
+//-------------------------------------------------------------------------
+// PURPOSE:
+// PARAMETERS:
+//-------------------------------------------------------------------------
+void TextFrame::SetOffsetY(const MdfString& offset)
+{
+ this->m_sOffsetY = offset;
+}
Property changes on: trunk/MgDev/Common/MdfModel/TextFrame.cpp
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/TextFrame.h
===================================================================
--- trunk/MgDev/Common/MdfModel/TextFrame.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/TextFrame.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,61 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef TEXTFRAME_H_
+#define TEXTFRAME_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API TextFrame : public MdfRootObject
+ {
+ public:
+ // Construction, destruction, initialization
+ TextFrame();
+ virtual ~TextFrame();
+
+ const MdfString& GetLineColor() const;
+ void SetLineColor(const MdfString& lineColor);
+
+ const MdfString& GetFillColor() const;
+ void SetFillColor(const MdfString& fillColor);
+
+ const MdfString& GetOffsetX() const;
+ void SetOffsetX(const MdfString& offsetX);
+
+ const MdfString& GetOffsetY() const;
+ void SetOffsetY(const MdfString& offsetY);
+
+ private:
+ // Hidden copy constructor and assignment operator.
+ TextFrame(const TextFrame&);
+ TextFrame& operator=(const TextFrame&);
+
+ // Data members
+ MdfString m_sLineColor;
+ MdfString m_sFillColor;
+ MdfString m_sOffsetX;
+ MdfString m_sOffsetY;
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // TEXTFRAME_H_
Property changes on: trunk/MgDev/Common/MdfModel/TextFrame.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/MgDev/Common/MdfModel/Usage.h
===================================================================
--- trunk/MgDev/Common/MdfModel/Usage.h (rev 0)
+++ trunk/MgDev/Common/MdfModel/Usage.h 2007-03-06 01:18:33 UTC (rev 1152)
@@ -0,0 +1,56 @@
+//
+// Copyright (C) 2007 by Autodesk, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of version 2.1 of the GNU Lesser
+// General Public License as published by the Free Software Foundation.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifndef USAGE_H_
+#define USAGE_H_
+
+#include "MdfModel.h"
+#include "MdfRootObject.h"
+#include "IUsageVisitor.h"
+
+BEGIN_NAMESPACE_MDFMODEL
+
+ //-------------------------------------------------------------------------
+ // DESCRIPTION:
+ //-------------------------------------------------------------------------
+ class MDFMODEL_API Usage : public MdfRootObject
+ {
+ public:
+ enum AngleControl
+ {
+ FromAngle,
+ FromGeometry
+ };
+
+ // Destruction
+ virtual ~Usage()
+ {
+ }
+
+ // Visitor Pattern method defined in Usage.
+ virtual void AcceptVisitor(IUsageVisitor& iuVisitor) = 0;
+
+ protected:
+ // Construction, initialization
+ // Default constructor is protected to make this class abstract.
+ Usage()
+ {
+ }
+ };
+
+END_NAMESPACE_MDFMODEL
+#endif // USAGE_H_
Property changes on: trunk/MgDev/Common/MdfModel/Usage.h
___________________________________________________________________
Name: svn:eol-style
+ native
More information about the mapguide-commits
mailing list