[comp.windows.news] Fun with windows: make your workstation look more like a Mac...

elwell@ichthyosaur.cis.ohio-state.edu (Clayton M. Elwell) (07/12/88)

This article contains a context diff for the file 'mac.ps' in NeWS 1.1
that makes the mac-style window class more mac-like.  Also, since the
class MacWindow is equivalent in function and interface to ScrollWindow,
you can patch 'nterm' to use it, even without the source (I hate editing
binaries, but it worked).  Also, if you've installed the fixed window size
stuff from Jorgen Knudsen, it will use it, which is handy.

You'll need to remove the signature at the end.

Enjoy,

Clayton

-----------------------------------CUT HERE-----------------------------
*** mac.ps	Sun Jul 10 21:19:30 1988
--- mac.ps.orig	Tue Apr  5 15:03:44 1988
***************
*** 9,16 ****
  systemdict begin
  
  % ============================= MacWindow =============================
! /MacWindow
! systemdict /EnhancedWindow known not { LiteWindow } { EnhancedWindow } ifelse
  dictbegin
      /HScrollbar		null def
      /VScrollbar		null def
--- 9,15 ----
  systemdict begin
  
  % ============================= MacWindow =============================
! /MacWindow LiteWindow
  dictbegin
      /HScrollbar		null def
      /VScrollbar		null def
***************
*** 21,30 ****
  dictend
  classbegin
      /BorderLeft		1 def
