|
1 | 1 | (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
2 | 2 |
|
3 |
| -(FILECREATED "24-Mar-2025 09:26:13" {WMEDLEY}<library>tedit>TEDIT-BUTTONS.;223 124611 |
| 3 | +(FILECREATED "30-Apr-2025 14:09:18" {WMEDLEY}<library>tedit>TEDIT-BUTTONS.;228 125393 |
4 | 4 |
|
5 | 5 | :EDIT-BY rmk
|
6 | 6 |
|
7 |
| - :CHANGES-TO (FNS MB.FIELD.INSURETYPE MB.BUTTONEVENTINFN) |
| 7 | + :CHANGES-TO (FNS MB.NWAY.ADDITEM MB.NWAY.CREATE MB.NWAY.SETSTATEFN MB.NWAY.SELECT) |
8 | 8 |
|
9 |
| - :PREVIOUS-DATE "14-Mar-2025 15:29:51" {WMEDLEY}<library>TEDIT>TEDIT-BUTTONS.;219) |
| 9 | + :PREVIOUS-DATE "14-Apr-2025 23:50:23" {WMEDLEY}<library>tedit>TEDIT-BUTTONS.;226) |
10 | 10 |
|
11 | 11 |
|
12 | 12 | (PRETTYCOMPRINT TEDIT-BUTTONSCOMS)
|
|
67 | 67 | (DEFINEQ
|
68 | 68 |
|
69 | 69 | (MB.ADD
|
70 |
| - [LAMBDA (MENUDESC MENUTSTREAM WHERE INCREMENTALUPDATES) (* ; "Edited 5-Jan-2025 11:36 by rmk") |
| 70 | + [LAMBDA (MENUDESC MENUTSTREAM WHERE INCREMENTALUPDATES) (* ; "Edited 6-Apr-2025 14:35 by rmk") |
| 71 | + (* ; "Edited 5-Jan-2025 11:36 by rmk") |
71 | 72 | (* ; "Edited 22-Oct-2024 09:16 by rmk")
|
72 | 73 | (* ; "Edited 21-Oct-2024 00:26 by rmk")
|
73 | 74 | (* ; "Edited 18-Oct-2024 13:49 by rmk")
|
|
156 | 157 | (* ;; "Form to be evaluated")
|
157 | 158 |
|
158 | 159 | (add CH# (EVAL TYPE))
|
159 |
| - else (\ILLEGAL.ARG DESC))) finally (\TEDIT.SHOWSEL NIL NIL MENUTSTREAM) |
| 160 | + else (\ILLEGAL.ARG DESC))) finally (\TEDIT.NOSEL MENUTSTREAM) |
160 | 161 | (* ;
|
161 | 162 | "User has to click to get a selection")
|
162 |
| - (SETSEL (TEXTSEL (GETTSTR MENUTSTREAM TEXTOBJ)) |
| 163 | + (SETSEL (TEXTSEL (FTEXTOBJ MENUTSTREAM)) |
163 | 164 | SET NIL)
|
164 | 165 | (RETURN CH#)))])
|
165 | 166 |
|
|
753 | 754 |
|
754 | 755 | (MB.3STATE.BUTTONEVENTINFN
|
755 | 756 | [LAMBDA (OBJ MENUDS SEL RELX RELY MENUWINDOW MENUTSTREAM BUTTON)
|
| 757 | + (* ; "Edited 14-Apr-2025 23:49 by rmk") |
756 | 758 | (* ; "Edited 22-Dec-2024 22:45 by rmk")
|
757 | 759 | (* ; "Edited 7-Dec-2024 13:11 by rmk")
|
758 | 760 | (* ; "Edited 5-Dec-2024 21:53 by rmk")
|
|
794 | 796 | else (* ; "Buttons came up: do it")
|
795 | 797 | (IMAGEOBJPROP OBJ 'STATE NEXTSTATE)
|
796 | 798 | (CL:WHEN (SETQ STATECHANGEFN (IMAGEOBJPROP OBJ 'STATECHANGEFN))
|
797 |
| - (APPLY* STATECHANGEFN OBJ NEXTSTATE (fetch (TEXTWINDOW WTEXTSTREAM) |
798 |
| - of MENUDS)))]) |
| 799 | + (APPLY* STATECHANGEFN OBJ NEXTSTATE (PANETEXTSTREAM MENUDS)))]) |
799 | 800 | (TEDIT.BACKTOMAIN MENUTSTREAM)))
|
800 | 801 | 'DON'T])
|
801 | 802 | )
|
|
816 | 817 | (DEFINEQ
|
817 | 818 |
|
818 | 819 | (MB.NWAY.CREATE
|
819 |
| - [LAMBDA (SPEC MENUTSTREAM CH#) (* ; "Edited 16-Feb-2025 12:08 by rmk") |
| 820 | + [LAMBDA (SPEC MENUTSTREAM CH#) (* ; "Edited 30-Apr-2025 14:06 by rmk") |
| 821 | + (* ; "Edited 16-Feb-2025 12:08 by rmk") |
820 | 822 | (* ; "Edited 9-Jan-2025 11:38 by rmk")
|
821 | 823 | (* ; "Edited 4-Jan-2025 21:39 by rmk")
|
822 | 824 | (* ; "Edited 20-Dec-2024 22:17 by rmk")
|
|
833 | 835 | (* gbn "24-Sep-84 15:31")
|
834 | 836 | (LET ((IDENTIFIER (CADR (ASSOC 'IDENTIFIER SPEC)))
|
835 | 837 | (BUTTONS (CADR (ASSOC 'BUTTONS SPEC)))
|
| 838 | + (SORTBUTTONS (CADR (ASSOC 'SORTBUTTONS SPEC))) |
836 | 839 | [FONT (FONTCREATE (OR (CADR (ASSOC 'FONT SPEC))
|
837 | 840 | '(HELVETICA 8 BOLD]
|
838 | 841 | (STATECHANGEFN (CADR (ASSOC 'STATECHANGEFN SPEC)))
|
|
876 | 879 |
|
877 | 880 | (* ;; "At most, we're as wide as the N widest buttons put together. COPY because we want to preserve the original order")
|
878 | 881 |
|
879 |
| - [IMAGEOBJPROP OBJ 'MAXWIDTH (for SOBJ |
880 |
| - in [SORT (COPY SUBOBJECTS) |
881 |
| - (FUNCTION (LAMBDA (A B) |
882 |
| - (IGEQ (fetch XSIZE |
883 |
| - of (IMAGEOBJPROP A 'BOUNDBOX)) |
884 |
| - (fetch XSIZE |
885 |
| - of (IMAGEOBJPROP B 'BOUNDBOX] |
886 |
| - as I from 1 to MAXITEMS/LINE |
| 882 | + (CL:WHEN SORTBUTTONS |
| 883 | + (IMAGEOBJPROP OBJ 'SORTBUTTONS T) |
| 884 | + [SETQ SUBOBJECTS (SORT SUBOBJECTS (FUNCTION (LAMBDA (A B) |
| 885 | + (IGEQ (fetch XSIZE |
| 886 | + of (IMAGEOBJPROP A 'BOUNDBOX)) |
| 887 | + (fetch XSIZE |
| 888 | + of (IMAGEOBJPROP B 'BOUNDBOX]) |
| 889 | + [IMAGEOBJPROP OBJ 'MAXWIDTH (for SOBJ in SUBOBJECTS as I from 1 to MAXITEMS/LINE |
887 | 890 | sum (fetch XSIZE of (IMAGEOBJPROP SOBJ 'BOUNDBOX))
|
888 | 891 | finally (RETURN (IPLUS $$VAL (ITIMES SPACING (SUB1
|
889 | 892 | MAXITEMS/LINE
|
|
1191 | 1194 | (RETURN (DREVERSE LINES])
|
1192 | 1195 |
|
1193 | 1196 | (MB.NWAY.ADDITEM
|
1194 |
| - [LAMBDA (OBJ NEWBUTTON) (* ; "Edited 9-Jan-2025 11:38 by rmk") |
| 1197 | + [LAMBDA (OBJ NEWBUTTON) (* ; "Edited 30-Apr-2025 14:09 by rmk") |
| 1198 | + (* ; "Edited 9-Jan-2025 11:38 by rmk") |
1195 | 1199 | (* ; "Edited 20-Oct-2024 00:13 by rmk")
|
1196 | 1200 | (* ; "Edited 29-Sep-2024 12:47 by rmk")
|
1197 | 1201 | (* ; "Edited 26-Aug-2024 09:36 by rmk")
|
|
1205 | 1209 | (* ;; "Given an existing n-way choice menu button, add another choice to the list. The items are arranged in alphabetical order by their labels. MAXITEMS/LINE is goofy: it should flow with reshaping of the window.")
|
1206 | 1210 |
|
1207 | 1211 | (CL:WHEN NEWBUTTON
|
1208 |
| - (LET* [(SUBOBJECTS (IMAGEOBJPROP OBJ 'SUBOBJECTS)) |
1209 |
| - [NEWSOBJ (MB.TOGGLE.CREATE `((IDENTIFIER ,NEWBUTTON) |
| 1212 | + (LET* [[NEWSOBJ (MB.TOGGLE.CREATE `((IDENTIFIER ,NEWBUTTON) |
1210 | 1213 | (LABEL ,NEWBUTTON)
|
1211 | 1214 | (FONT ,(IMAGEOBJPROP OBJ 'FONT]
|
| 1215 | + (SUBOBJECTS (APPEND (IMAGEOBJPROP OBJ 'SUBOBJECTS) |
| 1216 | + (CONS NEWSOBJ))) |
1212 | 1217 | (MAXITEMS/LINE (IMAGEOBJPROP OBJ 'MAXITEMS/LINE]
|
1213 |
| - [SETQ SUBOBJECTS (SORT (CONS NEWSOBJ SUBOBJECTS) |
1214 |
| - (FUNCTION (LAMBDA (S1 S2) |
1215 |
| - (ALPHORDER (IMAGEOBJPROP S1 'LABEL) |
1216 |
| - (IMAGEOBJPROP S2 'LABEL] |
| 1218 | + (CL:WHEN (IMAGEOBJPROP OBJ 'SORTBUTTONS) |
| 1219 | + [SETQ SUBOBJECTS (SORT SUBOBJECTS (FUNCTION (LAMBDA (S1 S2) |
| 1220 | + (ALPHORDER (IMAGEOBJPROP S1 |
| 1221 | + 'LABEL) |
| 1222 | + (IMAGEOBJPROP S2 'LABEL]) |
1217 | 1223 | (IMAGEOBJPROP OBJ 'SUBOBJECTS SUBOBJECTS)
|
1218 | 1224 | [IMAGEOBJPROP OBJ 'MINWIDTH (IMAX (IMAGEOBJPROP OBJ 'MINWIDTH)
|
1219 | 1225 | (fetch XSIZE of (IMAGEOBJPROP NEWSOBJ 'BOUNDBOX]
|
|
1379 | 1385 |
|
1380 | 1386 | (MB.TOGGLE.BUTTONEVENTINFN
|
1381 | 1387 | [LAMBDA (OBJ MENUDS MENUSEL RELX RELY MENUWINDOW MENUTSTREAM BUTTON)
|
| 1388 | + (* ; "Edited 14-Apr-2025 23:49 by rmk") |
1382 | 1389 | (* ; "Edited 7-Dec-2024 13:11 by rmk")
|
1383 | 1390 | (* ; "Edited 19-Oct-2024 19:52 by rmk")
|
1384 | 1391 | (* ; "Edited 5-Oct-2024 22:42 by rmk")
|
|
1422 | 1429 | else (* ; "Buttons came up: do it")
|
1423 | 1430 | (SETQ STATECHANGEFN (IMAGEOBJPROP OBJ 'STATECHANGEFN))
|
1424 | 1431 | (if (OR (NULL STATECHANGEFN)
|
1425 |
| - (NEQ 'DON'T (APPLY* STATECHANGEFN OBJ NEXTSTATE |
1426 |
| - (fetch (TEXTWINDOW WTEXTSTREAM) of MENUDS) |
| 1432 | + (NEQ 'DON'T (APPLY* STATECHANGEFN OBJ NEXTSTATE (PANETEXTSTREAM |
| 1433 | + MENUDS) |
1427 | 1434 | MENUSEL)))
|
1428 | 1435 | then (IMAGEOBJPROP OBJ 'STATE NEXTSTATE)
|
1429 | 1436 | (* ;
|
|
1774 | 1781 | ENDPC])
|
1775 | 1782 |
|
1776 | 1783 | (MB.FIELD.SETSTATEFN
|
1777 |
| - [LAMBDA (PREFIXPC NEWVALUE TSTREAM) (* ; "Edited 9-Dec-2024 22:14 by rmk") |
| 1784 | + [LAMBDA (PREFIXPC NEWVALUE TSTREAM) (* ; "Edited 6-Apr-2025 12:23 by rmk") |
| 1785 | + (* ; "Edited 9-Dec-2024 22:14 by rmk") |
1778 | 1786 | (* ; "Edited 4-Dec-2024 20:31 by rmk")
|
1779 | 1787 | (* ; "Edited 20-Oct-2024 17:20 by rmk")
|
1780 | 1788 | (* ; "Edited 29-Sep-2024 12:46 by rmk")
|
|
1818 | 1826 | "FSEL selects the field to the right of PREFIXPC")
|
1819 | 1827 | (\TEDIT.UPDATE.SEL FSEL FIELDSTART FIELDLENGTH 'LEFT)
|
1820 | 1828 | (CL:UNLESS (EQ 0 FIELDLENGTH) (* ; "Clear the old value")
|
1821 |
| - (\TEDIT.DELETE TEXTOBJ FSEL) |
| 1829 | + (\TEDIT.DELETE TSTREAM FSEL) |
1822 | 1830 | (SETQ FIELDLENGTH 0))
|
1823 | 1831 | (SETQ FIELDLENGTH (if (EQ NEWVALUE '**EMPTY**)
|
1824 | 1832 | then 0
|
|
1961 | 1969 | (MB.FIELD.INIT)
|
1962 | 1970 | )
|
1963 | 1971 | (DECLARE%: DONTCOPY
|
1964 |
| - (FILEMAP (NIL (3253 19106 (MB.ADD 3263 . 9692) (MB.DELETE 9694 . 10068) (MB.GET 10070 . 16840) ( |
1965 |
| -MB.GET.MBARG 16842 . 18511) (TEDIT.BACKTOMAIN 18513 . 19104)) (19150 39086 (MB.BUTTONEVENTINFN 19160 |
1966 |
| - . 20728) (MB.DISPLAYFN 20730 . 22789) (MB.SETIMAGE 22791 . 23959) (MB.SIZEFN 23961 . 25509) ( |
1967 |
| -MB.WHENOPERATEDONFN 25511 . 27460) (MB.COPYFN 27462 . 27920) (MB.GETFN 27922 . 28883) (MB.PUTFN 28885 |
1968 |
| - . 29985) (MB.SHOWSELFN 29987 . 31496) (MB.CREATE 31498 . 35521) (MB.CHANGENAME 35523 . 36005) ( |
1969 |
| -MB.INIT 36007 . 37468) (MB.TRACK.UNTIL 37470 . 38165) (MB.DON'T 38167 . 38463) (MB.SPEC.REMAINDER |
1970 |
| -38465 . 39084)) (39248 49238 (MB.3STATE.CREATE 39258 . 40122) (MB.3STATE.DISPLAYFN 40124 . 41110) ( |
1971 |
| -MB.3STATE.SHOWSELFN 41112 . 43423) (MB.3STATE.INIT 43425 . 44836) (MB.3STATE.SETSTATEFN 44838 . 45496) |
1972 |
| - (MB.3STATE.BUTTONEVENTINFN 45498 . 49236)) (49393 80061 (MB.NWAY.CREATE 49403 . 55445) ( |
1973 |
| -MB.NWAY.DISPLAYFN 55447 . 56310) (MB.NWAY.WHENOPERATEDONFN 56312 . 58502) (MB.NWAY.SIZEFN 58504 . |
1974 |
| -62440) (MB.NWAY.SELECT 62442 . 66012) (MB.NWAY.BUTTONEVENTINFN 66014 . 69226) (MB.NWAY.NEWMENUBUTTON |
1975 |
| -69228 . 69940) (MB.NWAY.COPYFN 69942 . 70909) (MB.NWAY.INIT 70911 . 72402) (MB.NWAY.ARRANGEBUTTONS |
1976 |
| -72404 . 74375) (MB.NWAY.ADDITEM 74377 . 78239) (MB.NWAY.FINDSUBOBJ 78241 . 78755) (MB.NWAY.SETSTATEFN |
1977 |
| -78757 . 80059)) (80140 92027 (MB.TOGGLE.CREATE 80150 . 81145) (MB.TOGGLE.DISPLAYFN 81147 . 82630) ( |
1978 |
| -MB.TOGGLE.INIT 82632 . 84431) (MB.SET.TOGGLE 84433 . 85634) (MB.TOGGLE.SETSTATEFN 85636 . 86476) ( |
1979 |
| -MB.TOGGLE.BUTTONEVENTINFN 86478 . 90682) (MB.TOGGLE.WHENOPERATEDONFN 90684 . 92025)) (92108 124532 ( |
1980 |
| -MB.FIELD.CREATE 92118 . 97569) (MB.FIELD.DISPLAYFN 97571 . 98362) (MB.FIELD.IMAGEBOXFN 98364 . 99846) |
1981 |
| -(MB.FIELD.PREFIXCREATE 99848 . 103784) (MB.FIELD.SUFFIXCREATE 103786 . 105446) (MB.FIELD.INIT 105448 |
1982 |
| - . 107215) (MB.FIELD.WHENOPERATEDONFN 107217 . 108488) (MB.FIELD.GETSTATEFN 108490 . 112424) ( |
1983 |
| -MB.FIELD.SETSTATEFN 112426 . 117121) (MB.FIELD.BUTTONEVENTINFN 117123 . 119428) (MB.FIELD.SIZEFN |
1984 |
| -119430 . 119670) (MB.FIELD.INSURETYPE 119672 . 124530))))) |
| 1972 | + (FILEMAP (NIL (3279 19224 (MB.ADD 3289 . 9810) (MB.DELETE 9812 . 10186) (MB.GET 10188 . 16958) ( |
| 1973 | +MB.GET.MBARG 16960 . 18629) (TEDIT.BACKTOMAIN 18631 . 19222)) (19268 39204 (MB.BUTTONEVENTINFN 19278 |
| 1974 | + . 20846) (MB.DISPLAYFN 20848 . 22907) (MB.SETIMAGE 22909 . 24077) (MB.SIZEFN 24079 . 25627) ( |
| 1975 | +MB.WHENOPERATEDONFN 25629 . 27578) (MB.COPYFN 27580 . 28038) (MB.GETFN 28040 . 29001) (MB.PUTFN 29003 |
| 1976 | + . 30103) (MB.SHOWSELFN 30105 . 31614) (MB.CREATE 31616 . 35639) (MB.CHANGENAME 35641 . 36123) ( |
| 1977 | +MB.INIT 36125 . 37586) (MB.TRACK.UNTIL 37588 . 38283) (MB.DON'T 38285 . 38581) (MB.SPEC.REMAINDER |
| 1978 | +38583 . 39202)) (39366 49371 (MB.3STATE.CREATE 39376 . 40240) (MB.3STATE.DISPLAYFN 40242 . 41228) ( |
| 1979 | +MB.3STATE.SHOWSELFN 41230 . 43541) (MB.3STATE.INIT 43543 . 44954) (MB.3STATE.SETSTATEFN 44956 . 45614) |
| 1980 | + (MB.3STATE.BUTTONEVENTINFN 45616 . 49369)) (49526 80622 (MB.NWAY.CREATE 49536 . 55719) ( |
| 1981 | +MB.NWAY.DISPLAYFN 55721 . 56584) (MB.NWAY.WHENOPERATEDONFN 56586 . 58776) (MB.NWAY.SIZEFN 58778 . |
| 1982 | +62714) (MB.NWAY.SELECT 62716 . 66286) (MB.NWAY.BUTTONEVENTINFN 66288 . 69500) (MB.NWAY.NEWMENUBUTTON |
| 1983 | +69502 . 70214) (MB.NWAY.COPYFN 70216 . 71183) (MB.NWAY.INIT 71185 . 72676) (MB.NWAY.ARRANGEBUTTONS |
| 1984 | +72678 . 74649) (MB.NWAY.ADDITEM 74651 . 78800) (MB.NWAY.FINDSUBOBJ 78802 . 79316) (MB.NWAY.SETSTATEFN |
| 1985 | +79318 . 80620)) (80701 92700 (MB.TOGGLE.CREATE 80711 . 81706) (MB.TOGGLE.DISPLAYFN 81708 . 83191) ( |
| 1986 | +MB.TOGGLE.INIT 83193 . 84992) (MB.SET.TOGGLE 84994 . 86195) (MB.TOGGLE.SETSTATEFN 86197 . 87037) ( |
| 1987 | +MB.TOGGLE.BUTTONEVENTINFN 87039 . 91355) (MB.TOGGLE.WHENOPERATEDONFN 91357 . 92698)) (92781 125314 ( |
| 1988 | +MB.FIELD.CREATE 92791 . 98242) (MB.FIELD.DISPLAYFN 98244 . 99035) (MB.FIELD.IMAGEBOXFN 99037 . 100519) |
| 1989 | + (MB.FIELD.PREFIXCREATE 100521 . 104457) (MB.FIELD.SUFFIXCREATE 104459 . 106119) (MB.FIELD.INIT 106121 |
| 1990 | + . 107888) (MB.FIELD.WHENOPERATEDONFN 107890 . 109161) (MB.FIELD.GETSTATEFN 109163 . 113097) ( |
| 1991 | +MB.FIELD.SETSTATEFN 113099 . 117903) (MB.FIELD.BUTTONEVENTINFN 117905 . 120210) (MB.FIELD.SIZEFN |
| 1992 | +120212 . 120452) (MB.FIELD.INSURETYPE 120454 . 125312))))) |
1985 | 1993 | STOP
|
0 commit comments