Link to: source code | other
data directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
This class manages custom layouts the Goldenseal job cost accounting software,
project management software, construction
estimating software
and
construction project
estimating software.
class DB_Layout : public DB_PersistentObject // TCS changed inheritance 6/28/02
{
public:
typedef void (*NonMemberFieldFunc)(SInt32 fieldID,
const CTextString &fieldName,
const CTextString &description,...);
static CLASS_DESC *sDescriptor;
static DB_PersistentObject *MakeNew() { return TCS_NEW DB_Layout; }
DB_Layout();
virtual ~DB_Layout();
virtual DBid GetDBClassID(void) const { return id_Layout; }
virtual NeoSize GetFileLength(const CNeoFormat *aFormat) const;
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 CopyFrom(DB_PersistentObject *source, const UInt8 copyFlags);
virtual void ReadObject(CNeoStream *aStream, const TagType aTag);
virtual void WriteObject(CNeoStream *aStream, const TagType aTag);
static CTextString GetButtonName(DB_ClassDescriptor *desc, SInt32 buttonID);
static CTextString GetLayoutName(const DBid layoutID, const DBid layoutClass = id_Layout,
const SInt32 layoutResType = cLayoutResType);
static TCS_Handle GetLayoutHandle(const SInt32 layoutObjClassID,
const SInt32 layoutID,
const Boolean resourceOnly = false);
static Boolean LayoutExists(const DBid inLayoutID,
const DBid inLayoutClassID = id_Layout,
const DBid inLayoutResourceID = cLayoutResType,
const Boolean lookInDB = true,
const Boolean lookInResource = true);
static Boolean LayoutResourceExists(const DBid inLayoutID,
const DBid inLayoutResourceID = cLayoutResType);
static ResIDT GetLayoutIDForForm(const DBid classID,
const SInt32 formType);
#if TCS_MULTIUSER
static Boolean LayoutExistsOnServer(const DBid inLayoutID, const DBid inLayoutClassID,
const DBid inLayoutResourceID, const Boolean lookInDB,
const Boolean lookInResource);
#endif
virtual void FinishNonViewerCreate();
virtual CTextString GetName() const { return mName; }
virtual CTextString GetMenuName() const { return mName; }
TCS_Handle GetLayoutHandle() const;
void SetLayoutHandle(const TCS_Handle inHandle);
void SetNewHandle();
void SetName(const CTextString inName)
{ // rev TCS 10/10/00
TCS_ASSERTMsg(!IsInDatabase(), TCS_GetErrString(errID_BadDatabaseChange));
mName = inName;
MakeDirty(); // TCS 1/31/01
}
virtual void FillDataReport(CTCS_Table *table, CNeoStream *stream) const;
protected:
// handle member
TCS_Handle mLayoutHandle; // TCS 6/28/02
// string member
CTextString mName;
// if we ever do a version 2, add creation date and last revised date
// calculated members
TagType mLayoutSafetyTag; // TCS 9/17/02
enum
{
cCopyFileLength = 0,
cFileLength = cCopyFileLength + 0
};
}; |