Link to: source code | other
data directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
This class manages account names for the Goldenseal job cost accounting software,
project management software and construction project
estimating software.
class DB_AccountNameArrayOwner : public DB_DescribedPersistent
{
public:
static CLASS_DESC *sDescriptor;
static DB_PersistentObject *MakeNew() { return TCS_NEW DB_AccountNameArrayOwner; }
DB_AccountNameArrayOwner();
virtual ~DB_AccountNameArrayOwner() {}
virtual DBid GetDBClassID(void) const { return id_AccountNameArrayOwner; }
virtual void CopyFrom(DB_PersistentObject */*source*/, const UInt8 /*copyFlags*/) {}
virtual NeoSize GetFileLength(const CNeoFormat *aFormat) const;
virtual Boolean GetMemberValue(const NeoTag aTag, const NeoTag aType,
void *aValue) const;
virtual void ReadObject(CNeoStream *aStream, const TagType aTag);
virtual void WriteObject(CNeoStream *aStream, const TagType aTag);
static void FillMasterNameArray(const DBid colID, TAccountNameArray *nameArray,
const UInt8 sortMethod, const Boolean reverseSort); // TCS 8/2/02
static void FillIconNameArray(const DBid colID, TIconNameArray *iconArray,
const UInt8 sortMethod, const Boolean reverseSort); // TCS 6/24/02
static void FillNameArray(const DBLongClass classID, TAccountNameArray *nameArray,
const UInt8 sortMethod, const Boolean reverseSort,
const SInt32 paneID = 0); // TCS 6/25/02
static void SortIconArray(const PaneIDT colID, TArray<LPane*> &iconArray, const UInt8 sortMethod,
const Boolean reverseSort);
TAccountNameArray GetAccountNameArray() { return mAccountNameArray; }
Boolean GetAccountNameArray(TAccountNameArray *array);
Boolean GetNameArray(TNameIDArray *array, const Boolean forPopup = false);
Boolean GetIDArray(TObjectIDArray &array);
Boolean AddToArray(const DB_PersistentObject *object, const Boolean sortArray = true);
void RemoveFromArray(const DB_PersistentObject *object);
void RemoveObjectByID(const DBid id);
void HandleObjectChanged(const DB_PersistentObject *object,
const Boolean doSort = true);
void HandleStatusChanged(const DB_PersistentObject *object);
SInt32 FindItemByID(const DBid compareID);
// DBid GetIDFromName(const CTextString *text);
SInt32 GetRecordCount(const UInt8 recordRange, TObjectIDArray &foundArray) const;
TObjectIDArray GetRangeIDArray(const UInt8 recordRange, TObjectIDArray &foundArray) const;
TObjectIDArray GetActiveObjectArray(const Boolean includeIncomplete);
TObjectIDArray GetStatusIDArray(const UInt8 status, const Boolean oneStatusOnly = false) const;
SInt32 GetNameArrayCount() const { return mAccountNameArray.GetCount(); } // TCS 10/16/00
DBid FetchObjectWithName(const CTextString &matchName, const DBid skipID = 0); // TCS 7/25/01
void ClearArray(); // TCS 8/13/01
void SortMenuArray(); // TCS 12/20/02
void FillNameArray(TAccountNameArray *nameArray, const UInt8 sortMethod,
const Boolean reverseSort, const SInt32 paneID); // TCS 6/25/02
Boolean FindListMatches(CTCS_Array &selectorArray, TObjectIDArray &matchArray, // TCS 12/18/02
const Boolean matchAny);
Boolean FillListMatches(DB_MemberSelector *selector, TObjectIDArray &matchArray,
const Boolean matchAny, UInt8 &matchCount);
virtual void FillDataReport(CTCS_Table *table, CNeoStream *stream) const;
virtual void SetEndSafetyTag() { mEndSafetyTag = tag_endsafetytag; }
private:
// array member
TAccountNameArray mAccountNameArray;
// calculated members
TagType mEndSafetyTag; // TCS 9/8/02
enum
{
cCopyFileLength = 0,
cFileLength = cCopyFileLength +
sizeof(TagType)
};
}; |