You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
407 lines
11 KiB
HTML
407 lines
11 KiB
HTML
15 years ago
|
<TITLE>scrolledhtml - Create and manipulate a scrolled text widget with the capability</TITLE>
|
||
|
<H1>scrolledhtml - Create and manipulate a scrolled text widget with the capability</H1>
|
||
|
|
||
|
of displaying HTML formatted documents.
|
||
|
</pre><H2>SYNOPSIS</H2>
|
||
|
<B>scrolledhtml<I> <I>pathName </I>?<I>options</I>?
|
||
|
</pre><H2>INHERITANCE</H2>
|
||
|
itk::Widget <- Labeledwidget <- Scrolledtext <- Scrolledhtml
|
||
|
</pre><H2>STANDARD OPTIONS</H2>
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>activeBackground</B><br>
|
||
|
<B>exportSelection</B><br>
|
||
|
<B>insertBackground</B><br>
|
||
|
<B>insertWidth</B><br>
|
||
|
<B>repeatDelay</B><br>
|
||
|
<B>selectForeground</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>background</B><br>
|
||
|
<B>foreground</B><br>
|
||
|
<B>insertBorderWidth</B><br>
|
||
|
<B>padX</B><br>
|
||
|
<B>repeatInterval</B><br>
|
||
|
<B>setGrid</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>borderWidth</B><br>
|
||
|
<B>highlightColor</B><br>
|
||
|
<B>insertOffTime</B><br>
|
||
|
<B>padY</B><br>
|
||
|
<B>selectBackground</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>cursor</B><br>
|
||
|
<B>highlightThickness</B><br>
|
||
|
<B>insertOnTime</B><br>
|
||
|
<B>relief</B><br>
|
||
|
<B>selectBorderWidth</B><br>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/options.n.html"> "options" </A> manual entry for details on the standard options.
|
||
|
</pre><H2>ASSOCIATED OPTIONS</H2>
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>activeRelief</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>elementBorderWidth</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>jump</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>troughColor</B><br>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/scrollbar.n.html"> "scrollbar" </A> widget manual entry for details on the above
|
||
|
associated options.
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>spacing1</B><br>
|
||
|
<B>tabs</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>spacing2</B><br>
|
||
|
<B>wrap</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>spacing3</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>state</B><br>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/text.n.html"> "text" </A> widget manual entry for details on the above
|
||
|
associated options.
|
||
|
</pre><H2>INHERITED OPTIONS</H2>
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>labelBitmap</B><br>
|
||
|
<B>labelPos</B><br>
|
||
|
<B>hscrollMode</B><br>
|
||
|
<B>vscrollMode</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>labelFont</B><br>
|
||
|
<B>labelText</B><br>
|
||
|
<B>sbWidth</B><br>
|
||
|
<B>width</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>labelImage</B><br>
|
||
|
<B>labelVariable</B><br>
|
||
|
<B>scrollMargin</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>labelMargin</B><br>
|
||
|
<B>height</B><br>
|
||
|
<B>visibleitems</B><br>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the <A HREF="scrolledtext.n.html"> "scrolledtext" </A> class manual entry for details on the inherited options.
|
||
|
</pre><H2>WIDGET-SPECIFIC OPTIONS</H2>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>feedback</B>
|
||
|
Class: <B>FeedBack</B>
|
||
|
Command-Line Switch: <B>-feedback</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the callback command to use to give feedback on current
|
||
|
status. The command is executed in the form <I>command</I> <I><number of
|
||
|
characters remaining></B></I>
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>fixedfont</B>
|
||
|
Class: <B>FixedFont</B>
|
||
|
Command-Line Switch: <B>-fixedfont</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the name of the font to be used for fixed-width character
|
||
|
text (such as <pre>...</pre> or <tt>...</tt>.) The size, style, and
|
||
|
other font attributes are determined by the format tags in the
|
||
|
document. The default is courier.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>fontname</B>
|
||
|
Class: <B>FontName</B>
|
||
|
Command-Line Switch: <B>-fontname</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the name of the font to be used for normal-width character
|
||
|
spaced text. The size, style, and other font attributes are
|
||
|
determined by the format tags in the document. The default is times.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>fontsize</B>
|
||
|
Class: <B>FontSize</B>
|
||
|
Command-Line Switch: <B>-fontsize</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the general size of the fonts used. One of small, medium,
|
||
|
large, or huge. The default is medium.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>foreground</B>
|
||
|
Class: <B>Foreground</B>
|
||
|
Command-Line Switch: <B>-foreground</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the color of text other than hypertext links, in any
|
||
|
of the forms acceptable to <B>Tk_GetColor</B>. This value may
|
||
|
be overridden in a particular document by the <I>text</I> attribute
|
||
|
of the <B>Body</B> HTML tag.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>link</B>
|
||
|
Class: <B>Link</B>
|
||
|
Command-Line Switch: <B>-link</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the default color of hypertext links in any of the forms
|
||
|
acceptable to <B>Tk_GetColor</B>. This value may be overridden in a
|
||
|
particular document by the <I>link</I> attribute of the <B>Body</B>
|
||
|
HTML tag. The default is blue.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>linkcommand</B>
|
||
|
Class: <B>LinkCommand</B>
|
||
|
Command-Line Switch: <B>-linkcommand</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the command to execute when the user clicks on a hypertext
|
||
|
link. Execution is of the form <B>linkcommand href</B>, where <B>href</B> is
|
||
|
the value given in the <I>href</I> attribute of the <B>A</B> HTML tag.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>alink</B>
|
||
|
Class: <B>alink</B>
|
||
|
Command-Line Switch: <B>-alink</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the color of hypertext links when the cursor is over the link
|
||
|
in any of the forms acceptable to <B>Tk_GetColor</B>. The default is red.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>textBackground</B>
|
||
|
Class: <B>Background</B>
|
||
|
Command-Line Switch: <B>-textbackground</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the background color for the text area in any of
|
||
|
the forms acceptable to <B>Tk_GetColor</B>. This value may be
|
||
|
overridden in a particular document by the <I>bgcolor</I> attribute
|
||
|
of the <B>Body</B> HTML tag.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>unknownimage</B>
|
||
|
Class: <B>UnknownImage</B>
|
||
|
Command-Line Switch: <B>-unknownimage</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
Specifies the name of the image file to display when an <B>img</B>
|
||
|
specified in the html document cannot be loaded.
|
||
|
</UL>
|
||
|
<P>
|
||
|
<pre>
|
||
|
Name: <B>update</B>
|
||
|
Class: <B>Update</B>
|
||
|
Command-Line Switch: <B>-alink</B>
|
||
|
</pre>
|
||
|
<UL>
|
||
|
A boolean value indicating whether to call update during html rendering.
|
||
|
</UL>
|
||
|
<P>
|
||
|
</pre><HR>
|
||
|
|
||
|
</pre><H2>DESCRIPTION</H2>
|
||
|
<P>
|
||
|
The <B>scrolledhtml</B> command creates
|
||
|
a scrolled text widget with the additional capability to display
|
||
|
html formatted documents.
|
||
|
An import method is provided to read an html document file, and
|
||
|
a render method is provided to display a html formatted text string.
|
||
|
|
||
|
</pre><H2>METHODS</H2>
|
||
|
<P>
|
||
|
The <B>scrolledhtml</B> command creates a new Tcl command whose
|
||
|
name is <I>pathName</I>. This
|
||
|
command may be used to invoke various
|
||
|
operations on the widget. 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 scrolledhtml widgets:
|
||
|
</pre><H2>ASSOCIATED METHODS</H2>
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>bbox</B><br>
|
||
|
<B>dlineinfo</B><br>
|
||
|
<B>mark</B><br>
|
||
|
<B>tag</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>compare</B><br>
|
||
|
<B>get</B><br>
|
||
|
<B>scan</B><br>
|
||
|
<B>window</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>debug</B><br>
|
||
|
<B>index</B><br>
|
||
|
<B>search</B><br>
|
||
|
<B>xview</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>delete</B><br>
|
||
|
<B>insert</B><br>
|
||
|
<B>see</B><br>
|
||
|
<B>yview</B><br>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/text.n.html"> "text" </A> manual entry for details on the standard methods.
|
||
|
</pre><H2>INHERITED METHODS</H2>
|
||
|
<P>
|
||
|
<table cellpadding=5>
|
||
|
<td valign=top>
|
||
|
<B>export</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
<B>clear</B><br>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
</td>
|
||
|
<td valign=top>
|
||
|
</td>
|
||
|
</table>
|
||
|
<P>
|
||
|
See the "scrolledhtml" manual entry for details on the inherited methods.
|
||
|
|
||
|
</pre><H2>WIDGET-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>scrolledhtml</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 widget.
|
||
|
If no <I>option</I> is specified, returns a list describing all of
|
||
|
the available options for <I>pathName</I> (see <B>Tk_ConfigureInfo</B> for
|
||
|
information on the format of this list). 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 widget 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>scrolledhtml</B>
|
||
|
command.
|
||
|
</DL>
|
||
|
<DL>
|
||
|
<DT> <I>pathName</I> <B>import</B> ?<I>option</I>? <I>href</I>
|
||
|
</I></B>
|
||
|
<DD> Load html formatted text from a file. <I>Href</I> must exist.
|
||
|
If <I>option</I> is -link, <I>href</I> is assumed to be relative
|
||
|
to the application's current working directory. Otherwise,
|
||
|
<I>href</I> is assumed to be relative to the path of the last
|
||
|
page loaded. <I>Href</I> is either a filename, or a reference
|
||
|
of the form <I>filename</I>#<I>anchorname</I>. In the latter form,
|
||
|
fIFilename</B></I> and/or <I>anchorname</I> may be empty.
|
||
|
If <I>filename</I> is empty, the current document is assumed.
|
||
|
If <I>anchorname</I> is empty, the top of the document is assumed.
|
||
|
</DL>
|
||
|
<DL>
|
||
|
<DT> <I>pathName</I> <B>pwd</B>
|
||
|
</I></B>
|
||
|
<DD> Print the current working directory of the widget, i.e. the directory of the
|
||
|
last page loaded.
|
||
|
</DL>
|
||
|
<DL>
|
||
|
<DT> <I>pathName</I> <B>render</B> <I>htmltext</I> ?<I>wd</I>?
|
||
|
</I></B>
|
||
|
<DD> Display HTML formatted text <I>htmltext</I>. <I>Wd</I> gives the base
|
||
|
path to use for all links and images in the document. <I>Wd</I> defaults
|
||
|
to the application's current working directory.
|
||
|
</DL>
|
||
|
<DL>
|
||
|
<DT> <I>pathName</I> <B>title</B>
|
||
|
</I></B>
|
||
|
<DD> Return the title of the current page, as given in the <title>...</title>
|
||
|
field in the document.
|
||
|
|
||
|
</DL>
|
||
|
</pre><H2>HTML COMPLIANCE</H2>
|
||
|
<P>
|
||
|
This widget is compliant with HTML 3.2 with the following exceptions:
|
||
|
<P>
|
||
|
No features requiring a connection to an http server are supported.
|
||
|
<P>
|
||
|
Some image alignments aren't supported, because they are not supported by
|
||
|
the text widget.
|
||
|
<P>
|
||
|
The <br> attributes dealing with image alignments aren't supported.
|
||
|
<P>
|
||
|
Automatic table sizing is not supported very well, due to limitations of the
|
||
|
text widget
|
||
|
</UL>
|
||
|
</pre><H2>EXAMPLE</H2>
|
||
|
<pre>
|
||
|
option add *textBackground white
|
||
|
|
||
|
scrolledhtml .sh -fontname helvetica -linkcommand "this import -link"
|
||
|
|
||
|
pack .sh -padx 10 -pady 10 -fill both -expand yes
|
||
|
|
||
|
.sh import ~/public_html/index.html
|
||
|
</pre>
|
||
|
</pre><H2>BUGS</H2>
|
||
|
<UL>
|
||
|
Cells in a table can be caused to overlap. ex:
|
||
|
<table border width="100%">
|
||
|
<tr><td>cell1</td><td align=right rowspan=2>cell2</td></tr>
|
||
|
<tr><td colspan=2>cell3 w/ overlap</td>
|
||
|
</table>
|
||
|
It hasn't been fixed because 1) it's a pain to fix, 2) it will slow
|
||
|
tables down by a significant amount, and 3) netscape has the same
|
||
|
bug, as of V3.01.
|
||
|
</UL>
|
||
|
</pre><H2>ACKNOWLEDGEMENTS</H2>
|
||
|
Sam Shen
|
||
|
<UL>
|
||
|
This code is based largely on his tkhtml.tcl code from tk inspect. Tkhtml
|
||
|
is copyright 1995 Lawrence Berkeley Laboratory.
|
||
|
</UL>
|
||
|
<P>
|
||
|
</pre><H2>AUTHOR</H2>
|
||
|
Kris Raney
|
||
|
</pre><H2>KEYWORDS</H2>
|
||
|
scrolledhtml, html, text, widget
|