POS XML Layouts
The layouts, design, colors and button values are controlled by an external XML file. (pslayouts.xml). This file is updated/changed during each update/upgrade, so it is recommended not to modify this file. When the POS system starts up, it looks for pscustom.xml first. If that file does not exist, it will then use pslayouts.xml -- if you want to modify the layouts/xml file, it is recommended to copy it to pscustom.xml and modify that.
The XML is broken up into different sections:
Themes - The names of the different layouts. Each is assigned an ID and it must be unique.
Styles - The foreground and background colors to use for the buttons. The colors are in #RBG (Red/Blue/Green) hex values.
Languages - The text and optional size of the text on the button. If the size is not specified, the theme assigned Default FontSize is used.
Layout - The position, height and width of each button and how it appears on the POS terminal screen.
Important Note: All sizes and positions are in DLU (Dialog Units) as they are related to the MS San Serif Bold 10 font. They are not in Pixels.
Dialog units are Windows' standard way of measuring distance on screen Dialog units are defined as one-quarter the average character width by one-eighth the average character height of the default font used on a window (creating a roughly square unit of measurement).
Detailed information about each section
Themes
-
ID must be a unique assignment
-
StyleID must be one of the Style section ID's
-
LanguageID must be one of the Language section ID's
-
LayoutID must be one of the Layout section ID's
-
Title bar (true or false to show the Windows Title Bar)
-
BoxHide (true or false to show or not show the actual drawn boxes)
-
BoxGradient (normal=No Gradient lighter=Light to Dark darker=Dark to Lighter)
-
ExpandListBox is the size of the listbox when expanded. The Gutter is any additional spacing beyond the original size of the listbox to include in the move (0 means nothing else is moved)
-
ItemSpacing is the number of DLU's that is used when spacing out multiple buttons (33 terminal buttons and 15 speed keys)
-
Hadjust is the number of DLU's to horizontally adjust (+ or -) all buttons when placing them on the screen (ie: -10 will move all buttons 10 DLU's to the left)
-
Vadjust is the number of DLU's to vertically adjust (+ or -) all buttons when placing them on the screen (ie: 10 will move all buttons 10 DLU's down)
-
HideFastCash can be "true" or "false" - when "true", the fast cash buttons will not appear. ie:
<HideFastCash>true</HideFastCash>
Styles
- ID must be a unique assignment
- Items can be any number between 1 and 99 to use in your style.
- Colors are in RGB (Red/Green/Blue) in Hex Format
Languages
- ID must be a unique assignment
- Items are specifically assigned internally.
- Size is optional if the size needs to be different.
Buttons
- ID must be a unique assignment
- Items are specifically assigned internally. Use the comments in the XML for the reason for the Item
- Style indicates what style to use for the button
- hpos = horizontal position
- hposl = horizontal position when Left Handed Mode on
- vpos = vertical position
- width = width of the button (0 to hide the button)
- height = height of the button (0 to hide the button)
- Prompt (optional) if the button text needs to be multiple lines with the vertical line height