Link to: source code | prefs
directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
This class manages file preferences for the Goldenseal accounting software,
small business management software, construction
project management software and
construction
accounting software.
class CFilePreferences : public DB_DescribedPersistent
{
public:
static CLASS_DESC *sDescriptor;
static DB_PersistentObject *MakeNew() { return TCS_NEW CFilePreferences; }
CFilePreferences();
virtual ~CFilePreferences() {}
virtual NeoID GetDBClassID(void) const { return id_FilePrefs; }
virtual NeoSize GetFileLength(const CNeoFormat *aFormat) const;
virtual void CopyFrom(DB_PersistentObject */*source*/, const UInt8 /*copyFlags*/ = 0) {}
// only one object, so we never need to copy
virtual Boolean GetMemberValue(const TagType aTag, const TagType aType,
void *aValue) const;
virtual Boolean SetMemberValue(const TagType aTag, const TagType aType,
const void *aValue);
virtual void ReadObject(CNeoStream *aStream, const TagType aTag);
virtual void WriteObject(CNeoStream *aStream, const TagType aTag);
virtual void FinishNonViewerCreate();
virtual CTextString GetValidationString() const { return mValidationString; }
virtual Boolean NeedsName() const { return false; } // TCS 2/3/01
virtual Boolean ForbidDuplicateNames() const { return false; } // TCS 7/25/01
virtual void FillDataReport(CTCS_Table *table, CNeoStream *stream) const;
virtual void SetEndSafetyTag() { mEndSafetyTag = tag_endsafetytag; }
protected:
CTextString mValidationString; // TCS 2/25/00 replaced SValidationBlock
UInt32 mBackupFileCount,
mFutureLong;
CDate mBackupTime,
mPostingTime; // currently unused
UInt8 mBackupType,
mPostingType, // currently unused
mExportFileType, // TCS 8/15/00
mCountry, // TCS 1/5/01
mExpansion;
// *** NEVER insert members before this bitfield!!!
UInt8 mExportAsDecimal:1,
mIncludeObjectID:1,
mParseImportText:1, // TCS 4/10/00
mImportModDates:1, // TCS 4/25/00
mImportAFWPaths:1, // TCS 3/28/01
mSaveExportOrder:1, // TCS 5/2/01
mExportWithTags:1,
mBypassFieldOrderDialog:1;
// *** NEVER insert members before this bitfield!!!
UInt8 mWarnMissingObjects:1, // TCS 8/10/01
mCompressFile:1, // TCS 6/18/02
mExportWinReturns:1, // TCS 9/11/02
mFutureEnum1:5;
UInt8 mFutureEnum2,
mFutureEnum3,
mFutureEnum4;
// calculated members
TagType mEndSafetyTag; // TCS 9/8/02
enum
{
cCopyFileLength = 0,
cFileLength = cCopyFileLength +
2*sizeof(UInt32) +
2*sizeof(CDate) +
10*sizeof(UInt8) +
sizeof(TagType)
};
}; |