Editor Tab (not available on the Web Start version)
Unlike the other tabs, the Editor tab is only visible when you are actively editing a device. To edit a device, right-click on the device you wish to edit in the Relationships tab1 and select the Edit device option.
The following screen shots show the addition of some capabilities which will be initially added to an arbitrary device.
Selecting device to edit
The Editor Tab
The pop-up menu on the Editor tab allows you to add new capabilities. The capability will be added to the group that is shown on the current tab, in this case the product_info group:
Editor tab pop-up
When adding capabilities, you should take care to ensure that you do not duplicate any existing capability names. If you attempt to add a duplicated capability name, a warning will be displayed.
Adding a capability
New capabilities are added to the generic device. This means that the capability is available for all devices and it's Default value is inherited by all devices that do not specifically override it. It is highly recommended that you provide default values that can be safely used for unknown devices.
When the capability has been added, it shows up in the appropriate tab.
The fields in the edit tab are colour coded in the same was as the Device tab. For the Editor Tab there is an additional colour coding:
Capabilities that are edited will be included in the Show overridden capabilities dialog available from the Relationships tab.
Changes can be discarded by pressing the Cancel button at the bottom of the screen.
After you have edited the capabilities of the device and you are happy with the changes, you should press the OK button. This will bring up the confirmation dialog that allows you to save the changes that you have made. All the changes are listed so that you can verify the data that is about to be saved.
Confirmation of changes
The options on the dialog have the following effects:
This will bring up the file saving dialog to allow you to name the WURFL patch file that is about to be created to record the changes.
The File save dialog
By default, the current working directory will be selected and the default file name will be wurfl_patch_XXX.xml. It is recommended that you change only the XXX part of the file name due to the way in which patch files are detected and loaded at application startup. Saving your patch file here will allow it to be automatically detected and loaded the next time you execute mDevInf.
If you select an existing file, you will be asked if you wish to replace it or add the changes for this session into the existing file.
For a patch file to be automatically detected and loaded, it must appear in the current working directory and must begin with wurfl_patch and end with .xml2.
The following image shows the new capabilities in use3:
New capabilities in use
Extending an existing device
In addition to editing the capabilities of an existing device, it is possible to add a new device into the hierarchy (again, this will be included in the patch file). To add a new device, you use the Extend device option from the Relationships hierarchy pop-up menu. There are two main reasons to add a new device:
In either case, you may wish to add an actual device (this should be a real, physical device that could generate the User Agent that you provide), or a fall-back device. This may be necessary where several further devices need to be added, but contain common capability settings.
1 It is possible to edit devices from pop-up menu options on the Device and Results tabs.
2 When creating a patch file, you can choose to add to or overwrite an existing patch file. mDevInf can handle multiple patch files (see the WURFL Patch section of the Install and Build guide for more details). However for other WURFL applications (eg. the APIs provided for web use), only a single WURFL patch file is used. See the File | Consolidate... menu options for details on how to produce a single patch file from all patched data in memory.
3 The N-Gage styles are deliberately all left as the default false value because it does not clearly fit into any of the suggested categories. Don't write to me about this :-)