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

oofRep Class Reference
[OOFILE Report writer]

#include <oofrep.h>

Inheritance diagram for oofRep:

Inheritance graph
[legend]
Collaboration diagram for oofRep:

Collaboration graph
[legend]
List of all members.

Detailed Description

Top level class for a report.

Reports consist of a tree of bands rooted in a top level oofRepViewBand.

Warning:
not thread safe whilst drawing - draw method sets sCurrentReport.


Public Types

enum  { kBodyViewLevel = 1 }

Public Member Functions

 oofRep (dbTable *inTableForDefaultBody, unsigned long startingPageNumber=1)
 oofRep (dbView *adoptedViewForDefaultBody, unsigned long startingPageNumber=1)
 oofRep (const dbView &inViewForDefaultBody, unsigned long startingPageNumber=1)
 oofRep (oofRepViewBand *adoptedBody=0, unsigned long startingPageNumber=1)
 oofRep (const oofRep &)
virtual ~oofRep ()
virtual bool isMultiReport () const
unsigned short nestedViewLevel () const
oofRepBandListfirstPageHeaders ()
oofRepBandListfirstPageFooters ()
oofRepBandListpageHeaders ()
oofRepBandListpageFooters ()
virtual void draw (oofRepEnvironment &)
void drawFirstPageHeaders ()
void drawFirstPageFooters ()
void drawPageHeaders ()
void drawPageFooters ()
void resetViewLevel ()
void incrementViewLevel ()
void decrementViewLevel ()
void drawPageBreak ()
const oofRepSettingssettings () const
oofRepSettingsgetLocalSettings ()
void changeTextStyle (oofRepTextStyle *)
oofRepEnvironmentenvironment () const
void restoreEnvironment (oofRepEnvironment *)
 Use to restore a saved environment when in a print preview.

unsigned long & currentVerticalPos ()
unsigned long bodyStart ()
unsigned long bodyEnd ()
unsigned long bodyHeight ()
unsigned long bodyWidth ()
unsigned long pageWidth ()
unsigned long pageHeight ()
bool shouldDrawViewColumnHeaders () const
bool reportAllowsEditing () const
oofRepViewBandbody (oofRepViewBand *adoptedBody)
 Set the main multi-page columnar oofRepViewBand from which report hangs.

oofRepViewBanduseEmptyBody ()
 Set the main oofRepViewBand to be an empty band.

oofRepViewBandbody ()
void pageNumber (unsigned long)
unsigned long pageNumber () const
unsigned long startingPageNumber () const
void startingPageNumber (unsigned long)
void becomeCurrent ()
void describe (std::ostream &)
oofAdornerListadorners ()
bool hasAdorners () const

Static Public Member Functions

oofRepSettingsdefaultSettings ()
oofRepcurrentReport ()

Protected Member Functions

void DrawViewBand (oofRepViewBand *)
 Draw a single row of the oofRepViewBand.

void DrawBandList (oofRepBandList &, bool inBody=true)
void ProcessBreakList (oofRepBreakList &inList, bool beforeRecord)
void DrawBreakList (oofRepBreakList &inList)

Protected Attributes

oofRepBandList mFirstPageHeaders
oofRepBandList mFirstPageFooters
oofRepBandList mPageHeaders
oofRepBandList mPageFooters
oofRepViewBandmTopBand
oofRepBandmCurrentBand
oofRepBreakmCurrentBreak
unsigned long mFirstPageHeaderHeight
unsigned long mFirstPageFooterHeight
unsigned long mPageHeaderHeight
unsigned long mPageFooterHeight
unsigned long mPageHeight
unsigned long mHeadersStartAt
unsigned long mFootersStartAt
unsigned long mVerticalPos
unsigned long mBodyStart
unsigned long mBodyWidth
unsigned long mPageWidth
unsigned long mFirstPageBodyStart
unsigned long mFirstPageFootersStartAt
bool mFirstPage
oofRepEnvironmentmDrawingEnv
oofRepSettingsmSettings
unsigned long mPageNumber
bool mFinishedConstruction
oofRepRenderT mLastRenderType
unsigned short mNestedViewLevel
oofRepDatamRepData
unsigned long mStartingPageNumber
unsigned short * mReferences

Static Protected Attributes

oofRepsCurrentReport


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
kBodyViewLevel 


Constructor & Destructor Documentation

oofRep::oofRep dbTable inTableForDefaultBody,
unsigned long  startingPageNumber = 1
 

oofRep::oofRep dbView adoptedViewForDefaultBody,
unsigned long  startingPageNumber = 1
 

oofRep::oofRep const dbView inViewForDefaultBody,
unsigned long  startingPageNumber = 1
 

oofRep::oofRep oofRepViewBand adoptedBody = 0,
unsigned long  startingPageNumber = 1
 

oofRep::oofRep const oofRep  ) 
 

oofRep::~oofRep  )  [virtual]
 


Member Function Documentation

oofAdornerList & OOF_mixAdornable::adorners  )  [inline, inherited]
 

void oofRep::becomeCurrent  ) 
 

oofRepViewBand * oofRep::body  )  [inline]
 

oofRepViewBand * oofRep::body oofRepViewBand adoptedBody  ) 
 

Set the main multi-page columnar oofRepViewBand from which report hangs.

Returns:
same as adoptedBody so you can call with new oofRepViewBand and immediately get pointer back.

unsigned long oofRep::bodyEnd  )  [inline]
 

unsigned long oofRep::bodyHeight  )  [inline]
 

unsigned long oofRep::bodyStart  )  [inline]
 

unsigned long oofRep::bodyWidth  )  [inline]
 

