Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

Todo List

Member oofBroadcaster::broadcast (OOFmsgT msg, unsigned long senderDefined=0, const oofReceiver *skipping=0)
use void* for senderDefined so can cope with values >32bits eg oidT in HUGE databases or 64bit pointers.

Member dbAbstractEditHelper::linkPickAdapter (dbField *, dbGUIAdapter *adoptedAdapter, bool becomeReadOnly=false, dbRelRef *pickVia=0)
allow for picking via date entry fields, like dbDateLink2Editor

Member dbAbstractEditHelper::maybeChangeTargetLink (dbFieldLink *)
make field display updates optional

Class dbBLOBstorage
Rewrite using oofSharedBlob which provides sharable storage.

Member dbChar::fieldUsualWrapWidth () const
Make fieldUsualWrapWidth a settable attribute.

Member oofCheckString::oofCheckString (unsigned long, char sepChar=0x20)
estimate size based on size of number & prealloc

Member oofString::find (const char *, unsigned long startFrom=0, bool caseSensitive=false, unsigned long inLen=ULONG_MAX) const
decide if caseSensitive policy should be changed

Member oofString::findLast (const char *, bool caseSensitive=false, unsigned long inLen=ULONG_MAX) const
decide if caseSensitive policy should be changed

Member oofString::format (const char *inStr,...)
possibly throw error instead of assert to guard overrun.

Member oofString::replaceString (const char *replaceStr, const char *newStr, unsigned long startAt=0, bool caseSensitive=false)
add an OOFILE sample to exercise edge conditions where input strings match

add an OOFILE sample to test if original string exactly matches replacement

check if David's increment is needed - startAt = foundAt + strlen(newStr);

Member oofString::replaceStringWholeWord (const char *replaceStr, const char *newStr, unsigned long startAt=0, bool caseSensitive=false)
add an OOFILE sample to exercise edge conditions where input strings match

add an OOFILE sample to test if original string exactly matches replacement

check if David's increment is needed - startAt = foundAt + strlen(newStr);

Member oofString::setChars (const char *, unsigned long)
smarter avoid reallocs if mBody within certain size range that will fit chars - would require keeping alloc length as well as mLen as repeated reallocs here will be in ignorance of true buffer size.

Class OOF_ClickForwarder
see if this is appropriate class to add mouse-over cursor changes.

Member dbConnect::inDeclarativePhase () const
cope if declare 2nd connections before opening either, which is legal.

Member dbConnect::MakeSchemaFileName ()
rewrite

Member dbConnect::readOOFSchema (const oofString &schemaFileName)
make a version that takes oofFileRef

Class dbConnect_FServ
rename to dbConnect_fserv

Class OOF_ctreeBackend
OOFILE mapping of date and time fields is currently to a numeric c-tree field, not Faircom dates.

Member OOF_simpleRecordBackend::recordNumberOfOID (oidT inOID)
abstract the allRecs case so can implement efficiently in c-tree.

Member OOF_simpleRecordBackend::readBool (const dbField *) const
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::readShort (const dbField *) const
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::readLong (const dbField *) const
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::readDouble (const dbField *) const
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::writeBool (bool, const dbField *)
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::writeShort (short, const dbField *)
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::writeLong (long, const dbField *)
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::writeDouble (double, const dbField *)
add assertion testing return address is legally aligned

Member OOF_simpleRecordBackend::selectJustOID (oidT)
validate that inOID is valid existing record

Member OOF_simpleRecordBackend::SortSelectionNow (const dbField *theFld, unsigned long fixedBinaryLength)
reimplement fixedBinary SortSelectionNow without binaryContents()

Member OOF_simpleRecordBackend::SortSelectionInverseNow (const dbField *theFld, unsigned long fixedBinaryLength)
reimplement fixedBinary SortSelectionInverseNow without binaryContents()

Member OOF_simpleRecordBackend::Invariant (const char *optionalComment=0) const
change code checking for some states to work on Intel byte order

Class OOF_ctreeIndexSegList
include recording masking only part of a field, this one assumes each segment is the complete field.

Class OOF_ctreeKeywordTable
make it possible to configure word length.

Member dbTable::recordNumberOfOID (oidT inOID)
decide if should return standard enum value for not found.

Member dbTable::search (const dbQueryClause &query)
bool searchDefaultIndex(const char*);

