<?xml version="1.0"?>

<st-source>
<time-stamp>From VisualWorks® NonCommercial, 7.4.1 of May 30, 2006 on January 26, 2007 at 10:27:13 am</time-stamp>
<!-- Package InClass* -->


<name-space>
<name>InClass</name>
<environment>Smalltalk</environment>
<private>false</private>
<imports>
			private Smalltalk.*
			</imports>
<category>InClass</category>
<attributes>
<package>InClass</package>
</attributes>
</name-space>

<class>
<name>MyView</name>
<environment>InClass</environment>
<super>UI.View</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>keyboardProcessor keyboardProcessor </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>My Classes</category>
<attributes>
<package>InClass</package>
</attributes>
</class>

<class>
<name>MyCustomView</name>
<environment>InClass</environment>
<super>UI.ApplicationModel</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>view view </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>InClass</category>
<attributes>
<package>InClass</package>
</attributes>
</class>

<class>
<name>MyController</name>
<environment>InClass</environment>
<super>UI.ControllerWithMenu</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>InClass</category>
<attributes>
<package>InClass</package>
</attributes>
</class>

<class>
<name>MyCustomViewApp</name>
<environment>InClass</environment>
<super>UI.ApplicationModel</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>view view </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>InClass</category>
<attributes>
<package>InClass</package>
</attributes>
</class>






<methods>
<class-id>InClass.MyCustomViewApp class</class-id> <category>resources</category>

<body package="InClass" selector="mainmenu">mainmenu
	"Tools.MenuEditor new openOnClass: self andSelector: #mainmenu"

	&lt;resource: #menu&gt;
	^#(#{UI.Menu} #(
			#(#{UI.MenuItem} 
				#rawLabel: 'File' 
				#submenu: #(#{UI.Menu} #(
						#(#{UI.MenuItem} 
							#rawLabel: 'Open' 
							#value: #openDoc ) 
						#(#{UI.MenuItem} 
							#rawLabel: 'Exit' 
							#value: #exitDoc ) ) #(2 ) nil ) ) ) #(1 ) nil ) decodeAsLiteralArray</body>
</methods>

<methods>
<class-id>InClass.MyCustomViewApp class</class-id> <category>interface specs</category>

<body package="InClass" selector="windowSpec">windowSpec
	"Tools.UIPainter new openOnClass: self andSelector: #windowSpec"

	&lt;resource: #canvas&gt;
	^#(#{UI.FullSpec} 
		#window: 
		#(#{UI.WindowSpec} 
			#label: 'Shapes' 
			#bounds: #(#{Graphics.Rectangle} 512 384 947 584 ) 
			#flags: 4 
			#menu: #mainmenu ) 
		#component: 
		#(#{UI.SpecCollection} 
			#collection: #(
				#(#{UI.ArbitraryComponentSpec} 
					#layout: #(#{Graphics.Rectangle} 4 12 423 193 ) 
					#name: #ViewHolder1 
					#component: #myView ) ) ) )</body>
</methods>


<methods>
<class-id>InClass.MyCustomViewApp</class-id> <category>accessing</category>

<body package="InClass" selector="myView">myView
  ^view.</body>
</methods>

<methods>
<class-id>InClass.MyCustomViewApp</class-id> <category>initialize-release</category>

<body package="InClass" selector="initialize">initialize
   super initialize.
   view := MyView new.
   view model: self.</body>
</methods>

<methods>
<class-id>InClass.MyCustomViewApp</class-id> <category>actions</category>

<body package="InClass" selector="exitDoc">exitDoc
   self closeRequest</body>
</methods>


<methods>
<class-id>InClass.MyController</class-id> <category>events</category>

<body package="InClass" selector="redButtonPressedEvent:">redButtonPressedEvent: aEvent
  Transcript show: (self sensor cursorPointFor: aEvent) ; cr.
</body>

<body package="InClass" selector="desiresFocus">desiresFocus
  ^true.</body>

