void CodeLineEdit::insertVariable(const QString &variable) { //If a validator is set this means that the insertion will fail //In this case, reset the content and set the code mode if(validator()) { if(!text().isEmpty() && QMessageBox::question(this, tr("Insert variable/resource"), tr("Inserting a variable or a resource will replace the current parameter value.\nAre you sure?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes) != QMessageBox::Yes) return; setCode(true); setText(QString()); } //Temporarily remove the completer so that we don't get a popup QCompleter *currentCompleter = completer(); if(currentCompleter) { currentCompleter->setParent(0); setCompleter(0); } if(isCode()) insert(variable); else insert("$" + variable); if(currentCompleter) { currentCompleter->setParent(this); setCompleter(currentCompleter); } }
void ProjectManagerPlugin::on_client_merged(qmdiHost *host) { if (m_dockWidget) return; QMainWindow *window = dynamic_cast<QMainWindow*>(host); m_dockWidget = new QDockWidget(window); m_dockWidget->setObjectName("m_dockWidget"); m_dockWidget->setWindowTitle( tr("Project") ); #if 0 m_treeView = new QTreeView(m_dockWidget); m_treeView->setAlternatingRowColors(true); m_dockWidget->setWidget(m_treeView); #else QWidget *w = new QWidget(m_dockWidget); m_gui = new Ui::ProjectManagerGUI; m_gui->setupUi(w); m_dockWidget->setWidget(w); #endif m_projectModel = new FoldersModel(m_gui->filesView); //m_projectModel->processDir("/home/elcuco/src/qtedit4/"); // m_projectModel->processDir("/home/elcuco/src/qt-creator/"); m_projectModel->processDir("/home/elcuco/src/googlecode/qtedit4/trunk/"); // m_projectModel->processDir("c:\\Users\\elcuco\\Source\\qtedit4"); m_gui->filesView->setModel(m_projectModel); window->addDockWidget( Qt::LeftDockWidgetArea, m_dockWidget ); QCompleter *completer = new GenericItemCompleter(); completer->setModel(m_projectModel); completer->setParent(m_gui->filenameLineEdit); completer->setCaseSensitivity(Qt::CaseInsensitive); completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion); completer->setCompletionRole(0); completer->setCompletionPrefix("/"); m_gui->filenameLineEdit->setCompleter(completer); connect(m_gui->filesView,SIGNAL(clicked(QModelIndex)),this,SLOT(onItemClicked(QModelIndex))); connect(m_gui->addDirectoryButton,SIGNAL(clicked()),this,SLOT(onAddDirectoryClicked())); }