DtSetModList::DtSetModList(AnyUI *parent, char *name, BaseUI *workarea, ButtonCallback filterCB) : Dialog(parent, name) { mainw = (DtMainW *) parent; _has_been_posted = false; _info = new LabelObj(this, MESSAGE(SelectPrintersToBeShowL)); _container = new Container(this, "FilterList", SCROLLED_VERTICAL_ROW_COLUMN, MULTIPLE_SELECT); _container->IconView(SMALL_ICON); _filterCB = filterCB; _workarea = (Container *) workarea; Container *form = new Container(this, "Form", FORM); _info->AttachRight(); _info->AttachLeft(); _info->AttachTop(); form->AttachBottom(); form->AttachRight(); form->AttachLeft(); _container->AttachBottom(form, 5); _container->AttachRight(); _container->AttachLeft(); _container->AttachTop(_info); select_all = new Button(form, MESSAGE(SelectAllL), PUSH_BUTTON, SelectAllCB, _container); unselect_all = new Button(form, MESSAGE(DeselectAllL), PUSH_BUTTON, UnSelectAllCB, _container); int i; IconObj **objs = (IconObj **) workarea->Children(); for (i = 0; i < workarea->NumChildren(); i++) { if (objs[i]->UIClass() == ICON) { IconObj *icon = new IconObj(_container, (char *)objs[i]->Name(), objs[i]->IconFile()); icon->ApplicationData = objs[i]; } } ok = new Button(this, MESSAGE(OKL), PUSH_BUTTON, OkCB, this); apply = new Button(this, MESSAGE(ApplyL), PUSH_BUTTON, ApplyCB, this); cancel = new Button(this, MESSAGE(CancelL), PUSH_BUTTON, CancelCB, this); help = new Button(this, MESSAGE(HelpL), PUSH_BUTTON, HelpCB, this); DefaultButton(ok); CancelButton(cancel); Reset(); }