Screen builder
*** Want to learn the basics? Try
the Getting Started guide!***
The screen builder is a powerful tool that enabled you to "Drive
it to the edge baby!". From here you can setup as many screens
/ events and actions as you want. This may sound confusing at first, but
once you go through the example it does make sense :) however I explain
the differences first of all :
- Screens: What you will visibly
see on you display unit, each screen has it's own unique parameters,
like how long you want it to show for, if it is part of a group, whether
or not to skip the screen for any reason etc.
- Events: When various things happen
that LCDC or it's plugins can trap, you can then get LCDC to perform
an action. For example one event is called "Sys->On keypad press"
which means that when you press a key on your keypad LCDC will perform
an action. This particular event requires a Parameter, in this case
we select something like A so that when "A" is pressed LCDC
performs an Action.
- Action: The consequence of an
event is an Action, LCDC has several predefined Actions already but
plugins can expand these to include even more. For example one action
is "Dsp->Pause Display On/Off" so that when this action
is called the display will not move to the next screen till this action
is called again.

When you first run LCDC your screen builder will be empty,
however in the configuration you can ask LCDC to automatically load a
"definition file for future loads. Across the top of the screen are
the options as follows :
- a : Close the "Screen builder" screen (changes
to anything have not yet been saved however if you close LCDC it will
ask to save your changes)
- b : Create a new blank screen project
- c : Bring up the standard windows dialog allowing you
to OPEN another definition file.
- d : Saves your file with the current file name (Shown
in title)
- e : Brings up the standard windows save dialog, allowing
you to save your current screens/events.
- f : Preview your selected screen live on the LCD/VFD
(Of course this does depend on the screen being correctly setup)
- g : Allows you to directly configure and plugins with
options. This will popup a list of current plugins loaded that have
configurable options
- h : Bring up this help file.
- i : Allows you to turn on and off the information
bar on the screen. When you put the mouse pointer over any item the
information bar will tell you what it means. This information bar can
be moved to either the top or the bottom of the screen, by using the
small arrow button at the right hand side of it.
- j : Shows you the "Screens" page which contains
all the information you display will show.
- k : Shows you the "Events" page where you
can define events and actions...
Screens
The screen builder helps you build up the information you want to show
on you display. The top parts of the screen shows you the list of screens
you have defined with options to the right of them, these options are
:-
a : Add a new screen.
b : Duplicate the currently selected screen (only available
if you have selected a screen, the duplicated screen will appear directly
after the screen selected for duplication).
c: Remove screen, deletes the currently selected screen
(Only available if you have selected a screen).
d: Promote a screen, allows you to change the position a
screen is shown at, in this case move it up the list (Only available if
you have a screen selected, and it is not already at the top).
e: Demote a screen, allows you to change the position a
screen is shown, in this case move it down the list (Only available if
you have a screen selected, and it is not already at the bottom).
If you have not selected a screen then the bottom of the screen it will
say "^^^ Select display line, or create new^^^", click on any
line to see it's details, or click (a) to add a new line
then select it to see the details.
For the screen to display correctly the line must be white (when no screen
is selected a legend will show you the correct colour and what it means).
In this case PINK is showing me that there is probably a plugin not enabled
that the screen requires.

The details on the bottom section is divided up into two
parts, the general screen "Configuration" and the "Lines".
The "Configuration" section defines overall information
for the screen, like it's name and how long the screen will be on the
display for, and the second part "Lines" allows you to
customise each line for this screen on the display. For the "Configuration"
part you have available :-
- Name: A friendly name you can call this screen,
so you know what it contains, this does not have to be unique but it
is advisable not to have two screens with the same name to avoid confusion.
- Transition: How to bring this screen onto the display,
there are quite a few different ways LCDC can bring this information
to the screen, and the default (first) option is "(Random)"
which will use any of the options available, but this may be set to
anything.
- Duration: How long to display this screen on the display,
this can be any value from 0 to 9000 (seconds), and using a value of
0 will make it indefinite.
- Skip screen: There may be instances where you do not
want the selected screen to displayed, leaving it as "No! always
display" will always show the screen, UNLESS there has been an
action to lock the display to a particular GROUP(S) of screens. The
other options are:
- If no Internet connection is found: Will not display
a screen unless you are connected to the Internet. (Note in the
configuration screen there are several differnt methods for detecting
if a connection is availble)
- If no mail in: Tells LCDC not to show this screen
if there is no mail in a particular or ANY e-mail account checked.
When selected it will show you another selection box below it where
you can select which mail account to check for mail or you can select
"Any account" to miss the screen if there is no mail in
any of your accounts.
- If plugin application is not active: If you only
want a screen to be displayed while you have another application
active that is being monitored by a plugin (e.g. the WA2/ WinAmp
2 plugin) then use this option. When selected a list of current
plugins is shown below it, and you select which plugin it to base
this on. For example if you don't want a screen to be displayed
while WinAmp is not active then set the option to this to "WA2"
- If plugin application is active: The opposite of
the above, allows you to skip a screen when a plugin IS active.
- Group: As a default this will be blank, but you can
type in any group name in here and then on any other screen you can
assign them to this group. For example, it you define several screens
to show MBM information, you can place them all in the same group and
only display that group while MBM is active.
- FPS rate: This allows you to change the rate at which
the screen will redraw. Leave at default to use the setting from the
configuration screen, or override with your own setting if needed. (Frames
per second)
- Custom chrs: Allows you to select which Custom Characters
this screen should use in order to display correctly. The LCD/VFDS mostly
have 8 user definable character formations which they can display along
side the standard character set of A-Z etc. LCDC comes bundled with
about 30 or so custom character files, and you will find on the main
website a character designer as well, so that you can do you own. At
present you can not see your selection until you switch into the lines
part of the scren below.
When you click on the "Lines" part you will then see
a second screen, and next to it will be a selection of line numbers. If
you have a 2 line display then there will be two options (as pictured
below), if you have a 4 line display, then you will have 4 options to
pick from. Each line corresponds to the lines on you display, line 1 being
the top most. The options available are:-

