Пример #1
0
void QPythonParamList::contextMenuEvent(QContextMenuEvent* evt)
{
    QMenu menu(this);
    QAction* addObjItem = menu.addAction(tr("Add Parameter..."));
    QAction* editObjItem = menu.addAction(tr("Edit Parameter..."));
    QAction* delObjItem = menu.addAction(tr("Remove Parameter"));

    if (currentItem() == NULL)
        delObjItem->setEnabled(false);

    QAction* sel = menu.exec(evt->globalPos());
    if (sel == addObjItem) {
        QPythonParamDialog dlg(this);
        if (dlg.exec() == QDialog::Accepted)
            addParam(dlg.parameter());
    } else if (sel == editObjItem) {
        QPythonParamDialog dlg(this);
        dlg.init(fParams[indexOfTopLevelItem(currentItem())]);
        if (dlg.exec() == QDialog::Accepted) {
            plPythonParameter param = dlg.parameter();
            fParams[indexOfTopLevelItem(currentItem())] = param;
            QStringList list = makeParamItem(param);
            for (int i=0; i<list.size(); i++)
                currentItem()->setText(i, list[i]);
        }
    } else if (sel == delObjItem) {
        delParam(indexOfTopLevelItem(currentItem()));
    }
}
Пример #2
0
PiSDFGraph::~PiSDFGraph() {
	while(edges_.getN() > 0)
		delEdge(edges_[0]);
	while(bodies_.getN() > 0){
		if(bodies_[0]->isHierarchical()){
			bodies_[0]->getSubGraph()->~PiSDFGraph();
			StackMonitor::free(PISDF_STACK, bodies_[0]->getSubGraph());
		}
		delVertex(bodies_[0]);
	}
	while(configs_.getN() > 0)
		delVertex(configs_[0]);
	while(inputIfs_.getN() > 0)
		delVertex(inputIfs_[0]);
	while(outputIfs_.getN() > 0)
		delVertex(outputIfs_[0]);
	while(params_.getN() > 0)
		delParam(params_[0]);
}