(If you do not see the frame version
of
this page with a table of contents in the left frame, click here.)
Topic Properties
Each farBook topic owns a set of properties, the values of which
farVIEW uses to manage the topic. You can examine and edit the
properties
of any topic by selecting the topic with the RMB, then selecting the
Properties
menu item. This will display the Properties dialog for the topic, which
you can use to change the value of any unshadowed property. For
example,
you can't edit the Name property, but you can edit the Title
property.
(Out of date) When you create a new farBook, farVIEW uses the
property names listed
in the [Manifest] section of the farview.ini
preferences
file as the topic properties for the farBook. When you create a new
topic
within the farBook, farVIEW uses the property list that it associated
with
the farBook. You can edit the properties in this list by following this
procedure:
- Select the File/Search menu item.
- Type *prop$list* in the Search edit window.
- Click the Ok button, or press the Enter key.
- Double-click the *prop$list* topic in the Search Results
window.
- Proceed to edit the properties in the text window.
- When done, save.
farVIEW recognizes a number of topic property names. Here is a list of
the properties that farVIEW currently recognizes, along with some
sample
values:
Name=5E4F7B4017F211D6A7200080C8C1CEAC
Title=Friends
Source=
Form=
Note=
Class=
FirstDate=Sat, 02 Feb 2002 20:34:39
GMT
LastDate=Sat, 02 Feb 2002 20:34:39
GMT
Owner=
Exposure=
SortOn=Title
Font=BrendensHand,0,0,19
Where=105,36
Rect=500,0,640,480
Wrap=
farVIEW requires that every topic have at least the first two
properties.
The value of the Name property is unique to the topic, and it
is
used to identify the topic and its relatives (children, parents, etc)
when
you open a topic. farVIEW generates the value for the name property
when
you create the topic. The value of the Title property is, of
course,
what you see in the Contents window that you use to identify a topic.
You
specify the title when you create the topic, and you are free to change
the title at any time.
Note that you are free to add additional properties to the list.
farVIEW
will retain and propagate any properties you add, but their value will
be your responsibility. For example, I have found a Note
property
to be useful, which I use to keep a short note about the topic while
leaving
the Source property free for its prescribed use.
Let's discuss the remaining optional properties under their own
headings.
Source
This property instructs farVIEW how to obtain the content of a topic.
You
edit the Source property using the Properties
dialog.
The Source property can contain a number of different kinds of
information,
for example, file names, command lines with parameters, URLs, or
nothing
at all.
- File name - farVIEW uses standard Windows mechanisms to execute
the
program
associated with the file name extension, passing the file name as the
parameter. If the file name is of the form *.ext - e.g., *.doc - the
file name is
not passed when the associated program is invoked.
- If the file name
is preceeded by the dollar-sign ($), farVIEW assumes that the file is a
plain text file and displays it in its built-in editor.
- Execute farSlang - If the first character of the Source property
is a
vertical
pipe ( | ), the value is taken as a farSlang reference, and when the
topic
is opened, the specified farSlang proc will execute. The form of the
farSlang
reference is |moduleName|procName|parameter, with the procName
and parameter fields optional.
- Execute command line - If the first character of the Source
parameter
value
is the "greater-than" sign (>), the remainder of the value is taken
as
a Windows command line and Windows is called to execute the command.
- HTTP URL - If the first characters of the Source property value
are http:// or https://, your
default internet browser is invoked, passing the Source property value
as the parameter.
- MAIL URL - If the first characters are mailto://, your default
mail program is invoked, passing the Source value as the parameter.
- FAR URL - If the first six characters are far://, then
farVIEW
attempts
to establish a connection with the remote farVIEW machine identified by
the URL and open the topic as the root of the farBook specified in the
URL. For example, suppose the URL is far://www.fvtech.com:8000/farview.
farVIEW establishes a connection to the farVIEW program running on the
computer identified as www.fvtech.com on port 8000, and
requests
access to the farview farBook on that computer. (Of course, if
farVIEW
is not running on the specified machine, the connection will never
occur.)
If the farVIEW host finds your user name acceptable, it accepts your
request,
allowing you to open and access the contents of the farBook. More
information
is available here. Security is discussed
under
a separate heading. (TBD)
- Empty - If the Source property value is empty, farVIEW assumes
the
content
of the topic is in the farBook, itself. If it isn't, farVIEW will
create
a place for the content. Whatever content farVIEW finds to be
associated
with an topic is displayed in an edit window, where you can view and
edit.
You can keep notes, documents, or forms in the farBook. Since the
farBook
is stored as a single .vue file, you can copy and move the file knowing
that all the information you have stored in the file will be included.
If you have specified file names in the Source property of one or more
topics, you will have to be sure to also copy/move those files if you
intend
to replicate the farBook.
Note (or Notes)
When this property is present and contains text, the text is displayed
in a tool tip while the mouse cursor hovers over the topic.
Form
Specifies the file name of an XML file that defines a dialog window
through
which to view and edit the content of the topic. farVIEW checks this
property
when the Source property is either empty, or contains a file
name
beginning with a dollar-sign ($). For details describing how to
construct
an appropriate XML file for this purpose, go here.
Class
Specifies the Unique Alias of another
topic,
or topics, from which to obtain (inherit) Events. See
Topic Events for details about farVIEW events. If more than one
topic
is to be specified, separate the Unique Alias of each topic with a
comma.
(Be sure you don't use a comma as part of the symbol when assigning a
Unique
Alias to a topic.) If a particular event in the event list of a
topic
is not specified, then farVIEW searches the event lists of each topic
specified
in the Class property to find a farSlang module to apply. The event
lists
are searched in the order the topics are specified in the Class
property
value.
The Form property is also defaulted by the Class
property.
This makes it convenient to create collections of topics that inherit
their
content presentation aspects with a single topic.
First Date
The value of the First Date property is the date the topic was
created,
in Greenwich Mean Time (GMT). If the First Date property is
present,
it is automatically maintained by farVIEW, and is shadowed in the
Properties
Dialog.
Last Date
The value of the Last Date property is the date the topic was
last
changed, in GMT. If the Last Time property is present, it is
automatically
maintained by farVIEW, and is shadowed in the Properties Dialog.
Owner
The value of the Owner property is user name of the owner of
the
topic. It may also be empty. If it is empty, the topic is considered to
have a public exposure. See the Exposure property, below. The
Owner
property is managed by farVIEW and is shadowed in the Properties
dialog.
Exposure
The value of the Exposure property can have two forms.
The first form uses one of the following three words: Public,
Link,
Browse, or
Private. If the topic has Public exposure,
it is available to all users for browsing, linking, and editing.
If it has the Link exposure, users can add children topics but
cannot
edit the topic. If it has Browse exposure, it is available to
all
users to browse, but is available only to the owner to link and or
edit.
If the topic has Private exposure, it is available only to the
owner.
If there is no owner, i.e., the Owner property is empty, then
the
topic has Public exposure, regardless of what is specified in the
Exposure
property.
The second form supports a list of "lock" symbols that require
specific
"keys" to unlock the topic. By this method, you define keywords that
you
can associate with each of the three levels of exposure.
For example, suppose you divide your company into the following
groups:
Executive(exe)
Accounting(acc)
Marketing(mkt)
Sales(sal)
Development(dev)
Support(sup)
You have topics in your company farBook that should only be Public
to
your executives and invisible to everyone else. Likewise, you have
topics
that belong to each group who need to change the content, while
restricting
access to the remainder of the staff.
Set the Exposure property of the first type of topics to
Public(exe).
Set the Exposure property of each of the second type of topics
according
to the following list:
Executive
|
Public(exe)
|
Accounting
|
Public(acc) Browse(exe) |
Marketing
|
Public(mkt) Browse(exe) |
Sales
|
Public(sal) Browse(exe) |
Development
|
Public(dev) Browse(exe, acc, mkt, sal, sup) |
Support
|
Public(sup) Browse(exe, acc, mkt, sal, dev) |
This establishes the "locks" you need for your company farBook
topics.
Now, you need to establish the "keys" for each user of your
company
farBook.You do this in the farview.ini preferences file in the
section
you associate with the company farBook. If the farBook name is widgetsInc,
then you add a section to the file that looks like
[widgetsInc]
John=exe
Ted=exe
Mark=acc
Sally=acc,mkt
Jeb=mkt,sal
Zack=dev
and so on.
Assuming that your staff sign on by their first name, they obtain
the
key(s) you have assigned them and obtain permissions into the farBook
according
to how their keys fit the locks. Users who are not listed in a locklist
are excluded from access altogether. Note that Sally and Jeb have two
keys.
In each case, the key with the most permission is used for opening a
topic.
Note: Each user of the company farBook must have a private
farBook
containing a topic whose Source property contains the
far://-URL
of the company farBook, by which the user can access the company
farBook.
See also the Source property. |
farVIEW permits the owner of a topic to change the value of the Exposure
property. For all other users, the Exposure property is
shadowed
in the Properties dialog.
Run
When the Run property is present and contains a value, the specified
farSlang
proc is executed as part of the initialization of the topic when it is
obtained by expanding its parent topic. (farSlang note: this is not
done
automatically when a topic is loaded from the farBook by a farSlang
module.
The farSlang module would call the CTopic.RunFarSlang method to
accomplish
this.) The form of the farSlang reference is |moduleName|procName|parameter,
with the procName and parameter fields optional.
SortOn
When the SortOn property is not present, farVIEW displays topics
alphabetically
using the Title property, but you can order topics differently
by
using the SortOn property to name a different ordering
property.
For example, if you want an arbitrary order, create a user-defined
property,
say Order, set the SortOn property to identify the Order
field, then set the contents of the Order property of each
sibling
topic with a value to correspond to the position you want the topic to
occupy.
Font
farVIEW maintains the Font property to remember the last font
selection
for the content window for the topic. Note that you are free to change
the value of the Where property. Be sure that you understand the form
and
the acceptable range of values before you change it, however. This
property
is normally fully automatic: farVIEW generates it when you display the
content of a topic.
Wrap
farVIEW maintains the Wrap property to remember if you
activated
the wrap function in the editor for the topic's content. If the value
of
the property is wrap, then the text of the content window will wrap
whenever
you enter text, whenever you resize the window, or whenever you change
the font size.This property is normally fully automatic: farVIEW
generates
it when you display the content of a topic.
Where
farVIEW maintains Where property to remember the last position
of
the edit caret for the content window. Note that you are free to change
the value of the Where property. Be sure that you understand the form
and
the acceptable range of values before you change it, however. This
property
is normally fully automatic: farVIEW generates it when you display the
content of a topic.
Rect
farVIEW maintains the Rect property to remember the last
position
and size of the content window for the topic on the screen. Note that
you
are free to change the value of the Where property. Be sure that you
understand
the form and the acceptable range of values before you change it,
however.
This property is normally fully automatic: farVIEW generates it when
you
display the content of a topic.