Next to the Line I have two choices as this is
a 2 line display I am working with
- Text: The text that will be displayed for the
line, you may enter whatever you want to display here, and also include
variable for LCDC to calculate. Due to the number of variables it is
best to use the small diamond button on the end and use the "Text
definition" utility to help you out.
- Alignment: Once you have entered some text, you can opt to
have it automatically aligned to the left/centre/right - for advanced
users you may also elect to skip the line completly.
- Custom chrs: Shows you what the current custom character set
loaded looks like. You can drag and drop these anywhere into the "text"
and it will put the relevant code in for you.
- Scroll: Allows you select if you would like this line
of text to scroll or not, if you elect to have scrolling on then you
will have two additional options :-
- Style: Which way to scroll the line :-
- << Left : Scrolls it to the left (this
is the standard)
- << Bounce>> : Scrolls the text to
the left to then end then back to the start in the opposite
direction (Right)
- Right>> : Scrolls the text to the right
- Page flipping >-> : Implements page flipping
onto the screen, this is in effect a scroll left option, but
rather than doing 1 character at a time, it will jump 1 screen
width at a time. For example if your screen is 20 characters
wide and you define the text as "Please wait.........Loading............."
you would in effect flash between Please wait and loading.
- <W Word scroll : Scolls the screen one whole word at a
time if it can.
- Speed: How fast this scolling should go, the default
is the same rate as the FPS, so if your FPS rate is set to 4fps
the screen will scroll across 1 character at a time, 4 times a second.
If you increase the speed (e.g. Twice FPS rate) then it will scroll
2 characters a time, and if you lower the speed (e.g. Half FPS rate)
it will scroll 1 character at a time but only 2 times a second.
- Continue last line: This option is not availble on the
first line, but will continue the speed/style of scrolling from the
previous line if needed.
The "Text" area is the
most important as this controls exactly what you want to see on the screen.
Typing in text and variables is the bare basics, and on top of that you
can actually perform formatting, padding as well as a lot of special effects.
The easiest way to select these special formatting commands, is to select
a peice of text you want to format, then use the right mouse button (or
click on the * button) to see the popup menu. The top option should be
"format->" with a lot of sub selections which are listed
at the bottom of this page.
Generic to both the "Configuration" and "Line"
screens you have the following options
:-
a: Save the changes made to this screen definition to memory
(will not be saved to disk unless you save the definition)
b: Cancel any changes made to this screen.
c: Import screen, allows you to import a screen (possibly
downloaded!)
d: Export screen, allows you to export a screen
e: Save to LCD as startup screen. Please note that this
option is only availble on some LCD/VFD modules. This will save the currently
displayed screen as a power up screen (e.g. when you turn your PC on).
It DOES NOT save scolling text, only static, and not all screens save
the custom characters for starup either.
Events
The events section on a basic level is un-needed! However to make LCDC
more powerful you can use events to do a whole host of things! And the
more plugins you have loaded the more events/actions you have available
to you.
The top section is very similar to the top part of the Display screen,
with options down the left as follows :-
a: Add a new event.
b: Duplicate selected event.
c: Remove event, deletes the currently selected event (Only
available if you have selected an event).
d: Promote an event, allows you to change the order events
take place in, in this case move it up the list (Only available if you
have an event selected, and it is not already at the top).
e: Demote an event, allows you to change the
order events are shown, in this case move it down the list (Only available
if you have an event selected, and it is not already at the bottom).
If you have not selected an event then the bottom of the screen it will
say "^^^ Select event line, or create new^^^", click on any
line to see it's details, or click the (a) to add a new line then
select it to see the details.