Member dbTable::selectJustOID (oidT)
pass address of inOID when change broadcast to take void*

Member dbTable::beginTransaction (short tMode=0)
Decide if this is robust as ignores nested requests!

Member dbTable::abortTransaction (short rMode=0)
Investigate if should use transaction nesting count, not just mInTransaction.

Member ctResInfo::ctResInfo (ULONG, ULONG)
Investigate the resType concept and cross-platform safety especially if use 4 character codes - suspect need byteswapper!

Member ctResInfo::ctResInfo (const char *)
probably remove this or put sensible defaults in place.

Class dbDateTime
confirm if affected by CodeWarrior 7EA changing tm in <time.h> to use 1900 base year.

Member OOF_dbaseBackend::openTableInConnection (const dbConnect *, const bool=false)
throw oofE_TableError if !createIfMissing and fail to open

Class oofDE
migrate the Mac PICT-based drawing to use oofDE as some users have found this a useful bottleneck.

Class oofDIB
generalise to handle bitmaps other than 24 or 32 bit (ie: cope with the palette info)

put the individual members back into a single CF_DIB format internally.

add COW functionality so can update an oofDIB without affecting others sharing storage.

Class OOF_Dictionary
lookup by other attributes

Member oofDirectory::visitFiles (oofDirectoryVisitor &, unsigned long remainingVisitDepth=1024, bool firstVisit=true)
fix Windows version for CodeWarrior - missing makepath.

Member oofDirectory::CreateWorkingDirID (const unsigned char *pascalPartialPath=0, bool searchForDirAllVols=false)
check if PBOpenWDSync can handle paths like :::sea:saw:

Member oofDirectory::fileExists (const char *fullPath)
rewrite to use relative path conversion

handle larger paths, maybe using oofFileRef

Member oofDirectory::fillInFSSpec (const char *nameCanBeNull, FSSpec &) const
investigate use of mac api call FSMakeFSSpec

Member DODAInterface::loadDODA (oofString &, oofString &, oofString &)
put an assert or exception on failing to CloseIFile

Member DODAInterface::makeTable ()
cleanup code

Class oofDrawStyleArray
confirm can change append(oofDrawStyle&) to append(const oofDrawStyle&)

Class oofDrawStyleSet
introduce "restart" paradigm for redraws

Member oofErrorReporter::raise (const char *, bool terminateAfterMsg=true)
rewrite to use plain C IO based on OOF_NO_STDLIB

Member oofErrorReporter::raise (std::ostream &, bool terminateAfterMsg=true)
hide based on OOF_NO_STDLIB

Member OOF_ExpandableLongArray::deleteAllCells (bool alwaysDeleteStorage=false)
delete mBits if past threshold

Member OOF_ExpandableLongArray::ExpandToInclude (unsigned long indexToCover)
platform-specific optimal copy for expansion

Class dbFieldPickLink
cope with text entry fields used as pickers, suspect may need to know type of adapter

just copy the entire table into RAM lookup map for speed.

Member dbFieldPickLink::copyFieldToLink ()
cope with null relationships allowed for pickers (ie: popup menus)

cope with join relationships on pickers like setRelatedRecord(dbTable*);

more flexibility in initialising popup menu

Member dbFieldPickLink::copyLinkToField ()
handle picking via edit fields, doing a search

Member dbFieldPickLink::InitLookup ()
cache RAM-based map

Class oofFileRef
replace FSSpec with FSRef for later Carbon builds and Mach-O on Macintosh.

add oofBlob readBinaryFile() const;

add void writeBinaryFile(oofBlob&) const;

Member oofFileRef::readTextFile () const
write tests and see for which errors can safely close before throwing exception.

return oofRefString when we add that class, to save copying buffers

implement Windows version

Member oofFileRef::writeTextFile (oofString &theStr) const
write tests and see for which errors can safely close before throwing exception.

Member oofFileRef::created () const
move common time translation code in lastModified out to utility method.

Class oofGeo
clarify the legal position of our PNG and GIF drawing via GD.

Class oofGeoCircle
find out if we actually use this ever - may be here for completeness

Class oofGeoYAxis
document effect of changing PositionState

Class oofGraphDE
rename or move to platform-agnostic oofrep.h

Member oofGraphWindow::CopyToScrap ()
confirm this works under Carbon, check PutScrapFlavor flag.

