[ SuperCard ] [ Delphi ] [ SmalltalkAgents ]

Building Simple Application in SmalltalkAgents

[ Updated: Apr 7, 1997 ]


SmalltalkAgents $B$G%G%8%?%k;~7W$r:n$k(J

$B?7$7$$%W%m%8%'%/%H$r:n$k(J
$B%&%#%s%I%&$r:n$k(J
$B$H$j$"$($:F0$+$7$F$_$k(J
$B2?$r:n$C$?$N$+(J
$B%"%W%j%1!<%7%g%s%b%G%k$r
$B%j%"%k%?%$%`$KF0$+$7$F$_$k(J
idleTask version
Thread version
$B%9%?%s%I%"%m%s%"%W%j%1!<%7%g%s$r:n$k(J

$B$5$F!":#EY$O(J SmalltalkAgents $B$G$9!#(J$BBP>]%t%!!<%8%g%s$O(J 2.1(.1) $B$G$9!#(J

$B?7$7$$%W%m%8%'%/%H$r:n$k(J

SmalltalkAgents $B$G$b!"?7$7$$%"%W%j%1!<%7%g%s$N3+H/$O!"?7$7$$%W%m%8%'%/%H$r5/$3$9$3$H$+$i;O$^$j$^$9!#(J

  1. AppleScript $B%a%K%e!<$+$i(J Create A New Project... $B$rA*Br$9$k(J
$B$$$:$l$+$NJ}K!$G!"?75,%W%m%8%'%/%H$r5/$3$7$^$9!#(J

Project Name: $B$r(J "ShowTime" $B$H$7!"(JProject Description $B$K4JC1$J@bL@$rF~$l$F$*$-$^$9!#(J Options $B$G$O!"(J"Open UI Editor" $B$r%A%'%C%/$7$F$*$/$H!"?75,%W%m%8%'%/%H:n@.$HF1;~$K(J GUI $B%(%G%#%?$,3+$-$^$9!#(J


New Project

OK $B$G(J "ShowTime" Project $B$r:n@.$7$?$i!"(JProject Browser $B$G!"(J"ShowTime" Project $B$r%G%U%)%k%H!&%i%$%V%i%j$K@_Dj$7$F$*$-$^$7$g$&!#(JSet $B%\%?%s$r2!$9$@$1$G$9!#(J


set ShowTime to Default Library

[ go to top ]

$B%&%#%s%I%&$r:n$k(J

"UI Editor" ($B%&%#%s%I%&$N%-%c%W%7%g%s$O(J "I.C.Editor" $B$K$J$C$F$$$^$9(J) $B$@$1$,3+$+$l$F$b!"


UI Editor


GUI Tools


Parts Catalog

GUI $B$N:n@.$O!"(J"UI Editor" $B$K%3%s%]!<%M%s%H$rG[CV$7$F$$$/$3$H$G?J$a$^$9!#(JSuperCard (Delphi $B$H$b(J) $B$HF1$8463P$G$9$M!#(J30 $B8D$[$I$N%3%s%]!<%M%s%H72$+$i!"%F%-%9%H!&%U%#!<%k%I$H%\%?%s$r0l$DG[CV$7$^$9!#E,59!"(JSave Changes $B$G(J save $B$7$F$*$$$F2<$5$$!#(J

$B#2$D$N%3%s%]!<%M%s%H$K$O!"(JGUI Tools $B%Q%l%C%H$N!"(JEdit Identifier $B$+$i!"%&%#%s%I%&Fb$G%f%K!<%/$J<1JL;R(J ($BL>A0(J) $B$rIU$1$F$*$-$^$9!#(J

$B%\%?%s$K$O(J Edit Caption $B$G(J Quit $B$H$$$&%-%c%W%7%g%s$rIU$1$F$*$-$^$9!#%3%s%]!<%M%s%H$N0\F0$O!"A*Br$7$F$+$i%I%i%C%0$G9T$$$^$9!#%5%$%:JQ99$O%3%s%H%m!<%k!&%-!<$r2!$7$J$,$i%+!<%=%k$r%3%s%]!<%M%s%HNN0h>e$K0\F0$9$k$H!"%+!<%=%k$,JQ$o$k$N$GH=$j$^$9!#(JCaps Lock $B$,3]$+$C$F$$$k$H%3%s%H%m!<%k!&%-!<$,Mx$+$J$/$J$k$N$GCm0U$7$F$/$@$5$$!#(J

$B$=$NB>!"I,MW$K1~$8$F!"(JGUI Tools 1 $B$N(J Set Positioner $B$G!"0LCV4X78$r@_Dj$7$^$9!#$3$l$,$J$5$l$J$$>l9g!"%U%#!<%k%I$NI=<(NN0h$O8GDj2=$5$l!"%&%#%s%I%&$r%j%5%$%:$7$F$bDI?o$7$^$;$s!#$3$3$G$O!"%U%#!<%k%I$O!"%&%#%s%I%&$N>e2<:81&C<$K$h$C$FNN0h$r7h$a!"%\%?%s$O1&$H2

field

button

$BD4;R$K>h$C$F!"%U%#!<%k%I$O(J GUI Tools 1 $B$N(J Set Framer $B$G!"$A$g$C$HD@$s$@$h$&$J304Q$r;}$?$;!"%&%#%s%I%&FbIt$K$O%0%l%$$N%Q%?!<%s$rI_$$$F$_$^$7$?!#$(!<$H!"(J System 7.5.5 + KT 7.5.2 $B$G(J GUI $B$r$$$8$k:]!"%\%?%sEy$r0\F0$5$;$k$H!"2<$N%Q%?!<%s$GEI$j$D$V$5$l$F$7$^$C$F!"0\F0Cf$N%*%V%8%'%/%H$,8+$($J$/$J$j$^$9!#$3$s$J%P%0(J (?) $B$O!"$5$C$5$HDY$7$F$b$i$$$?$$$G$9!#0JA0$N%7%9%F%`$G$O82:_$7$?$+$I$&$+3P$($F$$$^$;$s!#(J

[ go to top ]

$B$H$j$"$($:F0$+$7$F$_$k(J

$B$3$3$^$G$G$-$?$i!"%b%8%e!<%k$H$7$FF0$+$9$3$H$,$G$-$^$9!#%"%C%W%k%a%K%e!<$N(J Launch Module $B$+$i5/F0$7$F$_$^$7$g$&!#NcBj$H$7$F$NF0:n$O!"$^$@$G$-$^$;$s$,!"304Q$O$&$^$/$G$-$F$$$^$9$+!#(J

[ go to top ]

$B2?$r:n$C$?$N$+(J

$B$5$F!"$3$3$^$G$G$$$C$?$$2?$,$G$-$?$N$G$7$g$&$+!#(J

$B$3$3$^$G$NCJ3,$G!"(J2 $B$D$N%/%i%9$H(J 6 $B$D$N%a%=%C%I$,<+F0E*$K@8@.$5$l$F$$$^$9!#(JProject Browser $B$N%j%9%H$+$i!"%&%#%s%I%&!&%/%i%9$H%b%8%e!<%k!&%/%i%9$r%@%V%k!&%/%j%C%/$7$F!"%3!<%I%V%i%&%6$r3H$2$F8+$F$_$^$7$g$&!#(J

$B$3$l$GM=A[$,$D$/$+$H;W$$$^$9$,!"(JSmalltalkAgents $B$N%"%W%j%1!<%7%g%s!&%U%l!<%`%o!<%/$O!"%3%s%]!<%M%s%H$rD%$jIU$1$?%&%#%s%I%&$H%b%8%e!<%k$H$$$&%9%?%$%k$G9=@.$5$l$F$$$^$9!#G[I[(J CD-ROM $B$KF~$C$F$$$k(J "SmalltalkAgents$B$4>R2p%W%l%<%s(J" $B$K$h$k$H!"(J

$B%b%8%e!<%k(J
  • $B%"%W%j%1!<%7%g%s$N4pK\%3%s%H%m!<%k(J
  • About..., File, Edit $B%a%K%e!<$NDj5A$*$h$S$=$N
$B%&%#%s%I%&(J
  • $B%&%#%s%I%&@)8f$H%f!<%6%"%/%7%g%s=hM}(J
  • $B%&%#%s%I%&8GM-$N%a%K%e!<$NDj5A$*$h$S$=$N
$B%3%s%]!<%M%s%H(J
  • $B%&%#%s%I%&$KD%$jIU$1$k3F
$B$H$J$C$F$$$^$9!#(J

[ go to top ]

$B%"%W%j%1!<%7%g%s%b%G%k$r

$B304Q$,$G$-$^$7$?!#$7$+$7!";~4V$rI=<($9$k5!G=$,$"$j$^$;$s!#8+1I$($,$h$1$l$P!"%"%W%j%1!<%7%g%s%b%G%k$Nl=j$K$7$^$9!#(JProject Browser $B$N%/%i%9!&%j%9%H$+$i!"(JShowTimeModule, ShowTimeWindow $B$r%@%V%k!&%/%j%C%/$7$F!"$=$N%/%i%9$N(J Code Browser $B$r3+$-$^$9!#$`$m$s!"(JOpen Code Browser $B$G3+$$$F!"%/%i%9L>$r;XDj$7$F$bF1$8$G$9!#$^$?!"(JListener $BEy$G(J

CodeBrowser new open currentClass: ShowTimeModule.
CodeBrowser new open currentClass: ShowTimeWindow.
$B$rI>2A$7$F$b(J Code Browser $B$r3+$/$3$H$,$G$-$^$9!#(J


Code Browser

$B%"%W%j%1!<%7%g%s$N on: #buttonRelease: send: #doQuit $B$H@_Dj$7$F$*$1$P!"%\%?%s$,%j%j!<%9$5$l$?;~E@$G!"(J#doQuit $B$H$$$&%a%C%;!<%8$,Aw$i$l$^$9!#$3$N$h$&$J!"!V$J$K$J$K!W$5$l$?$H$-$K!V$"$l$3$l!W$r!V$I$3$=$3!W$N%*%V%8%'%/%H$KAw$k$H$$$&5!G=$O(J Smalltalk/V 2.* $B$N%"%W%j%1!<%7%g%s!&%U%l!<%`%o!<%/$G$b4Q$k$3$H$,$G$-$^$7$?$,!"(JSmalltalkAgents $B$G$O!"$H$/$K(J semantic message $B$H8F>N$7$F$$$^$9!#(J

$B$3$N$h$&$J@_Dj$O!"$I$N%a%=%C%I$G5-=R$9$l$P$h$$$N$G$7$g$&$+!#%l%7!<%P$O%\%?%s$G$9!#(J#vsAutoConfiguration $B$G%\%?%s$,@8@.$5$l$F$$$k$N$G!"$=$l$h$j8e$G$J$$$H$$$1$^$;$s!#$3$s$J$H$-!"(J Smalltalk $B$G$O$$$A$$$A%^%K%e%"%k$r3+$$$?$j$7$^$;$s!#(JSmalltalk $B$O(J Smalltalk $B$G5-=R$5$l$F$$$^$9!#$=$N>e!"$=$N%=!<%9$r8+$k$3$H$,$G$-$^$9!#$=$l$I$3$m$+!"$=$N%=!<%9$rJQ99$9$k$3$H$9$i$G$-$^$9!#(J

$B%3!<%I%V%i%&%6$G(J #(ShowTimeWindow-I-#vsAutoConfiguration) $B%a%=%C%I$r3+$-$^$9!#(JOperations $B%a%K%e!<$N!"(JMessage Senders $B$G!"(J#vsAutoConfiguration $B%a%=%C%I$,$I$3$+$iAw$i$l$F$/$k$N$+8+$F$_$^$7$g$&!#(J 11 $B8D$N%a%=%C%I$+$i8F$P$l$F$$$k$N$,H=$j$^$9!#%9!<%Q!<%/%i%9$N(J UIWindow $B4XO"$N$b$N$,(J 2 $B$D$"$k$N$G!"$=$l$r8+$F$_$^$9!#(J

  1. #(UIWindow-I-initializeComponent)
  2. #(UIWindow-I-vsEditorInitializeComponent)
$B$3$N$&$A(J #vsEditorInitializeComponent $B$r Initialize the component as required. This method is issued privately by the VS Editor. $B$H$$$&(J Directives $B$K=P$/$o$7$^$9!#(J VS Editor $B$H$O$J$s$8$c$m$+$$(J?$B!!$H!"$3$$$D$rH$9$k$3$H$O;_$a$^$7$?!#$$$:$l$K$;$h!"$3$l$O(J issued privately by the VS Editor. $B$J$N$G!"%5%s%W%k$H$7$F;29M$K$9$k$N$J$i$H$b$+$/!"$a$C$?$d$?$i$K$D$D$-2s$7$F2B$$$b$N$G$O$J$$$7$g$&!#(J

$B$b$&0lJ}$N(J #initializeComponent $B$r4Q$F$_$k$H!"(J #vsAutoConfiguration $B%a%=%C%I$O!"(J#createComponent $B$7$?$"$H$G!"8F$P$l$F$$$^$9!#$=$N8e$N(J #privateGUIBuilderCreateMethod $B$O(J private $B$H$$$&@\F,<-$,IU$$$F$$$k$N$G$d$P$=$&$G$9!#0J8e$O(J

#configureContainer; (Configure the default characteristics for this container.)
#createWindow; (* 1)
#createMenus; (Create the default menus needed for this component.)
#initializationCompletion. (* 2)
$B$H%+%9%1!<%I!&%a%C%;!<%8$,Aw$i$l$F$$$^$9!#$3$N$&$A!"(J#configureContainer, #createMenus $B$O!"(J Directives $B$K(J <overridable> $B$H$"$k0J30$O!"6u$G$9!#(J #createWindow, #initializationCompletion $B$b(J Directives $B$K(J <overridable>, <specializable> $B$H$"$k0J30$O!"6u$G$9!#(J#createWindow $B$O(J 3 $B9T$[$I%3!<%I$r;}$C$F$$$k$h$&$K8+$($^$9$,!"2B$/8+$l$P%3%a%s%H$K$J$C$F$$$^$9!#$I$3$K=q$$$F$bF1$8$h$&$K;W$($^$9$,!"$H$j$"$($:!"3F!9$N(J Directives $B$r4Q$F$_$^$7$g$&!#(J

#configureContainer
Configure the default characteristics for this container.

#createWindow
“Description: Configure the custom components contained within this window and any other basic characteristics. This method can be used to override the definitions provided by the CCS [GUI] tools.

Comments: The default action is to do nothing. See the #(UIWindow-I-createComponent) method for the default characteristics of all windows.”

#createMenus
Create the default menus needed for this component.

#initializationCompletion
“Description: Perform any final customizations to the component that can only be done via hand-written code. This is the last method invoked as part of the component initialization/configuration.

Detail: I.e., Set any properties or elements which are not appropriate for the store-on mechanism to handle via properties or semantic messages or which the standard properties cloning code cannot handle.”

$BC1=c$KM=A[$9$k$H!"(J#createWindow $B$+(J #initializationCompletion $B$r%*!<%t%!!<%i%$%I$9$l$P2B$$$h$&$K;W$($^$9$,!"(J #createWindow $B$N(J Description $B$N8eH>$K$O5$$K$J$k$3$H$,=q$$$F$"$j$^$9!#(J can $B$,$J$1$l$P!X(J ($B0JA0$O(J) [GUI] $B%D!<%k$K$h$kDj5A$r%*!<%t%!!<%i%$%I$9$k$?$a$K>oMQ$5$l$?!Y$H$J$k$O$:$J$s$G$9$,!"(J can $B$,F~$k$HH=$i$J$/$J$j$^$7$?(J ($B>P(J)$B!#$@$$$?$$(J can $B$,I=$9!"G=NO!"2DG=!"798~!"?dNL!"5v2D!"L?Na!"<+H/E*9T0Y$C$F!"]$H$9$k$b$N$O!"!V$^$@$J$5$l$F$$$J$$2?$+!W$G!"$=$l$r!V$G$-$k!W$H$+!V$7$F$b$h$$!W$H$+H=CG$7$F$kLu$G$9!#(J

$B$J$s$G$3$s$J$3$H$r%0%@%0%@=q$$$F$$$k$+$H$$$&$H!"$5$kJ}$h$j(J

$B%;%_%J!<%F%-%9%H$K$h$k$H(J #createWindow $B$O(J $B!V?75,%W%m%8%'%/%H:n@.;~$K<+F0@8@.$5$l$k$,!"(J GUI Builder $B$G99?7$r $B$H$"$j$^$7$?!#(J($BMWLs(J: $B@>86(J)
$B$H$$$&>pJs$rFI$s$@$+$i$G$9!#%;%_%J!<%F%-%9%H$,$I$N%t%!!<%8%g%s$rBP>]$K$7$F$$$k$N$+ITL@$J$s$G$9$,!"(J 2.1 $B$G$O(J #createWindow $B$O<+F0@8@.$5$l$J$$$+$i!"$3$l$O0JA0$N%t%!!<%8%g%s$rBP>]$K$7$F$$$k$N$@$m$&$H9M$($F!"8eH>$N!V(JGUI Builder $B$G99?7$r

$B$G!"$A$g$C$H%F%9%H$7$F!"(J GUI Tools 1 $B$+$i(J Save Changes $B$7$F$_$?$i!"$3$l$,(J #createWindow $B$O!"$b$N$N8+;v$K%/%j%"$5$l$k$N$G!"$R$C$/$jJV$C$F$7$^$$$^$7$?(J ($B!V:o=|$5$l$k!W$C$F8@$C$F$k$s$@$b$N!"Ev$?$jA0$@$C$F(J)$B!#$8$c!"$I$3$K=q$1$P$$$$$s$@(J!?

$B$3$N7o$K4X$7$F(J TGI-NET $B$N(J Y $B$5$s$O(J $B!X(J#createWindow $B$K%3%s%]!<%M%s%H$NF0:n$r5-=R$9$k$N$OE,Ev$G$O$J$$$>$h!#(J #initializationCompletion $B$K=q$/$,$h$m$7$+$m$&!Y(J $B$H%U%)%m!<$5$l$F$$$^$9!#$?$@$7!V(Jversion 1.2b2 $B0JA0$G$O(J #createWindow $B$G$h$m$7$$!W!#M>CL$G$9$,!"A0G$$N%5%]!<%HC4Ev!";E@Z$jLr!"?J9TLr$b(J Y $B$5$s$H$$$&J}$G$7$?!#$H!"$3$s$JLu$G!"Ez$($O$9$G$K=P$F$$$?$N$G$9$,!"4]0E5-$8$cLLGr$/$J$$$+$i!"$=$N;EAH$_$r8+$F$_$h$&$H;W$C$?$o$1$G$9!#7k2L$H$7$F$O!VH=$i$J$$!W$G$9$1$I!#(J

#initializationCompletion $B%a%=%C%I$O!"%G%U%)%k%H$G$O:n@.$5$l$^$;$s!#?75,$K:n@.$9$kI,MQ$,$"$j$^$9!#?75,%a%=%C%I$r:n@.$9$k$K$O!"%3!<%I%V%i%&%6$N(J Operations $B%a%K%e!<$N(J `New Instance Method' $B$K$h$C$F!"?7$7$$%$%s%9%?%s%9%a%=%C%I$rDj5A$7$^$9!#(J `New Instance Method' $B$rA*Br$9$k$H!"(J

messageDescriptor

    $ Begin Directives $

       ÒDescription: Return a  based on ÉÓ

        Method Author:      ''.
        Method Created:     'Fri 08/30/1996 02:11:56 AM'.        
        Method Category:    'operation'.
        
        Allow Undefined Identifiers: no.
        
    $ End Directives $
    
   ^self
$B$N$h$&$J%9%1%k%H%s$,8=$l$^$9!#(JDirectives $B$O(J hidden $B$K$J$C$F$$$k$+$bCN$l$^$;$s!#$=$N>l9g$O!"(J$ Directive Hidden $ $B$NJU$j$r!"%3%^%s%I!&%-!<$r2!$7$J$,$i%/%j%C%/$9$k$H3+$/$3$H$,$G$-$^$9!#$3$3$O!"(JScript Mode $B$H(J Caps Lock $B%-!<$r8+$F$$$k$h$&$J$N$G!"3+$+$J$$>l9g$O3NG'$7$F$/$@$5$$!#$3$N%9%1%k%H%s$r85$K!"(J
initializationCompletion

    $ Begin Directives $
        ( $BCfN,(J )	
    $ End Directives $

    (self @ 'quitButton')
        on: #buttonRelease: send: #doQuit.
    ^self
$B$H!"=$@5$7$F$_$^$9!#%\%?%s$X$N(J semantic message $B$rEPO?$7$F$$$^$9!#=$@5$r%;!<%V$9$k$K$O!"(JFile $B%a%K%e!<$+$i(J Save Changes $B$rA*Br$7$^$9!#(J

#doQuit $B%a%=%C%I$r:n$j!"$=$NCf$G!"%b%8%e!<%k$K!V=*$o$C$F$M!W$H$*4j$$$7$^$9!#6qBNE*$K$O!"%b%8%e!<%k$N%$%s%9%?%s%9$K!V=*N;$7$F!W$H$*4j$$$7$^$9!#(J

doQuit

    $ Begin Directives $
        ( $BCfN,(J )	
    $ End Directives $
    
    self module doQuit.
    ^self
$B$N$h$&$K$J$j$^$9!#(J

$B%U%#!<%k%I$K;~9o$rI=<($7$F$_$^$9!#$D$$$G$K!"(J#vsAutoConfiguration $B%a%=%C%I$r;29M$K%U%)%s%H$bJQ$($F$_$^$9!#9TB7$(%a%=%C%I$O!"(JStaticTextField $B%/%i%9$rGA$$$F$_$k$HH=$j$^$9!#$3$N$h$&$K!"H=$i$J$$$H$3$m$O!"$H$j$"$($:3:Ev$9$k%/%i%9$H$=$N<~JU$rC5$7$F$$$k$H8+$D$+$k$b$N$G$9!#(J

    (self @ 'showTimeField')
        penState:(
            (PenState new)
                textFont: 'Osaka';
                textSize: 18);
        justification: #center;
        textContents: (Time now asLongDate).

$B

$B=*N;%@%$%"%m%0$O!"8GDjJ8;zNs$H!"(J2 $B8D$N%\%?%s$rIU$1$?%&%#%s%I%&$G$9!#$I$N%/%i%9$r;H$($P$$$$$N$G$7$g$&$+!#$H$$$&$o$1$G!"%3!<%I%V%i%&%6$G(J UIWindow $B%/%i%9$r3+$$$F!"(JTree View $B$r8+$F$_$^$7$g$&!#$$$/$D$+$=$l$i$7$$%/%i%9$,8+$D$+$j$^$9!#(JNotifier $B$+(J Prompter $B$N$I$A$i$+$G$7$g$&!#$=$l$>$l$N%/%i%9$r8+$F$_$^$9!#(JPrompter $B%/%i%9$G$O(J user-interaction $B$H$$$&%+%F%4%j$K(J prompt: $B$H$$$&%/%i%9!&%a%=%C%I$,$"$k$N$G!"$3$l$r;n$7$F$_$^$9!#(J

    Prompter prompt: 'Are you sure?'
$B$&!<$`!"JVEzMQ$N%U%#!<%k%I$bIU$$$F$-$A$c$$$^$7$?!#$*$^$1$K%&%#%s%I%&$O%j%5%$%:2DG=$K$J$C$F$$$^$9!#:#EY$O(J Notifier $B%/%i%9$r8+$F$_$^$9!#F1$8(J user-interaction $B$H$$$&%+%F%4%j$K(J prompt: $B$H$$$&%/%i%9!&%a%=%C%I$,$"$j$^$7$?!#(J
    Notifier prompt: 'Are you sure?'
$B$3$A$i$G$9$M!"C5$7$F$$$k$b$N$O!#$H$$$&$o$1$G!"(J

doQuit

    $ Begin Directives $
        ( $BCfN,(J )	
    $ End Directives $

   ÒCustom behavior hereÒ
    Speakers beep.
    (Notifier prompt: 'Are you sure?')
        ifFalse: [^nil].
	
   ÒNow carry out the standard exit procedureÒ
    super doQuit.
$B$3$N$h$&$KJQ99$7$^$9!#%S!<%W2;$r=P$7$F%f!<%6$NCm0U$r0z$-!"

[ go to top ]

$B%j%"%k%?%$%`$KF0$+$7$F$_$k(J

$B$5$F!"$+$s$8$s$N;~9o99?7$G$9!#$I$&$7$?$i$$$$$G$7$g$&!#Cm0U?<$$J}$J$i!"(JSmalltalk $B%a%K%e!<$N$$$A$P$s2<$K!"(JEnable Idle Tasks $B$H$$$&%"%$%F%`$,$"$k$N$K5$$,$D$$$F$$$k$H;W$$$^$9!#(JSuperCard $B%f!<%6$J$i!"$J$k$[$I!"(Jon idle $B$,;H$($k$N$@$J$H9M$($k$G$7$g$&!#$^$5$K$=$N$H$*$j$G$9!#(J

$B%"%$%I%k%?%9%/$K4X$7$F$O!"@;E5$K[)$/!"(J

$B$7$+$7!"%9%H%C%W%&%*%C%A$H$7$F$O!"%j%"%k%?%$%`$K;~4V$rI=<($7$J$1$l$P(J $B$J$j$^$;$s!#%j%"%k%?%$%`$KF0:n$5$;$k$K$O!"%?%9%/$,%"%$%I%j%s%0$N;~$K(J $B@)8f$r$b$i$($k$h$&$K!"(J addIdleTask: $B%a%=%C%I$r;H$C$F<+J,<+?H$r(J $B%"%$%I%k%?%9%/$H$7$FEPO?$7$F$*$/I,MW$,$"$j$^$9!#$3$N=hM}$O!"(J`Start' $B%\%?%s$,2!$5$l$?$H$-$K$*$3$J$C$F!"(J`Stop' $B%\%?%s$,2!$5$l$?$H$-$K$O(J removeIdleTask: $B%a%=%C%I$r;H$C$FEPO?$7$F$*$$$?%?%9%/$r:o=|$7$F$*$/(J $B$N$,NI$$$G$7$g$&!#(J

$B:G=i$K%&%#%s%I%&$r:n$k:]$K%"%$%I%k%?%9%/EPO?$r9T$$!"=*N;$9$k$H$-$K%"%$%I%k%?%9%/$r:o=|$9$k$3$H$K$7$^$7$g$&!#$^$:(J ShowTimeWindow $B%/%i%9$N%$%s%9%?%s%9!&%a%=%C%I$H$7$F%"%$%I%k%?%9%/$r:n$j$^$9!#(J

idleTask

    $ Begin Directives $
        ( $BCfN,(J )	
    $ End Directives $
    
    (self isOpen and: [self isVisible])
        ifTrue: 
            [(self @ 'showTimeField')
                textContents: (Time now asLongDate)].
   ^self

$B<+J,(J (ShowTimeWindow) $B$,%*!<%W%s$5$l$F$*$j!"$J$*$+$D2D;k>uBV$G$"$l$P(J ($B$H$$$&$3$H$O(J hide $B>uBV$b$"$k$G$7$g$&$M(J) $B!"%F%-%9%H!&%U%#!<%k%I$NCfL#$rJQ$($^$9!#$I$N$h$&$KJQ$($k$+$H$$$&$H!"8=:_;~9o$r%m%s%0I=<($7$?$b$N$G$9!#$3$l$,(J idle $B$,H/@8$9$kEY$K #initializationCompletion $B$GEPO?=hM}(J

    idleTasks := nil.
    self addIdleTask: self.
#doQuit $B$G:o=|=hM}(J
    (self module doQuit) isNil
        ifFalse: [self removeIdleTask: self]. 
    ^self

idle $BHG$O$3$l$G=*$o$j$G$9!#(JSmalltalkAgents $B$N(J idle $B$O!"(JmouseStillDown $BCf$G$bF0$-$^$9!#$J$+$J$+;H$$>!e$,$C$?$b$N$O!"(JProject $B%a%K%e!<$+$i(J export $B$7$F!"(JPIPO $B%U%!%$%k$K$7$F$*$-$^$7$g$&!#(J

[ go to top ]

$B$5$F!"CfEhKS7n;U$N(J SmalltalkAgents $B$N>R2p(J, $B%3%s%]!<%M%s%H$N:n$jJ}(J $B$r$*FI$_$NJ}$J$i!"(JThread $B$r;H$C$?

$B:G=i$K%&%#%s%I%&$r:n$k:]$K%9%l%C%I$r@8@.$7!"=*N;$9$k$H$-$K%9%l%C%I$rDd;_$9$k$3$H$K$J$j$^$9!#$G$O!"$d$C$F$_$^$7$g$&!#$^$:!"@;E5$KB'$j!"(Jupdate $B$H$$$&%$%s%9%?%s%9JQ?t$rDj5A$7$^$9!#(J

UserLib@#ShowTime 
                 name: #ShowTimeWindow
           superclass: Environment@#UIWindow
           properties: 0x0
                 tags: #()
   classVariableNames: #()
instanceVariableNames: #(update)
  sharedVariableNames: #()
           namespaces: {Environment@#NewLook}
   structureTemplates: #()
   defaultStorageSize: 0

$B$D$$$G!"(J#initializationCompletion $B%a%=%C%ICf$N%"%$%I%k%?%9%/EPO?$N(J 2 $B9T$r:o=|$7!"%9%l%C%I$r@8@.$7$^$9!#2<5-$N$h$&$K!"(JidleTask $B%a%=%C%I$r(J 1 $BIC$*$-$KAv$i$;$F$_$^$9!#$=$7$F!"$3$N%9%l%C%I$NL>A0$r%$%s%9%?%s%9JQ?t$KJ|$j9~$s$G$$$^$9!#(J

    update := Thread run:
        [thread priority: thread highPriority.
            [self isOpen] whileTrue: [
                self idleTask.
                Time delayForTicks: 60]].
$B$3$N%3!<%I$O!"(JThrerad $B%/%i%9$N(J "run:" $B%a%=%C%I$N(J Senders $B$r;2>H$7$F$R$M$/$j=P$7$^$7$?!#2?EY$G$b7+$jJV$7$^$9$,!"(J Smalltalk $B$G$O!"$3$&$$$&7]Ev$,$G$-$^$9!#(JSmalltalker $B$,%^%K%e%"%k$rFI$^$J$$$H$$$&$N$O!"$*$=$i$/!"$3$&$$$&$3$H$G$9!#%7%9%F%`A40h$KEO$k%=!<%9$r!"(Jhypertext like $B$K8+$k$3$H$,$G$-$k$N$K!"$J$s$G;f$N%^%K%e%"%k$,I,MW$J$N!)!!$H$$$&$3$H$J$N$G$7$g$&!#(JidleTask $B%a%=%C%I$O!"JL$NL>A0$K$7$?J}$,2B$$$+$bCN$l$^$;$s$,!":#2s$O!"$3$A$i$G$b7sMQ$7$^$9$N$G:o=|$7$J$$$G2<$5$$!#Dd;_$O!"(J#closeWindow $B$NCf$G%9%l%C%I$r6/@)=*N;$5$;$^$9!#(J
closeWindow

    $ Begin Directives $
        ( $BCfN,(J )	
    $ End Directives $
    
    (update respondsTo: #terminate) ifTrue: [
        update terminate].
    super closeWindow.

ShowTimeWindow $B%/%i%9$N(J #doQuit $B%a%=%C%I$b!"%"%$%I%k%?%9%/$N:o=|=hM}$r doQuit $ Begin Directives $ ( $BCfN,(J ) $ End Directives $ self module doQuit. ^self

Thread $BHG$O$3$l$G=*$o$j$G$9!#(J

[ go to top ]

$B%9%?%s%I%"%m%s%"%W%j%1!<%7%g%s$r:n$k(J


Application Delivery Toolkit

$B%9%?%s%I%"%m%s%"%W%j%1!<%7%g%s$N:n@5e$,$j$^$9!#(JFile $B%a%K%e!<$+$i(J Import PIPO... $B$GA*Br$7!"(JCreator $B$rF~$l!"%a%b%j3d$jEv$F$r7h$a!"%*%W%7%g%s$r@_Dj$7$F!"(JBuild $B$re$,$C$?e$NMFNL$r;}$A$^$9!#$1$C$3$&Bg$-$$$G$9$M!#:G8e$K!"@;E5$KB'$j!"(JBuild Options $B$N@_Dj$rJQ$($F$_$F!"(JidleTask $BHG!"(JThread $BHG$=$l$>$l$N%"%W%j%1!<%7%g%s$r:n@.$7$F$_$?7k2L$r7G$2$F$*$-$^$9!#%7%9%F%`$O(J System 7.5.5 $B$K4A;z%H!<%/(J 7.5.2 $B$r$+$V$;$?$b$N$G$9!#(J

$B%7%9%F%`9=@.(J

  • PowerMacintosh 8500/120 48MB, 2GBHDD
  • System 7.5.5 with $B4A;z(JTalk 7.5.2
  • SmalltalkAgents 2.1 (Product Version $B$O(J 2.1.1)
  • ADT 2.1 (Product Version $B$O(J 2.1.2)

$B$J$*!"8=>u$G$O(J PowerMacintosh $B>e$G(J Application Delivery Toolkit $B$K$h$C$F:n@.$5$l$?%"%W%j%1!<%7%g%s$O!"(J

  • AOS PowerPlug
  • AOS Runtime
  • GNU RegEx (fat)
  • WASTE (fat)
  • ANSI C PPC Lib
$B$,!"%"%W%j%1!<%7%g%s$HF10l%G%#%l%/%H%j(J, $B$^$?$O(J Extensions ($B5!G=3HD%%U%)%k%@(J) $BFb$KB8:_$7$J$$$HF0$-$^$;$s!#$J$$>l9g$ON)$A>e$2;~$K%(%i!
Build Options $B@8@.$KMW$9$k;~4V(J $B%"%W%j%1!<%7%g%s%5%$%:(J (bytes)
thread version
Fast Build (2 pass) 2'10" 2,404,739
Standard Build (8 pass) 4'33" 2,328,527
Minimum Space Build (8 pass) 4'33" 2,328,387
idleTask version
Fast Build (2 pass) 2'11" 2,404,263
Standard Build (8 pass) 4'34" 2,327,735
Minimum Space Build (8 pass) 4'34" 2,327,735

$B$3$A$i$N%"%W%j%1!<%7%g%s:n@.$b!"$R$8$g$&$K4JC1$G$"$k$3$H$,$*H=$j$$$?$@$1$?$+$H;W$$$^$9!#$-!"(JThread $BHG$G(J 33 $B%9%F%C%W!"(JidleTask $BHG$G!"$o$:$+(J 23 $B%9%F%C%W$G$9!#B>$NLLE]$J:n6H$O!"$<$s$V%/%i%9!&%i%$%V%i%j$,$d$C$F$/$l$^$9!#(J

[ go to top ]


Created: Sep 1, 1996
[ SuperCard ] [ Delphi ] [ SmalltalkAgents ]