Drawboard Manual (v 0.56)

last changes: 09 Feb 2002


Content

  • License
  • 1. Operating manual
    • 1.1. Blackboard
    • 1.2. Colorpicker
      • 1.2.1. Rainbow
      • 1.2.2. Grayscale
      • 1.2.3. Old color set
      • 1.2.4. Current color
      • 1.2.5. New color preview
    • 1.3. Menu
      • 1.3.1. Tool select
      • 1.3.2. Thickness select
      • 1.3.3. People counter
      • 1.3.4. Reset button
      • 1.3.5. Clipboard
      • 1.3.6. Connection indicator
      • 1.3.7. Copyright information
  • 2. Installation
    • 2.1. Paths and directories
    • 2.2. HTML file
    • 2.3. Running server
    • 2.4. Server command line switches
  • 3. Applet options
    • 3.1. Applet size
    • 3.2. Applying new skin
      • 3.2.1. Creating new skin
      • 3.2.2. Creating skin definition file
    • 3.3. Applet options
      • 3.3.1. Communication port number
      • 3.3.2. Initial background color
      • 3.3.3. Initial pen color
      • 3.3.4. People counter color
      • 3.3.5. Menu background color
      • 3.3.6. Empty menu clipboard color
      • 3.3.7. Skin definition
  • 4. FAQ
  • 5. Download
  • 6. Feedback


License

Drawboard - Java applet used to make graphical teleconferences
Copyright (C) 2001 Tomek "TomasH" Zieliński, tomash@fidonet.org.pl
Download - see project homepage at www.sourceforge.net/projects/drawboard

This is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this software; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

1. Operating manual

This is the standard Drawboard screen.

As you see, it can be divided to three parts: blackboard, colorpicker and menu.

1.1. Blackboard

There isn't much to write about. Blackboard is area, when you can draw. Color of your pen is selected with colorpicker, tool - by clicking menu. Normal cursor style is crosshair. When cursor is in "WAIT" mode, you have to wait for connection with server. NOTE: you can pick color by clicking with right mouse key on blackboard.

1.2. Colorpicker

This is the colorpicker:

It can be divided to five parts: rainbow, grayscale, old colors set, current color and new color preview.

1.2.1. Rainbow

This is the hi-color palette. Click to set current color.

1.2.2. Grayscale

This is the grayscale palette. It includes pure white and black colors. Click to set current color.

1.2.3. Old color set

When you click a rainbow or grayscale, you select new color. This color is also inserted into old color set. Four earlier colors are moved one cell up (fifth, oldest color is lost). You can revert to one of the old colors by clicking selected square. In this case the color set won't be changed.

1.2.4. Current color

This rectangle shows current color. You can select new color by clicking rainbow, grayscale or old color set. When you drag mouse (with mousekey pressed), the current color changes in realtime.

1.2.5. New color preview

This small rectangle shows the color under cursor. It helps you select new color.

1.3. Menu

This is the standard menu.

NOTE: Menu can be customized by applying the "skins" (like WinAmp). In this case location and appearance of buttons can be completely different. If you have problems with modified design, write to your webmaster. Below you can see explanation of standard menu.

1.3.1. Tool select

Freehand tool. Click and drag mouse to draw freehand line.
Line tool. Click to set start of line, drag mouse to the end of line and relase the mousekey.
Rectangle tool. Click to set one corner, drag mouse to the opposite corner point and relase the mousekey.
Filled rectangle tool. See rectangle tool.
Ellipse tool. Click to set center point, drag to define ellipse size and relase the mousekey.
Filled ellipse tool. See ellipse tool.
Text tool. Indicate place and use keyboard to enter characters

1.3.2. Thickness select

Click the desired line to set current thickness. The line thickness affects freehand, line, rectangle and ellipse tools.

1.3.3. People counter

Above the people icon there is a people counter. The number tells you, how many people are currently connected to the Drawboard. "1" means you are drawing alone. Counter is updated by every incoming ping packet. When connection is lost, counter is switched off.

1.3.4. Reset button

Click to reset whole image. The blackboard's background color is set to current color.

1.3.5. Clipboard

This is the cliboard panel:

As you see, you have three separate clipboards. You can select desired one by clicking the 1, 2 or 3 number. At any time you can click the copy button to copy current image to selected clipboard (current clipboard image will be replaced by new one). If clipboard includes any image, you can click show button to watch full-size image. You can also click remove button to empty selected clipboard.

1.3.6. Connection indicator

