void ReferenceDialog::compute() { QApplication::setOverrideCursor(Qt::waitCursor); Q3PtrList<BrowserNode> l; BrowserNode * bn; nodes.clear(); results->clear(); target->referenced_by(l); for (bn = l.first(); bn; bn = l.next()) nodes.append(bn); nodes.sort(); // remove duplicats nodes.first(); while ((bn = nodes.current()) != 0) if (bn == nodes.next()) nodes.remove(); QStringList names; nodes.full_names(names); QStringList::Iterator it; for (bn = nodes.first(), it = names.begin(); bn; bn = nodes.next(), ++it) results->insertItem(*(bn->pixmap(0)), *it); selected((nodes.isEmpty()) ? -1 : 0); QApplication::restoreOverrideCursor(); }
ConstraintTable::ConstraintTable(QWidget * parent, ConstraintCanvas * c) : Q3Table(c->elements.count(), 4, parent) { setSorting(true); setSelectionMode(NoSelection); setRowMovingEnabled(FALSE); horizontalHeader()->setLabel(0, TR("visible")); horizontalHeader()->setLabel(1, " "); horizontalHeader()->setLabel(2, TR("element")); horizontalHeader()->setLabel(3, TR("constraint")); setColumnStretchable(0, FALSE); setColumnStretchable(1, FALSE); int row; bool v = c->indicate_visible; Q3ValueList<BrowserNode *> & hv = c->hidden_visible; BrowserNodeList & elts = c->elements; BrowserNode * bn; QString yes = TR(" yes"); QString empty; elts.sort(); for (bn = elts.first(), row = 0; bn != 0; bn = elts.next(), row += 1) { if ((v) ? hv.findIndex(bn) != -1 : hv.findIndex(bn) == -1) setText(row, 0, yes); setPixmap(row, 1, *(bn->pixmap(0))); TableItem * ti; ti = new TableItem(this, Q3TableItem::Never, bn->full_name(TRUE)); ti->setReplaceable(FALSE); setItem(row, 2, ti); QString s = toUnicode(bn->constraint()); int n = s.count('\n'); ti = new TableItem(this, Q3TableItem::Never, s); ti->setReplaceable(FALSE); setItem(row, 3, ti); if (n != 0) { // note : adjustRow(row) does nothing setRowHeight(row, rowHeight(row) * (n + 1)); } } adjustColumn(0); adjustColumn(1); setColumnStretchable(2, TRUE); setColumnStretchable(3, TRUE); connect(this, SIGNAL(pressed(int, int, int, const QPoint &)), this, SLOT(button_pressed(int, int, int, const QPoint &))); }
FragmentDialog::FragmentDialog(const QStringList & defaults, QString & s, QString & fo, BrowserNode *& d) : QDialog(0, "Fragment dialog", TRUE), name(s), form(fo), refer(d) { setCaption(TR("Fragment dialog")); Q3VBoxLayout * vbox = new Q3VBoxLayout(this); Q3HBoxLayout * hbox; QLabel * lbl1; QLabel * lbl2; SmallPushButton * refer_bt; BrowserNode * bn; vbox->setMargin(5); hbox = new Q3HBoxLayout(vbox); hbox->setMargin(5); hbox->addWidget(lbl1 = new QLabel(TR("name : "), this)); name_cb = new Q3ComboBox(TRUE, this); name_cb->insertItem(name); name_cb->setCurrentItem(0); name_cb->insertStringList(defaults); name_cb->setAutoCompletion(completion()); hbox->addWidget(name_cb); QSizePolicy sp = name_cb->sizePolicy(); sp.setHorData(QSizePolicy::Expanding); name_cb->setSizePolicy(sp); hbox = new Q3HBoxLayout(vbox); hbox->setMargin(5); hbox->addWidget(refer_bt = new SmallPushButton(TR("refer to : "), this)); connect(refer_bt, SIGNAL(clicked()), this, SLOT(menu_refer())); diag_cb = new Q3ComboBox(FALSE, this); BrowserDiagram::instances(nodes, TRUE); diag_cb->insertItem(""); for (bn = nodes.first(); bn != 0; bn = nodes.next()) diag_cb->insertItem(*(bn->pixmap(0)), bn->full_name(TRUE)); diag_cb->setCurrentItem((refer == 0) ? 0 : nodes.findRef(refer) + 1); diag_cb->setSizePolicy(sp); hbox->addWidget(diag_cb); hbox = new Q3HBoxLayout(vbox); hbox->setMargin(5); hbox->addWidget(lbl2 = new QLabel(TR("arguments \n/ value : "), this)); hbox->addWidget(ed_form = new LineEdit(this)); ed_form->setText(form); same_width(lbl1, lbl2, refer_bt); hbox = new Q3HBoxLayout(vbox); hbox->setMargin(5); QPushButton * accept = new QPushButton(TR("&OK"), this); QPushButton * cancel = new QPushButton(TR("&Cancel"), this); QSize bs(cancel->sizeHint()); accept->setDefault(TRUE); accept->setFixedSize(bs); cancel->setFixedSize(bs); hbox->addWidget(accept); hbox->addWidget(cancel); connect(accept, SIGNAL(clicked()), this, SLOT(accept())); connect(cancel, SIGNAL(clicked()), this, SLOT(reject())); }