97 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			97 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
|  | <TITLE>scopedobject - Create and manipulate a scoped \[incr Tcl\] class object.</TITLE> | ||
|  | <H1>scopedobject - Create and manipulate a scoped \[incr Tcl\] class object.</H1> | ||
|  | 
 | ||
|  | </pre><H2>SYNOPSIS</H2> | ||
|  | <B>scopedobject<I> <I>objName </I>?<I>options</I>? | ||
|  | </pre><H2>INHERITANCE</H2> | ||
|  | None | ||
|  | </pre><H2>STANDARD OPTIONS</H2> | ||
|  | <P> | ||
|  | <pre> | ||
|  | Name:                   <B>enterscopecommand:</B> | ||
|  | Command-Line Switch:	<B>-enterscopecommand</B> | ||
|  | </pre> | ||
|  | <UL> | ||
|  | Specifies a Tcl command to invoke when an object enters scope | ||
|  | (i.e. when it is created..). The default is {}. | ||
|  | </UL> | ||
|  | <P> | ||
|  | <pre> | ||
|  | Name:                   <B>enterscopecommand:</B> | ||
|  | Command-Line Switch:	<B>-enterscopecommand</B> | ||
|  | </pre> | ||
|  | <UL> | ||
|  | Specifies a Tcl command to invoke when an object exits scope | ||
|  | (i.e. when it is deleted..). The default is {}. | ||
|  | </UL> | ||
|  | <P> | ||
|  | </pre><HR> | ||
|  | 
 | ||
|  | </pre><H2>DESCRIPTION</H2> | ||
|  | <P> | ||
|  | The <B>scopedobject</B> command creates a base class for defining | ||
|  | Itcl classes which posses scoped behavior like Tcl variables. | ||
|  | The objects are only accessible within the procedure in which | ||
|  | they are instantiated and are deleted when the procedure returns. | ||
|  | This class was designed to be a general purpose base class for | ||
|  | supporting scoped incr Tcl classes.  The options include the | ||
|  | execute a Tcl script command when an object enters and exits its | ||
|  | scope. | ||
|  | </pre><H2>METHODS</H2> | ||
|  | <P> | ||
|  | The <B>scopedobject</B> command creates a new Tcl command whose | ||
|  | name is <I>pathName</I>.  This | ||
|  | command may be used to invoke various operations on the object. | ||
|  | It has the following general form: | ||
|  | <pre> | ||
|  | <I>pathName option </I>?<I>arg arg ...</I>? | ||
|  | </pre> | ||
|  | <I>Option</I> and the <I>arg</I>s | ||
|  | determine the exact behavior of the command.  The following | ||
|  | commands are possible for scopedobject objects: | ||
|  | </pre><H2>OBJECT-SPECIFIC METHODS</H2> | ||
|  | <DL> | ||
|  | <DT> <I>pathName <B>cget</B> <I>option</I> | ||
|  | </I></B> | ||
|  | <DD> Returns the current value of the configuration option given | ||
|  | by <I>option</I>. | ||
|  | <I>Option</I> may have any of the values accepted by the <B>scopedobject</B> | ||
|  | command. | ||
|  | </DL> | ||
|  | <DL> | ||
|  | <DT> <I>pathName</I> <B>configure</B> ?<I>option</I>? ?<I>value option value ...</I>? | ||
|  | </I></B> | ||
|  | <DD> Query or modify the configuration options of the object. | ||
|  | If no <I>option</I> is specified, returns a list describing all of | ||
|  | the available options for <I>pathName</I>.  If <I>option</I> is specified | ||
|  | with no <I>value</I>, then the command returns a list describing the | ||
|  | one named option (this list will be identical to the corresponding | ||
|  | sublist of the value returned if no <I>option</I> is specified).  If | ||
|  | one or more <I>option-value</I> pairs are specified, then the command | ||
|  | modifies the given objects option(s) to have the given value(s);  in | ||
|  | this case the command returns an empty string. | ||
|  | <I>Option</I> may have any of the values accepted by the <B>scopedobject</B> | ||
|  | command. | ||
|  | 
 | ||
|  | </DL> | ||
|  | </pre><H2>EXAMPLE</H2> | ||
|  | <UL> | ||
|  | The scopedobject was primarily meant to be a base class.  The | ||
|  | following is an example of usage without inheritance: | ||
|  | </UL> | ||
|  | <P> | ||
|  | <pre> | ||
|  |   proc scopedobject_demo {} { | ||
|  |     scopedobject #auto \ | ||
|  |         -exitscopecommand {puts "enter scopedobject_demo"} \ | ||
|  |         -exitscopecommand {puts "exit scopedobject_demo"} | ||
|  |   } | ||
|  | 
 | ||
|  |   scopedobject_demo | ||
|  | 
 | ||
|  | </pre> | ||
|  | </pre><H2>AUTHOR</H2> | ||
|  | John A. Tucker | ||
|  | </pre><H2>KEYWORDS</H2> | ||
|  | scopedobject, object |