- dlg_listbox_clear(ctrl, dlg);
- dlg_listbox_add(ctrl, dlg, PRINTER_DISABLED_STRING);
- pe = printer_start_enum(&nprinters);
- for (i = 0; i < nprinters; i++)
- dlg_listbox_add(ctrl, dlg, printer_get_name(pe, i));
- printer_finish_enum(pe);
+ /*
+ * Some backends may wish to disable the drop-down list on
+ * this edit box. Be prepared for this.
+ */
+ if (ctrl->editbox.has_list) {
+ dlg_listbox_clear(ctrl, dlg);
+ dlg_listbox_add(ctrl, dlg, PRINTER_DISABLED_STRING);
+ pe = printer_start_enum(&nprinters);
+ for (i = 0; i < nprinters; i++)
+ dlg_listbox_add(ctrl, dlg, printer_get_name(pe, i));
+ printer_finish_enum(pe);
+ }