Connection to server estabilished.
Data transfer in progress.
Connection to server is lost. Watch Java console for error messages.
If the connection is lost, applet sets the "WAIT" cursor style and tries to restore it. Remember: all, what you draw during disconnection phase, will be lost. At reconnect whole image will be re-fetched from server.

1.3.7. Copyright information

Click to watch "about" and copyleft license dialog box.

2. Installation

Terminology used in this chapter:

SERVER - the Drawboard server program
CLIENT - Drawboard applet
HOST - remote WWW server machine
APACHE - HTTP server on remote host

2.1. Paths and directories

Unzip Drawboard distribution packet to selected directory. You can see there: test.html example file, drawboard directory with class files and skin directory with default skin files. The doc directory contains this documentation and you can delete it at your will. Do not delete LICENSE file.

All files must be accessible through Apache. If you have account on Unix machine, create public_html dir in your home directory and unzip there Drawboard files. If the host name is host.com and your username is user, Drawboard should be avaible at http://host.com/~user/test.html - if doesn't work, ask your local admin for details.

2.2. HTML file

Applet is "inserted" into HTML file as an <APPLET> tag. You have to load your WWW document to your vrowser through Apache (even on the same host). If you load local file, Drawboard will not be able to communicate with anybody. Use following sequence to place Drawboard into your page (see test.html file to see live example):

<APPLET CODE="drawboard/Main.class" WIDTH=600 HEIGHT=450> </APPLET>

Don't change "Main" to "main", whole text between quotation-marks is case-sensitive. See Chapter 3 for additional Drawboard applet options.

2.3. Running server

All Drawboard clients are connecting to server. Without working server communication is impossible. You can run server process by typing

$ java drawboard.Server

in the drawboard root directory (where HTML file is). You can treat server as a daemon and run it from startup scripts. You can also use the screen or nohup Unix utility to prevent server process kill at logout.

Notice, that there is no drawboard.Server file anywhere. It's just Server.class in drawboard directory, but Java treats this notation like "run instance of Server class from drawboard package" and everything works fine. You don't have to recompile anything before running server.

2.4. Server command line switches

There are several server comand line options:

-x XSIZE specifies client width in pixels. This value must be equal to width parameter in HTML applet definition (see p. 3.1). Default value (used in test.html) is 650.
-y YSIZE specifies client height in pixels. This value must be equal to height parameter in HTML applet definition (see p. 3.1). Default value (used in test.html) is 400.
-p PORT specifies server port number. Server and client must use the same port number to communicate. Under Unix systems only superuser can use ports 0-1023. See also p. 3.3.1. Default value is 7904.
-c RRGGBB specifies initial background color in RGB format - two-char hexadecimal values for each RGB color. Remember this is importand only for a few very first clients. Default value is A6A8F8 (kind of blue).
-m MAXCLIENTS specifies maximum number of clients connected at once. To limit bandwidth loss you can lower the number. Default value is 15.
-d DELAY specifies delay between two "ping" packets sended to each client. "Ping" checks the connection and updates the people counter. Too small number can give in effect lower performance. Suggested value: 15-180 seconds. Default value: 30 seconds.
-quiet run without any output
-help print help

Sample server command line invocation:

$ java drawboard.Server -p 8223 -d 60 -m 8

3. Applet options

3.1. Applet size

Applet size is set in the <applet> tag. Example:
<APPLET CODE="drawboard/Main.class" WIDTH=600 HEIGHT=450>

