ca@93: " ca@182: COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG tm@987: All Rights Reserved ca@182: ca@182: This software is furnished under a license and may be used ca@182: only in accordance with the terms of that license and with the ca@182: inclusion of the above copyright notice. This software may not ca@182: be provided or otherwise made available to, or used by, any ca@182: other person. No title to or ownership of the software is ca@182: hereby transferred. ca@182: " cg@1408: "{ Package: 'stx:libtool2' }" cg@1408: ca@182: ApplicationModel subclass:#UISelectionPanel cg@1142: instanceVariableNames:'gallery userClass userSpecs userLabels majorSelection cg@1142: clipBoardSpec' cg@1044: classVariableNames:'UserClass UserSpecs UserLabels' cg@1044: poolDictionaries:'' cg@1044: category:'Interface-UIPainter' ca@182: ! ca@182: cg@387: Object subclass:#UserDefinedGallery cg@1044: instanceVariableNames:'' cg@1044: classVariableNames:'LabelList SelectorList HolderList NextUniqueNumber' cg@1044: poolDictionaries:'' cg@1044: privateIn:UISelectionPanel ca@207: ! ca@207: ca@182: !UISelectionPanel class methodsFor:'documentation'! ca@182: ca@182: copyright ca@182: " ca@182: COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG tm@987: All Rights Reserved ca@93: ca@93: This software is furnished under a license and may be used ca@93: only in accordance with the terms of that license and with the ca@93: inclusion of the above copyright notice. This software may not ca@93: be provided or otherwise made available to, or used by, any ca@93: other person. No title to or ownership of the software is ca@93: hereby transferred. ca@93: " ca@93: ca@93: ca@93: ! ca@93: ca@93: documentation ca@93: " ca@93: implements a selection panel, keeping widgets which could be placed ca@93: into the UIPainter by drag & drop. ca@93: ca@182: [start with:] tm@987: UISelectionPanel open ca@182: ca@93: [author:] tm@987: Claus Gittinger tm@987: Claus Atzkern ca@93: ca@93: [see also:] tm@987: TabView tm@987: NoteBookView tm@987: UIGalleryView tm@987: UIPainter ca@104: ca@93: " ca@93: ca@93: ! ! ca@93: ca@207: !UISelectionPanel class methodsFor:'initialization'! ca@207: ca@207: initialize cg@387: UserClass := UISelectionPanel::UserDefinedGallery. ca@207: UserSpecs := #listOfSelectors. ca@207: UserLabels := #listOfLabels. cg@387: cg@387: "Modified: / 8.12.1997 / 18:53:06 / cg" ca@207: ! ! ca@207: ca@182: !UISelectionPanel class methodsFor:'accessing'! ca@93: cg@387: userClass cg@387: "return the class which provides the user defined gallery specs." cg@387: cg@387: ^ UserClass cg@387: cg@387: "Created: / 5.12.1997 / 15:12:50 / cg" cg@387: ! cg@387: cg@387: userClass:aClass specSelector:aSpecAccessSelector labelSelector:aLabelListAccessSelector cg@387: "change the class which provides the user defined gallery specs." cg@387: cg@387: UserClass := aClass. cg@387: UserSpecs := aSpecAccessSelector. cg@387: UserLabels := aLabelListAccessSelector. cg@387: cg@387: " cg@387: UISelectionPanel tm@987: userClass:UISelectionPanel::VariableUserDefinedGallery tm@987: specSelector:#listOfSelectors tm@987: labelSelector:#listOfLabels cg@387: " cg@387: cg@387: "Modified: / 5.12.1997 / 13:54:47 / cg" cg@387: "Created: / 5.12.1997 / 13:56:10 / cg" ca@93: ! ! ca@93: penk@1602: !UISelectionPanel class methodsFor:'classAccess'! penk@1602: penk@1602: galleryClass penk@1602: penk@1602: ^ UserDefinedGallery penk@1602: ! ! penk@1602: cg@2562: !UISelectionPanel class methodsFor:'image specs'! cg@2562: cg@2562: sketchImageIcon cg@2566: ^ self sketchImageIcon2 cg@2566: ! cg@2566: cg@2566: sketchImageIcon1 cg@2562: "This resource specification was automatically generated cg@2562: by the ImageEditor of ST/X." cg@2562: cg@2562: "Do not manually edit this!! If it is corrupted, cg@2562: the ImageEditor may not be able to read the specification." cg@2562: cg@2562: " cg@2562: self sketchImageIcon inspect cg@2562: ImageEditor openOnClass:self andSelector:#sketchImageIcon cg@2562: Icon flushCachedIcons cg@2562: " cg@2562: cg@2562: cg@2562: cg@2562: ^Icon cg@2566: constantNamed:'UISelectionPanel class sketchImageIcon1' cg@2562: ifAbsentPut:[(Depth24Image new) width: 62; height: 48; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:' cg@2562: 4M? /??/>C?,M??+=??(MC?''=C?$L??#??????????????????????????????????4N??/>C?,M??+=??''=C?''=C?$MC?#C?+=??(M??''=C?$MC?$MC?$L??#C?,M??+=??(MC?''=C?$MC?$L??$L??#??????????????????????????????????????????7?C?0NC?,NC?+=??(M??''=C?''=C?$MC?$L??#??????????????????????????????????????????4N??0NC?,NC?+=??(M??''=C?''=C?$MC? cg@2562: $L??$L??#??/>C?,M??+=??(M??''=C? cg@2562: ''=C?$MC?$MC?$L??#C?,M??+=?? cg@2562: (MC?''=C?''=C?$MC?$L??$L??$L??#C?,M?? cg@2562: +=??(M??''=C?''=C?$MC?$MC?$MC?$L??$L??#??C? cg@2562: ,M??+=??(M??(MC?''=C?''=C?$MC?$MC?$L??$L??#C?/>C?/>C?/>C? cg@2562: ,M??,M??+=??(M??(MC?''=C?''=C?''=C?$MC?$L??$L??$L??#>04N>07?B/8OB/8O>/8O>/8O>/8O>/8OB/7?B04OB03>>?0N>?/>CO,M?P+=?P''=C_$L? LC0_;?0_;?0_;?0_;?0_;?0_;?0_;?0 cg@2562: \K?0\KC0\KC0[;C0[;C0[:? \KC__;?P#?(L>0+=B/,M>//>B 0NB 3>> 4N>P4N>P4N>P4N> 3>> 0NB /=>/,MB/??C?P8O>P8O> 8O> 8O> 8OB/4N>?0NCO+=?P''?(MB/,M>P0NBO0NBO0NB@0NB@0NB@/>B@/>A?/>A?/>A?/>A?/>A//>A//>A//>A//>A?0NA?0NA?0NA?>@0N=?0N=?3>=?3>=?3>=?3>=?3>=?3>=?3>=?4OB@4OB@4OB@4OB@4OB@4OB@4OB@4OB@7?BO7?BO8O>P cg@2562: 8O> 7?B/3>>0/>B0,M>/,M>O/=>@,M=?,M=?+==/+=A (MA_(MA_(MA_(MA_(MA_(MA_+=A_+== +== +== +== +== +== ,M= ,M= ,M= ,M= P/>A?/>A//>A//>A/0NA/0NA/0N=?0N=?0N=?0N=?0N=?0N=?3>=?3>=?3>=?3>=?3>=?3>=?3>=? cg@2562: 4OB@4OB@4OB@4OB@4OBO7?BO7?BP7?BP0NB@,M=/''<=_$L=P$L=P$L=P''<=P''<=P''<=P''<=P''<=_''=A_''=A_(MA_(MA_(MA_(MA_(MA_(MA_(MA_+=A_+== cg@2562: >O,M=/,M= ,M= ,NA/,NA//>A//>A//>A//>A//>A//>A//>A//>A/0NA/0NA/0N=?0N=? cg@2562: 0N=?0N=?0N=?0N=?3>=?3>=?3>=?3>=?3>=?3>>@4OB@7?BP3>>O,M=?''<=_#A/ cg@2562: />A//>A//>A//>A//>A//>A//>A/0NA/0NA/0N=?0N=?0N=?0N=?0N=?3>=?3>>@3>>O,M=?''<=_ K=@ LA@#@(MA_''=A_(MA_(MA_(MA_(MA_(MA_(MA_(MA_+=A_+== +== +== cg@2562: +== +== +== ,M= ,M= ,M= ,M= ,M= ,NA/,NA//>A//>A//>A//>A//>A//>A//>A//>A/0NA/0N=?0N>@+==/#A//>A//>A?/==?''<=_\K@0\K@0_;@?_;@? cg@2562: _;A/''<= _;@? cg@2562: [;@0\K@0\K@0\K@0\K@0\K@0\K@0\K@0\K@0_;@??0;>?0;>?0?0;>?0;>?0??C?/?0;>?0;>?0?0;>?0;>?0?0;>?0;>?0;>?0 cg@2562: ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? cg@2562: ????????????????????????????????????????????????????????????????????????????????;>?0;>?0;>?0;>?0?0;>?0 cg@2562: ;>?0;>?0;>?0?0;>?0;>?0;>?0;>?0?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0 cg@2562: ;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0 cg@2562: ;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0;>?0 cg@2562: cg@2566: cg@2566: ^Icon cg@2566: constantNamed:'UISelectionPanel class sketchImageIcon2' cg@2566: ifAbsentPut:[(Depth8Image new) width: 96; height: 78; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:' cg@2566: PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@ cg@2566: PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@PDA@ cg@2566: PDA@PDA@PDA@PDA@PC49A9"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X&I"X cg@2566: &I"X&I"X&I"X&I"X&I"XA3%@PC%0I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\'' cg@2566: I2\''I2\''I2\''I2\''I2\''I2\''I2\''HPI@P@\=I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\''I2\'' cg@2566: I2\''I2\''I2\''I2\''I2\''I2\''\GA0\G@?O3/+:>UR4.,%P*/B"V/+J1KX*2M)JRMX(5"#X6MX&IK+D8=OS4=NVM@ cg@2566: P@\=I2\''I6X/K2/B*>UR:2U cg@2566: %Z2M^W%9^W%K%YV,R6I"X&D=OS4=NVM@P@\=I2\''I4>P$IBP$IBP$IBP^W&P$IBP$IBP$IBP$IBP$IBP$IBP$IBP$IBP$IBP$G%9X!!<_X&I"X&H_R:2,+J>U cg@2566: +:>U+EJ,X&I9^W%9^W$_+J2,+D-"#VD=OS4=NVM@P@\=I2\''I4>P$IBP$IBP^W%=G1=9^W%9X''59%IBP$IBP$IBP$IBT^W%9^YRT%IRT^W%9X!!<_X&I"X$-K cg@2566: +J2,+J=,+:1KX&I"X*2UR86M#X4_G:2UG:0_X&D=OS4=NVM@P@\=I2\''I4>P$IQ9^W%9^Z1RT%J,+EIRT*2,X''%9^YRT%G%9^W%9^W%9^W%9^W%9^W%9^VIK cg@2566: G1<_R4.,+J1R+2T%IP*,G1>,B (%B%I"X&H_+IV,X&IKR6D=OS4=NVM@P@\=I2\''I4>T^W%9^W%"G4.,+:=,[J>/[F1,[A==^W5=_W5=_VI"_W5=_W5=_W59 cg@2566: ^W%=_VH_+J2,T*2,+J2U+2T%B"TJ+J1R+:=,%Z1"X&IK+A="X&I"X&D=OS4=NVM@P@\=I2\''I3)9^W5"X&J,R:1R+:>,T*2,%Z>/+:<_G1<__W5=G1<_G6I= cg@2566: _W5=_W5=_W5=X&I"G1=RT*1RT)V/B*>U+2T%IRT%[J>UR6I"X&I"X&I"X&I"X&D=OS4=NVM@P@\=I2\''I3)=X&H_%YUR+EJ/T*2,+J2,T*>/%UJ,+J2,G1<_ cg@2566: G1=)G1<__W5=_W5=_W5"X&I"X!!>/%YV/+9V/+9UR%Z>/[F2/+62/R6I"X&I"X&I"X&I"X&D=OS4=NVM@P@\=I2\''I3)"+EIR+9V/%YV,+D.,+J2U+:>/%Z1R cg@2566: T%IRT*1)G6&,+F$_G75=_W5=_VI"X&H_G:1,+:>/+:=,+:2,R4,_G:2,+:=RR1<_G1<_G1<_G6H_G6D=OS4=NVM@P@\=I2\''I2IR%Z>/+:>UT%J,R:2,+J1R cg@2566: %YVU+:=,+:>/+9URG1>,T%J,ZQ<_G6I"X&I"G1<_G1=K+J1K+J>/+9V,R4.,R4.,+D.,+D-KR4,_G1<_R4-KG6T=OS4=NVM@P@\=I2\''I2J/+:>/+:>U%UJ, cg@2566: +J2,+J2,+EJU+61,+:>/[F1,+5IRT%IRT*2,G1<_G1<_G1<_R4-KR4-KR:2/T*1RR4-KR:2/+5J/B&1,[J=KR4-K+J2,R6T=OS4=NVM@P@\=I2\''I2J/+:>/ cg@2566: +:>U+5J,+J2,+J1RT)V/+:>/[F1,[F1,[J>UT%IR%UJ,+J1)G1<_R4-KR4-KR:2,+JU+J2,+FT=OS4=NVM@P@\=I2\'' cg@2566: I2JU%YVU%UIRT*2,+J2,+EJU%YVU+62/+:>/[@(J+9VU%YURT%IRT%IR+J2,+J2,+J2,+J2,%Z=,B */B"T%IZ>U%V0%B&1,%P(%IRT%IYV,+FT=OS4=NVM@ cg@2566: P@\=I2\''I2JUT)VU%Z2,+J2,+J1R%YVU%YV/+:>/+:>/+:>/%YURT%J,+EJU%YVUT%IR+J2,+J2,+J2,%YVU+9VU+:/%YVU%YV,+J2,+EJU%YVU%YVU+:>UL:2,B */%YVU%YVU%YU,%YVU+0(JB (J+0),+:>/ cg@2566: +60%B$8=OS4=NVM@P@\=I2\''I6VU%YVU%YVU%YVU%YVU%YVU%YVU%YV/+:>/%YVU%Z2,+J2,+IVU%YVU%Z>/+0),%YU,B"T%+9VU%YVU%Z>/%YV/B */+:>/ cg@2566: %Z>/+:>/+0(%IS$=OS4=NVM@P@\=I2\''I7TIV''LVE*2U%YU_IG8I\9VU%YVU%YVU+:>/%YVU%SL3+CNU%YVU%YV/[F2/+0(%IRT%B*>/%YVU%YVU%YVU%YV/ cg@2566: +:>U%YVU%YV/+:>/+60JB$8=OS4=NVM@P@\=I2\''I1V.+''8$Z&*.V"Q*Z''9>%7NU%YVU%YVU%YVU%YVU%YVU%YVU%YVU%Z=,+:>/+0*/+:>/+:>U%YVU%YVU cg@2566: %YVU%YVU%YVU%YVU%Z>/+:>/B"T%IS$=OS4=NVM@P@\=I2\''I1V._'':.+''9>_&)''Z''9>TC!!Y+9VU%YVU%YVU%YVU%YVU%YVU%YVU%YVU+:>/B */+:>/+:>/ cg@2566: %YVU%YVU%Z>/+:>/+:>/+:>/+:>/+:>/[@(JIT8=OS4!!T6M@P@\=I2\''I1V.+*9*+*:.+&)*_''9>_%@8VZ>/%YVU%YVU%YVU%YVU%YVU%YVU%YVU+:/+:>/+:>/+:>/+:>/+:>/+:>/+:>/+:>/+:=,B (%B$8=ORD!!T6M@P@\=I2\''I1U''Z*:.+*:._&)*_''9>_''9PCHZ/M9VU%YVU%YVU%YVU%YVU%YVU%Z>/ cg@2566: M0(%B#\7M3\7M3^/+:>/+:>/+:>/+:>/+:>/+:<7+3\7M0(JB (%IT8!!HRD!!T6M@P@\=I2\''I1U''Y6]*Z*:.+&)*_''8;_''8;BY\M*C\7M3\7+:<7+:>/+3\7 cg@2566: +3^/M3\7M0(JB (7M3\7M3\7M3\7+3\7+3^/M3\7M3\7M3\7M3\JB (JB"T%IT8!!HRD!!T6M@P@\=I2\''I1U''Y6]''Y6)*Z''9*_''9>_''8;BP$I[: 7M3\7M3\7 cg@2566: M3\7M3\7M3\7M3\7M0(JB#\7M3\7M3\7M3\7M3\7M3\7M3\7M3\7M3\JB (JB (JB"T%B$8!!HRD!!T6M@P@\=I2\''I1U''Y6]''Y6)*Z*9*_''9>_#,;BY\I+ &F cg@2566: [7MJ+3\7M3\7M3\7M3\7B#\7B (JB#\7M3\7M3\7M3\7M3\7M3\7M3\7M3\7B (JB (JB (JB (JB$8!!HRD!!T6M@P@\=I2\''I1U''Y6]''Y6]''Z&)*Z&)>_''8; cg@2566: BP$IBP$IBS,I,%>(M3\7B (JB (JB (JB (JB (7M3\7M3\7M3\7M0(7B (JB (JB (JB (JB (JB (JB (JB$8!!HRD!!T6M@P@\=I2\''I;Z%Y6]''Y6]''Y6^+ cg@2566: SH:N#"A>_#,$I@$IBP$IBP$I\3\JB (JB (JB (JB (JB (7M3\7M3\JB (JB (JB (JB (JB (JB (JB (JB (JB"TJB$8!!HRD!!T6M@P@\=I2\''I02^'':]'' cg@2566: H:-L(JB (I:^'')>8.W]>IBR._*8IBZ:.BRR2\ (JB (JB */+:/+J2U+3\7+:>/+0(JB (JB (JB (JB (JB (JB (JB"T%IT8!!HRD!!T6M@P@\=I2\'' cg@2566: I8VG(JF!!''): (JB (JB ''):_'';!!7]7:.+*:.BRR.+ $IBUQZW(_+F%:Y''*:.+)RB (JB (JB (JB (JB (JB (JIRT%IT8!!HRD!!T6M@ cg@2566: P@\=I2\''I8VI!!8^!!(I:^!!8^G(JB (I:!!''9>9.[&N+*:.+*:.+*8$+ %3B (JT''6Q$YFQ$YFQ$W*Q+G*:.+(2(:N#S4_!!0DMCR9.[&KAF>:$YFQ$YFQ.+*#(:N#(:N#(3H:[BT%IRT% cg@2566: IRT%IRT%IRT%IS$!!HRD!!A6M@P@\=I2\''I8VL"X&I!!8*J)ZV%(X^I"X^G!!8^G!!:F"#*F_#+&N#(:N#(:N.X9^.[&9.[&9.[$0A@$IBP&2WK*:L*N#(:N#(:N# cg@2566: (1)!!XRH%IRT%IRT%IRT%IS$!!HRD!!A6M@P@\=I2\''I8VL#H&I"X&I"X&G"(^G"X^I!!8^G!!8]H)ZV%(+"9.[&)#+&9.[%^W#Q^.[&9.X.K"8.9.X.KTE!!\P%"2 cg@2566: BSX\.PR2\ZN#(:N:[BT%IRT%IRT%IS$!!HRDWE11WFD?I2\''I2\''I3$!!HS0&)%>***Y!!XVE%YVE!!S \9NS$9A6M@P@\=\GA0 cg@2566: \E6B (JB (JB (JB,XB@ HB@ (B@ HA-!!F5-[V-+DQDQI"X)D!!L)I"$)I"X)"H"H''R$)JX"]''R$)"AI\#8=\P%<.)%2&)%=_W6E%A&E!!YVE%*''<9NS$9A6M@ cg@2566: P@\=\GA0\E6B (JB &!!(ZHJB HB@ HB@ HA-Z65-[[M+Z;M+DQDQI"X)JR$)JR$)JR$)JR&OJR$RD":OD!!H)K"8.WB:&)*Z*W8>&XU<.W5>*YVV*YVU%*''<9 cg@2566: NS$9A6M@P@\=\G@?O7"B (ITU(ITUEQT[UQT[V5-[UQ-[V5+,;LQDQD&I"X)I"$QDR$)JR$)JQH)JR$RD2$RJQLRJR8R)"8R#28.)%2&)(=_*%>&**Y!!YZY!! cg@2566: YVUNA T9NS$9A6M@P@\=\C&)*Y\)*ZOWB8.YVV&R T9NS$9A6M@P@\=O34=OR5--UQTUEQTUEQ-[V63,;N3,;N3DQDQJQDQDQD&DQDQDQD&I!!DQJQDQJRX)JQD&JR8)I"$) cg@2566: JR$.D!!HRD$6&D!!J&WJX.JU2&K"8SSZZ&W0XR) T9NS$9A6M@P@\=OS4=OR5T[[N3D[N\-[N5-[N3,;N5,;N3,;N3,;N3,1DQDQDQDQD)JR$&DQF3DQDQJRXQ cg@2566: D[LQZ;LQDQH)D!!H.WJY_WB9\WJZ&)*Z&)%1\D!!LRW28RK*(9NS$9A6M@P@\=OS4=OR5TUERSUEQTUF!!TUEQT[V63,;N5[[L)JQDQ,1F3DQDQDR$SDRX)DR$) cg@2566: JRX)JR$)I"%XJR$)D( .D"$RJQHSK"$R)!!H.JPX.D!!H.D"8.K*Z&W7<9NS$9A6M@P@\=OS4=OR63,;M-UEQT[UQTUF5TUF63D[N5UEQT,;N3,;N3,;LQ,1D& cg@2566: DR$)JR$)DRXQDRXQJR$SK!!L)K!!HRD"8SK%2*WB$)K!!LRWJXF)!!I\#:Y_**Z&W7<9NS$9A6M@P@\=OS4=OW!!(ZF!!TZF5TUEQTUF5-[V5-Z65-[V5-[V.D[V.D cg@2566: DV--[V.D!!AE-[QDQJQDQDXPQ!!F.DZ1D)JQD)DR:7D45ZVALSSR5_^B&7K%<.D:Z&)*Z**''<9NS$9A6M@P@\=OS4=OS4=OS4=OS4=OS4=OS4=ORD!!HRD!!TUEQ cg@2566: TS%QTUD9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9NS$9A6M@P@\=OS4=OS4=OS4=OS4=OS4=OS4=OS4= cg@2566: OS4=OS4=OS4=OS4=OS4=HRD!!HRD!!HRD!!HRD!!HRD!!HRD!!HRD!!OC0_??????????????>_??????????????>_??????????????>_??????????????>_??????? cg@2566: ???????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????> cg@2566: _??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????? cg@2566: ???????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????> cg@2566: _??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????? cg@2566: ???????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????> cg@2566: _??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????? cg@2566: ???????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????> cg@2566: _??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????? cg@2566: ???????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????>_??????????????> cg@2566: _??????????????>_??????????????>@@@@@@@@@@@@@@@@') ; yourself); yourself] cg@2562: ! ! cg@2562: cg@2566: !UISelectionPanel class methodsFor:'interface specs'! cg@2566: cg@2566: nameAndSelectorSpec cg@2566: "This resource specification was automatically generated cg@2566: by the UIPainter of ST/X." cg@2566: cg@2566: "Do not manually edit this!! If it is corrupted, cg@2566: the UIPainter may not be able to read the specification." cg@2566: cg@2566: " cg@2566: UIPainter new openOnClass:UISelectionPanel andSelector:#nameAndSelectorSpec cg@2566: UISelectionPanel new openInterface:#nameAndSelectorSpec cg@2566: " cg@2566: cg@2566: cg@2566: cg@2566: ^ cg@2566: #(FullSpec cg@2566: name: nameAndSelectorSpec cg@2566: window: cg@2566: (WindowSpec cg@2566: label: 'Painter' cg@2566: name: 'Painter' cg@2566: min: (Point 10 10) cg@2566: bounds: (Rectangle 14 46 329 262) cg@2566: ) cg@2566: component: cg@2566: (SpecCollection cg@2566: collection: ( cg@2566: (LabelSpec cg@2566: label: 'Class & selectors to access user specs:' cg@2566: name: 'title' cg@2566: layout: (Point 5 10) cg@2566: resizeForLabel: true cg@2566: adjust: left cg@2566: ) cg@2566: (LabelSpec cg@2566: label: 'Class:' cg@2566: name: 'classLabel' cg@2566: layout: (AlignmentOrigin 68 0.11 51 0 1 0.5) cg@2566: resizeForLabel: true cg@2566: adjust: right cg@2566: ) cg@2566: (InputFieldSpec cg@2566: name: 'classField' cg@2566: layout: (LayoutFrame 74 0.11 39 0 -5 1.0 61 0) cg@2566: tabable: true cg@2566: model: className cg@2566: type: string cg@2566: acceptOnPointerLeave: false cg@2566: ) cg@2566: (LabelSpec cg@2566: label: 'Labels:' cg@2566: name: 'labelsLabel' cg@2566: layout: (AlignmentOrigin 68 0.11 74 0 1 0.5) cg@2566: resizeForLabel: true cg@2566: adjust: right cg@2566: ) cg@2566: (InputFieldSpec cg@2566: name: 'labelsField' cg@2566: layout: (LayoutFrame 74 0.11 64 0 -5 1.0 86 0) cg@2566: tabable: true cg@2566: model: labelsKey cg@2566: type: symbolOrNil cg@2566: acceptOnPointerLeave: false cg@2566: ) cg@2566: (LabelSpec cg@2566: label: 'Specifications:' cg@2566: name: 'specsLabel' cg@2566: layout: (AlignmentOrigin 68 0.11 99 0 1 0.5) cg@2566: resizeForLabel: true cg@2566: adjust: right cg@2566: ) cg@2566: (InputFieldSpec cg@2566: name: 'specsField' cg@2566: layout: (LayoutFrame 74 0.11 89 0 -5 1.0 111 0) cg@2566: tabable: true cg@2566: model: specsKey cg@2566: type: symbolOrNil cg@2566: acceptOnPointerLeave: false cg@2566: ) cg@2566: (HorizontalPanelViewSpec cg@2566: name: 'commitPanel' cg@2566: layout: (LayoutFrame 0 0.0 -23 1.0 0 1.0 0 1.0) cg@2566: horizontalLayout: fitSpace cg@2566: verticalLayout: fit cg@2566: horizontalSpace: 3 cg@2566: verticalSpace: 3 cg@2566: reverseOrderIfOKAtLeft: true cg@2566: component: cg@2566: (SpecCollection cg@2566: collection: ( cg@2566: (ActionButtonSpec cg@2566: label: 'cancel' cg@2566: name: 'cancel' cg@2566: tabable: true cg@2566: model: cancel cg@2566: extent: (Point 153 23) cg@2566: ) cg@2566: (ActionButtonSpec cg@2566: label: 'ok' cg@2566: name: 'accept' cg@2566: tabable: true cg@2566: model: accept cg@2566: isDefault: true cg@2566: extent: (Point 153 23) cg@2566: ) cg@2566: ) cg@2566: cg@2566: ) cg@2566: ) cg@2566: (CheckBoxSpec cg@2566: label: 'Update Default Resources' cg@2566: name: 'updateDefaultResources' cg@2566: layout: (Point 5 133) cg@2566: model: updateDefaultResources cg@2566: ) cg@2566: ) cg@2566: cg@2566: ) cg@2566: ) cg@2566: ! cg@2566: cg@2566: windowSpec cg@2566: "This resource specification was automatically generated cg@2566: by the UIPainter of ST/X." cg@2566: cg@2566: "Do not manually edit this!! If it is corrupted, cg@2566: the UIPainter may not be able to read the specification." cg@2566: cg@2566: " cg@2566: UIPainter new openOnClass:UISelectionPanel andSelector:#windowSpec cg@2566: UISelectionPanel new openInterface:#windowSpec cg@2566: UISelectionPanel open cg@2566: " cg@2566: cg@2566: cg@2566: cg@2566: ^ cg@2566: #(FullSpec cg@2566: name: windowSpec cg@2566: window: cg@2566: (WindowSpec cg@2566: label: 'Widget Gallery' cg@2566: name: 'Widget Gallery' cg@2566: min: (Point 100 280) cg@2566: bounds: (Rectangle 14 46 508 348) cg@2566: ) cg@2566: component: cg@2566: (SpecCollection cg@2566: collection: ( cg@2566: (NoteBookViewSpec cg@2566: name: 'NoteBook1' cg@2566: layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0) cg@2566: model: majorChannel cg@2566: menu: majorList cg@2566: direction: right cg@2566: useIndex: true cg@2566: canvas: gallery cg@2566: ) cg@2566: ) cg@2566: cg@2566: ) cg@2566: ) cg@2566: ! ! cg@2566: cg@2566: !UISelectionPanel class methodsFor:'interface specs-standard gallery'! ca@182: cg@2486: specifications cg@2486: cg@2486: ^ #( cg@2486: #( 'Standard' #( cg@2486: #('Buttons' standardButtons) cg@2486: #('Menus' standardMenus) cg@2486: #('Text' standardTexts) cg@2486: #('Lists' standardLists) cg@2486: #('Trees' standardTrees) cg@2486: #('Groups' standardGroups) cg@2486: #('Embed' standardEmbed) cg@2506: #('Geometric' standardMorphs1) cg@2486: #('Misc' standardMisc) cg@2486: ) cg@2486: ) cg@2486: cg@2486: #( 'Clipboard' #( cg@2486: #('Copy & Paste Buffer' clipBoardSpec) cg@2486: ) cg@2486: ) cg@2486: cg@2486: #( 'User Def.' #userDefined ) cg@2486: ) cg@2486: cg@2486: "Modified: / 21.4.1998 / 12:04:22 / cg" cg@2486: ! cg@2486: tz@677: standardButtons tz@753: "This resource specification was automatically generated tz@753: by the UIPainter of ST/X." ca@182: tz@753: "Do not manually edit this!! If it is corrupted, tz@753: the UIPainter may not be able to read the specification." ca@182: ca@182: " tz@677: UIPainter new openOnClass:UISelectionPanel andSelector:#standardButtons tz@677: UISelectionPanel new openInterface:#standardButtons tz@658: " tz@658: tz@658: tz@658: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardButtons sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Buttons' sv@1737: name: 'Buttons' sv@1737: min: (Point 10 10) cg@1743: bounds: (Rectangle 16 52 456 210) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (ActionButtonSpec sv@1737: label: 'Button' sv@1737: name: 'Button' sv@1737: layout: (LayoutFrame 2 0 1 0 127 0 23 0) sv@1737: translateLabel: true sv@1737: ) sv@1737: (ActionButtonSpec sv@1737: label: 'OK' sv@1737: name: 'Button - OK' sv@1737: layout: (LayoutFrame 2 0 33 0 127 0 55 0) sv@1737: translateLabel: true sv@1737: model: doAccept cg@1142: ) sv@1737: (ActionButtonSpec sv@1737: label: 'Cancel' sv@1737: name: 'Button - Cancel' sv@1737: layout: (LayoutFrame 2 0 65 0 127 0 87 0) sv@1737: translateLabel: true sv@1737: model: doCancel cg@1142: ) sv@1737: (ActionButtonSpec sv@1737: label: 'Help' sv@1737: name: 'Button - Help' sv@1737: layout: (LayoutFrame 2 0 97 0 127 0 119 0) sv@1737: translateLabel: true sv@1737: model: help cg@1142: ) sv@1737: (ActionButtonSpec sv@1737: label: 'Close' sv@1737: name: 'Button - Close' sv@1737: layout: (LayoutFrame 2 0 129 0 127 0 151 0) sv@1737: translateLabel: true sv@1737: model: closeRequest cg@1142: ) sv@1737: (ToggleSpec sv@1737: label: 'Toggle' sv@1737: name: 'Toggle' sv@1737: layout: (LayoutFrame 144 0 1 0 280 0 23 0) sv@1737: translateLabel: true sv@1737: isTriggerOnDown: true sv@1737: lampColor: (Color 100.0 100.0 0.0) cg@1142: ) sv@1737: (RadioButtonSpec sv@1737: label: 'Radio Button' sv@1737: name: 'Radio Button' sv@1737: layout: (LayoutFrame 144 0.0 33 0 280 0 55 0) sv@1737: translateLabel: true sv@1737: isTriggerOnDown: true cg@1142: ) sv@1737: (CheckBoxSpec sv@1737: label: 'Check Box' sv@1737: name: 'Check Box' sv@1737: layout: (LayoutFrame 144 0 65 0 280 0 87 0) sv@1737: translateLabel: true cg@1142: ) sv@1737: (CheckToggleSpec sv@1737: name: 'Check Toggle' sv@1737: layout: (LayoutOrigin 144 0 99 0) sv@1737: isTriggerOnDown: true sv@1737: showLamp: false sv@1737: lampColor: (Color 100.0 100.0 0.0) cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Check Toggle' sv@1737: name: 'CheckToggleLabel' sv@1737: layout: (AlignmentOrigin 170 0 98 0 0 0) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (ButtonSpec sv@1737: label: 'Model Button' sv@1737: name: 'Model Button' sv@1737: layout: (LayoutFrame 296 0 1 0 432 0 23 0) sv@1737: translateLabel: true cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Spin Button' sv@1737: name: 'UpDownButtonLabel' sv@1737: layout: (AlignmentOrigin 348 0 35 0 0 0) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (UpDownButtonSpec sv@1737: name: 'UpDown Button' sv@1737: layout: (LayoutFrame 296 0 33 0 341 0 55 0) sv@1737: orientation: horizontal cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Arrow Button' sv@1737: name: 'ArrowButtonsLabel' sv@1737: layout: (AlignmentOrigin 348 0 69 0 0 0) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (ArrowButtonSpec sv@1737: name: 'Arrow Button' sv@1737: layout: (LayoutFrame 296 0 65 0 318 0 87 0) sv@1737: isTriggerOnDown: true sv@1737: direction: right cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) tz@677: ) tz@677: ! tz@677: cg@1168: standardEmbed cg@1168: "This resource specification was automatically generated cg@1168: by the UIPainter of ST/X." cg@1168: cg@1168: "Do not manually edit this!! If it is corrupted, cg@1168: the UIPainter may not be able to read the specification." cg@1168: cg@1168: " cg@1168: UIPainter new openOnClass:UISelectionPanel andSelector:#standardEmbed cg@1168: UISelectionPanel new openInterface:#standardEmbed cg@1168: " cg@1168: cg@1168: cg@1168: cg@1168: ^ sv@1737: #(FullSpec sv@1737: name: standardEmbed sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Misc' sv@1737: name: 'Misc' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 456 269) cg@1168: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (ArbitraryComponentSpec sv@1737: name: 'Arbitrary Component' sv@1737: layout: (LayoutFrame 3 0 3 0 128 0 104 0) sv@1737: hasBorder: false cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'Scrollable' sv@1737: name: 'ScrollableArbitraryLabel1' sv@1737: layout: (AlignmentOrigin 7 0 7 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'Arbitrary-' sv@1737: name: 'ScrollableArbitraryLabel2' sv@1737: layout: (AlignmentOrigin 7 0 23 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1549: ) sv@1737: (LabelSpec sv@1737: label: 'Component' sv@1737: name: 'ScrollableArbitraryLabel3' sv@1737: layout: (AlignmentOrigin 7 0 39 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1168: ) sv@1737: (UISubSpecification sv@1737: name: 'SubSpecification' sv@1737: layout: (LayoutFrame 145 0 3 0 280 0 104 0) cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'SubSpecification' sv@1737: name: 'SubSpecificationLabel' sv@1737: layout: (Point 149 7) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1168: ) sv@1737: (SubCanvasSpec sv@1737: name: 'SubCanvas' sv@1737: layout: (LayoutFrame 297 0 3 0 433 0 104 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'SubCanvas' sv@1737: name: 'SubCanvasLabel' sv@1737: layout: (AlignmentOrigin 324 0 7 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1168: ) sv@1737: (NonScrollableArbitraryComponentSpec sv@1737: name: 'NonSrollable Arbitrary Component' sv@1737: layout: (LayoutFrame 3 0 120 0 128 0 221 0) ca@1434: ) sv@1737: (LabelSpec sv@1737: label: 'NonScrollable' sv@1737: name: 'NonScrollableArbitraryLabel1' sv@1737: layout: (AlignmentOrigin 7 0 124 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false ca@1434: ) sv@1737: (LabelSpec sv@1737: label: 'Arbitrary-' sv@1737: name: 'NonScrollableArbitraryLabel2' sv@1737: layout: (AlignmentOrigin 7 0 140 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1549: ) sv@1737: (LabelSpec sv@1737: label: 'Component' sv@1737: name: 'NonScrollableArbitraryLabel3' sv@1737: layout: (AlignmentOrigin 7 0 156 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false ca@1434: ) cg@1168: ) cg@1168: cg@1168: ) cg@1168: ) cg@1168: ! cg@1168: tz@677: standardGraphs cg@1142: "This resource specification was automatically generated cg@1142: by the UIPainter of ST/X." tz@677: cg@1142: "Do not manually edit this!! If it is corrupted, cg@1142: the UIPainter may not be able to read the specification." tz@677: tz@677: " tz@677: UIPainter new openOnClass:UISelectionPanel andSelector:#standardGraphs tz@677: UISelectionPanel new openInterface:#standardGraphs tz@677: " tz@677: tz@677: tz@677: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardGraphs sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Graphs' sv@1737: name: 'Graphs' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 453 161) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (GraphColumnView2DSpec sv@1737: name: 'GraphColumnView2D' sv@1737: layout: (LayoutFrame 3 0 3 0 208 0 98 0) sv@1737: gridX: 0 sv@1737: gridY: 0 cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'GraphColumnViewView2D' sv@1737: name: 'GraphColumnView2DLabel' sv@1737: layout: (AlignmentOrigin 7 0 7 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (GraphColumnView3DSpec sv@1737: name: 'GraphColumnView3D' sv@1737: layout: (LayoutFrame 228 0 3 0 433 0 98 0) cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'GraphColumnViewView3D' sv@1737: name: 'GraphColumnView3DLabel' sv@1737: layout: (AlignmentOrigin 232 0 7 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) tz@677: ) tz@677: ! tz@677: tz@677: standardGroups cg@1142: "This resource specification was automatically generated cg@1142: by the UIPainter of ST/X." tz@677: cg@1142: "Do not manually edit this!! If it is corrupted, cg@1142: the UIPainter may not be able to read the specification." tz@677: tz@677: " tz@677: UIPainter new openOnClass:UISelectionPanel andSelector:#standardGroups tz@677: UISelectionPanel new openInterface:#standardGroups tz@677: " tz@677: tz@677: tz@677: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardGroups sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Groups' sv@1737: name: 'Groups' sv@1737: min: (Point 10 10) werner@1831: bounds: (Rectangle 0 0 443 222) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (ViewSpec sv@1737: name: 'Box' werner@1831: layout: (LayoutFrame 3 0 3 0 95 0 95 0) werner@1831: ) werner@1831: (TransparentBoxSpec werner@1831: name: 'TBox1' werner@1831: layout: (LayoutFrame 113 0 3 0 204 0 95 0) werner@1831: ) werner@1831: (LabelSpec werner@1831: label: 'TransparentBox' werner@1831: name: 'Label1' werner@1831: layout: (AlignmentOrigin 106 0 5 0 0 0) werner@1831: style: (FontDescription helvetica medium roman 10) werner@1831: resizeForLabel: true werner@1831: adjust: left werner@1831: canUIDrag: false sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'Box' sv@1737: name: 'ViewLabel' sv@1737: layout: (AlignmentOrigin 6 0 5 0 0 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Variable Panels' sv@1737: name: 'VPanelLabel' sv@1737: layout: (LayoutFrame 3 0 104 0 208 0 127 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (VariableHorizontalPanelSpec sv@1737: name: 'Variable Horizontal Panel' sv@1737: layout: (LayoutFrame 3 0 128 0 98 0 218 0) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'A' sv@1737: name: 'label4' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'B' sv@1737: name: 'label5' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: canUIDrag: false cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) sv@1737: handles: (Any 0.5 1.0) cg@1142: ) sv@1737: (VariableVerticalPanelSpec sv@1737: name: 'Variable Vertical Panel' sv@1737: layout: (LayoutFrame 113 0 128 0 208 0 218 0) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'A' sv@1737: name: 'label9' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: canUIDrag: false sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'B' sv@1737: name: 'label10' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: canUIDrag: false cg@1142: ) sv@1737: ) sv@1737: sv@1737: ) sv@1737: handles: (Any 0.5 1.0) sv@1737: ) sv@1737: (FramedBoxSpec sv@1737: label: 'Framed Box' sv@1737: name: 'Framed Box' sv@1737: layout: (LayoutFrame 228 0 3 0 433 0 98 0) sv@1737: labelPosition: topLeft sv@1737: translateLabel: true sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'Panels' sv@1737: name: 'PanelLabel' sv@1737: layout: (LayoutFrame 228 0 104 0 433 0 127 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: adjust: left sv@1737: canUIDrag: false sv@1737: ) sv@1737: (HorizontalPanelViewSpec sv@1737: name: 'Horizontal Panel' sv@1737: layout: (LayoutFrame 228 0 128 0 312 0 218 0) sv@1737: horizontalLayout: center sv@1737: verticalLayout: center sv@1737: horizontalSpace: 3 sv@1737: verticalSpace: 3 sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'A' sv@1737: name: 'label1' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'B' sv@1737: name: 'label2' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'C' sv@1737: name: 'label3' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) cg@1142: ) sv@1737: (VerticalPanelViewSpec sv@1737: name: 'Vertical Panel' sv@1737: layout: (LayoutFrame 320 0 128 0 367 0 218 0) sv@1737: horizontalLayout: center sv@1737: verticalLayout: center sv@1737: horizontalSpace: 3 sv@1737: verticalSpace: 3 sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'A' sv@1737: name: 'label6' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'B' sv@1737: name: 'label7' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'C' sv@1737: name: 'label8' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) cg@1142: ) cg@1142: tm@987: ) cg@1142: ) sv@1737: (PanelViewSpec sv@1737: name: 'Panel' sv@1737: layout: (LayoutFrame 375 0 128 0 433 0 218 0) sv@1737: horizontalLayout: fitSpace sv@1737: verticalLayout: fitSpace sv@1737: horizontalSpace: 3 sv@1737: verticalSpace: 3 sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'A' sv@1737: name: 'label11' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'B' sv@1737: name: 'label12' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false sv@1737: ) sv@1737: (LabelSpec sv@1737: label: 'C' sv@1737: name: 'label13' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'D' sv@1737: name: 'label14' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'E' sv@1737: name: 'label15' werner@1831: style: (FontDescription helvetica medium roman 12) sv@1737: level: 2 sv@1737: extent: (Point 23 23) sv@1737: canUIDrag: false cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) tz@658: ) tz@658: ! tz@658: tz@658: standardLists cg@797: "This resource specification was automatically generated cg@797: by the UIPainter of ST/X." ca@142: cg@797: "Do not manually edit this!! If it is corrupted, cg@797: the UIPainter may not be able to read the specification." ca@142: ca@142: " tz@658: UIPainter new openOnClass:UISelectionPanel andSelector:#standardLists tz@658: UISelectionPanel new openInterface:#standardLists ca@142: " ca@142: ca@142: ca@142: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardLists sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Lists' sv@1737: name: 'Lists' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 455 264) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (SequenceViewSpec sv@1737: name: 'List' sv@1737: layout: (LayoutFrame 3 0 3 0 208 0 101 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true sv@1737: useIndex: false cg@1142: ) sv@1737: (DataSetSpec sv@1737: name: 'Table' sv@1737: layout: (LayoutFrame 228 0 3 0 433 0 101 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true cg@1943: has3Dseparators: false cg@1142: ) sv@1737: (SelectionInListModelViewSpec cg@2332: name: 'SelectionInListModelView' sv@1737: layout: (LayoutFrame 3 0 110 0 208 0 208 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true sv@1737: useIndex: false sv@1737: highlightMode: line cg@1142: ) cg@1142: ) cg@1142: cg@1142: ) ca@182: ) ca@182: ! ca@182: ca@190: standardMenus tz@753: "This resource specification was automatically generated tz@753: by the UIPainter of ST/X." ca@182: tz@753: "Do not manually edit this!! If it is corrupted, tz@753: the UIPainter may not be able to read the specification." ca@182: ca@182: " ca@302: UIPainter new openOnClass:UISelectionPanel andSelector:#standardMenus ca@302: UISelectionPanel new openInterface:#standardMenus ca@182: " ca@182: ca@182: ca@182: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardMenus sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Menus' sv@1737: name: 'Menus' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 491 269) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (MenuPanelSpec sv@1737: name: 'Tool Bar' sv@1737: layout: (LayoutFrame 4 0 134 0 129 0 166 0) sv@1737: textDefault: true cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Tool Bar' sv@1737: name: 'ToolBarLabel' sv@1737: layout: (AlignmentOrigin 4 0 134 0 0 1) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (MenuPanelSpec sv@1737: name: 'Menu Bar' sv@1737: layout: (LayoutFrame 4 0 188 0 129 0 210 0) cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Menu Bar' sv@1737: name: 'MenuBarLabel' sv@1737: layout: (AlignmentOrigin 4 0 187 0 0 1) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (PopUpListSpec sv@1737: label: 'PopUp List' sv@1737: name: 'PopUp List' sv@1737: layout: (LayoutFrame 4 0 3 0 129 0 25 0) sv@1737: tabable: true cg@1142: ) sv@1737: (ComboListSpec sv@1737: name: 'Combo List' sv@1737: layout: (LayoutFrame 4 0 33 0 129 0 53 0) sv@1737: useIndex: false cg@1142: ) sv@1737: (ComboBoxSpec sv@1737: name: 'Combo Box' sv@1737: layout: (LayoutFrame 4 0 61 0 129 0 81 0) sv@1737: acceptOnPointerLeave: false cg@1142: ) sv@1737: (ExtendedComboBoxSpec sv@1737: name: 'Extended Combo Box' sv@1737: layout: (LayoutFrame 4 0 88 0 129 0 108 0) sv@1737: miniScrollerHorizontal: true cg@1142: ) sv@1737: (TabViewSpec sv@1737: name: 'Tab Header' sv@1737: layout: (LayoutFrame 146 0 3 0 281 0 39 0) cg@1142: ) sv@1737: (NoteBookViewSpec sv@1737: name: 'Note Book' sv@1737: layout: (LayoutFrame 146 0 46 0 281 0 138 0) cg@1142: ) sv@1737: (UIGalleryViewSpec sv@1737: name: 'Gallery' sv@1737: layout: (LayoutFrame 298 0 3 0 434 0 138 0) cg@1142: ) sv@1737: (ColorMenuSpec sv@1737: name: 'ColorMenu' sv@1737: layout: (LayoutFrame 143 0 188 0 -46 1.0 210 0) sv@1737: labelsAreColored: true penk@1662: ) sv@1737: (LabelSpec sv@1737: label: 'Color Menu' sv@1737: name: 'Label1' sv@1737: layout: (AlignmentOrigin 142 0 187 0 0 1) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false penk@1662: ) cg@1142: ) cg@1142: cg@1142: ) ca@142: ) ca@142: ! ca@142: tz@658: standardMisc tz@753: "This resource specification was automatically generated tz@753: by the UIPainter of ST/X." ca@93: tz@753: "Do not manually edit this!! If it is corrupted, tz@753: the UIPainter may not be able to read the specification." ca@93: ca@93: " sv@1737: UIPainter new openOnClass:UISelectionPanel andSelector:#standardMisc sv@1737: UISelectionPanel new openInterface:#standardMisc ca@93: " ca@93: ca@93: ca@93: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardMisc sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'NewApplication' sv@1737: name: 'NewApplication' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 453 289) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'StepSlider' sv@1737: name: 'StepSliderLabel' sv@1737: layout: (AlignmentOrigin 87 0 9 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Slider' sv@1737: name: 'SliderLabel' sv@1737: layout: (AlignmentOrigin 87 0 35 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1142: ) sv@1737: (SliderSpec sv@1737: name: 'Slider' sv@1737: layout: (LayoutFrame 88 0 34 0 203 0 52 0) sv@1737: orientation: horizontal cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'ThumbWheel' sv@1737: name: 'ThumbWheelLabel' sv@1737: layout: (AlignmentOrigin 88 0 62 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1168: ) sv@1737: (ThumbWheelSpec sv@1737: name: 'Thumb Wheel' sv@1737: layout: (LayoutFrame 88 0 60 0 203 0 80 0) sv@1737: orientation: horizontal cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'ScrollBar' sv@1737: name: 'ScrollBarLabel' sv@1737: layout: (AlignmentOrigin 87 0 103 0 1 0) sv@1737: initiallyInvisible: true sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1168: ) sv@1737: (LabelSpec sv@1737: label: 'Scroller' sv@1737: name: 'ScrollerLabel' sv@1737: layout: (AlignmentOrigin 87 0 130 0 1 0) sv@1737: initiallyInvisible: true sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: canUIDrag: false cg@1160: ) sv@1737: (ScrollerSpec sv@1737: name: 'Scroller' sv@1737: layout: (LayoutFrame 88 0 127 0 203 0 145 0) sv@1737: initiallyInvisible: true sv@1737: orientation: horizontal cg@1160: ) sv@1737: (SteppingSliderSpec sv@1737: name: 'VStepSlider' sv@1737: layout: (LayoutFrame 226 0 6 0 244 0 106 0) cg@1168: ) sv@1737: (SliderSpec sv@1737: name: 'VSlider' sv@1737: layout: (LayoutFrame 254 0 6 0 272 0 106 0) cg@1142: ) sv@1737: (ThumbWheelSpec sv@1737: name: 'VThumbWheel' sv@1737: layout: (LayoutFrame 280 0 6 0 298 0 106 0) cg@1168: ) sv@1737: (ScrollerSpec sv@1737: name: 'VScroller' sv@1737: layout: (LayoutFrame 345 0 6 0 363 0 106 0) sv@1737: initiallyInvisible: true cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Region' sv@1737: name: 'RegionLabel' sv@1737: layout: (AlignmentOrigin 83 0 177 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (RegionSpec sv@1737: name: 'Region' sv@1737: layout: (LayoutFrame 88 0 171 0 203 0 200 0) sv@1737: lineWidth: 2 sv@1737: regionType: ellipse cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Separator' sv@1737: name: 'SeparatorLabel' sv@1737: layout: (AlignmentOrigin 83 0 207 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (DividerSpec sv@1737: name: 'Separator' sv@1737: layout: (LayoutFrame 88 0 213 0 203 0 217 0) cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Progress Indicator' sv@1737: name: 'ProgressIndicatorsLabel' sv@1737: layout: (AlignmentOrigin 333 0 117 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (ProgressIndicatorSpec sv@1737: name: 'Progress Indicator' sv@1737: layout: (LayoutFrame 338 0 114 0 433 0 132 0) cg@1142: ) sv@1737: (LabelSpec sv@1737: label: 'Round tz@753: Progress Indicator' sv@1737: name: 'RoundProgressIndicatorsLabel' sv@1737: layout: (AlignmentOrigin 333 0 167 0 1 0) sv@1737: style: (FontDescription helvetica medium roman 10) sv@1737: resizeForLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1142: ) sv@1737: (RoundProgressIndicatorSpec sv@1737: name: 'Round Progress Indicator' sv@1737: layout: (LayoutFrame 338 0 136 0 425 0 219 0) sv@1737: level: 0 sv@1737: borderWidth: 1 cg@1142: ) sv@1737: (ScrollBarSpec sv@1737: name: 'ScrollBar' sv@1737: layout: (LayoutFrame 88 0 100 0 203 0 118 0) sv@1737: initiallyInvisible: true sv@1737: orientation: horizontal cg@1175: ) sv@1737: (ScrollBarSpec sv@1737: name: 'VScrollBar' sv@1737: layout: (LayoutFrame 317 0 6 0 335 0 106 0) sv@1737: initiallyInvisible: true cg@1175: ) cg@1142: ) cg@1142: cg@1142: ) ca@93: ) ca@93: ! ca@93: cg@2486: standardMorphs1 cg@2486: "This resource specification was automatically generated cg@2486: by the UIPainter of ST/X." cg@2486: cg@2486: "Do not manually edit this!! If it is corrupted, cg@2486: the UIPainter may not be able to read the specification." cg@2486: cg@2486: " cg@2486: UIPainter new openOnClass:UISelectionPanel andSelector:#standardMorphs1 cg@2486: UISelectionPanel new openInterface:#standardMorphs1 cg@2486: " cg@2486: cg@2486: cg@2486: cg@2486: ^ cg@2486: #(FullSpec cg@2486: name: standardMorphs1 cg@2486: window: cg@2486: (WindowSpec cg@2486: label: 'Morphs' cg@2486: name: 'Morphs' cg@2486: min: (Point 10 10) cg@2532: bounds: (Rectangle 0 0 419 272) cg@2486: ) cg@2486: component: cg@2486: (SpecCollection cg@2486: collection: ( cg@2486: (ArcMorphSpec cg@2496: name: 'Circle' cg@2496: layout: (LayoutFrame 3 0 3 0 63 0 63 0) cg@2518: line: true cg@2506: lineColor: (Color 100.0 0.0 0.0) cg@2496: ) cg@2496: (ArcMorphSpec cg@2517: name: 'FilledCircle' cg@2496: layout: (LayoutFrame 3 0 70 0 63 0 133 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2496: fill: true cg@2496: ) cg@2496: (ArcMorphSpec cg@2517: name: 'FilledCircleL' cg@2517: layout: (LayoutFrame 3 0 143 0 63 0 206 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2518: line: true cg@2506: fill: true cg@2517: lineColor: (Color 100.0 0.0 0.0) cg@2496: ) cg@2517: (RectangleMorphSpec cg@2517: name: 'RectangleMorph1' cg@2517: layout: (LayoutFrame 70 0 3 0 133 0 63 0) cg@2517: foregroundColor: (Color 100.0 100.0 0.0) cg@2518: line: true cg@2517: fill: false cg@2517: lineColor: (Color 100.0 0.0 0.0) cg@2517: ) cg@2517: (RectangleMorphSpec cg@2517: name: 'RectangleMorph2' cg@2517: layout: (LayoutFrame 70 0 72 0 133 0 135 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2506: fill: true cg@2496: ) cg@2517: (RectangleMorphSpec cg@2517: name: 'RectangleMorph3' cg@2517: layout: (LayoutFrame 70 0 139 0 133 0 202 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2518: line: true cg@2496: fill: true cg@2506: lineColor: (Color 100.0 0.0 0.0) cg@2486: ) cg@2486: (ArcMorphSpec cg@2517: name: 'FilledPieL' cg@2496: layout: (LayoutFrame 143 0 143 0 206 0 206 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2518: line: true cg@2506: fill: true cg@2506: lineColor: (Color 100.0 0.0 0.0) cg@2496: startAngle: -45 cg@2496: sweepAngle: 270 cg@2496: pie: true cg@2496: ) cg@2496: (ArcMorphSpec cg@2517: name: 'FilledPie' cg@2517: layout: (LayoutFrame 143 0 70 0 206 0 133 0) cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2496: fill: true cg@2496: startAngle: -45 cg@2496: sweepAngle: 270 cg@2517: pie: true cg@2486: ) cg@2496: (ArcMorphSpec cg@2517: name: 'Pie' cg@2517: layout: (LayoutFrame 143 0 3 0 206 0 63 0) cg@2518: line: true cg@2506: lineColor: (Color 100.0 0.0 0.0) cg@2496: startAngle: -45 cg@2496: sweepAngle: 270 cg@2496: pie: true cg@2496: ) cg@2517: (LineSegmentMorphSpec cg@2562: name: 'LineSegmentMorph1' cg@2562: foregroundColor: (Color 100.0 100.0 0.0) cg@2562: fill: true cg@2562: lineColor: (Color 100.0 0.0 0.0) cg@2562: startPoint: (Point 214 9) cg@2562: endPoint: (Point 254 59) cg@2562: showArrow: true cg@2562: ) cg@2562: (LineSegmentMorphSpec cg@2517: name: 'Line1' cg@2506: foregroundColor: (Color 100.0 100.0 0.0) cg@2506: fill: true cg@2506: lineColor: (Color 100.0 0.0 0.0) cg@2562: startPoint: (Point 214 75) cg@2562: endPoint: (Point 254 125) cg@2506: ) cg@2532: (SketchMorphSpec cg@2532: name: 'SketchMorph1' cg@2566: layout: (LayoutFrame 280 0 10 0 373 0 90 0) cg@2562: image: sketchImageIcon cg@2532: ) cg@2486: ) cg@2486: cg@2486: ) cg@2486: ) cg@2486: ! cg@2486: tz@677: standardTexts cg@795: "This resource specification was automatically generated cg@795: by the UIPainter of ST/X." ca@93: cg@795: "Do not manually edit this!! If it is corrupted, cg@795: the UIPainter may not be able to read the specification." ca@93: ca@93: " tz@677: UIPainter new openOnClass:UISelectionPanel andSelector:#standardTexts tz@677: UISelectionPanel new openInterface:#standardTexts ca@93: " ca@93: ca@93: ca@93: cg@1142: ^ sv@1737: #(FullSpec sv@1737: name: standardTexts sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Texts' sv@1737: name: 'Texts' sv@1737: min: (Point 10 10) cg@2476: bounds: (Rectangle 0 0 464 224) cg@1142: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (TextEditorSpec sv@1737: name: 'Text Editor' sv@1737: layout: (LayoutFrame 3 0 3 0 208 0 98 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true cg@2476: hasKeyboardFocusInitially: false cg@1142: ) sv@1737: (HTMLViewSpec sv@1737: name: 'HTML Browser' sv@1737: layout: (LayoutFrame 228 0 3 0 433 0 98 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true cg@1142: ) sv@1737: (InputFieldSpec sv@1737: name: 'Entry Field' sv@1737: layout: (LayoutFrame 3 0 113 0 208 0 135 0) sv@1737: acceptOnReturn: true sv@1737: acceptOnTab: true sv@2320: acceptOnPointerLeave: true cg@1408: ) sv@1737: (FilenameInputFieldSpec sv@1737: name: 'Filename Entry Field' sv@1737: layout: (LayoutFrame 3 0 141 0 208 0 163 0) sv@2320: acceptOnPointerLeave: true cg@1142: ) cg@2374: (FilenameInputFieldSpec cg@2374: name: 'Filename + History' cg@2374: layout: (LayoutFrame 3 0 171 0 208 0 193 0) cg@2374: acceptOnPointerLeave: true cg@2476: viewClassName: FilenameWidgetWithHistory cg@2374: ) sv@1737: (LabelSpec sv@1737: label: 'Label' sv@1737: name: 'Label' sv@1737: layout: (LayoutFrame 228 0 113 0 433 0 135 0) sv@1737: translateLabel: true cg@1142: ) cg@2476: (LinkButtonSpec cg@2476: label: 'LinkButton' cg@2476: name: 'LinkButton1' cg@2476: layout: (LayoutFrame 228 0 141 0 433 0 163 0) cg@2476: translateLabel: true cg@2476: ) cg@1142: ) cg@1142: cg@1142: ) cg@97: ) cg@97: ! cg@97: cg@1179: standardTrees cg@1179: "This resource specification was automatically generated cg@1179: by the UIPainter of ST/X." cg@1179: cg@1179: "Do not manually edit this!! If it is corrupted, cg@1179: the UIPainter may not be able to read the specification." cg@1179: cg@1179: " cg@1179: UIPainter new openOnClass:UISelectionPanel andSelector:#standardTrees cg@1179: UISelectionPanel new openInterface:#standardTrees cg@1179: " cg@1179: cg@1179: cg@1179: cg@1179: ^ sv@1737: #(FullSpec sv@1737: name: standardTrees sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Trees' sv@1737: name: 'Trees' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 455 264) cg@1179: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (SelectionInTreeViewSpec sv@1737: name: 'Tree List' sv@1737: layout: (LayoutFrame 4 0 3 0 209 0 101 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true sv@1737: highlightMode: line cg@1179: ) sv@1737: (FileSelectionTreeSpec sv@1737: name: 'File Tree List' sv@1737: layout: (LayoutFrame 229 0 3 0 434 0 101 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true sv@1737: highlightMode: line cg@1179: ) sv@1737: (HierarchicalListViewSpec sv@1737: name: 'New ModelTree List' sv@1737: layout: (LayoutFrame 4 0 110 0 209 0 208 0) sv@1737: hasHorizontalScrollBar: true sv@1737: hasVerticalScrollBar: true sv@1737: highlightMode: line cg@1179: ) cg@1179: ) cg@1179: cg@1179: ) cg@1179: ) cg@1179: ! cg@1179: ca@190: standardUserPanel ca@93: "this window spec was automatically generated by the ST/X UIPainter" ca@93: ca@93: "do not manually edit this - the painter/builder may not be able to ca@93: handle the specification if its corrupted." ca@93: ca@93: " ca@190: UIPainter new openOnClass:UISelectionPanel andSelector:#standardUserPanel ca@190: UISelectionPanel new openInterface:#standardUserPanel ca@182: " ca@182: ca@182: ca@182: ca@182: ^ ca@182: ca@182: #(#FullSpec tm@987: #'window:' tm@987: #(#WindowSpec tm@987: #'name:' 'UserPanel' tm@987: #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0) tm@987: #'label:' 'UserPanel' tm@987: #'bounds:' #(#Rectangle 0 0 445 162) tm@987: ) tm@987: #'component:' tm@987: #(#SpecCollection tm@987: #'collection:' tm@987: #( tm@987: #(#LabelSpec tm@987: #'name:' 'helpText' tm@987: #'layout:' #(#Point 10 0) tm@987: #'labelChannel:' #userDefinedHelpText tm@987: #'resizeForLabel:' true tm@987: #'canUIDrag:' false tm@987: ) tm@987: ) tm@987: ) ca@182: ) ca@93: ! ! ca@93: cg@2236: !UISelectionPanel class methodsFor:'menus'! cg@2236: cg@2236: menuSelected cg@2236: cg@2236: cg@2236: cg@2236: ^ #(#Menu #( cg@2236: #(#MenuItem cg@2236: #'label:' 'copy' cg@2236: #'value:' #copy cg@2236: ) cg@2236: #(#MenuItem cg@2236: #'label:' 'cut' cg@2236: #'value:' #cut cg@2236: ) cg@2236: ) cg@2236: nil cg@2236: nil cg@2236: ) cg@2236: cg@2236: "Modified: / 29.10.1997 / 03:20:30 / cg" cg@2236: ! cg@2236: cg@2236: menuUnselected cg@2236: cg@2236: cg@2236: ^ #(#Menu #( cg@2236: #(#MenuItem cg@2236: #'label:' 'paste' cg@2236: #'value:' #paste cg@2236: ) cg@2236: ) cg@2236: nil cg@2236: nil cg@2236: ) cg@2236: cg@2236: "Modified: / 29.10.1997 / 03:20:38 / cg" cg@2236: ! ! cg@2236: cg@2236: !UISelectionPanel class methodsFor:'resources'! cg@2236: cg@2236: classResources cg@2236: "my translations are found in the UIPainter classes resources" cg@2236: cg@2236: ^ UIPainter classResources cg@2236: ! ! cg@2236: ca@182: !UISelectionPanel methodsFor:'actions'! ca@182: ca@182: defineClassAndSelector ca@182: |bd cls sel lbl| ca@182: ca@182: bd := IdentityDictionary new. ca@182: bd at:#className put:( userClass asValue). ca@182: bd at:#specsKey put:( (userSpecs ? '') asValue). ca@182: bd at:#labelsKey put:( (userLabels ? '') asValue). ca@182: bd at:#updateDefaultResources put:(false asValue). ca@182: ca@182: (self openDialogInterface:#nameAndSelectorSpec withBindings:bd) ifTrue:[ tm@987: ( (cls := (bd at:#className) value) notNil tm@987: and:[(sel := (bd at:#specsKey) value) notNil tm@987: and:[(lbl := (bd at:#labelsKey) value) notNil]] tm@987: ) ifTrue:[ tm@987: userClass := cls. tm@987: userSpecs := sel. tm@987: userLabels := lbl. ca@182: tm@987: (bd at:#updateDefaultResources) value ifTrue:[ tm@987: UserClass := userClass. tm@987: UserSpecs := userSpecs. tm@987: UserLabels := userLabels. tm@987: ] tm@987: ] ca@182: ]. ca@182: ! ca@182: ca@182: paste:something cg@2486: "paste something at a point" cg@2486: cg@1142: |coll specs point device ext spec| ca@182: ca@182: clipBoardSpec isNil ifTrue:[ tm@987: clipBoardSpec := SpecCollection new. tm@987: clipBoardSpec collection:(OrderedCollection new). ca@182: ]. cg@1142: coll := clipBoardSpec collection. cg@1142: device := gallery device. ca@182: cg@1142: point := device translatePoint:(device pointerPosition) cg@1500: fromView:nil cg@1500: toView:(gallery canvas). ca@182: ca@182: point y < 1 ifTrue:[point y:1]. ca@182: ext := gallery extent - (10@10). ca@93: ca@182: (specs := something) isCollection ifFalse:[ tm@987: specs := Array with:something ca@182: ]. ca@182: ca@182: specs do:[:aSpec| tm@987: point x > ext x ifTrue:[point x:1]. tm@987: point y > ext y ifTrue:[point y:1]. ca@182: tm@987: spec := aSpec copy. tm@987: spec layout:(LayoutOrigin fromPoint:point). tm@987: coll add:spec. tm@987: point := point + (20@20). ca@182: ]. ca@182: gallery update. cg@1500: cg@1500: "Modified: / 10.10.2001 / 14:14:36 / cg" ca@182: ! ca@182: ca@182: raiseMenu cg@2486: "can open menu" cg@2486: cg@251: |spec menu value paste| ca@182: ca@182: spec := self clientSpec value. ca@112: ca@182: spec notNil ifTrue:[ tm@987: menu := self class menuSelected decodeAsLiteralArray. tm@987: self isClipBoard ifFalse:[ tm@987: (menu someMenuItemWithValue:#cut) disable. tm@987: ]. ca@182: tm@987: (value := menu startUp) == #cut ifTrue:[ tm@987: clipBoardSpec collection remove:spec ifAbsent:nil. cg@1142: gallery update. tm@987: ] ifFalse:[ tm@987: value == #copy ifTrue:[ ca@1870: self window setClipboardObject:spec tm@987: ] tm@987: ]. ca@182: ^ self ca@182: ]. ca@182: ca@182: self isUserBoard ifTrue:[ tm@987: ^ self defineClassAndSelector ca@182: ]. ca@182: ca@1872: paste := self window getClipboardObject. ca@182: ca@182: (self canPaste:paste) ifTrue:[ tm@987: menu := self class menuUnselected decodeAsLiteralArray. ca@182: tm@987: (menu startUp) == #paste ifTrue:[ tm@987: self paste:paste tm@987: ] ca@182: ]. ca@112: ! ! ca@112: ca@112: !UISelectionPanel methodsFor:'aspects'! ca@112: ca@182: clientSpec cg@1142: ^ gallery clientSpecHolder ca@93: ! ca@93: ca@182: clipBoardSpec ca@182: ^ clipBoardSpec ca@182: ! ca@182: cg@1142: gallery cg@1142: ^ gallery cg@1142: ! ca@112: cg@1142: galleryList cg@1142: ^ gallery listHolder ca@182: ! ca@112: ca@182: galleryModel cg@1142: ^ gallery model ca@112: ca@112: ! ca@112: ca@182: majorChannel ca@182: |holder| ca@182: ca@182: (holder := builder bindingAt:#majorChannel) isNil ifTrue:[ tm@987: holder := AspectAdaptor new subject:self; forAspect:#majorSelection. tm@987: builder aspectAt:#majorChannel put:holder. ca@139: ]. ca@182: ^ holder ca@182: ! ca@182: ca@182: majorList cg@2486: ^ self class specifications collect:[:el| el first] ca@182: ! ca@182: ca@182: minorKeys cg@1142: ^ gallery minorKeysHolder ca@112: ! ! ca@112: ca@182: !UISelectionPanel methodsFor:'change & update'! ca@112: ca@182: update:something with:aParameter from:changedObject cg@2486: "one of my models changed its value" cg@2486: cg@2363: |label| ca@112: cg@2363: changedObject == self clientSpec ifTrue:[ cg@2363: (label := changedObject value) notNil ifTrue:[ cg@2363: label := 'Widget Gallery: ' , label name. tm@987: ] ifFalse:[ cg@1587: label := 'Widget Gallery' cg@1587: ]. cg@1587: builder window topView label:(label , ' ') ca@93: ]. ca@93: ca@182: super update:something with:aParameter from:changedObject. ca@112: ! ! ca@112: ca@182: !UISelectionPanel methodsFor:'drag & drop'! ca@112: cg@2115: canDropObjects:aCollectionOfDropObjects in:aComponent cg@1953: ^ self canPaste:(aCollectionOfDropObjects collect:[:el| el theObject ]). cg@2115: cg@2115: "Created: / 13-10-2006 / 15:53:04 / cg" ca@112: ! ca@112: cg@2120: dropObjects:aCollectionOfDropObjects in:aComponent ca@182: ca@182: |spc top| ca@182: sv@1061: top := DragAndDropManager dragOriginatorQuerySignal query topView. ca@182: ca@182: top == aComponent topView ifTrue:[ tm@987: spc := self clientSpec value. tm@987: spc isNil ifTrue:[^ self]. ca@182: tm@987: (clipBoardSpec collection remove:spc ifAbsent:nil) isNil ifTrue:[ tm@987: ^ self tm@987: ]. ca@182: ] ifFalse:[ cg@1953: spc := aCollectionOfDropObjects collect:[:el| el theObject]. ca@182: ]. ca@182: self paste:spc. sv@1061: cg@2119: "Modified: / 18-03-1999 / 18:29:19 / stefan" cg@2120: "Created: / 13-10-2006 / 18:25:50 / cg" ca@182: ! ! ca@182: cg@2025: !UISelectionPanel methodsFor:'initialization'! cg@2025: cg@2025: initialize cg@2025: |holder| cg@2025: cg@2025: super initialize. cg@2025: cg@2025: userClass := UserClass. cg@2025: userSpecs := UserSpecs. cg@2025: userLabels := UserLabels. cg@2025: cg@2025: gallery := UIGalleryView new. cg@2025: cg@2025: gallery model:(ValueHolder new). cg@2025: gallery listHolder:(ValueHolder new). cg@2025: gallery minorKeysHolder:(ValueHolder new). cg@2025: gallery menuSelector:#raiseMenu. cg@2025: cg@2025: gallery clientSpecHolder:(holder := ValueHolder new). cg@2025: holder addDependent:self. cg@2025: cg@2025: majorSelection := 0. cg@2025: ! ! cg@2025: ca@182: !UISelectionPanel methodsFor:'queries'! ca@182: ca@182: canPaste:something cg@2486: "returns true if something could be paste" cg@2486: ca@182: (self isClipBoard and:[something notNil]) ifTrue:[ tm@987: something isCollection ifTrue:[ tm@987: something notEmpty ifTrue:[ tm@987: ^ (something at:1) isKindOf:UISpecification tm@987: ] tm@987: ] ifFalse:[ tm@987: ^ something isKindOf:UISpecification tm@987: ] ca@182: ]. ca@182: ^ false ca@112: ! ca@112: ca@182: isClipBoard cg@2486: "returns true if current view is clip board" cg@2486: ca@291: majorSelection ~~ 0 ifTrue:[ tm@987: ^ (self majorList at:majorSelection) startsWith:'Clip' ca@182: ]. cg@2486: ^ false ca@182: ! ca@182: ca@182: isUserBoard cg@2486: "returns true if current view is clip board" cg@2486: ca@291: majorSelection ~~ 0 ifTrue:[ tm@987: ^ (self majorList at:majorSelection) startsWith:'User' ca@182: ]. cg@2486: ^ false ca@182: ! ! ca@182: ca@182: !UISelectionPanel methodsFor:'selection'! ca@182: ca@182: majorSelection ca@291: ^ majorSelection ? 0 ca@182: ! ca@182: ca@182: majorSelection:aSelection cg@1142: |spec model| ca@112: ca@291: (majorSelection == aSelection or:[aSelection == 0]) ifTrue:[ tm@987: ^ self ca@167: ]. ca@684: cg@1142: gallery builder:nil. ca@182: majorSelection := aSelection. ca@684: spec := ((self class specifications) at:majorSelection) last. ca@684: cg@1142: model := self galleryModel. cg@1142: model value:0. ca@684: self minorKeys value:nil. ca@182: ca@182: spec isSymbol ifFalse:[ tm@987: self galleryList value:(spec collect:[:a| a first]). tm@987: self minorKeys setValue:(spec collect:[:a| a last]). ca@182: ] ifTrue:[ tm@987: self perform:spec. ca@182: ]. cg@1142: model value:1. ca@182: cg@795: "Modified: / 21.4.1998 / 11:59:08 / cg" ca@112: ! ! ca@112: cg@1716: !UISelectionPanel methodsFor:'startup & release'! ca@112: ca@182: closeRequest ca@182: |sav| ca@112: ca@182: (sav := masterApplication) notNil ifTrue:[ tm@987: masterApplication := nil. tm@987: sav closeRequestFor:(self window). tm@987: masterApplication := sav. ca@182: ] ifFalse:[ tm@987: super closeRequest. ca@182: ] cg@244: cg@244: "Modified: 28.7.1997 / 09:44:40 / cg" ca@182: ! ca@112: ca@684: postOpenWith:aBuilder ca@182: self majorChannel value:1. cg@2025: super postOpenWith:aBuilder. ca@112: ! ! ca@112: ca@182: !UISelectionPanel methodsFor:'user defined'! ca@182: ca@182: userDefined ca@182: |cls lbl sel builder| ca@329: ca@329: cls := self resolveName:userClass. ca@329: ca@329: (cls notNil and:[(cls respondsTo:userLabels)]) ifTrue:[ tm@987: lbl := cls perform:userLabels. tm@987: sel := Array new:(lbl size) withAll:#userDefinedSpec. tm@987: self galleryList value:lbl. tm@987: self minorKeys value:sel. ca@329: ] ifFalse:[ tm@987: builder := UIBuilder new isEditing:true. ca@397: tm@987: builder application:self. cg@1142: gallery builder:builder. tm@987: self galleryList value:#( '???' ). tm@987: self minorKeys value:#( standardUserPanel ). ca@329: ] ca@182: ! ca@147: ca@182: userDefinedHelpText ca@182: ca@182: ^ ' ca@182: no user defined specifications are configured yet. To assign cg@2486: user defined specifications to the gallery, press the middle ca@182: button of your mouse to open a dialog. ca@182: ' ca@182: ! ca@182: ca@182: userDefinedSpec ca@182: |cls spc idx| ca@93: ca@329: cls := self resolveName:userClass. ca@182: ca@329: (cls notNil and:[(cls respondsTo:userSpecs)]) ifTrue:[ tm@987: spc := cls perform:userSpecs. tm@987: idx := self galleryModel value. ca@329: tm@987: idx <= spc size ifTrue:[ tm@987: spc := spc at:idx. tm@987: (cls respondsTo:spc) ifTrue:[ tm@987: ^ cls perform:spc tm@987: ] tm@987: ] ca@93: ]. ca@147: ^ nil ca@93: ! ! ca@93: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'class initialization'! cg@387: cg@387: initialize cg@387: "initialize my default user-def from the superclasses specs. cg@387: I.e. provide a clocks entry" cg@387: cg@387: LabelList := self defaultListOfLabels asOrderedCollection. cg@387: SelectorList := self defaultListOfSelectors asOrderedCollection. cg@2009: HolderList := OrderedCollection withSize:(SelectorList size). cg@387: NextUniqueNumber := 1. cg@387: cg@387: UISelectionPanel tm@987: userClass:self tm@987: specSelector:#listOfSelectors tm@987: labelSelector:#listOfLabels. cg@387: cg@387: " cg@387: self initialize cg@387: " cg@387: cg@387: "Modified: / 5.12.1997 / 14:25:22 / cg" cg@387: "Created: / 8.12.1997 / 18:49:42 / cg" cg@387: ! ! cg@387: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'defaults'! cg@387: cg@387: defaultListOfLabels tm@987: ^ #( 'Clocks etc.' 'Business Graphics' ) cg@387: cg@387: "Created: / 8.12.1997 / 18:50:06 / cg" cg@864: "Modified: / 16.6.1998 / 10:20:12 / cg" cg@387: ! cg@387: cg@387: defaultListOfSelectors tm@987: ^ #( clocksSpec businessGraphicsSpec) cg@387: cg@387: "Modified: / 5.12.1997 / 14:03:55 / cg" cg@387: "Created: / 8.12.1997 / 18:50:21 / cg" cg@387: ! ! cg@387: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'documentation'! cg@387: cg@387: copyright cg@387: " cg@387: COPYRIGHT (c) 1997 by eXept Software AG tm@987: All Rights Reserved cg@387: cg@387: This software is furnished under a license and may be used cg@387: only in accordance with the terms of that license and with the cg@387: inclusion of the above copyright notice. This software may not cg@387: be provided or otherwise made available to, or used by, any cg@387: other person. No title to or ownership of the software is cg@387: hereby transferred. cg@387: " cg@387: cg@387: cg@387: cg@387: ! cg@387: cg@387: documentation cg@387: " cg@387: The standard user-defined selectionPanel entry. cg@387: Here, a single item named 'clocks' is provided, containing cg@387: an analog and digital clock. sv@2216: This is a dumb example; the actual user-defined panel may be cg@387: extended dynamically. cg@387: cg@387: Frameworks which provide additional widgets may dynamically cg@387: add more entries, by sending #addUserSpecHolder:label: cg@387: or #removeUserSpecWithLabel:. cg@387: Typically, this is done when a framework is loaded, by one of the cg@387: frameworks class-initialization methods. cg@387: cg@387: [start with:] tm@987: UISelectionPanel open cg@387: cg@387: [author:] tm@987: Claus Gittinger tm@987: Claus Atzkern cg@387: cg@387: [see also:] tm@987: TabView tm@987: NoteBookView tm@987: UIGalleryView tm@987: UIPainter cg@387: cg@387: " cg@387: ! ! cg@387: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'installation / deinstallation'! cg@387: cg@387: addUserSpecHolder:aValueHolder label:aLabelString cg@387: "add a new entry with the given label. cg@387: The specHolder is typically either a spec, a valueHolder or a block. cg@387: In any case, it should return a valid spec from the #value message. cg@387: This spec is installed under that label." cg@387: cg@387: |syntheticSelector idx| cg@387: cg@387: syntheticSelector := ('userSpec' , NextUniqueNumber printString) asSymbol. cg@387: NextUniqueNumber := NextUniqueNumber + 1. cg@387: cg@387: idx := LabelList indexOf:aLabelString. cg@387: idx ~~ 0 ifTrue:[ tm@987: SelectorList at:idx put:syntheticSelector. tm@987: HolderList at:idx put:aValueHolder cg@387: ] ifFalse:[ tm@987: LabelList addLast:aLabelString. tm@987: SelectorList addLast:syntheticSelector. tm@987: HolderList addLast:aValueHolder cg@387: ] cg@387: cg@387: "Modified: / 5.12.1997 / 14:13:17 / cg" cg@387: "Created: / 8.12.1997 / 18:50:55 / cg" cg@387: ! cg@387: cg@387: removeUserSpecWithLabel:aLabelString cg@387: "remove the spec which was previously installed under the given label" cg@387: cg@387: |idx| cg@387: cg@387: idx := LabelList indexOf:aLabelString. cg@387: idx ~~ 0 ifTrue:[ tm@987: LabelList removeIndex:idx. tm@987: SelectorList removeIndex:idx. tm@987: HolderList removeIndex:idx cg@387: ]. cg@387: cg@387: "Modified: / 5.12.1997 / 14:13:45 / cg" cg@387: "Created: / 8.12.1997 / 18:51:03 / cg" cg@387: ! ! cg@387: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'user defined gallery'! ca@207: tm@987: businessGraphicsSpec tm@987: "This resource specification was automatically generated tm@987: by the UIPainter of ST/X." tm@987: tm@987: "Do not manually edit this!! If it is corrupted, tm@987: the UIPainter may not be able to read the specification." tm@987: tm@987: " tm@987: UIPainter new openOnClass:UISelectionPanel::UserDefinedGallery andSelector:#businessGraphicsSpec tm@987: " tm@987: tm@987: tm@987: cg@1456: ^ sv@1737: #(FullSpec sv@1737: name: businessGraphicsSpec sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Interface Builder' sv@1737: name: 'Interface Builder' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 394 317) cg@1456: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (LabelSpec sv@1737: label: 'PieChart' sv@1737: name: 'Label2' sv@1737: layout: (LayoutFrame 5 0 5 0 126 0 20 0) sv@1737: translateLabel: true sv@1737: canUIDrag: false cg@1456: ) sv@1737: (PieChartWidgetSpec sv@1737: name: 'PIE Chart' sv@1737: layout: (LayoutFrame 15 0 21 0 103 0 141 0) cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'ChartDescription' sv@1737: name: 'Label1' sv@1737: layout: (LayoutFrame 8 0.0 153 0 131 0 168 0) sv@1737: translateLabel: true sv@1737: canUIDrag: false cg@1456: ) sv@1737: (ChartDescriptionSpec sv@1737: name: 'Chart Legend' sv@1737: layout: (LayoutFrame 14 0.0 -9 0.656827 14 0.323684 -9 1.0) cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'BarChart' sv@1737: name: 'Label3' sv@1737: layout: (LayoutFrame 115 0 5 0 237 0 20 0) sv@1737: translateLabel: true sv@1737: canUIDrag: false cg@1456: ) sv@1737: (BarChartWidgetSpec sv@1737: name: 'Bar Chart' sv@1737: layout: (LayoutFrame 121 0 21 0 232 0 141 0) cg@1456: ) cg@1456: ) cg@1456: cg@1456: ) tm@987: ) tm@987: ! tm@987: ca@207: clocksSpec cg@864: "This resource specification was automatically generated cg@864: by the UIPainter of ST/X." ca@207: cg@864: "Do not manually edit this!! If it is corrupted, cg@864: the UIPainter may not be able to read the specification." ca@207: ca@207: " tz@726: UIPainter new openOnClass:UISelectionPanel::UserDefinedGallery andSelector:#clocksSpec ca@207: " ca@207: ca@207: ca@207: cg@1456: ^ sv@1737: #(FullSpec sv@1737: name: clocksSpec sv@1737: window: sv@1737: (WindowSpec sv@1737: label: 'Interface Builder' sv@1737: name: 'Interface Builder' sv@1737: min: (Point 10 10) sv@1737: bounds: (Rectangle 14 46 439 319) cg@1456: ) sv@1737: component: sv@1737: (SpecCollection sv@1737: collection: ( sv@1737: (NonScrollableArbitraryComponentSpec sv@1737: name: 'Analog Clock' sv@1737: layout: (LayoutFrame 15 0 39 0 129 0 151 0) sv@1737: hasBorder: false sv@1737: component: ClockView cg@1456: ) sv@1737: (NonScrollableArbitraryComponentSpec sv@1737: name: 'Digital Clock' sv@1737: layout: (LayoutOrigin 15 0 176 0) sv@1737: hasBorder: false sv@1737: component: DigitalClockView cg@1456: ) sv@1737: (NonScrollableArbitraryComponentSpec sv@1737: name: 'Digital Number display' sv@1737: layout: (LayoutOrigin 142 0 39 0) sv@1737: hasBorder: false sv@1737: component: DigitalLedDisplay cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'Analog Clock' sv@1737: name: 'Label1' sv@1737: layout: (LayoutFrame 15 0 16 0 128 0 38 0) sv@1737: translateLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'Number Display' sv@1737: name: 'Label2' sv@1737: layout: (LayoutFrame 142 0 16 0 270 0 38 0) sv@1737: translateLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'Digital Clock' sv@1737: name: 'Label3' sv@1737: layout: (LayoutFrame 15 0 155 0 128 0 177 0) sv@1737: translateLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1456: ) sv@1737: (MeterWidgetSpec sv@1737: name: 'Meter Widget' sv@1737: layout: (Rectangle 143 99 259 216) sv@1737: model: meterValue cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'Meter Widget' sv@1737: name: 'Label4' sv@1737: layout: (LayoutFrame 142 0 77 0 269 0 99 0) sv@1737: translateLabel: true sv@1737: canUIDrag: false cg@1456: ) sv@1737: (MeterClackCounterSpec sv@1737: name: 'Meter Clack Counter' sv@1737: layout: (Rectangle 291 40 387 72) sv@1737: model: model cg@1456: ) sv@1737: (LabelSpec sv@1737: label: 'Meter Clack Counter' sv@1737: name: 'Label5' sv@1737: layout: (LayoutFrame 290 0 16 0 417 0 38 0) sv@1737: translateLabel: true sv@1737: adjust: left sv@1737: canUIDrag: false cg@1456: ) cg@1456: ) cg@1456: cg@1456: ) ca@207: ) ca@207: ! ca@207: ca@207: listOfLabels cg@387: ^ LabelList ca@207: cg@387: "Created: / 5.12.1997 / 13:43:03 / cg" cg@387: "Modified: / 8.12.1997 / 18:51:20 / cg" ca@207: ! ca@207: ca@207: listOfSelectors cg@387: ^ SelectorList cg@387: cg@387: "Created: / 5.12.1997 / 13:43:13 / cg" cg@387: "Modified: / 8.12.1997 / 18:51:28 / cg" cg@387: ! ! cg@387: cg@387: !UISelectionPanel::UserDefinedGallery class methodsFor:'user spec access'! cg@387: cg@387: doesNotUnderstand:aMessage cg@387: "catch queries for a userSpec" cg@387: cg@387: |sel idx| ca@207: cg@387: ((sel := aMessage selector) startsWith:'userSpec') ifTrue:[ tm@987: idx := SelectorList indexOf:sel. tm@987: idx ~~ 0 ifTrue:[ tm@987: ^ (HolderList at:idx) value tm@987: ] cg@387: ]. cg@387: ^ super doesNotUnderstand:aMessage ca@207: cg@387: "Modified: / 5.12.1997 / 14:23:24 / cg" cg@387: "Created: / 8.12.1997 / 18:51:50 / cg" cg@387: ! cg@387: cg@387: respondsTo:aSelector cg@387: "catch queries for a userSpec" cg@387: cg@387: |idx| cg@387: cg@387: (aSelector startsWith:'userSpec') ifTrue:[ tm@987: idx := Number fromString:(aSelector copyFrom:9). tm@987: idx := SelectorList indexOf:aSelector. tm@987: idx ~~ 0 ifTrue:[^ true]. cg@387: ]. cg@387: ^ super respondsTo:aSelector cg@387: cg@387: "Modified: / 5.12.1997 / 14:19:55 / cg" cg@387: "Created: / 8.12.1997 / 18:51:57 / cg" ca@207: ! ! ca@207: ca@93: !UISelectionPanel class methodsFor:'documentation'! ca@93: ca@93: version ca@93: ^ '$Header$' ca@93: ! ! sv@1628: ca@207: UISelectionPanel initialize! sv@1628: UISelectionPanel::UserDefinedGallery initialize!