Module: environment-property-pages Synopsis: Environment property pages Author: Andy Armstrong Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND /// DUIM property pages define sideways method frame-property-types (frame :: , class :: subclass()) => (types :: ) concatenate(next-method(), #(#"hierarchy")) end method frame-property-types; define method duim-object-children-generator (frame :: , object :: ) => (objects :: ) let project = frame.ensure-frame-project; let children = duim-object-children(project, object); //---*** Should we sort them? Probably not by default children end method duim-object-children-generator; define sideways method make-frame-property-page-displayer (frame :: , class :: subclass(), type == #"hierarchy") => (label :: , displayer :: ) let project = frame.ensure-frame-project; let displayer = make(, element-label: "object", information-available?-function: curry(application-tethered?, project), transaction-function: curry(perform-application-transaction, project), children-generator: curry(duim-object-children-generator, frame), label-key: curry(frame-default-object-name, frame)); values("Hierarchy", displayer) end method make-frame-property-page-displayer;