(FILECREATED "23-Jun-87 17:33:01" {QV}<NOTECARDS>1.3K>NEXT>PMIPATCH047.;2 4404 changes to: (FNS NC.MakeGraphCard NC.GraphChangeLabelFn NC.BrowserAddLabel) (VARS PMIPATCH047COMS) previous date: "23-Jun-87 15:19:26" {QV}<NOTECARDS>1.3K>NEXT>PMIPATCH047.;1) (* Copyright (c) 1987 by Xerox Corporation. All rights reserved.) (PRETTYCOMPRINT PMIPATCH047COMS) (RPAQQ PMIPATCH047COMS ((* * pmi 6/23/87: Fixes bug reported by Cathy where graph (browser) cards aren't marked as dirty when labels are changed (added)) (DECLARE: FIRST (P (NC.LoadFileFromDirectories (QUOTE NCGRAPHCARD)) (NC.LoadFileFromDirectories (QUOTE NCBROWSERCARD)))) (* * Change to NCGRAPHCARD) (FNS NC.MakeGraphCard) (* * New to NCGRAPHCARD) (FNS NC.GraphChangeLabelFn) (* * Change to NCBROWSERCARD) (FNS NC.BrowserAddLabel))) (* * pmi 6/23/87: Fixes bug reported by Cathy where graph (browser) cards aren't marked as dirty when labels are changed (added)) (DECLARE: FIRST (NC.LoadFileFromDirectories (QUOTE NCGRAPHCARD)) (NC.LoadFileFromDirectories (QUOTE NCBROWSERCARD)) ) (* * Change to NCGRAPHCARD) (DEFINEQ (NC.MakeGraphCard (LAMBDA (Card Title NoDisplayFlg) (* pmi: "23-Jun-87 17:32") (* * Creates a StructEdit card. Alot like a graph card except that it allows editing of underlying NC structure, and doesn't allow an "insertlink" operation in title bar menu.) (* * fgh 11/14/85 Updated to handle Card object.) (* * rht 5/5/86: Replaced call to NC.SetupTitleBarMenu with Install calls.) (* * fgh 6/30/86 Added NC.GRAPHERCOPYBUTTONEVENTFN to SHOWGRAPH call) (* * rht 9/19/86: Mod to above fix. Now calls NC.MakeNewCardWindow a new fn that creates window and hangs Card off windowprop.) (* * pmi 6/23/87: Added the GRAPH.CHANGELABELFN NC.GraphChangeLabelFn to the Graph being created, which will then mark the substance dirty when a label is changed.) (LET (Window Graph CardType) (SETQ Graph (create GRAPH GRAPH.ADDNODEFN ←(FUNCTION NC.GraphAddNodeFn) GRAPH.DELETENODEFN ←(FUNCTION NC.GraphDeleteNodeFn) GRAPH.ADDLINKFN ←(FUNCTION NC.GraphAddLinkFn) GRAPH.DELETELINKFN ←(FUNCTION NC.GraphDeleteLinkFn) GRAPH.MOVENODEFN ←(FUNCTION NC.GraphMoveNodeFn) GRAPH.FONTCHANGEFN ←(FUNCTION NC.GraphFontChangeFn) GRAPH.CHANGELABELFN ←(FUNCTION NC.GraphChangeLabelFn))) (NC.SetSubstance Card Graph) (COND ((NOT NoDisplayFlg) (SETQ Window (NC.MakeNewCardWindow Card (OR Title "Untitled"))) (SETQ CardType (NC.RetrieveType Card)) (SHOWGRAPH Graph Window (FUNCTION NC.GraphCardLeftButtonFn) (FUNCTION NC.GraphCardMiddleButtonFn) T T (FUNCTION NC.GRAPHERCOPYBUTTONEVENTFN)) (WINDOWADDPROP Window (QUOTE SHRINKFN) (FUNCTION NC.GraphCardShrinkFn)) (NC.InstallTitleBarButtonEventFn Window (FUNCTION NC.TitleBarButtonEventFn)) (NC.InstallTitleBarLeftMenu Window CardType) (NC.InstallTitleBarMiddleMenu Window CardType))) (OR Window Card)))) ) (* * New to NCGRAPHCARD) (DEFINEQ (NC.GraphChangeLabelFn (LAMBDA (Graph Window Node) (* pmi: "23-Jun-87 17:32") (* * pmi 6/23/87: Created to mark the card as dirty and prompt for the node label - needed to make sure substance is marked dirty when a label is changed.) (LET ((GraphID (NC.CoerceToCard Window))) (NC.MarkCardDirty GraphID) (PROMPTINWINDOW "Node label? ")))) ) (* * Change to NCBROWSERCARD) (DEFINEQ (NC.BrowserAddLabel (LAMBDA (Graph Window) (* pmi: "23-Jun-87 17:32") (* * This builds a label node in the default grapher style except that we force non-boxed nodes.) (* * pmi 6/23/87: Added call to NC.MarkCardDirty to make sure substance is marked dirty when nodes are created.) (NC.MarkCardDirty (NC.CoerceToCard Window)) (DEFAULT.ADDNODEFN Graph Window NIL))) ) (PUTPROPS PMIPATCH047 COPYRIGHT ("Xerox Corporation" 1987)) (DECLARE: DONTCOPY (FILEMAP (NIL (1170 3313 (NC.MakeGraphCard 1180 . 3311)) (3345 3810 (NC.GraphChangeLabelFn 3355 . 3808 )) (3847 4322 (NC.BrowserAddLabel 3857 . 4320))))) STOP