Object <- AbstractPurgeablePackageProxy |
|
|
AddPurgeablePackage BelongsToPackage DestroyKeepContents GoTo GoToVia RepresentsSameContents |
|
CanGoTo IsValid PurgeablePackage TinyImage |
| Field | Type | |
|---|---|---|
| AbstractPurgeablePackageProxy: | purgeablePackage: | PackageCluster |
| containerDevice: | ContainerDevice | |
| purgeHandler: | CanShowPurgingSuggestions |
read ":Applications:PurgeableItemsProxy.cdef"; read ":Underpinnings:HasIterator.cdef"; Define Class AbstractPurgeablePackageProxy; inherits from Object, PurgeableItemsProxy; inherits interface from HasGoTo; abstract; field purgeablePackage: PackageCluster, getter, weak; // used by corresponding attribute field containerDevice: ContainerDevice, weak; // remember which container device to destroy in field purgeHandler: CanShowPurgingSuggestions, weak; // owner of purge list (so we can omit objects that appear separately) attribute PurgeablePackage: PackageCluster, readOnly; // container (card, window, or scene) that holds a set of viewables class operation AddPurgeablePackage(package: PackageCluster; purgeHandler: CanShowPurgingSuggestions; containerDevice: ContainerDevice); // create a new proxy for <package> and puts it into <purgeHandler> overrides DestroyKeepContents; // destroy me, but do not destroy contents of container overrides TinyImage; // icon for OutOfMemoryWindow (no class to inherit this from) overrides CanGoTo, GoTo, GoToVia; // go to the object, honk if it does not implement HasGoTo overrides IsValid; // return false if the object is now gone overrides BelongsToPackage; // returns the package it represents overrides RepresentsSameContents; end class;