Skip to content

Commit

Permalink
Merge 6014482 into 5519ad0
Browse files Browse the repository at this point in the history
  • Loading branch information
uglide committed Apr 4, 2018
2 parents 5519ad0 + 6014482 commit c4a766c
Show file tree
Hide file tree
Showing 9 changed files with 27 additions and 14 deletions.
5 changes: 5 additions & 0 deletions src/app/models/treeoperations.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,11 @@ QString TreeOperations::getNamespaceSeparator()
return static_cast<ServerConfig>(m_connection->getConfig()).namespaceSeparator();
}

QString TreeOperations::defaultFilter()
{
return static_cast<ServerConfig>(m_connection->getConfig()).keysPattern();
}

void TreeOperations::openKeyTab(ConnectionsTree::KeyItem& key, bool openInNewTab)
{
emit m_manager.openValueTab(m_connection, key, openInNewTab);
Expand Down
2 changes: 2 additions & 0 deletions src/app/models/treeoperations.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ class TreeOperations : public QObject, public ConnectionsTree::Operations,

QString getNamespaceSeparator() override;

QString defaultFilter() override;

void openKeyTab(ConnectionsTree::KeyItem& key, bool openInNewTab = false) override;

void openConsoleTab() override;
Expand Down
3 changes: 2 additions & 1 deletion src/modules/connections-tree/items/abstractnamespaceitem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ AbstractNamespaceItem::AbstractNamespaceItem(Model& model,
uint dbIndex)
: TreeItem(model),
m_parent(parent),
m_operations(operations),
m_operations(operations),
m_filter(operations->defaultFilter()),
m_expanded(false),
m_dbIndex(dbIndex)
{
Expand Down
6 changes: 3 additions & 3 deletions src/modules/connections-tree/items/databaseitem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ QByteArray DatabaseItem::getFullPath() const

QString DatabaseItem::getDisplayName() const
{
QString filter = m_filter.isEmpty()? "" : QString("[filter: %1]").arg(m_filter.pattern());
QString filter = m_filter.pattern() == "*"? "" : QString("[filter: %1]").arg(m_filter.pattern());
QString liveUpdate = m_liveUpdateTimer.isActive()? "[live update]" : "";

return QString("db%1 %2 (%3) %4")
Expand Down Expand Up @@ -140,7 +140,7 @@ void DatabaseItem::loadKeys(std::function<void ()> callback)

QVariantMap DatabaseItem::metadata() const
{
QVariantMap metadata = TreeItem::metadata();
QVariantMap metadata = TreeItem::metadata();
metadata["filter"] = m_filter.pattern();
metadata["live_update"] = m_liveUpdateTimer.isActive();
return metadata;
Expand Down Expand Up @@ -223,7 +223,7 @@ void DatabaseItem::filterKeys(const QRegExp &filter)

void DatabaseItem::resetFilter()
{
m_filter = QRegExp();
m_filter = QRegExp(m_operations->defaultFilter());
emit m_model.itemChanged(getSelf());
reload();
}
8 changes: 0 additions & 8 deletions src/modules/connections-tree/keysrendering.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,6 @@ void KeysTreeRenderer::renderKeys(QSharedPointer<Operations> operations,
}

for (QByteArray rawKey : keys) {

//if filter enabled - skip keys
if (!settings.filter.isEmpty()) {
QString key = QString::fromUtf8(rawKey); // UTF filtering
if (!key.contains(settings.filter))
continue;
}

renderLazily(parent, rawKey.mid(unprocessedPartStart), rawKey, operations, settings,
expandedNamespaces);
}
Expand Down
2 changes: 2 additions & 0 deletions src/modules/connections-tree/operations.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ namespace ConnectionsTree {
*/
virtual QString getNamespaceSeparator() = 0;

virtual QString defaultFilter() = 0;

virtual void openKeyTab(KeyItem& key, bool openInNewTab) = 0;

virtual void openConsoleTab() = 0;
Expand Down
2 changes: 1 addition & 1 deletion src/qml/ConnectionSettignsDialog.qml
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,7 @@ Dialog {

columns: 2

Label { text: qsTr("Keys glob-style pattern:") }
Label { text: qsTr("Default filter:") }

TextField
{
Expand Down
10 changes: 9 additions & 1 deletion src/qml/connections-tree/menu/InlineMenu.qml
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,16 @@ RowLayout {
}

tooltip: modelData['help'] != undefined ? modelData['help'] + " (" + modelData["shortcut"] + ")" : ""
objectName: modelData['event'] != undefined ? "rdm_inline_menu_button_" + modelData['event'] : ""

objectName: {
if (modelData['event'] != undefined)
return "rdm_inline_menu_button_" + modelData['event']

if (modelData['callback'] != undefined)
return "rdm_inline_menu_button_" + modelData['callback']

return ""
}
}

Shortcut {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ class ItemOperationsMock : public ConnectionsTree::Operations {
QString namespaceSeparator = ":";
QString getNamespaceSeparator() { return namespaceSeparator; }

QString defaultKeysFilter = "*";
QString defaultFilter() { return defaultKeysFilter; }

void disconnect() {}

virtual void openKeyTab(ConnectionsTree::KeyItem&, bool) override {}
Expand Down

0 comments on commit c4a766c

Please sign in to comment.