Specifying Feature and Option Display Order
Important
The modern print platform is Windows' preferred means of communicating with printers. We recommend that you use Microsoft's IPP inbox class driver, along with Print Support Apps (PSA), to customize the print experience in Windows 10 and 11 for printer device development.
For more information, see Modern print platform and the Print support app design guide.
To control the order in which features and options are displayed on Unidrv-generated property sheet pages, include empty *Feature and *Option entries in the GPD file. These entries must be placed towards the beginning of the file, before the appearance of full *Feature and *Option entries, and before any other references to feature or option names. The order in which the empty entries are listed is the order in which the features and options appear on the property sheet pages. (Note, however, that options of the PaperSize feature are always listed in alphabetical order, and this order cannot be changed.)
Following is an example of a set of empty *Feature and *Option entries:
*Feature: EconoMode
{
*Option: Off{}
*Option: On{}
}
*Feature: Orientation
{
*Option: PORTRAIT{}
*Option: LANDSCAPE_CC90{}
}
*Feature: PaperSize
{
}
*Feature: Resolution
{
*Option: Option1{}
*Option: Option2{}
*Option: Option3{}
}
The example specifies the order in which the EconoMode, Orientation, PaperSize, and Resolution features are displayed. Additionally, it specifies the display order for the EconoMode, Orientation, and Resolution options. PaperSize options are displayed in alphabetical order.
If a GPD file does not include empty *Feature and *Option entries specifying the display order, the GPD parser determines the display order. While the parser generally causes features and options to be displayed in the order they appear in a GPD file, this order is not guaranteed. Additionally, by default the parser always causes the InputBin feature to be displayed first.
Including empty *Feature and *Option entries to explicitly specify display order is recommended over allowing the parser to create the order.