The details shown at the bottom are:
- Name: A friendly name you can use to recognise this
event.
- Event: This is a drop down list of all the events that
LCDC and the currently loaded plugins can do. This list is sorted into
alphabetical order to make it easier to find an event, and all events
are preceded by 3 characters which represent the PID
followed by -> then the actual event name. Due to the possible number
of options, there is a diamond in a button at the end of the line, which
you can use to better explore and select an event using the "Event
selector".
- Parameters: (This may say something different depending
on the event selected) Depending on the actual event you select
there may be upto two parameters that may be required. If an event does
not require a parameter then this will be disabled as per the image
above. As an example if you select the "Sys->On KeyPad Press"
you would then put in what keystroke to look for, for example "J".
- Action: For each event you must specify what action
you would like LCDC to perform. As with the events this is a alphabetically
sorted list, and each action is preceded by a 3 characters which represent
the PID. Due to the possible number of options,
there is a diamond in a button at the end of the line, which you can
use to better explore and select an action using the "Action
selector".
- Parameters: (This may say something different depending
on the action selected) As with the events, some actions require
a parameter or two to work. For example if you use the action "GPO->Flash"
(because you want to have a LED attached to a GPO
flash when an event, like mail in occurs) then the parameter must be
set to which GPO to use. If you wanted to go to a particular screen
when an event occurs you would se the action to "Dsp->Go to
selected screen" and then in the parameters it would show you a
selection of the screens you have defined.
On the right hand side you have the following options
:-
a: Save the changes made to this event definition to memory
(will not be saved to disk unless you save the definition)
b: Cancel any changes made to this event.
c: Import an event/action from a file
d: Export an event/action, save this event to a file
Hopefully the example files and the examples that come with this application
will get you going and help you understand what LCDC is capable of!
Formatting text
Most of the formatting can be done by simply selecting the section
of text you want to modify, then right click it with the mouse to bring
up the popup menu which includes a whole selection of formatting options.
(Note: Select an area of text you want to format and right click, you
should see all the formatting there) The special commands to format
this, all special command start as [% instead of variables which
start [#. After that you then need three characters to specifiy
which command to use followed by the size and another %, lastly
you most close this special command with %]. So the structure is
[%COM10%Text%] where COM=command and Text is the static text or
variable to display. The commands are:-
- LEF : Pad and align the text to the Left, the number afer the
command is the size you want to pad too
- MID : Pad and align the text to the Middle (you can also use
CEN), the number afer the command is the size you want to pad
too
- RIG : Pad and align the text to the right, the number afer
the command is the size you want to pad too
- FON : Display using a loaded custom character font set, the
number after the command defines which character set to use, and which
line within it. So to display Hello, you would write [%FON41%Hello%]
on the first line,[%FON42%Hello%] on the second line,[%FON43%Hello%]
on the third line,[%FON44%Hello%] on the forth line. 4 specifies to
use the inbuilt conversion table for character size 4, and the second
digit (1/4) specifies the line)
- FOM : As FON but without the extra spaces
- BIN : Convert a number to binary
- D8A : Converts a number to a formatted data figure in bytes,
kb ,mb or gb
- FLA : Flashes a word or line!
- FLI : Flashes a word or line, inverted to FLA
- PAD : Places a blank section of text to any size
- ICM : Converts international characters in a portion of text
Examples and results are as follows (. represent spaces to make it clearer):-
- [%LEF10%Left%] : "Left......"
- [%LEF10%Left987654321%] : "Left987654"
- [%RIG10%Right%] : ".....Right"
- [%RIG10%Right987654321%] : "Right987654" (aligns
right with right truncation)
- [%RIT10%Right%] : ".....Right"
- [%RIT10%Right987654321%] : "t987654321" (aligns right
with left truncation)
- [%MID10%Middle%] : "..Middle.."
- [%CEN10%Centre%] : "..Centre.."
- [%MID10%MiddleMiddle%] : "iddleMiddl"
- [%FON41%SomeText%] :
- [%BIN%10%] : "00001010"
- [%D8A4%110000%] : 107.4KB
- [%D8A6%110000%] : 0.1MB
- [%FLA%text%] : "Test" but flashing!
- [%FLI%text%] : "Test" but flashing, opposite timing
to FLA!
Conditional displaying of text
From version 1.05.27 it is now possible to put conditions within a line
of LCDC for the selection of text to display. These are in the format
:-
[?var condition test ? result if true ? result if false ?] e.g. [?[#$MaiCouTot]==0?None?Loads!?]
would display "None" if your Total Mail count ([#$MaiCouTot]
var) was 0 or "Loads" if you had any mail.
Conditions that are available:
== Equal to
=> Equal or greater then
=< Equal to or less then
|