# Source: hk_classes/hk_classes/hk_reportsectionpair.h

Annotated List
Files
Globals
Hierarchy
Index

    // ****************************************************************************
    // copyright (c) 2000-2004 Horst Knorr <hk_classes@knoda.org>
    // This file is part of the hk_classes library.
    // This file may be distributed and/or modified under the terms of the
    // GNU Library Public License version 2 as published by the Free Software
    // Foundation and appearing in the file COPYING included in the
    // packaging of this file.
    // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    // ****************************************************************************
    #ifndef HK_REPORTSECTIONPAIR
    #define HK_REPORTSECTIONPAIR
    #include "hk_class.h"
    #include "hk_string.h"
    #include "hk_presentation.h"
    using namespace std;

    class hk_reportsection;
    class hk_report;
    /**
     *contains a header and a footer section
     *@short contains a header and a footer section
     *@version $Revision: 1.10 $
     *@author Horst Knorr (hk_classes@knoda.org)
     */
    class hk_reportsectionpair :public hk_class
    {
        friend class hk_reportsection;
        friend class hk_report;
        public:
            ~hk_reportsectionpair(void);
    /**
     * returns the headersection or NULL if non is set
     */
            hk_reportsection* headersection(void);
    /**
     *returns the footersection or NULL if non is set
     */
            hk_reportsection* footersection(void);
    /**
     * sets the sections
     *@param header if true a header section will be created else destroyed
     *@param footer if true a footer section will be created else destroyed
     */
            void set_sections(bool header=true,bool footer=true);
    /**
     *brings the section into their initial state to be header or footer section
     */
            void init_sections(void);
    /**
     *the column name which should be set for grouping of the reportsections
     */
            void set_columnname(const hk_string& n);
            void set_ascending_order(bool asc, bool registerchange=true);
            bool ascending_order(void) const;
            hk_string columnname(void) const;
            void reset(void);
    /**
     *calls the reportsections clear_countingfields
     */
            void clear_countingfields(void);
            virtual void  savedata(ostream& s,bool userdefined=false);
            virtual void  loaddata(const hk_string& definition,bool userdefined=false);
            virtual bool        set_presentationdatasource(long n, bool registerchange=true);
            long        presentationdatasource(void);
            void neutralize_definition(bool registerchange);
            void bulk_operation(hk_presentation::enum_bulkoperation bulkoperation);

        protected:
            hk_reportsectionpair(hk_report*);

            void    remove_section(hk_reportsection*);

        private:
            hk_report* p_report;
            hk_reportsection* p_header;
            hk_reportsection* p_footer;
            hk_string p_name;
            long int p_presentationdatasource;
            bool p_ascending;

    };
    #endif

Generated by: horst on horstnotebook on Tue Mar 30 19:06:43 2004, using kdoc 2.0a54.