!     /BorderBottom	16 def
!     /BorderRight	16 def
!     /BorderTop		19 def
!     /FrameFont		/Helvetica-Bold findfont 12 scalefont def
      /ClientMinWidth {
      gsave
          FrameFont setfont
--- 20,29 ----
  dictend
  classbegin
      /BorderLeft		1 def
!     /BorderBottom	18 def
!     /BorderRight	18 def
!     /BorderTop		20 def
!     /FrameFont		/Helvetica-Bold findfont 14 scalefont def
      /ClientMinWidth {
      gsave
          FrameFont setfont
***************
*** 61,67 ****
      /StripeMargin	2 def
      /StripeHeight	12 def
      /StripeBase		15 def
!     /CloseControlX	12 def
      /destroy { % - => - (Create frame control canvases/items)
          /HScrollbar null def
          /VScrollbar null def
--- 60,66 ----
      /StripeMargin	2 def
      /StripeHeight	12 def
      /StripeBase		15 def
!     /CloseControlX	16 def
      /destroy { % - => - (Create frame control canvases/items)
          /HScrollbar null def
          /VScrollbar null def
***************
*** 90,101 ****
  	    rectpath fill
      grestore
      } def
-     /PaintFrameLabel {
- 	FrameWidth 2 div
- 	FrameHeight BorderTop sub
- 	BorderTop currentfont fontascent sub 2 div
- 	currentfont fontdescent max 2 add add moveto FrameLabel cshow
-     } def
      /PaintFocus	{ % - => - (Paint frame canvas)
  	gsave
  	FrameCanvas setcanvas
--- 89,94 ----
***************
*** 133,148 ****
  	
          shapescrollbars
      } def
-     /stretchboximage 14 14 1 { } { <
- 	0000 0000 3F80 2080 20F8 2088 2088 2088
- 	3F88 0808 0808 0808 0FF8 0000
-     > } buildimage def
      /PaintFrameControls { % - => - (Paint frame control areas)
      gsave
! 	CloseControl setcanvas 2 4 moveto 2 14 lineto 13 14 lineto 13 4 lineto
! 	2 4 lineto stroke
! 	StretchControl setcanvas 1 1 translate 14 14 scale
! 	false stretchboximage imagemaskcanvas
          paintscrollbars
      grestore
      } def
--- 126,135 ----
  	
          shapescrollbars
      } def
      /PaintFrameControls { % - => - (Paint frame control areas)
      gsave
! 	CloseControl setcanvas 0 1 moveto /box showicon
! 	StretchControl setcanvas 0 0 moveto /stretchSE showicon
          paintscrollbars
      grestore
      } def
***************
*** 192,203 ****
  % ============================= ScrollItem =============================
  /MacScrollbar ScrollbarItem []
  classbegin
!     /ButtonSize	    	14 def
!     /BoxSize		14 def		% height of box
!     /ArrowSize		14 def				% height of btn arrow
!     /ScrollDownArrow 14 14 1 { } { <
! 	0000 0000 1FC0 1040 1040 1040 F078 4010
! 	2020 1040 0880 0500 0200 0000
  	> } buildimage def
  
      /ItemFillColor	.75 .75 .75 rgbcolor def
--- 179,189 ----
  % ============================= ScrollItem =============================
  /MacScrollbar ScrollbarItem []
  classbegin
!     /BoxSize		{ButtonSize} def		% height of box
!     /ArrowSize		16 def				% height of btn arrow
!     /ScrollDownArrow 16 16 1 { } { <
!         07F8 0FF8 0818 0818 0818 0818 781F F81F
!         8002 4004 2008 1010 0820 0440 0280 0100
  	> } buildimage def
  
      /ItemFillColor	.75 .75 .75 rgbcolor def
***************
*** 219,236 ****
          ItemFrame 0 0 ItemWidth ButtonSize rectframe
          ButtonFillColor setcolor gsave fill grestore
          ItemBorderColor setcolor eofill
!         ItemBorderColor 14 14
!         ItemWidth ArrowSize sub 2 div ItemFrame
! 	BarVertical? { 1 sub } { 2 sub } ifelse	    % hack hack
! 	PaintArrow
          
  
          ItemFrame 0 ItemHeight ButtonSize sub ItemWidth ButtonSize rectframe
          ButtonFillColor setcolor gsave fill grestore
          ItemBorderColor setcolor eofill
!         ItemBorderColor 14 -14
!         ItemWidth ArrowSize sub 2 div ItemHeight 1 add
! 	ItemFrame sub PaintArrow
      } def
      /PaintBox { % - => - (paint box)
          ItemValue BoxPath
--- 205,219 ----
          ItemFrame 0 0 ItemWidth ButtonSize rectframe
          ButtonFillColor setcolor gsave fill grestore
          ItemBorderColor setcolor eofill
!         ItemBorderColor 16 16
!         ItemWidth ArrowSize sub 2 div ItemFrame PaintArrow
          
  
          ItemFrame 0 ItemHeight ButtonSize sub ItemWidth ButtonSize rectframe
          ButtonFillColor setcolor gsave fill grestore
          ItemBorderColor setcolor eofill
!         ItemBorderColor 16 -16
!         ItemWidth ArrowSize sub 2 div ItemHeight ItemFrame sub PaintArrow
      } def
      /PaintBox { % - => - (paint box)
          ItemValue BoxPath
--------------------------------CUT HERE---------------------------------


Clayton M. Elwell <elwell@tut.cis.ohio-state.edu>
Ohio State University CIS Dept. Research Computing Facility

"... there was a *third* possibility that we hadn't even counted
upon ..."		--Arlo Guthrie, "Alice's Restaurant"

tjcm@stl.stc.co.uk (Crawford Macnab) (08/01/88)

In article <17523@tut.cis.ohio-state.edu> elwell@ichthyosaur.cis.ohio-state.edu (Clayton M. Elwell) writes:
>This article contains a context diff for the file 'mac.ps' in NeWS 1.1
>that makes the mac-style window class more mac-like.  Also, since the

We have only recently received our official release of NeWS 1.1 and I have been
unable to find any file called 'mac.ps'. Did this only appear in early releases
of NeWS 1.1 (perhaps removed from later ones for legal reasons :-)) ??

Could somenone post this file to me or if there appears to be a lot of interest to the net.

Thanks in advance,
-- 
Crawford Macnab      ( tjcm@stl.stc.co.uk +44-279-29531 Ext 2153 )

STC TECHNOLOGY LTD, London Road,
Harlow, Essex, CM17 9NA, United Kingdom.

msteen@westc.UUCP (Martien F. van Steenbergen) (08/04/88)

I'd like a copy too.

Martien.