Пример #1
0
QWidget* TaskContextItemDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
{

    QLineEdit *editor = new QLineEdit(parent);//qobject_cast<QLineEdit*>(QItemDelegate::createEditor(parent, option, index));
    editor->setFrame(true);
    QCompleter *completer = new QCompleter(vcontextModel);
    completer->setModel(vcontextModel);
    completer->setCaseSensitivity(Qt::CaseInsensitive);
    completer->setCompletionMode(QCompleter::InlineCompletion);
    completer->setCompletionColumn(1);
    completer->setWrapAround(false);

    editor->setCompleter(completer);
    return editor;
}
Пример #2
0
void ProjectReader::readScripts(QString &path, QString &name, bool open) {
    Q_ASSERT(xml.isStartElement() && xml.name() == QLatin1String("Script"));

    QString n;
    Highlighter *h;
    QCompleter *c;
    CodeEditor *editor = new CodeEditor(name, 0, h);
    
    if (open) {
        editor = 0;
        mMw->addCodeEditor(path + "/" + name);
    } else {
        
        editor->setUndoRedoEnabled(true);
        editor->setTabStopWidth(29);
#ifdef Q_WS_MAC
        int size = 12;
        QFont font("Monaco", size);
#endif
#ifdef Q_OS_WIN
        int size = 10;
        QFont font("Consolas", size);
#endif
#ifdef Q_OS_LINUX
        int size = 10;
        QFont font("Inconsolata-g", size);
#endif
        editor->setFont(font);
        h = new Highlighter(editor->document());
        c = new QCompleter();
        c->setModel(mDocumentManager->modelFromFile(":/wordlist.txt"));
        c->setModelSorting(QCompleter::CaseInsensitivelySortedModel);
        c->setCaseSensitivity(Qt::CaseInsensitive);
        c->setWrapAround(false);
        c->popup()->setStyleSheet("color: #848484; background-color: #2E2E2E; selection-background-color: #424242;");
        editor->setCompleter(c);
        
        n = path + "/" + name;
        //qDebug() << "look a script" << n;
        
        editor->openFile(path + "/" + name);
        
        mMw->addCodeEditor(editor, open);
    }

    xml.skipCurrentElement();
}
Пример #3
0
void TextImportDialog::setupUi()
{
	// Setup directory completors for the file and script boxen
	QCompleter *completer = new QCompleter(this);
	QDirModel *dirModel = new QDirModel(completer);
	completer->setModel(dirModel);
	completer->setCompletionMode(QCompleter::PopupCompletion);
	completer->setCaseSensitivity(Qt::CaseInsensitive);
	completer->setWrapAround(true);
	m_ui->filename->setCompleter(completer);

	completer = new QCompleter(this);
	dirModel = new QDirModel(completer);
	completer->setModel(dirModel);
	completer->setCompletionMode(QCompleter::PopupCompletion);
	completer->setCaseSensitivity(Qt::CaseInsensitive);
	completer->setWrapAround(true);
	m_ui->scriptFile->setCompleter(completer);
	
	completer = new QCompleter(this);
	dirModel = new QDirModel(completer);
	completer->setModel(dirModel);
	completer->setCompletionMode(QCompleter::PopupCompletion);
	completer->setCaseSensitivity(Qt::CaseInsensitive);
	completer->setWrapAround(true);
	m_ui->preprocFile->setCompleter(completer);
	
	// Remember the last format selected
	bool isPlainText = QSettings().value("textimport/plaintext",true).toBool();
	m_ui->fmtPlain->setChecked(isPlainText);
	m_ui->fmtFields->setChecked(!isPlainText);
	
	// Find the template
	QSettings settings;
	int templateId = settings.value("textimport/template-id",0).toInt();
	if(templateId > 0)
		m_template = SlideTemplateManager::instance()->findTemplate(SlideTemplateManager::Generic,templateId);
	
	// Setup the template selector widget
	TemplateSelectorWidget *tmplWidget = new TemplateSelectorWidget(SlideTemplateManager::Generic,"Template:",this);
	if(m_template)
		tmplWidget->setSelectedGroup(m_template);
	else
		m_template = tmplWidget->selectedGroup();
	
	// Add template editor to UI
	//QVBoxLayout *vbox = new QVBoxLayout(m_ui->templateBox);
	//vbox->addWidget(tmplWidget);
	m_ui->templateBox->layout()->addWidget(tmplWidget);
			
	connect(tmplWidget, SIGNAL(currentGroupChanged(SlideGroup*)), this, SLOT(templateChanged(SlideGroup*)));
	
	// Connect slots
	connect(m_ui->buttonBox,     SIGNAL(accepted()), this, SLOT(doImport()));
	connect(m_ui->browse,        SIGNAL(clicked()),  this, SLOT(browseBtn()));
	connect(m_ui->scriptBrowse,  SIGNAL(clicked()),  this, SLOT(scriptBrowseBtn()));
	connect(m_ui->preprocBrowse, SIGNAL(clicked()),  this, SLOT(preprocBrowseBtn()));
	
	
	m_ui->filename->setText(AppSettings::previousPath("textimport"));
	m_ui->scriptFile->setText(AppSettings::previousPath("script"));
	m_ui->preprocFile->setText(AppSettings::previousPath("preproc"));
}