1. Well-versed in Delphi 7.0
2. Experienced in font management and wordprocessor creation, using WPTools
3. Experienced in creating object-oriented programming
4. Experienced in creating security sub-routines against piracy, using dongle hardware and software
5. Experienced in the use of InstallShield to create the Install programme of the software and record it on CDs/DVDs
6. Experienced in testing the software functions and performance during development and after completion, in order to guarantee the correct working of the programme
7. Experienced in working to contract
1. Compile the WPTools 6 source code, using Delphi 7.0 and make the necessary modifications, as defined below.
2. Create a graphical interface mainform for the Egyptian wordprocessor, as shown in Illustration 1, according to the following specifications:
a) The mainform of the Egyptian wordprocessor should be visual, with graphics on the top menu bar and to the sides of the workspace.
b) The relevant icons should be incorporated in the Toolbar for the different functions of the programme.
c) The buttons for the main font categories should be incorporated below the Toolbar. Since most of the font categories include more than one font, the Developer should incorporate a function whereby a drop-down menu appears, when the user moves their cursor over any font button, listing all the fonts in that font category. There are, for example, eight fonts within the font category of ‘Animals’ but the font button below the Toolbar is for Animals in general. When the user moves their cursor over the button ‘Animals’, therefore, a drop-down menu should appear, listing the eight fonts within the Animals category. When one of these fonts is selected, this particular font becomes the default font for the workspace of the programme and appears in the “Insert symbol”, known in Tehuty 1.0 as “VMap” (Visual Map).
3. Create the main workspace of the Egyptian wordprocessor, according to the following specifications:-
a) The space between one character/symbol and the next is pre-defined.
b) When dragging-and-dropping a character/symbol from the VMap (“Insert Symbol”), the space between one character/symbol and the next is also pre-defined.
c) The space between two words will be obtained by pressing the space bar once, which will give a space of 100 pixels.
d) When dragging-and-dropping a character/symbol to form a different word, the space between one word and the next should be 100 pixels. The Developer should create a key function or visual button on the Toolbar to enable this function.
e) When typing continuously, the space between lines should be 200 pixels.
f) Pressing the Return/Enter key should drop the cursor/text by 300 pixels, to start a new paragraph.
g) Enable a 3-D text function to be used within the workspace of the Egyptian wordprocessor, as in graphic programmes. When the 3-D icon on the Toolbar is pressed, the text which you write would become 3-D or, if you highlight a text and press the 3-D icon on the Toolbar, the text would change into 3-D. This function would apply to both English and Egyptian writing. The 3-D form should be simple and only one form, which is rounded.
4. Create a Visual Map (VMap), by modifying the WPTools “Insert Symbol” function and shape, according to the following specifications:-
a) The VMap should be incorporated as a dropdown option in the Main Menu of the Egyptian wordprocessor. Its default function would be to enable the user to view the current Egyptian font in use, with the option of viewing all other fonts installed in the Windows font file and it should be displayed on either the left or right side of the workspace, so that it would not interrupt the main workspace.
b) The VMap dropdown menu should also enable the user to ‘drag-and-drop’ any Egyptian character/symbol from the VMap into the workspace, according to the specifications described above.
c) When dragging-and-dropping Egyptian characters/symbols from the VMap dropdown menu, the dragged Egyptian character/symbol should fit in the specific space and position defined for it within the Egyptian font. This function is specified within an encoding file, which has already been generated. The Developer should make the appropriate link between the encoding file and the workspace and install it within the Egyptian wordprocessor, using Delphi 7.0. The Developer can find the appropriate place for installing this encoding file by examining the source code in a previous version of the Egyptian wordprocessor, which was created ten years ago using Delphi 2.0, identified hereafter as Customer Exhibit 1 (old Tehuty 1.0 software).
5. Create a Mirror Image function, similar to those found in graphics programmes, which would show on the Toolbar as an icon. When texts are highlighted within the main workspace of the Egyptian wordprocessor and the Mirror Image icon is pressed, the highlighted texts would be flipped from left to right or vice-versa. If the Mirror Image icon is pressed when no text is highlighted within the page, then it would flip the entire page of text from left to right or vice-versa. The Developer would also create a function as in Adobe Photoshop, where you can change the line writing into column writing by clicking a button, even if the text has to change into a graphic form to enable this function.
6. Ensure that the Magnifying function included in the WPTools source code is operational within the Egyptian wordprocessor.
7. Create a Link in the Main Menu of the Egyptian wordprocessor to connect the user to the HTML and PDF Tutor files. The Developer can find the appropriate Toolbar items for this link in the Delphi 2.0 version of the Egyptian wordprocessor. The Developer should incorporate the following specifications:-
a) The Developer must retain all links established within the HTML and PDF Tutor files. The obvious way to achieve this is by creating directories within the Egyptian wordprocessor which carry the same directory and file names as the original. For example, if the original file was linked to Drive E:\Tehuty\html\IndexDW.html, this file extension should be kept intact. This rule also applies to all graphics, fonts and sound files contained within the Tutor files.
8. Create Security sub-routines, according to the following specifications:-
a) Ensure that the security sub-routines provided with the dongles are operational.
b) Ensure that each copy of the software on CD/DVD is copy-protected via CD/DVD copy protection software.
c) Incorporate the function of limiting a Single-User licensee to five installations of the Software, after which the credit on their dongle/CD/DVD would expire and the programme can be installed again but the user must have the CD/DVD of the Software present in his/her CD-ROM for the programme to work. The Single-User licensee could, therefore, install the programme on five different computers but would still need the original dongle/CD/DVD in order to access the Software, thereby limiting the Single-User licensee to using one computer at a time.
d) Create a function within the Software to prevent copying of the programme by installing a code, so that when someone tries to print or copy a file or a font from the Windows directory, a message would be displayed saying: “Please find something else to do. Otherwise you will damage the programme”.
e) Create a function within the Software whereby the Egyptian and English fonts are installed in a resource file, thus being available only in the wordprocessor application itself, rather than being installed in the Windows directory.
9. Create the Install and Setup programmes for the Software for all the following Windows versions: Windows XP, Windows Vista and Windows 7. Also create the Uninstall programme for the Software, which would uninstall all the Software files, in addition to removing the Egyptian fonts provided with this Software from the Windows directory.
10. Write the technical specifications for the use of the Software within the Help file.
11. Incorporate the HTML Viewer component in the Software, so that the user can view all the HTML files provided in the Software only through the viewer, independent of Internet Explorer or any other browser used for the internet.
12. Incorporate a PDF Viewer component in the Software, so that the user can view all the PDF files provided in the Software independent of Adobe Acrobat or Adobe Reader software, thereby ensuring that files cannot be saved, printed, exported or copied.