Transcript Document
Software Localization Lecture 4 Dr. Gregory M. Shreve Institute for Applied Linguistics 7/17/2015 1 What’s the User Interface? 7/17/2015 2 Software User Interfaces Have Changed Over Time A software user interface is simply a way to allow you to use your operating system or other program (word processing program, adventure game) more easily. You can access and use the functions of the program more easily. Software user interfaces have changed over time. TYPE METAPHOR OS PERIOD COMMAND LINE WRITING DOS 1960 - 1970'S FUNCTION KEY & COMMAND LINE BUTTON PRESSING DOS EARLY 1980'S MENUS BUTTON PRESSING DOS LATE 70'S TILL NOW WIMP OBJECT MANIPULATION MAC OS WINDOWS LATE 70'S (LISA) MID 1980'S TILL NOW 7/17/2015 3 Copying a File: Four Different Ways Action: Copy a file called afile.txt to the floppy drive A: from the hard disk C: Command Line/DOS: Function Key / DOS: Menu: COPY C:afile.txt A:afile.txt F5 menu or dialog dialog WIMP: 7/17/2015 4 Origin and Evolution of the GUI (Graphical User Interface) The software user interfaces we use today are called GUI’s (Graphical User Interfaces). Windows, the Macintosh operating system and the Unix operating system all use GUI’s. The specific type of GUI is called a WIMP interface: Windows Icons Mouse Pointer 7/17/2015 5 WIMP User Interfaces The purpose of a GUI - WIMP interface is to: • provide a mechanism for naturally separating and indicating different functions or activities (windows) • provide a more visual way of dealing with the software (icons) • provide a more natural and tactile way of controlling and indicating functions and areas of focus on the screen (mouse) • provide a more intuitive way of selecting and interacting with the functions or activities (pointers) WIMP interfaces try to be intuitive. This means they should be easy to learn just by using. WIMP interfaces try to achieve ease of use by adopting a metaphor, often from some aspect of everyday life. 7/17/2015 6 Windows : Desktop Metaphor Windows and most of the other GUI’s use a desktop metaphor. What you see on the screen is meant to represent a desktop. In the DESKTOP metaphor, the computer screen is a virtual 'desktop' with electronic 'folders,' 'documents,' 'disk icons' and a 'trash can' which are patterned after the physical objects in the physical office. The user interacts with this virtual world by using a mouse, an input device which allows one to move an arrow across the desktop and pick up an electronic object by clicking and holding a mouse button. To get rid of a physical document from my desktop, I toss it in the trash can. Metaphors are most intuitive to users when they are fairly literal, as in deleting a document by tossing it in the trash can. But metaphors can also be "magical;" that is, metaphors can be used in ways which do not precisely mimic the things they represent. On the Macintosh, for instance, ejecting a diskette from the floppy drive is also accomplished by dragging the disk icon to the trash can. This is very confusing to most people and counterintuitive. ? 7/17/2015 7 Other Metaphors Are Possible Well, there is a lot more I could say on interface design. Suffice to say for now that these interfaces try to be natural and intuitive -- and only succeed to some degree. There are many actions that are not well represented by “metaphors,” there is still a very heavy dependence on menus, and there can be a steep learning curve with respect to the behavior of files and folders. Still, if we look back over the history of the user interface it is a miraculous improvement. Other metaphors are possible. Some of you may remember the old interface for children, called Microsoft BOB. The children accessed different computer functions by going into a virtual house and entering different rooms. In the family room, for instance, they could access reference works, click on a notebook on a desk to keep a household journal, click on a clock on a table to see the date and time, or click on a checkbook to keep their budget up to date. 7/17/2015 8 7/17/2015 9 Inventory of the Basic Object Terminology and Concepts of a GUI (Windows) A GUI has an array of different kinds of objects that may need to be localized . On this page are a folder, a scroll bar, a menu and a very large object, the Desktop. 7/17/2015 10 Types of Windows Objects Pointer: A symbol that appears on the display screen and that you move to select objects and commands. Usually, the pointer appears as a small angled arrow. Text -processing applications, however, use an I-beam pointer shaped like a capital I. • Icons: Small pictures that represent commands, folders, files, or windows. By moving the pointer to the icon and pressing a mouse button, you can execute a command or convert the icon into a window. You can also move the icons around the display screen as if they were real objects on your desk. The purpose of an icon object is to represent other objects. It has few properties of its own. If the icon is a picture of a disk drive it will act differently if pressed than if the icon represents a file or a printer. •Devices: objects (usually represented by icons of drives, CD-ROMs, printers) standing for physical storage or input output devices attached to the computer. •Desktop: area on the display screen where icons are grouped is often referred to as the desktop because the icons are intended to represent real objects on a real desktop. 7/17/2015 11 Types of Windows Objects •Windows: You can divide the screen into different areas. In each window, you can run a different program or display a different file. You can move windows around the display screen, and change their shape and size at will. •Menus: Most graphical user interfaces let you execute commands by select-ing a choice from a menu. •Folders: Folders are objects that contain other folders, files, or both folders and files. •Files: file objects are programs or data. They are usually stored in folders. Depending on the type of file, the icon representing it may be different. Here is a WordPerfect word processing file object represented by a unique icon. 7/17/2015 12 Types of Windows Objects •Taskbars: In many application programs certain often used functions are represented on taskbar objects instead of on menus. Windows uses the same idea with the taskbar on the desktop. Above is a WordPerfect word-processing taskbar. • Controls: This is a very large class of objects that serve a variety of purposes. Their primary purpose is user control. Common controls list boxes and combo boxes for letting the user choose among options), scroll bars for move up and down in a window, command buttons for activating certain functions, and many more. Here are some common controls: list box command button scroll bar 7/17/2015 13 Types of Windows Objects Dialog Boxes: A secondary window with controls. Dialog boxes use labels, graphics and various controls to get information or provide information to users. They are one of the most common objects to localize. dialog box 7/17/2015 14 Tool Tips Small popup window providing descriptive text (a small label) for a control, dialog element or graphic object. Also occurs in web pages. Tooltips are localizable material. 7/17/2015 15 Common Controls Controls are objects that enable user interaction or input, often to initiate an action, display information or set values. Controls contain a number of localizable elements. Windows and the Mac-OS have standard or common controls Companies may also produce proprietary controls. Controls are used in the system and application program interface and can be used in web pages as well. 7/17/2015 16 Controls: Check Boxes French German Check Box The caption property can be translated. Colors, fonts, bitmaps can be localized. Purpose is to select options. Multiple selection is possible. 7/17/2015 17 Controls: Combo Boxes Combo Box Standard control that combines a text box and interdependent list box. You can enter a value directly or select one from a drop down list. There is no caption property, but list items must be translated. Colors, fonts, can be localized. Border, dropdown button can be changed. 7/17/2015 18 Controls: List Boxes List Box A ListBox is the same as a ComboBox, except the user cannot type anything into a ListBox. He or she can only click on one or more of the listed items, thereby selecting that item or set of items. There is no caption property, but list items must be translated. Colors, fonts, can be localized. Border, dropdown button can be changed. 7/17/2015 19 Controls: Command and Toggle Buttons Toggle Me Toggle Button Command Buttons Submit Your Request A Command Button provides visually intuitive, direct access - the user sees the caption and simply clicks the mouse on it to get something done. The button-down animation offers good, strong feedback; there's a real sense that something has happened. Caption is to be translated. Colors, fonts, bitmaps can be localized. Toggle buttons are similar, but stay pressed in until clicked again. 7/17/2015 20 Controls: Text Box Text Box Please Enter Your Name Standard Windows control in which a user can enter and edit text; also called an edit field. The default value in the field is to be translated. Colors, borders and fonts can be set. 7/17/2015 21 Controls: Option, Toggle or Radio Button Male Option Button Female Standard Windows control that allows a user to select from a fixed set of mutually-exclusive choices (also called a radio button). The caption is to be translated. Bitmaps, colors, and fonts can be set. 7/17/2015 22 Controls: Spin Buttons and Scroll Bars Scroll Bar Spin Button 8 The primary use of a SpinButton is to adjust numbers or dates or some other serial data. For example, you could allow users to specify how many days they're willing to wait for a backordered item from your catalog. Only colors can be changed. The control to the right is a text box. Scrollbars are similar, but have no localizable content other than color. 7/17/2015 23 Controls: Label, Picture I AM A LABEL The primary purpose of the Label Control is to add text to a GUI. Often used in combination with other controls to make complex forms or dialogs. Bitmaps, colors, and fonts can be set. Picture controls are used to provide finer control over picture properties when used in forms or dialogs. Only the assigned bitmap is localizable. 7/17/2015 24 Controls: Tab Control The tab control provides an alternative way to organize and present information. Fonts, colors, and bitmaps may be set. The tab labels and the tool tip text must be translated. 7/17/2015 25 Controls: Status Bars and Progress Bars Status Bar Progress Bar A status bar is an area displaying state information about the information being displayed in a window; usually placed at the base of a window. A progress bar provides a user with information about the state of a process. The controls are usually associated with strings that must be localized. 7/17/2015 26 Controls: Other Controls file list box drive list box directory list box There are a host of other controls that are rarely used by themselves, but are grouped together in dialog boxes. 7/17/2015 27 Dialog Box A Dialog (or dialog box) is a secondary window that gathers information from a user. The box groups controls, text and graphics in a common frame. In other words it is a “composite” object. There may be significant amounts of localizable material in such objects. How many controls are grouped in this one? This is a “common dialog box” and is a part of the API. It performs Save As…, Print, Open, etc. functions 7/17/2015 28 Dialog Box Common Dialog Input Open, Save As…, Print, Font, Colour There are also custom dialog boxes created by specific software publishers. 7/17/2015 29 hot keys Menus control keys Menus contain localizable STRINGS, as well as hot keys (also known as accelerator or hit keys). Control keys may also need to be localized (but not always). 7/17/2015 30 dll or exe file Translate direct in program file with a resource editor or localization tool that will work with program files. internal resources Localization Translate resource file with a text editor (rc) or with a localization tool that works with resource files. external resources rc, res or dlg file A rc file is a text file and a res file has been compiled from it 7/17/2015 31 This program contains a menu, controls, a single dialog box, and several strings. The resources for this file are shown in the following slides. 7/17/2015 32 Localizing Controls and Dialog Boxes // Dialog Box // Language DIALOG 0, 0, 180, 80 STYLE WS_POPUP | WS_BORDER BEGIN GROUPBOX "Select a Language Pair", 1073,2,3,175,75,WS_GROUP CONTROL "German->English", 79, "Button",BS_RADIOBUTTON, 15, 13, 70, 12 CONTROL "English->German", 80, "Button",BS_RADIOBUTTON, 15, 33, 70, 12 CONTROL "French->English", 81, "Button",BS_RADIOBUTTON, 15, 53, 70, 12 CONTROL "English->French", 82, "Button",BS_RADIOBUTTON, 85, 13, 70, 12 CONTROL "Spanish->English", 83, "Button",BS_RADIOBUTTON, 85, 33, 70, 12 CONTROL "English->Spanish", 84, "Button",BS_RADIOBUTTON, 85, 53, 70, 12 END 7/17/2015 Controls do not often occur alone. They are usually localized as part of Dialogs. Localization takes place manually by workind directly in the application or, by editing a resource file using a resource editor or special localization tool. 33 PortfolioMenu MENU BEGIN POPUP "&File" BEGIN MENUITEM "&Add Student",1 MENUITEM SEPARATOR MENUITEM "&Delete Student", 2 MENUITEM SEPARATOR MENUITEM "&Update Student", 3 MENUITEM "E&xit", 4 END POPUP "&Tools" BEGIN MENUITEM "Add &Portrait", 5 END POPUP "&Help" BEGIN MENUITEM "About Portfolio", 6 MENUITEM SEPARATOR MENUITEM "Contents", 7 END END 7/17/2015 Localizing Menus If not working directly in an application, or with a menu editor in an IDE, the localizer will usually localize a menu from its representation in a resource file. A resource editor or a specialized localization tool will be used. Notice the specification of the hot keys. 34 Localizing Strings STRINGTABLE BEGIN 10 "Welcome to the Institute for Applied Linguistics Student Portfolio!" 11 "Translation Student" 12 "Portfolio!" 13 "Translation Students at the Institute for Applied Linguistics" 14 "Name" 15 "Email" 16 "Job Interests" 17 "Language Direction" 18 "Student Portrait" 19 "Portfolio! Portrait of " 20 "Version" 21 "Property of " END Unless working directly in an application, the localizer usually translates strings from a string table in a resource file. 7/17/2015 35