1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-20 10:46:35 +01:00

Add RemoveItemFocusDelegate and use it in SearchEnginesDialog

This commit is contained in:
David Rosca 2017-06-08 13:08:38 +02:00
parent ea966925dc
commit bc65a0a038
3 changed files with 67 additions and 2 deletions

View File

@ -1,6 +1,6 @@
/* ============================================================
* QupZilla - WebKit based browser
* Copyright (C) 2010-2014 David Rosca <nowrep@gmail.com>
* QupZilla - Qt web browser
* Copyright (C) 2010-2017 David Rosca <nowrep@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -19,6 +19,8 @@
#include "ui_searchenginesdialog.h"
#include "editsearchengine.h"
#include "mainapplication.h"
#include "removeitemfocusdelegate.h"
#include <QMessageBox>
SearchEnginesDialog::SearchEnginesDialog(QWidget* parent)
@ -40,6 +42,7 @@ SearchEnginesDialog::SearchEnginesDialog(QWidget* parent)
connect(ui->treeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(editEngine()));
ui->treeWidget->setItemDelegate(new RemoveItemFocusDelegate(ui->treeWidget));
ui->treeWidget->sortByColumn(-1);
reloadEngines();
}

View File

@ -0,0 +1,30 @@
/* ============================================================
* QupZilla - Qt web browser
* Copyright (C) 2017 David Rosca <nowrep@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* ============================================================ */
#include "removeitemfocusdelegate.h"
RemoveItemFocusDelegate::RemoveItemFocusDelegate(QObject *parent)
: QStyledItemDelegate(parent)
{
}
void RemoveItemFocusDelegate::paint(QPainter* painter, const QStyleOptionViewItem & option, const QModelIndex &index) const
{
QStyleOptionViewItem opt = option;
opt.state &= ~QStyle::State_HasFocus;
QStyledItemDelegate::paint(painter, opt, index);
}

View File

@ -0,0 +1,32 @@
/* ============================================================
* QupZilla - Qt web browser
* Copyright (C) 2017 David Rosca <nowrep@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* ============================================================ */
#ifndef REMOVEITEMFOCUSDELEGATE_H
#define REMOVEITEMFOCUSDELEGATE_H
#include <QStyledItemDelegate>
class RemoveItemFocusDelegate : public QStyledItemDelegate
{
public:
explicit RemoveItemFocusDelegate(QObject *parent = nullptr);
private:
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override;
};
#endif // REMOVEITEMFOCUSDELEGATE_H