nftdialog::nftdialog(QWidget* parent, QString lang, QString templateDir) : QDialog(parent) { setupUi(this); setModal(true); settings = new nftsettings(lang, templateDir); setWindowIcon(loadIcon("AppIcon.png")); // context menu removeAction = new QAction(tr("&Remove"), tnailGrid); openAction = new QAction(tr("&Open"), tnailGrid); tnailGrid->addAction(removeAction); tnailGrid->addAction(openAction); setupAbout(); toolBox->setItemIcon(0, loadIcon("16/information.png")); toolBox->setItemIcon(1, loadIcon("16/image-x-generic.png")); toolBox->setItemIcon(2, loadIcon("16/help-browser.png")); tnailGrid->setIconSize(QSize(60, 60)); // Signals and Slots Connections connect(categoryList, SIGNAL(itemSelectionChanged()), this, SLOT(setTNails())); connect(tnailGrid, SIGNAL(itemSelectionChanged()), this, SLOT(setInfo())); connect(tnailGrid, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(accept())); connect(removeAction, SIGNAL(triggered()), this, SLOT(removeTemplate())); connect(openAction, SIGNAL(triggered()), this, SLOT(accept())); setupListItems(); setupCategories(); }
AssetTemplatesDialog::AssetTemplatesDialog( QWidget * parent ) : QDialog( parent ) { setupUi( this ); ProjectList pl = Project::select().filter( "fkeyProjectStatus", 4 ).sorted( "name" ); Project none; none.setName( "None (Global Templates)" ); pl.insert( pl.begin(), none ); mProjectCombo->setColumn( "name" ); mProjectCombo->setItems( pl ); AssetTypeList atl = AssetType::select().filter( "disabled", 0 ).sorted( "timesheetcategory" ); mTypeCombo->setColumn( "name" ); mTypeCombo->setItems( atl ); connect( mProjectCombo, SIGNAL( currentChanged( const Record & ) ), SLOT( projectChanged( const Record & ) ) ); connect( mTypeCombo, SIGNAL( currentChanged( const Record & ) ), SLOT( assetTypeChanged( const Record & ) ) ); connect( mAddButton, SIGNAL( clicked() ), SLOT( addTemplate() ) ); connect( mEditButton, SIGNAL( clicked() ), SLOT( editTemplate() ) ); connect( mRemoveButton, SIGNAL( clicked() ), SLOT( removeTemplate() ) ); connect( mTemplateList, SIGNAL( currentChanged( const Record & ) ), SLOT( slotCurrentChanged( const Record & ) ) ); RecordListModel * model = new RecordListModel( this ); model->setColumn( "name" ); mTemplateList->setModel( model ); assetTypeChanged( mTypeCombo->current() ); }
void RoundTemplateGraphics::initRoundTemplateGraphics() { setFlag(ItemIsMovable); setFlag(ItemIsFocusable); setFlag(ItemIsSelectable); setZValue(TEMPLATE_Z_VALUE); actionRemoveTemplate = new QAction(tr("Retirer"), this); connect(actionRemoveTemplate, SIGNAL(triggered()),this, SLOT(removeTemplate())); setOpacity(0.7); }
void TemplateSimplifier::simplifyTemplates( TokenList& tokenlist, ErrorLogger& errorlogger, const Settings *_settings, bool &_codeWithTemplates ) { std::set<std::string> expandedtemplates(TemplateSimplifier::expandSpecialized(tokenlist.front())); if (TemplateSimplifier::getTemplateDeclarations(tokenlist.front(), _codeWithTemplates).empty()) return; // There are templates.. // Remove "typename" unless used in template arguments.. for (Token *tok = tokenlist.front(); tok; tok = tok->next()) { if (tok->str() == "typename") tok->deleteThis(); if (Token::simpleMatch(tok, "template <")) { while (tok && tok->str() != ">") tok = tok->next(); if (!tok) break; } } std::list<Token *> templates(TemplateSimplifier::getTemplateDeclarations(tokenlist.front(), _codeWithTemplates)); // Locate possible instantiations of templates.. std::list<Token *> templateInstantiations(TemplateSimplifier::getTemplateInstantiations(tokenlist.front())); // No template instantiations? Then return. if (templateInstantiations.empty()) return; // Template arguments with default values TemplateSimplifier::useDefaultArgumentValues(templates, &templateInstantiations); // expand templates //bool done = false; //while (!done) { //done = true; std::list<Token *> templates2; for (std::list<Token *>::reverse_iterator iter1 = templates.rbegin(); iter1 != templates.rend(); ++iter1) { bool instantiated = TemplateSimplifier::simplifyTemplateInstantiations(tokenlist, errorlogger, _settings, *iter1, templateInstantiations, expandedtemplates); if (instantiated) templates2.push_back(*iter1); } for (std::list<Token *>::iterator it = templates2.begin(); it != templates2.end(); ++it) { std::list<Token *>::iterator it1 = std::find(templates.begin(), templates.end(), *it); if (it1 != templates.end()) { templates.erase(it1); removeTemplate(*it); } } } }