Member dbGUI::leaveRecord ()
more sophisticated transaction unlocking

confirm that we need to commitRecord if cancelling

Class dbGUIAdapter
map other binary types without going via string

Class dbGUIAdaptLPopupButton
investigate generalising back to LMenuController but need to cope with buttons that are just plain buttons, like LBevelButton.

Member dbGUIAdaptLPopupButton::setValueList (dbView &)
work out way to handle multiple fields from view, maybe just space them out?

Member dbGUIAdaptLStdPopupMenu::setValueList (dbView &)
implement to support older PowerPlant users

Class OOF_mixOverlayableGraph
allow the dbView incoming to contain more than one sries

Class dbOutlineItemFactory
document in better detail!

Class oofPict
implement ctor loading from resource ID for Windows whem oofDIB able to load from resource.

if have JPEG, use that when drawing to printers if possible (see Platform SDK discussion Graphics & Multimedia Services / Windows GDI / Bitmaps)

reimplement this and possibly report drawing with GDI+ because it looks a lot nicer!

Class oofPlotBits
allow specification of different oofTransformationManager

Class OOF_ramBackend
packing of records in the cache to avoid wasting space used for alignment and padding.

Class OOF_recordCache
copy ctor OOF_recordCache(const OOF_recordCache &rhs)

Member OOF_recordSelection::union_with (const OOF_recordSelection &)
transitions to selectAll state if combined someRecs with oneRec or someRecs

Member OOF_recordSelection::union_with_no_overlap (const OOF_recordSelection &)
investigate if can be faster in case where empty combined with someRecs

transitions to selectAll state if combined someRecs with oneRec or someRecs

Member OOF_recordSelection::appendNewRecord (bool appendIt)
work out if it is safe to always append the fake offsets to selection and implications such as having to increment mNextFakeNewRecOffset, complicating normal newRecord case etc.

Class dbRelationship
factor into mixin, but our OOF_mixRefCount has different semantics expecting at least one ref

Member OOF_RelMN::removeSelection (dbSelection *)
cache deletes so these are LIVE deletes, unlike adds in OOF_RelMN::appendSelection where the related records are kept in the dirty cache

Member dbRelRefBase::relateFromRecord (bool broadcastChange=true)
explore using virtual overrides of relateFromRecord for user-defined relationships

Member dbRelRefBase::breakRelLink ()
if save type of rhs is requireExplicitAndBuffer then need to cache some kind of undo comand in case need to cancel delete.

reassess need to clear join key fields - maybe that is needed in some cases to retain referential integrity

Member dbRelRef::nullRelationship () const
extend to handle join relationships, which implies finding records with no join key as well as those where the join key has no match.

Member dbRelRefBase::propagateRelatedDeletes (bool prop=true)
see if we can add back the commented out test below safely

propagate deletes for N:1 with pointer relationships.

Member dbRelRef::setRelatedRecord (oidT)
at least have an assert that it's valid

Member dbRelRef::setRelatedRecordMatching (const dbQueryClause &)
something simpler - this seems very complicated!

Class OOF_repBufferSettingVisitor
determine if this abstraction is needed - it appears unused

Member oofRepStreamEnv::canDraw ()
check why there's only a Mac file dialog here - do we use under Win?

add exception for NavGetDefaultDialogOptions failing.

Class oofRepCustomViewDrawer
factor into render classes so can intelligently output to other environments

Class oofRepData
confirm why it is disabled in oofRep.draw

Class oofRepEnvironment
add general comment method rather than the specific stuff in oofRepPictBlock_RTFRender::draw for example.

Class oofRepGraphBand_MacPrintRender
confirm still needed - oofRepGraphBand_MacRender::draw seems to check printing.

Member oofRepGraphBand_RTFRender::draw ()
recode picture streaming like oofRepPictBand_RTFRender::draw

Member oofRepLayoutBand_RTFRender::GenerateTabList ()
generate centred tabs

Class oofRepLineBand_RTFRender
consider using Word draw commands as option.

Class oofRepMulti
Allow nesting oofRepMulti within oofRepMulti - currently it's flat

Member oofRepPictBand_HTMLRender::draw ()
generate images and output actual file names.

Member oofRepPictBlock_HTMLRender::draw ()
generate images and output actual file names.

