The main purpose of this program is to integrate a third party web app to existing Restaurant and Retail point of sale software. I need a program which will be split up into 2 parts. The main program will run on top of POS software and send macro commands to the computer through a customizable macro button or series of macro buttons. The program is intended to find some usable space on the POS screen and utilize it to integrate the third party web app. Example: I have a coupon program window that runs in a window set to say 400x300 resolution. This is a stand alone app and when active I can log into a website and swipe a customer rewards card and view data about that customer. The main app will have a button that switches between the POS software and the third party app as well as be able to send custom keystrokes to the POS program. When I am done swiping the card for the customer data I either hit another macro button (or the same one if it can be done) and is brings me back to the POS or I can just touch the POS software outside the 400x300 web app to get back to the main [url removed, login to view] second part of this project will be an interface for making templates for the on screen macros. I need these to be separate so I can make and charge for custom macro templates.
I need a program that will sit on top of different windows applications and allow me to press a button on the screen and send a macro to different Point of Sale applications. This part of the document describes the main application I want to have made for me and will require the following:
1. Needs to be light weight as the computers this will be running on will have minimal hardware in most cases. It will run on XP Embedded/XP/Vista/7.
2. It will be running for long periods of time (months) without a reboot so it needs to be stable.
3. The program needs to use pogrammable templates. I want the templates to be hosted locally and I want the ability to choose different templates from within the program - like html links, so I can switch templates while I am in the program.
4. The program will need to be able to send macros of different lengths. I.E. hold down ALT and hit 1024 then release alt then hit enter. or send S wait 10 milliseconds and send E and wait 90 miliseconds and then send enter.
5. I need a user interface to change the default template for the program.
6. I want the program to have a tray icon so the user can exit or minimize during use.
I am also going to need a way to modify the way the templates look and behave. I will need a second "template creation program" where I can change the templates and then move the templates into the main program. I want to have a templates directory in the installation location of the main program. The second "template creation program" requires the following:
1. I need an easy to modify WYSIWYG blank template for use with resolutions of 800x600 and 1024x768. I would like the following options to be displayed in the same window as the blank template so I can easily modify an entire template without selecting drop down boxes for common tasks:
a. Button Size: Size of the button being edited both horizontal and vertical. I need the ability to modify these values by single pixels.
b. Background Image: Background Image on a button (jpg format support is a must) that will auto resize to the button size.
c. Button Background Color: Button background color where I can choose from a sample of colors from the standard Windows color swatch like the one in display settings in XP.
d. Text Color: Button Text Color also choosen from the Windows color swatch.
e. Invisible or Disable: Basically make the button disappear from the template. The default 800x600 and 1024x 768 template should have all buttons be invisible by default and I can select the button and un-invisible it to make it show up in the finished template.
f. Text: The visible text on the button.
g. Font: Font style and type
h. Font Size: Text font size ( I want to be able to manually fill this in for a custom size).
i. Clear Button: resets the button to blank and invisible.
j. Macro: The functions that I can assign to the button. The program macro making ability needs to contain the following:
I. All standard 104 key US keyboard button both capitalized or lower case. Depending on how this information is sent to the main program for execution I will need an wasy way to select from non-number and non-letter keys. I want a drop down menu with all the wierd keys like alt and ctrl and ~ to choose from instead of memorizing ascii codes of similair.
II. The ability to call an external exe with the ability to determine wether the program is already running or not. If the program is already running then I just want the program to become the active window otherwise I want the external exe to start and become the active window.
III. I need to be able to design several templates and link to them individually within the program so I can change templates on the fly while in the main program.
IV. I need the ability to add milisecond values between macro buttons.
V. The ability to display a message window to the user and have them choose yes or no.
VI. The ability to exit from the main program with a script button.
k. Button Position: The location of the button on the screen modifible by pixel