void oofRep::changeTextStyle oofRepTextStyle  ) 
 

oofRep * oofRep::currentReport  )  [inline, static]
 

unsigned long & oofRep::currentVerticalPos  )  [inline]
 

void oofRep::decrementViewLevel  )  [inline]
 

oofRepSettings * oofRep::defaultSettings  )  [static]
 

void oofRep::describe std::ostream &   ) 
 

void oofRep::draw oofRepEnvironment  )  [virtual]
 

Reimplemented in oofRepMulti.

void oofRep::DrawBandList oofRepBandList ,
bool  inBody = true
[protected]
 

void oofRep::DrawBreakList oofRepBreakList inList  )  [protected]
 

void oofRep::drawFirstPageFooters  ) 
 

void oofRep::drawFirstPageHeaders  ) 
 

void oofRep::drawPageBreak  ) 
 

void oofRep::drawPageFooters  ) 
 

void oofRep::drawPageHeaders  ) 
 

void oofRep::DrawViewBand oofRepViewBand inBand  )  [protected]
 

Draw a single row of the oofRepViewBand.

Note:
it may seem a little weird that we draw a view band rather than simply calling it to draw itself but as you will see below, a view band *does* know how to draw itself - it just draws a single row of fields.
The control logic that knows how to process breaks resides up at the report level, as the report contains other bands (eg: page headers) and works out how they interact. The view band knows nothing of these complex interactions.

oofRepEnvironment * oofRep::environment  )  const [inline]
 

oofRepBandList & oofRep::firstPageFooters  )  [inline]
 

oofRepBandList & oofRep::firstPageHeaders  )  [inline]
 

oofRepSettings * oofRep::getLocalSettings  ) 
 

bool OOF_mixAdornable::hasAdorners  )  const [inline, inherited]
 

void oofRep::incrementViewLevel  )  [inline]
 

bool oofRep::isMultiReport  )  const [virtual]
 

Reimplemented in oofRepMulti.

unsigned short oofRep::nestedViewLevel  )  const [inline]
 

oofRepBandList & oofRep::pageFooters  )  [inline]
 

oofRepBandList & oofRep::pageHeaders  )  [inline]
 

unsigned long oofRep::pageHeight  )  [inline]
 

unsigned long oofRep::pageNumber  )  const [inline]
 

void oofRep::pageNumber unsigned  long  )  [inline]
 

unsigned long oofRep::pageWidth  )  [inline]
 

void oofRep::ProcessBreakList oofRepBreakList inList,
bool  beforeRecord
[protected]
 

bool oofRep::reportAllowsEditing  )  const [inline]
 

void oofRep::resetViewLevel  )  [inline]
 

void oofRep::restoreEnvironment oofRepEnvironment inEnv  )  [inline]
 

Use to restore a saved environment when in a print preview.

Needed because may need report to refresh where it will call back to environment (eg: oofWinPictDE::draw) and we have drawn to a new environment such as a printer or oofRepEnvRTF.

const oofRepSettings * oofRep::settings  )  const
 

bool oofRep::shouldDrawViewColumnHeaders  )  const
 

void oofRep::startingPageNumber unsigned  long  )  [inline]
 

unsigned long oofRep::startingPageNumber  )  const [inline]
 

oofRepViewBand * oofRep::useEmptyBody  ) 
 

Set the main oofRepViewBand to be an empty band.

Use this approach when creating a report solely formatted in the page header. This would be a single page report using mainly oofRepLayoutBand.

Returns:
generated empty band.


Member Data Documentation

unsigned long oofRep::mBodyStart [protected]
 

unsigned long oofRep::mBodyWidth [protected]
 

oofRepBand* oofRep::mCurrentBand [protected]
 

oofRepBreak* oofRep::mCurrentBreak [protected]
 

oofRepEnvironment* oofRep::mDrawingEnv [protected]
 

bool oofRep::mFinishedConstruction [protected]
 

bool oofRep::mFirstPage [protected]
 

unsigned long oofRep::mFirstPageBodyStart [protected]
 

unsigned long oofRep::mFirstPageFooterHeight [protected]
 

oofRepBandList oofRep::mFirstPageFooters [protected]
 

unsigned long oofRep::mFirstPageFootersStartAt [protected]
 

unsigned long oofRep::mFirstPageHeaderHeight [protected]
 

oofRepBandList oofRep::mFirstPageHeaders [protected]
 

unsigned long oofRep::mFootersStartAt [protected]
 

unsigned long oofRep::mHeadersStartAt [protected]
 

oofRepRenderT oofRep::mLastRenderType [protected]
 

unsigned short oofRep::mNestedViewLevel [protected]
 

unsigned long oofRep::mPageFooterHeight [protected]
 

oofRepBandList oofRep::mPageFooters [protected]
 

unsigned long oofRep::mPageHeaderHeight [protected]
 

oofRepBandList oofRep::mPageHeaders [protected]
 

unsigned long oofRep::mPageHeight [protected]
 

unsigned long oofRep::mPageNumber [protected]
 

unsigned long oofRep::mPageWidth [protected]
 

unsigned short* oofRep::mReferences [protected]
 

oofRepData* oofRep::mRepData [protected]
 

oofRepSettings* oofRep::mSettings [protected]
 

unsigned long oofRep::mStartingPageNumber [protected]
 

oofRepViewBand* oofRep::mTopBand [protected]
 

unsigned long oofRep::mVerticalPos [protected]
 

oofRep * oofRep::sCurrentReport [static, protected]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 1 21:46:09 2004 for OOFILE by doxygen 1.3.5