OOFILE  1.9
oofreprn.h
Go to the documentation of this file.
1 #ifndef H_OOFREPREND
2 #define H_OOFREPREND
3 // COPYRIGHT 1997 A.D. Software, All rights reserved
4 
15 class oofRepSpaceBand;
16 class oofRepTextBand;
17 class oofRepGraphBand;
18 class oofRepLayoutBand;
19 class oofRepLineBand;
20 class oofRepViewBand;
21 class oofRepTextBlock;
22 class oofRepFieldBlock;
23 class oofRepPageNoBlock;
24 
30 protected:
32 
33 // data storage
34  oofRepSpaceBand* mOwner;
35 friend class oofRepSpaceBand; // owner and creator class
36 };
37 
38 
44 protected:
46 
47 // data storage
48  oofRepGraphBand* mOwner;
49 friend class oofRepGraphBand; // owner and creator class
50 };
51 
52 
58 protected:
60 
61 void SetCurrentBlockCoords(short inX, short inY, oofRepBlock*);
62 
63 public: // reflective API
64  oofRepLayoutBand* ownerLayout() const;
65  void getCurrentBlockCoords(short& outX, short& outY, oofRepBlock*& outBlock) const;
66 
67 protected:
68 // data storage
70  short mCurrentX, mCurrentY;
72 
73 friend class oofRepLayoutBand; // owner and creator class
74 };
75 
76 
82 protected:
84 
85 // data storage
86  oofRepLineBand* mOwner;
87 friend class oofRepLineBand; // owner and creator class
88 };
89 
90 
96 protected:
98 
99 // data storage
100  oofRepPictBand* mOwner;
101 friend class oofRepPictBand; // owner and creator class
102 };
103 
104 
112 public:
113  virtual void startTableBody(bool /*recalcHeaders*/) {};
114  virtual void endTableBody() {};
115  virtual void startTableWrapper() {};
116  virtual void endTableWrapper() {};
117 
118 
119  virtual void drawColumnHeaders() {};
120 
121  virtual OOF_mixViewExtraRender* finishClone(oofRepRender* newClone) const=0;
122 };
123 
124 
130 protected:
132  mOwner(b),
133  mDrawnColHeadersThisPage(false)
134  {};
135  virtual void finishConstruction ();
136 
137  virtual OOF_mixViewExtraRender* finishClone(oofRepRender* newClone) const;
138 
139  virtual void CalcColWidths();
140 
141 public:
142  oofRepViewBand* viewBand() const;
143 
144 
145 protected:
146 // data storage
149 friend class oofRepViewBand; // owner and creator class
150 };
151 
152 
159 public:
161  virtual oofRepRender* clone(const oofRepDrawable* newOwner) const;
162  virtual void draw();
163 
164 protected:
166 };
167 
168 
174 protected:
176 
177 // data storage
178  oofRepTextBlock* mOwner;
179 friend class oofRepTextBlock; // owner and creator class
180 };
181 
182 
188 protected:
190 
191 // data storage
192  oofRepPictBlock* mOwner;
193 friend class oofRepPictBlock; // owner and creator class
194 };
195 
196 
202 public:
204 
205 // data storage
206  oofRepPageNoBlock* mOwner;
207 friend class oofRepPageNoBlock; // owner and creator class
208 };
209 
210 
211 // -------------------------------------------------------
212 // o o f R e p V i e w B a n d_ R e n d e r
213 // -------------------------------------------------------
214 
215 inline oofRepViewBand*
217 {
218  return mOwner;
219 }
220 
221 
222 // -------------------------------------------------------
223 // o o f R e p L a y o u t B a n d_ R e n d e r
224 // -------------------------------------------------------
225 
226 inline oofRepLayoutBand*
228 {
229  return mOwner;
230 }
231 
232 
233 inline void
234 oofRepLayoutBand_Render::getCurrentBlockCoords(short& outX, short& outY, oofRepBlock*& outBlock) const
235 {
236  outX = mCurrentX;
237  outY = mCurrentY;
238  outBlock = mCurrentBlock;
239 }
240 
241 
242 
243 inline void
245 {
246  mCurrentX = inX;
247  mCurrentY = inY;
248  mCurrentBlock = inBlock;
249 }
250 
251 
252 
253 #endif
254 
255 
oofRepGraphBand_Render(oofRepGraphBand *b)
Definition: oofreprn.h:45
Empty top band in a report used if composing all in headers.
Definition: oofrep.h:1371
Abstract base for anything drawn on report.
Definition: oofrep.h:860
Abstract base for rendering an oofRepGraphBand.
Definition: oofreprn.h:43
Abstract base for rendering an oofRepPictBand.
Definition: oofreprn.h:95
oofRepEmptyRootBand * mOwner
Definition: oofreprn.h:165
virtual void endTableWrapper()
Definition: oofreprn.h:116
virtual void draw()
Definition: oofrep.h:821
virtual void endTableBody()
Definition: oofreprn.h:114
oofRepEmptyRootBand_AnyRender(oofRepEmptyRootBand *b)
Definition: oofreprn.h:160
oofRepLayoutBand * mOwner
Definition: oofreprn.h:69
bool mDrawnColHeadersThisPage
Definition: oofreprn.h:148
virtual void startTableWrapper()
Definition: oofreprn.h:115
oofRepLayoutBand_Render(oofRepLayoutBand *b)
Definition: oofreprn.h:59
virtual oofRepRender * clone(const oofRepDrawable *newOwner) const =0
Most commonly used top band in a report.
Definition: oofrep.h:1283
Abstract base for rendering an oofRepPageNoBlock within a oofRepLayoutBand.
Definition: oofreprn.h:201
Base rendering class.
Definition: oofrep.h:816
oofRepPictBlock_Render(oofRepPictBlock *b)
Definition: oofreprn.h:189
Renders an empty band just allowing attached headers etc.
Definition: oofreprn.h:158
Abstract base for rendering an oofRepLineBand.
Definition: oofreprn.h:81
void SetCurrentBlockCoords(short inX, short inY, oofRepBlock *)
Definition: oofreprn.h:244
oofRepBlock * mCurrentBlock
Definition: oofreprn.h:71
Abstract base for rendering an oofRepLayoutBand.
Definition: oofreprn.h:57
virtual void finishConstruction()
Definition: oofrep.h:820
virtual void startTableBody(bool)
Definition: oofreprn.h:113
Add extra virtual methods used by oofRep::DrawViewBand beyond normal band drawing.
Definition: oofreprn.h:111
oofRepTextBlock_Render(oofRepTextBlock *b)
Definition: oofreprn.h:175
oofRepPictBand_Render(oofRepPictBand *b)
Definition: oofreprn.h:97
Abstract base for rendering an oofRepViewBand.
Definition: oofreprn.h:129
oofRepPageNoBlock_Render(oofRepPageNoBlock *b)
Definition: oofreprn.h:203
Specify a fixed height band containing an oofGraph with additional height & width.
Definition: oofrep.h:1080
virtual OOF_mixViewExtraRender * finishClone(oofRepRender *newClone) const =0
virtual void drawColumnHeaders()
Definition: oofreprn.h:119
oofRepViewBand * viewBand() const
Definition: oofreprn.h:216
Specify a fixed-height band that contains a series of oofRepBlock's.
Definition: oofrep.h:1182
Abstract base for a fixed-size block drawn by an oofRepLayoutBand.
Definition: oofrep.h:1408
void getCurrentBlockCoords(short &outX, short &outY, oofRepBlock *&outBlock) const
Definition: oofreprn.h:234
Specify a block to draw field contents with some bracketing text in an oofRepLayoutBand.
Definition: oofrep.h:1550
oofRepSpaceBand_Render(oofRepSpaceBand *b)
Definition: oofreprn.h:31
Abstract base for rendering an oofRepPictBlock within a oofRepLayoutBand.
Definition: oofreprn.h:187
Abstract base for rendering an oofRepTextBlock within a oofRepLayoutBand.
Definition: oofreprn.h:173
Abstract base for rendering an oofRepSpaceBand.
Definition: oofreprn.h:29
Specify a block to draw mono-styled text in an oofRepLayoutBand.
Definition: oofrep.h:1445
oofRepViewBand_Render(oofRepViewBand *b)
Definition: oofreprn.h:131
oofRepLayoutBand * ownerLayout() const
Definition: oofreprn.h:227
Specify a fixed height band to draw an oofPict.
Definition: oofrep.h:1649
oofRepLineBand_Render(oofRepLineBand *b)
Definition: oofreprn.h:83
Specify a fixed height band to draw a horizontal line black or grey in given thickness.
Definition: oofrep.h:1143
oofRepViewBand * mOwner
Definition: oofreprn.h:147
Specify a block to draw an oofPict in an oofRepLayoutBand.
Definition: oofrep.h:1516
Specify a block to draw current page number with some bracketing text in an oofRepLayoutBand.
Definition: oofrep.h:1576
#define OOFREP_EXPORT
Prefix for report writer classes to enable optional DLL linking.
Definition: oof0.h:189
Specify a band which provides a vertical gap on the page.
Definition: oofrep.h:1050