<body package="InClass" selector="keyPressedEvent:">keyPressedEvent: anEvent
    Transcript show: anEvent keyValue printString; cr.</body>
</methods>

<methods>
<class-id>InClass.MyController</class-id> <category>initialize-release</category>

<body package="InClass" selector="initialize">initialize
	"Initialize a newly created instance. This method must answer the receiver."

	super initialize.
	" *** Replace this comment with the appropriate initialization code *** "
	^self</body>
</methods>


<methods>
<class-id>InClass.MyView</class-id> <category>displaying</category>

<body package="InClass" selector="displayOn:">displayOn: aContext
   aContext paint: ColorValue red.
   (Rectangle origin: 10@10 corner: 50@50) displayFilledOn: aContext.</body>
</methods>

<methods>
<class-id>InClass.MyView</class-id> <category>initialize-release</category>

<body package="InClass" selector="initialize">initialize
	"Initialize a newly created instance. This method must answer the receiver."

	super initialize.
	" *** Replace this comment with the appropriate initialization code *** "
	^self</body>
</methods>

<methods>
<class-id>InClass.MyView</class-id> <category>accessing</category>

<body package="InClass" selector="keyboardProcessor:">keyboardProcessor: kb
   keyboardProcessor := kb.</body>

<body package="InClass" selector="keyboardProcessor">keyboardProcessor
   ^keyboardProcessor.</body>

<body package="InClass" selector="defaultControllerClass">defaultControllerClass
   ^ MyController.</body>

<body package="InClass" selector="desiresFocus">desiresFocus
   ^true</body>
</methods>


<methods>
<class-id>InClass.MyCustomView class</class-id> <category>resources</category>

<body package="InClass" selector="mainmenu">mainmenu
	"Tools.MenuEditor new openOnClass: self andSelector: #mainmenu"

	&lt;resource: #menu&gt;
	^#(#{UI.Menu} #(
			#(#{UI.MenuItem} 
				#rawLabel: 'File' 
				#submenu: #(#{UI.Menu} #(
						#(#{UI.MenuItem} 
							#rawLabel: 'New' 
							#value: #newDoc ) 
						#(#{UI.MenuItem} 
							#rawLabel: 'Open' 
							#value: #openDoc ) 
						#(#{UI.MenuItem} 
							#rawLabel: 'Exit' 
							#value: #exitDoc ) ) #(2 1 ) nil ) ) ) #(1 ) nil ) decodeAsLiteralArray</body>
</methods>

<methods>
<class-id>InClass.MyCustomView class</class-id> <category>interface specs</category>

<body package="InClass" selector="windowSpec">windowSpec
	"Tools.UIPainter new openOnClass: self andSelector: #windowSpec"

	&lt;resource: #canvas&gt;
	^#(#{UI.FullSpec} 
		#window: 
		#(#{UI.WindowSpec} 
			#label: 'Shapes' 
			#bounds: #(#{Graphics.Rectangle} 512 384 977 687 ) 
			#flags: 4 
			#menu: #mainmenu ) 
		#component: 
		#(#{UI.SpecCollection} 
			#collection: #(
				#(#{UI.ArbitraryComponentSpec} 
					#layout: #(#{Graphics.Rectangle} -4 -2 464 306 ) 
					#name: #ViewHolder1 
					#component: #myView ) ) ) )</body>
</methods>


<methods>
<class-id>InClass.MyCustomView</class-id> <category>accessing</category>

<body package="InClass" selector="myView">myView
  ^view.</body>
</methods>

<methods>
<class-id>InClass.MyCustomView</class-id> <category>initialize-release</category>

<body package="InClass" selector="initialize">initialize
    super initialize.
    view := MyView new.
    view model: self.</body>
</methods>

<methods>
<class-id>InClass.MyCustomView</class-id> <category>actions</category>

<body package="InClass" selector="exitDoc">exitDoc
   self closeRequest.</body>

<body package="InClass" selector="openDoc">openDoc</body>

<body package="InClass" selector="newDoc">newDoc</body>
</methods>



</st-source>
