Mobile API Reference  MicroStrategy 2019
GraphConsolidationObject.h
Go to the documentation of this file.
1 //
2 // GraphConsolidationObject.h
3 // IPhoneChart
4 //
5 // Created by Shi, Dong on 12/17/12.
6 // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 //
8 
9 #ifndef IPhoneChart_GraphConsolidationObject_h
10 #define IPhoneChart_GraphConsolidationObject_h
11 
12 #include "PDCHeader/PDCvector"
13 #include "../Dataset.h"
14 #include "GraphCollectionObject.h"
15 
16 namespace MsiChart
17 {
23  {
24  public:
26 
27  GraphConsolidationObject(const TripleId& irTripleId, GraphObjectManager* ipManager, EnumCollectionType iCollectionType, Dataset::Ptr iDatasetPtr);
28  virtual ~GraphConsolidationObject();
29 
32  GraphObject::Ptr GetExclusiveObject() const; //Get the only object from the list.
33 
34  virtual void Draw() const;
35  virtual void GenerateImageMap(ImageMap& iorImageMap);
36  virtual void DrawOutLine();
37 
38  virtual void GetBoundingRect(Rect2D& orBoundingRect) const;
39 
45  void AddGraphObject(GraphObject::Ptr iGraphObjectPtr, bool iShareFormat = false);
46 
49  void ClearCollection();
50 
51  virtual void GetClockwisePolygon(std::vector<Point2D>& orPolygon) const;
52 
53  void SetDrawObjects(bool iIsDraw);
54  bool IsDrawObjects() const;
55 
56  protected:
57 
58  Rect2D hGetBoundingRect() const;
62 
63  mutable bool mIsValidRect;
64  mutable bool mIsValidPolygon;
65  mutable Rect2D mRect;
67  Dataset::Ptr mDatasetPtr; //to make this class different from collection object.
68  };
69 
70  inline void GraphConsolidationObject::SetDrawObjects(bool iIsDraw)
71  {
72  mNeedDrawObjects = iIsDraw;
73  }
74 
76  {
77  return mNeedDrawObjects;
78  }
79 }
80 
81 #endif
GraphConsolidationObject(const TripleId &irTripleId, GraphObjectManager *ipManager, EnumCollectionType iCollectionType, Dataset::Ptr iDatasetPtr)
Rect2D mRect
Definition: GraphConsolidationObject.h:65
Definition: GraphConsolidationObject.h:22
virtual void GetClockwisePolygon(std::vector< Point2D > &orPolygon) const
Definition: GraphCollectionObject.h:19
void AddGraphObject(GraphObject::Ptr iGraphObjectPtr, bool iShareFormat=false)
bool IsDrawObjects() const
Definition: GraphConsolidationObject.h:75
Definition: Dataset.h:198
Dataset::Ptr mDatasetPtr
Definition: GraphConsolidationObject.h:67
Polygon2D hGetConsolidatePolygon() const
std::vector< Point2D > Polygon2D
Definition: GraphObject.h:25
bool mNeedDrawObjects
Definition: GraphConsolidationObject.h:60
#define Int32
Definition: BasicTypes.h:20
virtual void GenerateImageMap(ImageMap &iorImageMap)
Definition: SmartPtr.h:38
Int32 mPrimaryObjectIndex
Definition: GraphConsolidationObject.h:61
Definition: ABLPlot.h:21
std::vector< AreaRec * > ImageMap
Definition: ImageMap.h:99
GraphObject::Ptr GetExclusiveObject() const
virtual void GetBoundingRect(Rect2D &orBoundingRect) const
EnumCollectionType
Definition: ChartContext.h:64
bool mIsValidRect
Definition: GraphConsolidationObject.h:63
MSynch::SmartPtr< GraphConsolidationObject > Ptr
Definition: GraphConsolidationObject.h:25
bool mIsValidPolygon
Definition: GraphConsolidationObject.h:64
Definition: GraphObjectManager.h:37
Use four Int32 values to represent a 2D rectangle.
Definition: Rect2D.h:25
void SetDrawObjects(bool iIsDraw)
Definition: GraphConsolidationObject.h:70
Polygon2D mConsolidatePolygon
Definition: GraphConsolidationObject.h:66
Definition: Common.h:397
GraphObject::Ptr GetPrimaryObject() const