Minimum height of Drawboard depends on applied skin (for default skin it's 350 pixels). Minimal width is about 200 pixels. Of course reasonable dimensions are much bigger. Size of right (100 pixels) and bottom (50 pixels) margins is fixed and cannot be changed.

NOTE: non-default applet dimensions must be also specified in server invocation (see p. 2.4), in other case client will not be able to communicate with server.

3.2. Applying new skin

You can customize whole menu graphics design and buttons localization. It's better than Winamp 2 ;-)

3.2.1. Creating new skin

Look at skin directory. There are three GIF files, watch them. All clear? Most buttons have three different states - normal, mouseover and selected. Some (like Reset) have only two states - normal and selected. Network indicator is a special three-state icon. If you want to create your own skin, you have to create three files and edit them.



Skin files should have GIF format and be 100 pixel wide. Height isn't bounded, but reasonable range is 200-500 pixels. Set applet vertical dimension equal or higher than menu graphics. You can control menu empty part color with applet option, see p. 3.3.5. Without creating skin definition file you cannot change button sizes and positions.

When you create any skin, feel free to contact Drawboards author.

3.2.2. Creating skin definition file

If you want to modify button positions, skin definition file is necessary. See skin directory and watch default.def file. This is a template with default values. After creating own skin files measure button dimensions and modify definition file.

Definition file define names of three skin files and coordination of all menu elements. Those elements are: seven tool buttons, six line width buttons, three slot selection buttons, three thumbnail manipulation buttons, reset and copyright buttons, network indicator, thumbnail preview and people counter.

All values must be set to change skin. Default values are located in skin/default.def. This file isn't necessary to Drawboard's work, you can copy and edit it to define your own values. To apply new skin, set proper applet option - see p. 3.3.7. If something goes wrong, watch Java console for error messages.

When your new skin is ready, feel free to share with Drawboard's author :)

3.3. Applet options

All tags must be inserted between <applet> and </applet> tags.

3.3.1. Communication port number

You can change default communication port number with tag
<PARAM NAME="port" VALUE="4465">
(it's of course example value). See p. 2.4 for details.

3.3.2. Initial background color

You can change initial background number with tag
<PARAM NAME="bgcolor" VALUE="RRGGBB">
(three two-chars hexadecimal values). This color is visible after applet was started but before archive image was fetched. Suggested color should be similiar to page background.

3.3.3. Initial pen color

You can change initial pen color with tag
<PARAM NAME="pencolor" VALUE="RRGGBB">
(three two-chars hexadecimal values). This color will be active when applet is started.

3.3.4. People counter color

You can change people counter color with tag
<PARAM NAME="countercolor" VALUE="RRGGBB">
(three two-chars hexadecimal values). This option is most useful while creating own skin.

3.3.5. Menu background color

You can change menu background color with tag
<PARAM NAME="menubgcolor" VALUE="RRGGBB">
(three two-chars hexadecimal values). This color will be visible if menu image is shorter than applet's height. This option is most useful while creating own skin.

3.3.6. Empty menu clipboard color

You can change empty clipboard's thumbnail color with tag
<PARAM NAME="emptythumbnailcolor" VALUE="RRGGBB">
(three two-chars hexadecimal values). This option is most useful while creating own skin.

3.3.7. Skin definition

You can change default skin with tag
<PARAM NAME="skindef" VALUE="path/file">
(path relative to drawboard/skin). See p. 3.3 for details.

4. FAQ

Q: I write java command and I see bash: java: command not found or other error message.
A: You have to install Java Software Development Kit or Java Runtime Environment in order to run Drawboard server. Drawboard was tested with versions 1.1.8 and 1.3.1, but should work with any version older than 1.1. You can download desirable files from java.sun.com

Q: Are the images identical on all machines?
A: They should be very similiar, but incoming data can intersect differently on drawer's board. Small differences are acceptable, aren't they?

Q: How about adding to Drawboard small chat window?
A: No. Drawboard is designed to supplement thrid-party chat engines, not replace them. Text tool must be sufficient.

Q: I can run Drawboard, but on the blackboard there is an inscription "WARNING: Network communication disabled, see doc for details". What does it mean?
A: You are opening Drawboard from local file. You can play and learn how to draw, but network communication will not work.

Q: I can run Drawboard, but on the blackboard there is an inscription "Wrong server image size, see doc for details". What does it mean?
A: Server was invoked with different dimension parameters than applet. See p. 3.1 and 2.4

Q: Why do you force me to load Drawboard through HTTP server? I want to load it from local file and have network connection.
A: This is a Java security policy. Applet can communicate only with host, which from has been loaded. Nothing we can do about it.

Q: Can I change the font on-the-fly?
A: No, letters are built in Drawboard to prevent variable browsers and operating systems font uncompatibility. You can naturally edit Alphabet.java and recompile whole Drawboard.

Q: When I run Drawboard, I have only red network icon and WAIT cursor. Why?
A: Applet cannot comunicate with server. Make sure server is running and port number are adequate. Drawboard not work with firewalls yet. See Java console for details.

Q: Applet stops loading with "LOADING GRAPHICS ERROR". Why?
A: If you are using custom skin, try to disable it. If it helped, fix error in definition file. If you use default skin and error persist, check skin directory and filenames (they are case-sensitive). Drawboard distribution packet includes proper files, you can check them and repair own.

5. Download

To get latest version od Drawboard, visit www.sourceforge.net/projects/drawboard
Current version of this documentation can be reached at drawboard.sourceforge.net
Drawboard is also noticed on freshmeat.net.

6. Feedback

Drawboard's author is Tomek "TomasH" Zieliński
You can e-mail him at tomash@fidonet.org.pl
Any comments and proposals are welcome!






SourceForge Logo