summaryrefslogtreecommitdiff
path: root/utils/themeeditor/gui/syntaxcompleter.cpp
diff options
context:
space:
mode:
authorRobert Bieber <robby@bieberphoto.com>2010-07-30 08:38:38 +0000
committerRobert Bieber <robby@bieberphoto.com>2010-07-30 08:38:38 +0000
commitba41fa537a432210147586b1442ab67b6d400d18 (patch)
treed65b1bb4e7d20de518b40db98fb4399f419d36be /utils/themeeditor/gui/syntaxcompleter.cpp
parentf8dd370ff8ece4d32589767dc4a9b43398c1cf7e (diff)
downloadrockbox-ba41fa537a432210147586b1442ab67b6d400d18.zip
rockbox-ba41fa537a432210147586b1442ab67b6d400d18.tar.gz
rockbox-ba41fa537a432210147586b1442ab67b6d400d18.tar.bz2
rockbox-ba41fa537a432210147586b1442ab67b6d400d18.tar.xz
Theme Editor: Made auto-complete functional and enabled it by default. Added a small subset of the available tags to the tagdb file, filling it out is todo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27625 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/themeeditor/gui/syntaxcompleter.cpp')
-rw-r--r--utils/themeeditor/gui/syntaxcompleter.cpp25
1 files changed, 17 insertions, 8 deletions
diff --git a/utils/themeeditor/gui/syntaxcompleter.cpp b/utils/themeeditor/gui/syntaxcompleter.cpp
index 0b4f05f..8baace4 100644
--- a/utils/themeeditor/gui/syntaxcompleter.cpp
+++ b/utils/themeeditor/gui/syntaxcompleter.cpp
@@ -23,15 +23,20 @@
#include <QTreeWidgetItem>
#include "syntaxcompleter.h"
+#include "codeeditor.h"
-SyntaxCompleter::SyntaxCompleter(QWidget *parent) :
+SyntaxCompleter::SyntaxCompleter(CodeEditor *parent) :
QTreeWidget(parent)
{
setHeaderHidden(true);
+ setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);
setWordWrap(true);
setColumnCount(2);
+ QObject::connect(this, SIGNAL(activated(QModelIndex)),
+ parent, SLOT(insertTag()));
+
QFile fin(":/resources/tagdb");
fin.open(QFile::ReadOnly | QFile::Text);
@@ -45,14 +50,11 @@ SyntaxCompleter::SyntaxCompleter(QWidget *parent) :
QStringList tag;
tag.append(split[0].trimmed());
tag.append(split[1].trimmed());
- tags.insert(split[0].trimmed().toLower(), tag);
+ tags.insertMulti(split[0].trimmed().toLower(), tag);
}
filter("");
- resizeColumnToContents(0);
- setColumnWidth(0, columnWidth(0) + 10); // Auto-resize is too small
-
}
void SyntaxCompleter::filter(QString text)
@@ -64,13 +66,13 @@ void SyntaxCompleter::filter(QString text)
{
if(text.length() == 1)
{
- if(text[0].toLower() != i.key()[0])
+ if(text[0].toLower() != i.key()[0].toLower())
continue;
}
else if(text.length() == 2)
{
- if(text[0].toLower() != i.key()[0] || i.key().length() < 2
- || text[1].toLower() != i.key()[1])
+ if(text[0].toLower() != i.key()[0].toLower() || i.key().length() < 2
+ || text[1].toLower() != i.key()[1].toLower())
continue;
}
else if(text.length() > 2)
@@ -80,4 +82,11 @@ void SyntaxCompleter::filter(QString text)
addTopLevelItem(new QTreeWidgetItem(i.value()));
}
+
+ if(topLevelItemCount() > 0)
+ setCurrentIndex(indexFromItem(topLevelItem(0)));
+
+ resizeColumnToContents(0);
+ setColumnWidth(0, columnWidth(0) + 10); // Auto-resize is too small
+ resizeColumnToContents(1);
}