Link to: header | record viewer
directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
Comments
CPackageViewer
This class manages payroll packages for the Goldenseal accounting software,
payroll software and small business
management software.
a viewer for packages (a checklist of specific items) used for payroll and contract writing
SUPERCLASS = DB_RecordViewer
***********
Payroll Software packages:
CBenefitPackageViewer a viewer for benefit packages (including specific benefit items)
CTaxPackageViewer a viewer for tax packages (including specific tax items)
CVacationPackageViewer a viewer for vacation packages (including specific vacation items)
Contract Writing package:
CContractPackageViewer a viewer for contract packages (including contract clauses)
Constructor
/*********************************************************************************
constructor
*********************************************************************************/
CPackageViewer::CPackageViewer(const SPaneInfo &inPaneInfo,
const SViewInfo &inViewInfo)
: DB_RecordViewer(inPaneInfo, inViewInfo)
{
}
Source Code
/*********************************************************************************
FillMemberTableFromObject TCS 11/19/98
fill values into a member table. We override since we fill in the table on
our own instead of having DB_ArrayOwner do it
*********************************************************************************/
void CPackageViewer::FillMemberTableFromObject(DB_PersistentObject */*object*/,
SMemberFieldInfo &/*fieldInfo*/)
{
}
/*********************************************************************************
FinishUpdatingFields split TCS 4/17/00
Finish prep work after updating fields from an object, but before displaying them
*********************************************************************************/
void CPackageViewer::FinishUpdatingFields(const UInt8 creationMethod,
DB_PersistentObject *viewerObject)
{
// the superclass handles basic field updating
THE_SUPERCLASS::FinishUpdatingFields(creationMethod, viewerObject);
FillPackageTable(viewerObject);
}
/*********************************************************************************
FillPackageTable split TCS 7/22/02
Fill values into the table
*********************************************************************************/
void CPackageViewer::FillPackageTable(DB_PersistentObject *viewerObject)
{
if (viewerObject)
{
// set up the current package
CPackage *package = TCS_SAFE_CAST(viewerObject, CPackage);
// set up the table
CMemberTable *table =
TCS_SAFE_CAST(FindPaneByID(GetTableID()), CMemberTable);
// sanity check
TCS_FailNILMsg(package, TCS_GetErrString(errID_BadObject));
TCS_FailNILMsg(table, TCS_GetErrString(errID_BadTable));
TCS_FailNILMsg(gDBFile, TCS_GetErrString(errID_BadFile));
// erase any items currently in the table
table->MakeEmptyTable();
// all prep done. Now let's add the list of tax items
// we now generate from the name array, and alphabetize rev TCS 5/9/02
TNameIDArray nameArray = DB_ListManager::GetNameIDArray(GetListClass(), cSortArray);
TNameIDArrayIterator iterator(nameArray);
SNameIDInfo info;
TableIndexT row;
TableCellT cell;
COL(cell) = CPackage::col_checkmark;
table->SetNumRows(nameArray.GetCount());
while (iterator.Next(info))
{
row = iterator.GetCurrentIndex();
// fill in text name
table->SetCellText(row, CPackage::col_itemname, info.itemName, cDontRedraw);
table->SetCellText(row, CPackage::col_id, info.id, cDontRedraw);
ROW(cell) = row;
table->SetChecked(cell, package->ContainsItem(info.id), cDontRedraw);
}
}
}
#if CAN_USE_MARK
#pragma mark -
#endif
/*********************************************************************************
HandleDBButtonClicked TCS 7/22/02
a button in the layout was clicked.
*********************************************************************************/
void CBenefitPackageViewer::HandleDBButtonClicked(const TagType btnID)
{
switch (btnID)
{
case button_items:
CListEditor::ShowModalListEditor(id_BenefitItem, gDocument);
FillPackageTable(mCurrViewerObject);
break;
default:
THE_SUPERCLASS::HandleDBButtonClicked(btnID);
}
}
/*********************************************************************************
HandleDBButtonClicked TCS 7/22/02
a button in the layout was clicked.
*********************************************************************************/
void CTaxPackageViewer::HandleDBButtonClicked(const TagType btnID)
{
switch (btnID)
{
case button_items:
CListEditor::ShowModalListEditor(id_TaxItem, gDocument);
FillPackageTable(mCurrViewerObject);
break;
default:
THE_SUPERCLASS::HandleDBButtonClicked(btnID);
}
}
/*********************************************************************************
HandleDBButtonClicked TCS 7/22/02
a button in the layout was clicked.
*********************************************************************************/
void CVacationPackageViewer::HandleDBButtonClicked(const TagType btnID)
{
switch (btnID)
{
case button_items:
CListEditor::ShowModalListEditor(id_VacationItem, gDocument);
FillPackageTable(mCurrViewerObject);
break;
default:
THE_SUPERCLASS::HandleDBButtonClicked(btnID);
}
}
/*********************************************************************************
HandleDBButtonClicked TCS 7/22/02
a button in the layout was clicked.
*********************************************************************************/
void CContractPackageViewer::HandleDBButtonClicked(const TagType btnID)
{
switch (btnID)
{
case button_items:
CListEditor::ShowModalListEditor(id_ContractClause, gDocument);
FillPackageTable(mCurrViewerObject);
break;
default:
THE_SUPERCLASS::HandleDBButtonClicked(btnID);
}
}
/*********************************************************************************
HandleDBButtonClicked TCS 7/22/02
a button in the layout was clicked.
*********************************************************************************/
void CLocationPackageViewer::HandleDBButtonClicked(const TagType btnID)
{
switch (btnID)
{
case button_items:
CListEditor::ShowModalListEditor(id_Location, gDocument);
FillPackageTable(mCurrViewerObject);
break;
default:
THE_SUPERCLASS::HandleDBButtonClicked(btnID);
}
}
|