I am looking for someone to give me the embryo of a photocataloging program. It is really quite simple but I am giving a detailed decription so that the project is clear. It must be written in Perl using GTK2. It needs to read the contents of a directory full of jpg images. There can be over 1000 in the directory. Each jpg needs to be diplayed on the screen one at a time. The jpgs come from a digital camera and are variable resolutions so they need to be scaled to fit on the screen. Each time a photograph is displayed there needs to be a method of entering a short text description of each photograph. I need to minimise the time taken to enter each name and since the photographs will often be of similar subjects I need a history function to chose previous titles and modify them. I want this to work like the inputing of commands on the command line under Linux where I can use the arrow keys to bring previous commands into view to edit. For example I may have a picture which I have labeled "picture of a flower from above" and I have a new picture which is to be labeled "picture of a flower from below". I want to be able to save time typing by bringing the previous title into the input box and editing it. The titles are to be written to a text file with the original file name of the photograph. This needs to be done in a way that makes it easy for me to change the program to do other things with this data in the future. THe program needs to be designed for speed of data entry so that after entering the text description I need to hit enter and the next photgraph appears with out needing to use the mouse. The program needs to be well documented with all variable names etc. in English.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
The platform is Linux. The Langauge is PERL using the GTK2.