Article View: fj.sys.next
Article #3951Re: Question about Postscript Ops in NeXT Step Windows
From: Yasushi Kuno
Date: Thu, 30 Apr 1992 02:40
Date: Thu, 30 Apr 1992 02:40
165 lines
7465 bytes
7465 bytes
$B5WLn$G$9!#(J
$B;d$N<ALd(J:
> $B$H$b$"$l(JDPS$B$J$s$@$+$i!"(JView$B%/%i%9$N%5%V%/%i%9$r:n$C$F!"$=$NAk(J
> $B$r%"%W%j%1!<%7%g%s$NCf$KD%$jIU$1$F$*$-!"(JDrawSelf$B%a%=%C%I$NCf$G(J
> PSmoveto$B$H$+(JPSlineto$B$H$+$G3(IA$$$?$iIA$1$k$b$s$H;W$C$F$d$C$F$_$?(J
> $B$N$G$9$,!"2?$K$b=P$J$$$s$G$9!#(JNXEraseRect$B$H$+(JNXFrameRect$B$H$+$O;W$C(J
> $B$?DL$j$KF0$/$s$G$9$1$I!#(J
$B$K$D$$$F!"$5$C$=$/$N$4;XE&$"$j$,$H$&$4$6$$$^$7$?!#8=:_%K%e!<%9(J
$B$G(J3$B7o!"B>$K%a!<%k$G(J4$B7o$465<($$$?$@$$$F$^$9$,!"$=$N$&$A(J1$B7o$,@52r(J
$B$G!"$V$8F0$/$h$&$K$J$j$^$7$?!#$D$^$j!"(J
$B!{(J <dpsclient/psops.h> $B$r(Jimport$B$7$F$J$+$C$?(J
$B$N$,860x$G$7$?!#$3$C$A$O(JPSmoveto(100.0, 100.0)$B$H$+=q$$$F$=$l$G$$(J
$B$$$H;W$C$F$$$?$N$G$9$,!"$=$l$@$H(Jdouble$B$,EO$C$F!"8~$&$G$O(Jfloat$B$G(J
$B<u$1$h$&$H$7$^$9$+$i!"@5$7$$CM$,EO$i$J$$$s$G$9$M!<!#$J$s$+!"$=$s(J
$B$J$U!<$J$3$H$@$m$&$H$O;W$C$?$N$G$9!#$*A{$,$;$7$^$7$?!#$G!"0l1~3'(J
$BMM$+$i$$$?$@$$$?$4;XE&$N$^$H$a$r7G:\$7$F$*$-$^$9!#(J
$B!{(J $B$R$m$N$V$5$s(J:
/NeXTDeveloper/Example/Draw$B$K3($r=q$/%"%W%j%1!<%7%g%s$NNc$,F~$C$F$$$k(J
$B$N$G!"$=$A$i$r;29M$K$9$l$P2r7h$N;e8}$,DO$a$k$+$H;W$$$^$9!#(J
$B"+$b$A$m$s8+$?$N$G$9$,!"(Jimport$B$O$A$c$s$H8+$F$$$J$+$C$?$G$9!#(J
$B$9$$$^$;$s!#(J
$B!{(J $B$_$d$?$5$s(J:
$B%$%s%?!<%U%'!<%9%S%k%@!<$G:n$C$F$$$k$s$G$9$h$M!)(J
$B"+(JIB$B$N(JTutorial$B$OESCf$^$G$d$j$^$7$?$,!"$G$b$3$l$O(JIB$B$8$c$J$$(J
$B$G$9!#$@$C$F!"(JIB$B$NA0$K!VMg$G:n$k$H$I$&$+(J?$B!W$rBN83$7$F$_(J
$B$?$$$8$c$J$$$G$9$+!#(J
$B%]%9%H%9%/%j%W%H%*%Z%l!<%?!<$N4V0c$$$J$i$P(J...
$B%l%C%I%V%C%/!J(JPostScript Reference Manual$B!K$O$*;}$A$G$7$g$&$+!)(J
$B"+(JPS$B$N%^%K%e%"%k$OEvA3CN$C$F$^$9$7!"$4$/4JC1$JNc$G$9$7!"(J
gs$B$GF0$/$3$H$r3NG'$:$_$G$7$?!#$4Ci9p$I$&$b!#(J
$B$^$?!"$b$7$+$9$k$H!"0z?t$NEO$7J}$r4V0c$($F$$$k$N$+$b$7$l$^$;$s$M!#(J
$B"+<B$O$3$l$,(J($B$"$k0UL#$G$O(J)$B1T$+$C$?$G$9$,!"(J
$B%]%9%H%9%/%j%W%H!v$=$N$b$N!v$G$7$?$i!"%9%?%C%/$K0z?t$r@Q$_$^$9$,!"(J
Objective-C $B$N(J PS###### $B4X?t$O!"#C$N4X?t$HF1$87A$G0z?t$rEO$7$^$9!#(J
$B"+$5$9$,$K$=$l$8$c$J$$$G$9!#(JOBJC$B$G%9%?%C%/$K@Q$`$J$s$F$I$&(J
$B$d$k$N$+$J(J?
$B$b$7$+$7$F!"I8=`#P#S$G$$$&$H$3$m$N!"(J"showpage" $B$rK:$l$F$$$k$H$+!)!*(J
$B"+%^%K%e%"!V(JNextStep Concepts$B!W$K$O(Jshowpage$B$OITMW!"$H=q$$(J
$B$F$"$j$^$7$?$7!"2r7h$7$?:#$b$J$7$GF0$$$F$$$^$9!#(J
$B$"$H!"(JInterface Builder Excercises $B$r0lEY;n$7$F$_$k;v$b$*>)$a$7$^$9!#(J
Objective-C $B$N!VJ70O5$!W$bJ,$+$C$F$-$^$9$7!#(J
$B"+>e$G8@$C$?$h$&$KN>J};n$7$?$o$1$G$9$,!";d$N46A[$G$O:G=i$O(J
IB$B$J$7$NJ}$,(JOBJC$B$NJ70O5$$,$h$/J,$+$k$h$&$J5$$,$7$^$9!#(J
$B!{(J $B?{@8$5$s(J:
$B;d$N7P83$+$i$9$k$H!"$3$&$$$&>l9g(JPostScript$B%3!<%I$,NI$/$J$+$C$?$H$$$&>l9g$,(J
$BB?$+$C$?$h$&$G$9!#$?$H$($P(Jsetgray$B$,Gr$K$J$C$F$$$F2?$b8+$($J$+$C$?$H$+!":G(J
$B8e$N(Jstroke$B$rK:$l$F$$$?$H$+!D0c$C$F$$$?$i$4$a$s$J$5$$!#(J
$B"+(Jstroke$B$d(Jfill$B$O$A$c$s$H$"$j$^$7$?$,!#$4;XE&$I$&$b!#(J
$B$3$N$h$&$J%(%i!<$rKI$0$?$a!"$^$:$O(JYAP$B$r;H$C$F@5$7$$(JPostScript$B%3!<%I$r:n$j(J
$B>e$2!"$=$l$r(Jpswrap$B$G(JC$B$N4X?t$KMn$7$F$7$^$&$N$b0l$D$N<j$G$9!#(J
$B"+$9$$$^$;$s!"(JYAP$B$C$F2?$G$9$+(J?
$B$"$H!"(Jpswrap$B$7$?$i>e5-(Jimport$B$NLdBj$O5/$-$J$$$N$@$m$&$+!#(J
$B$=$l$J$i!"$=$&$9$l$P$h$+$C$?$+$bCN$l$^$;$s$M!#(J
drawSelf:::$B$N%=!<%9$,$"$l$P!"$b$C$HJ,$+$k$N$@$,!D(J
$B"+$;$C$+$/$@$7C;$$$+$i:G8e$KIUO?$H$7$F$D$1$H$-$^$9!#(J
$B$"$H$O(Jmail$B$J$N$GMW;]$@$1!#(J
$B!{(J stroke$B$7$F$J$$$H$+(J? $B$H$$$&$4;XE&$r2<$5$C$?J}!#(J
$B"+$d$C$Q$jB?$$4V0c$$$J$s$G$7$g$&$+!#;d$N>l9g$O$3$l$8$c$J$+$C(J
$B$?$G$9!#(J
$B!{(J $BNcBj$rAw$C$F$/$@$5$C$?J}!#(J
$B"+$"$j$,$H$4$6$$$^$7$?!#<B$O$=$l$H$[$H$s$IF1$8$3$H$r$d$C$F(J
$B8+$F$@$a$@$C$?$s$G$9!#(Jimport$B$b4^$a$F$/$l$?$i0lH/$@$C$?$s(J
$B$G$9$,!#(J
$B!{(J $B%X%C%@%U%!%$%k$rF~$l$F$$$J$$$N$G$O(J?
$B"+$^$C$?$/!"$:$P$j@52r$G$7$?!#46<U!"46<U(J!
$B!{(J PS$B$@$H:G8e$K(Jstroke$B$H$+(Jfill$B$,I,MW$G$9!#(J
$B"+$O$$!"B8$8$F$*$j$^$7$?!#$4;XE&$"$j$,$H$&$4$6$$$^$7$?!#(J
$B$H$f!<$o$1$G!"$D$^$i$sNcBj$G$9$,!"F0$$$?$7C;$$$N$G$D$1$H$-$^$9$M!#(J
$B$I$&$b?'!9$*A{$,$;$7$^$7$?!#(J
prototype$B$,$J$+$C$?$iE\$k$h$&$K$9$l$P$h$+$C$?$M(J $B5WLn(J
---- main.m ----------------------------------------------------
#import <appkit/appkit.h>
#import "TestView.h"
main() {
id myWin, myPanel, myMenu, myView;
NXRect aRect;
[Application new];
NXSetRect(&aRect, 100.0, 350.0, 300.0, 300.0);
myWin = [Window newContent: &aRect
style: NX_TITLEDSTYLE
backing: NX_BUFFERED
buttonMask: NX_MINIATURIZEBUTTONMASK
defer: NO];
[myWin setTitle: "A Test"];
NXSetRect(&aRect, 0.0, 0.0, 300.0, 300.0);
myView = [TestView newFrame: &aRect];
[[myWin contentView] addSubview: myView];
NXSetRect(&aRect, 100.0, 700.0, 300.0, 40.0);
myPanel = [Panel newContent: &aRect
style: NX_TITLEDSTYLE
backing: NX_BUFFERED
buttonMask: NX_CLOSEBUTTONMASK
defer: YES];
[myPanel setTitle: "About A Test"];
[myPanel removeFromEventMask: (NX_KEYDOWNMASK|NX_KEYUPMASK)];
myMenu = [Menu newTitle: "A Test"];
[[myMenu addItem: "Info..."
action: @selector(orderFront:)
keyEquivalent: 'i'] setTarget: myPanel];
[myMenu addItem: "Hide" action: @selector(hide:) keyEquivalent: 'h'];
[myMenu addItem: "Quit" action: @selector(terminate:) keyEquivalent: 'q'];
[myMenu sizeToFit];
[NXApp setMainMenu: myMenu];
[myWin display];
[myWin orderFront: nil];
[myWin makeKeyWindow];
[NXApp run];
[NXApp free];
}
---- TestView.h ----------------------------------------------------
#import <appkit/View.h>
@interface TestView : View {
}
@end
---- TestView.m ----------------------------------------------------
#import "TestView.h"
#import <dpsclient/psops.h>
@implementation TestView
- drawSelf: (const NXRect*)rects :(int)rectCount {
PSnewpath(); PSsetlinewidth(1.0); PSsetgray(NX_BLACK);
PSmoveto(100.0, 100.0);
PSrlineto(0.0, 100.0); PSrlineto(100.0, 0.0); PSrlineto(0.0, -100.0);
PSclosepath(); PSstroke();
}
@end
------------------------------------------------------------------
Technical Details
Message-ID:
<1992Apr30.024000.18636@gssm.otsuka.tsukuba.ac.jp>Path:
arc1-ca.pugleaf.net!sparky!uunet!ccut!s.u-tokyo!riksun!rknss1!rkna50!nttlab!utogw!kunoReferences:
<1992Apr27.014814.11816@gssm.otsuka.tsukuba.ac.jp> <1992Apr28.044755.28497@gssm.otsuka.tsukuba.ac.jp>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 115a95,1b4322cd2bd0cc36 X-Google-Attributes: gid115a95,public X-Google-ArrivalTime: 1992-04-29 19:40:00 PST Path: arc1-ca.pugleaf.net!sparky!uunet!ccut!s.u-tokyo!riksun!rknss1!rkna50!nttlab!utogw!kuno From: kuno@gssm.otsuka.tsukuba.ac.jp (Yasushi Kuno) Newsgroups: fj.sys.next Subject: Re: Question about Postscript Ops in NeXT Step Windows Message-ID: <1992Apr30.024000.18636@gssm.otsuka.tsukuba.ac.jp> Date: 30 Apr 92 02:40:00 GMT References: <1992Apr27.014814.11816@gssm.otsuka.tsukuba.ac.jp> <1992Apr28.044755.28497@gssm.otsuka.tsukuba.ac.jp> Sender: news@gssm.otsuka.tsukuba.ac.jp Distribution: fj Organization: GSSM Otsuka, Univ. of TSUKUBA, Tokyo, Japan Lines: 165