One of the new features in system-config-printer-1.3 is that various dialogs are can now be invoked using D-Bus. The details of this are in the file scp-dbus-service.py but here is a summary.
The general idea is that new instances of the New Printer and Printer Properties dialogs, as well as a single instance of the Job Applet, can be requested, and these are given their own object paths. Each has its own simple interface.
In this way, it would be fairly easy for an application to present a dialog for adjusting the printer properties for a queue, and also for starting a job applet.
Here are some more details:
Bus name: org.fedoraproject.Config.Printing
Object path: /org/fedoraproject/Config/Printing
Creates a new instance of the New Printer dialog and returns its object path.
Creates a new instance of the Printer Properties dialog for a given printer name and returns its object path.
If a Job Applet (system tray icon) instance is already active, returns its object path; otherwise creates a new one and returns its object path.
Show a dialog for creating a new printer, given a device URI and an IEEE 1284 Device ID.
Show a dialog for changing the PPD for an existing printer.
The printer has now been added.
The PPD has now been changed.
The dialog has been cancelled by the user.
Print a test page to this printer.
The dialog has now closed.
Stops the applet.
The applet is no longer running.