Member oofRepRTFEnv::encodeRTFString (const oofString &)
combine redundant encoding here and encodeToRTFStream. You can tell this class was written by a junior programmer!

Member oofRepRTFEnv::encodeToRTFStream (std::ostream &os, oofPict *, int widthPixels, int heightPixels)
decide if will allow user to specify range of metafile types as well.

Member oofRepRTFEnv::startEnvironment ()
write out font table of all fonts used in all report objects.

write out multiple styles for styles used in all report objects.

Member oofRepTabStop::writeTabDefinitionsInRTF (std::ostream &)
be able to write centred flavour more predictably - assumes centred tabs in correct order

Class oofRepViewBand
new report architecture which abstracts variable-height bands

allow simpler band types to be top band on report.

Member oofRepViewBand_MacRender::CalcColHeaderWrapping ()
more style choice, don't just set bold

Class oofRepWindow
use Internet Config to read HTML browser and preferred TEXT editor for file types created by DoSaveAs.

Member oofRepWindow::DoOpen ()
check if crash with UConditionalDialogs still occurs

Member oofRepWindow::ReflowReport ()
show picture on blank reports.

Class oofScaleSizer
create from oofGraphSettings so can subclass with different rules.

Class oofSchemaParser
Use neater encoding rather than relying on describe() output.

Class oofSharedBLOB
write oofSharedCOWBLOB providing quick duplication for COW. (Copy-On-Write).

Class oofString
add reference-counting subclass oofRefString

Class oofTextDrawer
decide if needed only on Windows or still want Mac version

Member oofTextSizer::CalculateWrapping (const char *inValue, unsigned long inItemSize, unsigned long inColWidth, bool inTruncWords=true)
Could make it smarter when we have to wrap inside a terminator by looping up until that terminator rather than going to the top of the main loop again.

Class OOF_ULSorterElement
document use and comparison of list element types

Class oofWinFreeImageDE
maybe allow clip or scale specification

implement later, copy bitmap for now

Class oofWinLineDE
allow colour specification.

Class oofWinPictDE
maybe allow clip or scale specification

Member oofWinPictDE::draw () const
make it possible to access environment during draw time so can pass isPrinting in.

Class oofWinRectDE
allow colour specification.

Class oofWordParser
cleaner abstraction of word source iteration

work out why minWordLength returns a reference and add setter if necessary

Member oofWordParser::~oofWordParser ()
fix mGeneratedWords management so deletes without complaint

Member oofWordParser::generateSearchArray ()
make more efficient

Member oofWordParser::more () const
make this more reliable, preparse the next word at next() and start()

Member oofWordParser::next (void)
refactor to isolate the common parsing code in start() & here

Member oofWordParser::start ()
Fix existing bug where re-starts do NOT reset the content of mWord. Note that both start(const char*) and next() have a copy to mWord which further filters the letters!!!!

Class oofXMLdataParser
cope by being able to lookup related data to see if should just point to a common record.

Class oofXMLDBWriter
reconcile our schema with "standards" from Microsoft

Member oofXMLDBWriter::startSchema ()
cope better with data on related tables

File oofplat.h
investigate if other carbon definitions can be used to detect _Macintosh_Carbon

automatically define _Macintosh_OSX if gcc ProjectBuilder build

automatically define _Macintosh_OSX if XCode build

Member OOF_copyFirstFour (unsigned long *dest, const char *input)
make more efficient sometime, copy and mask in one hit on Mac

File oofSmartheap.h
define OOF_MEM_DEBUG_REPORT_LEAKS & OOF_MEM_DEBUG_FORGET_LEAKS for SmartHeap.

Member OOF_MacStyleEnums
confirm this exists for compatability with "QuickTime for Windows".

Member dbRelRefBase::changeRelationshipTo (dbRelRefBase &newRhs)
write sample to see if this works and evaluate if we should be saving rhs.

Group oofExportMacros
check if need to define these for MacOS/X or other Unix dynamic linking

Member OOFMFC_STATIC
define a OOFMFC_CREATE_DLL to follow same convention as others.

Group oofDatabase_fserv
examine duplicated classes to see if can refactor common logic.

Group oofRenderXML
confirm that oofBandShadingAdorner_XMLRender etc. are not needed but these attributes written anyway to XML file.

Generated on Thu Jan 1 22:10:53 2004 for OOFILE by doxygen 1.3.5