The Black Ice printer
drivers have the most extensive feature set
and user interface on the market to satisfy
a wide range of requirements. Many of the features
are exotic and most users may not need some
features such as watermarks, annotations and
different TIFF file options. There are several
ways to simplify the user interface and they
will be discussed below in detail.
In
most cases, the developer would like their
end users to use the Black Ice printer driver,
which is integrated into their product, as
simply as possible and only use the features
they need. The Black Ice Printer Drivers include
several methods of restricting access to specific
controls and functionality as desired by the
developer. These methods include:
I.
Hiding the user interface tabs
The
current version of the Black Ice printer drivers
has seven ‘tabs’ on the user interface:

Device
Settings
File Formats
Filename Generation
Start Application
Watermark
Embed Annotation
Profile Manger
Since
all of the printer settings can be read or
changed programmatically, it is possible that
developers may want to hide one or more of
the unnecessary tabs. Even if the tabs are
not shown for the end user, the developer can
manipulate the printer settings programmatically
from their application or simply set the required
settings at installation time.
The
tabs can be hidden through the INI file used
by the printer driver. In order to hide a tab,
set the value associated to the tab to 0. If
the value is not zero or the value is not specified
in the INI file, the tab will be shown. The
following example will display only the Device
Settings (this is the only tab that cannot
be hidden) and the Profile Manager tab.

[UI
Tabs Settings]
Display File Format Tab=0
Display Filename Generation Tab=0
Display Start Application Tab=0
Display Watermark Tab=0
Display Annotation Tab=0
Display Profile Manager Tab =1
There
are several advantages to hiding tabs. For
example, this way the developer can be sure
that the user can generate only the file formats
supported by his application, which could save
hours of frustration for both the user and
the developer’s technical support department.
II.
Hiding controls
It
is possible to hide unnecessary controls from
each printer driver dialog. This can be useful
when some of the controls on a specific tab
are needed on the user interface and therefore
the whole tab cannot be hidden.
The
source code of the Resource dll is included
in the Resource Toolkit (RTK). The Resource
dll can be compiled using Microsoft Visual
C++ 6.0 or higher. The developer can hide controls
and/or can move controls and in this way change
the user interface to fit the needs of the
application that integrates the printer driver.
In
order to hide a control, open the resource
dll project (BI_RES.DSP) using Visual C++.
The project is located in the ResourceDLL\
folder in the directory where the RTK was installed.
Open
the dialog box resource you would like to modify
and right click on the control you want to
hide. Uncheck the ‘Visible’ checkmark in order
to hide the control.
The
controls on the user interface are disabled/enabled
(gray/available) programmatically by the printer
driver. Black Ice recommends hiding the unnecessary
controls instead of disabling them, because
at runtime, the printer driver may enable the
controls. However, if a control was hidden
it will not appear for the users.
Rebuild
the Resource dll by selecting the project setting
matching your driver to make sure that the
dll has the proper file name.
Read
more tips in the next issue of the Newsletter.