From 837f4029fed2ebabd9074bc08e1c90413e2a7ab2 Mon Sep 17 00:00:00 2001 From: rmkaplan <69548581+rmkaplan@users.noreply.github.com> Date: Mon, 29 Apr 2024 19:46:25 -0700 Subject: [PATCH] WINDOWOBJ: Add ENCAPSULATEDOBJP function (#1679) * WINDOWOBJ: Add ENCAPSULATEDOBJP function If provided to TEDIT.MAP.OBJECTS, this will return a list of all unknown image objects and their locations * Fix earlier misunderstanding of encapsulated set up --- sources/WINDOWOBJ | 29 ++++++++++++++++++----------- sources/WINDOWOBJ.LCOM | Bin 12709 -> 12894 bytes 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/sources/WINDOWOBJ b/sources/WINDOWOBJ index 6271cf2e..0b231f8e 100644 --- a/sources/WINDOWOBJ +++ b/sources/WINDOWOBJ @@ -1,12 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 5-Dec-2023 21:15:38" {WMEDLEY}WINDOWOBJ.;23 32078 +(FILECREATED "23-Apr-2024 18:08:13" {WMEDLEY}WINDOWOBJ.;26 32448 :EDIT-BY rmk - :CHANGES-TO (FNS READIMAGEOBJ) + :CHANGES-TO (FNS ENCAPSULATEDOBJP) + (VARS WINDOWOBJCOMS) - :PREVIOUS-DATE " 5-Dec-2023 20:44:27" {WMEDLEY}WINDOWOBJ.;22) + :PREVIOUS-DATE " 5-Dec-2023 21:15:38" {WMEDLEY}WINDOWOBJ.;23) (PRETTYCOMPRINT WINDOWOBJCOMS) @@ -23,7 +24,7 @@ (COMS (* ;  "For encapsulating unknown-type IMAGEOBJs.") (FNS ENCAPSULATEDOBJ.BUTTONEVENTINFN ENCAPSULATEDOBJ.PUTFN ENCAPSULATEDOBJ.DISPLAYFN - ENCAPSULATEDOBJ.IMAGEBOXFN ENCAPSULATEDIMAGEFNS) + ENCAPSULATEDOBJ.IMAGEBOXFN ENCAPSULATEDOBJP ENCAPSULATEDIMAGEFNS) (INITVARS ENCAPSULATEDIMAGEFNS) (GLOBALVARS ENCAPSULATEDIMAGEFNS)) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) @@ -549,6 +550,12 @@ Either delete this image object or load its support files." IMAGEOBJ) YDESC _ 0 XKERN _ 0]) +(ENCAPSULATEDOBJP + [LAMBDA (OBJ) (* ; "Edited 23-Apr-2024 18:03 by rmk") + (AND (IMAGEOBJP OBJ) + (EQ (FUNCTION ENCAPSULATEDOBJ.DISPLAYFN) + (fetch (IMAGEFNS DISPLAYFN) of (fetch (IMAGEOBJ IMAGEOBJFNS) of OBJ]) + (ENCAPSULATEDIMAGEFNS [LAMBDA (GETFN) (* rrb " 3-Feb-86 18:31") @@ -588,11 +595,11 @@ Either delete this image object or load its support files." IMAGEOBJ) (ADDTOVAR LAMA IMAGEOBJPROP) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4766 23254 (COPYINSERT 4776 . 6303) (IMAGEBOX 6305 . 6485) (IMAGEFNSCREATE 6487 . 7682) - (IMAGEFNSP 7684 . 7925) (IMAGEOBJCREATE 7927 . 8472) (IMAGEOBJP 8474 . 8715) (IMAGEOBJPROP 8717 . -14609) (\IMAGEUSERPROP 14611 . 15205) (HPRINT.IMAGEOBJ 15207 . 15796) (COPYIMAGEOBJ 15798 . 16541) ( -READIMAGEOBJ 16543 . 21900) (WRITEIMAGEOBJ 21902 . 23252)) (23468 31800 ( -ENCAPSULATEDOBJ.BUTTONEVENTINFN 23478 . 25261) (ENCAPSULATEDOBJ.PUTFN 25263 . 26378) ( -ENCAPSULATEDOBJ.DISPLAYFN 26380 . 28183) (ENCAPSULATEDOBJ.IMAGEBOXFN 28185 . 30361) ( -ENCAPSULATEDIMAGEFNS 30363 . 31798))))) + (FILEMAP (NIL (4826 23314 (COPYINSERT 4836 . 6363) (IMAGEBOX 6365 . 6545) (IMAGEFNSCREATE 6547 . 7742) + (IMAGEFNSP 7744 . 7985) (IMAGEOBJCREATE 7987 . 8532) (IMAGEOBJP 8534 . 8775) (IMAGEOBJPROP 8777 . +14669) (\IMAGEUSERPROP 14671 . 15265) (HPRINT.IMAGEOBJ 15267 . 15856) (COPYIMAGEOBJ 15858 . 16601) ( +READIMAGEOBJ 16603 . 21960) (WRITEIMAGEOBJ 21962 . 23312)) (23528 32170 ( +ENCAPSULATEDOBJ.BUTTONEVENTINFN 23538 . 25321) (ENCAPSULATEDOBJ.PUTFN 25323 . 26438) ( +ENCAPSULATEDOBJ.DISPLAYFN 26440 . 28243) (ENCAPSULATEDOBJ.IMAGEBOXFN 28245 . 30421) (ENCAPSULATEDOBJP +30423 . 30731) (ENCAPSULATEDIMAGEFNS 30733 . 32168))))) STOP diff --git a/sources/WINDOWOBJ.LCOM b/sources/WINDOWOBJ.LCOM index 31d4188faa97b035f777fdaaedf619bff03538e5..af786f33140d9accd086b7482b384f32fef70fa8 100644 GIT binary patch delta 432 zcmZ3Qd@p4}xQLOlu46%wu91O}iGrbpm4Stoq4C6QgL*Sf1ui9INdp5b17j;gBPE5T zqSWO4+=9%U)D(r(ih`nIRVxKoKWE2);7}jO5LXv}C$9j7%sd4pw@@D+1!Oby^z@Vz zQW8sm8nGH~p`^*B;pXY%>MRrF3NlIo#R)L?OF5)@9^moH-Uk5&4O0bAUq^RWkba<>jm#A$-x%a@VpS`JAXi5hPhUrOSAQojh0Ht!CAUx?9|dF+^z`(U6jBmP zfZDJbZD^#V$)(}u>Er4gHwJQsukFb6^xAx%qPb%DjFf%tEpfW5ab%> z=^q-b>jE?Z%>bYeOstH|Csr#k8f|{X7^5eX65qq^9-4MUrTE8 cbuE2<7k|GH*DyyP2Oob&7X_}(qS~J90Aov0NdN!<