Shell and User Interface Overview (Windows Embedded CE 6.0)
1/6/2010
Shell and User Interface functionality in Windows CE 5.0 includes the following three modules:
GWES
GWES is the interface between the user, the applications, and the operating system (OS). The GWES module consists of the Microsoft Win32® application programming interface (API), user interface (UI), and graphics device interface (GDI) libraries.
GWES supports all the resources, controls, and window controls that make up the Windows Embedded CE UI, which enables users to control applications. GWES also includes support for user input and for GDI, which includes support for fonts, text drawing, line and shape drawing, palettes, and printing.
Resources are objects that are used within an application but are defined outside an application. GWES includes support for the following resources:
- Bitmaps
- Carets
- Cursors
- Dialogs boxes and message boxes
- Icons
- Images
- Keyboard accelerators
- Menus
- Strings
- Timers
A control is a child window that an application uses in conjunction with another window to perform I/O tasks. Common controls are a set of windows that are supported by the common control library, which is a dynamic-link library (DLL) that is included with Windows Embedded CE. GWES includes support for the following common controls:
- Command band
- 7Command bar
- Date and time picker
- Header control
- Image list
- List view
- Month calendar control
- Pocket PC-style ToolTips
- Progress bar
- Property sheet
- Rebar
- Status bar
- Tab control
- Toolbar
- ToolTip
- Trackbar
- Tree view
- Up-down control
A window control is a predefined child window that allows a user to make selections, carry out commands, and perform I/O tasks. GWES includes support for the following window controls:
- Buttons, including check boxes, push buttons, radio buttons, and group boxes
- Combo boxes
- Edit controls
- List boxes
- Scroll bars
- Static controls
Windows Embedded CE also supports the CAPEDIT Control and SBEDIT Control for use in edit controls.
Display-based OS designs include most of the available GWES functionality by default. For more information about GWES support available on all display-based OS designs, see GWES on Windows Embedded CE.
The following table shows additional GWES functionality that OS design developers can add to display-based OS designs, beyond the capabilities that are available by default.
Functionality | Description |
---|---|
Provides options that allow persons with disabilities to use computers more easily. |
|
Allows users to provide input through a mouse. |
|
Supports the ability to send printing commands to device drivers. |
|
Allows users to provide input through a software-based input panel displayed on a touch screen. |
|
Allows users to provide input through a stylus and touch screen. |
OS design developers can also customize the UI by creating a skin. The default UI is similar in appearance to the UI in Windows 95. An OS design developer can choose the Windows XP-like Sample Skin Catalog item to provide a UI that is similar in appearance to the UI in Windows XP. An OS design developer can also create a custom skin. For more information about skins and the creation of skins, see Creating a Skin.
OS design developers can also change the behavior of menus. By default, menus contain only one level; that is, menu items do not open submenus. OS design developers can choose the Overlapping Menus Catalog item to provide support for cascading, overlapping menus to enable submenus. OS design developers can also set the SYSGEN_MENU_TAP_UI environment variable to require that the user tap a menu item before the item is activated.
Shell
The Shell provides the basic framework for the user interface on an OS design. The shell works to present a consistent appearance and behavior throughout the computing experience and can be used to locate files and folders.
The shell architecture in Windows Embedded CE allows OS design developers to implement a wide variety of shells. All the source code for the presentation and user interface aspects of the Windows Embedded CE Standard Shell, formerly known as the HPC shell, is available to OS design developers. This allows fully customized shells built for individual OS designs to be completely integrated into the OS. The following table shows shell functionality that OS design developers can add to display-based OS designs.
Functionality | Description |
---|---|
Includes an application for a command-line-driven shell that provides console input and output and a limited number of commands. This functionality is also available on headless OS designs. |
|
Provides a shell that is similar to the shell on the Windows-based desktop operating systems. The source code for this shell is available for customization. |
|
Provides a Windows Thin Client user interface. |
Beginning with Windows CE .NET 4.2, OEMs can include API compatibility support for the Pocket PC 2002 shell in their OS design. These extensions to the Standard Shell are known as the AYGShell API extensions. AYGShell support means that most Pocket PC 2002-based applications can run on a Windows Embedded CE-based device without change - if the processor is the same - or after being recompiled for a different processor.