Skip to content

Commit 26ec2f2

Browse files
committed
Merge #618: refactor: Add transactionoverviewwidget.cpp source file
a50e0b1 qt, refactor: Add `transactionoverviewwidget.cpp` source file (Hennadii Stepanov) Pull request description: The `TransactionOverviewWidget` class was added in #176 as a header-only one. Apparently, in upcoming [CMake project](hebasto/bitcoin#3), CMake [AUTOMOC](https://cmake.org/cmake/help/latest/prop_tgt/AUTOMOC.html) could be integrated better/simpler, if `QObject`-derived class implementation been placed into a source file. From our [Developer Notes](https://github.com/bitcoin/bitcoin/blob/master/doc/developer-notes.md#source-code-organization): > Implementation code should go into the `.cpp` file and not the `.h`, unless necessary due to template usage or when performance due to inlining is critical. ACKs for top commit: Sjors: tACK a50e0b1 shaavan: ACK a50e0b1 Tree-SHA512: 4707b6be1c5e794c4014475f826ac45ec833e472db11f12d29995f9c5a599ee98622ad54f0af72734b192144b626411c69acdafa0e6d1a390bdebfd7e570f377
2 parents a7a3659 + a50e0b1 commit 26ec2f2

File tree

4 files changed

+32
-16
lines changed

4 files changed

+32
-16
lines changed

build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
<ClCompile Include="..\..\src\qt\transactiondesc.cpp" />
5454
<ClCompile Include="..\..\src\qt\transactiondescdialog.cpp" />
5555
<ClCompile Include="..\..\src\qt\transactionfilterproxy.cpp" />
56+
<ClCompile Include="..\..\src\qt\transactionoverviewwidget.cpp" />
5657
<ClCompile Include="..\..\src\qt\transactionrecord.cpp" />
5758
<ClCompile Include="..\..\src\qt\transactiontablemodel.cpp" />
5859
<ClCompile Include="..\..\src\qt\transactionview.cpp" />

src/Makefile.qt.include

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@ BITCOIN_QT_WALLET_CPP = \
270270
qt/transactiondesc.cpp \
271271
qt/transactiondescdialog.cpp \
272272
qt/transactionfilterproxy.cpp \
273+
qt/transactionoverviewwidget.cpp \
273274
qt/transactionrecord.cpp \
274275
qt/transactiontablemodel.cpp \
275276
qt/transactionview.cpp \

src/qt/transactionoverviewwidget.cpp

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Copyright (c) 2021 The Bitcoin Core developers
2+
// Distributed under the MIT software license, see the accompanying
3+
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4+
5+
#include <qt/transactionoverviewwidget.h>
6+
7+
#include <qt/transactiontablemodel.h>
8+
9+
#include <QListView>
10+
#include <QSize>
11+
#include <QSizePolicy>
12+
13+
TransactionOverviewWidget::TransactionOverviewWidget(QWidget* parent)
14+
: QListView(parent) {}
15+
16+
QSize TransactionOverviewWidget::sizeHint() const
17+
{
18+
return {sizeHintForColumn(TransactionTableModel::ToAddress), QListView::sizeHint().height()};
19+
}
20+
21+
void TransactionOverviewWidget::showEvent(QShowEvent* event)
22+
{
23+
Q_UNUSED(event);
24+
QSizePolicy sp = sizePolicy();
25+
sp.setHorizontalPolicy(QSizePolicy::Minimum);
26+
setSizePolicy(sp);
27+
}

src/qt/transactionoverviewwidget.h

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,8 @@
55
#ifndef BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H
66
#define BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H
77

8-
#include <qt/transactiontablemodel.h>
9-
108
#include <QListView>
119
#include <QSize>
12-
#include <QSizePolicy>
1310

1411
QT_BEGIN_NAMESPACE
1512
class QShowEvent;
@@ -21,21 +18,11 @@ class TransactionOverviewWidget : public QListView
2118
Q_OBJECT
2219

2320
public:
24-
explicit TransactionOverviewWidget(QWidget* parent = nullptr) : QListView(parent) {}
25-
26-
QSize sizeHint() const override
27-
{
28-
return {sizeHintForColumn(TransactionTableModel::ToAddress), QListView::sizeHint().height()};
29-
}
21+
explicit TransactionOverviewWidget(QWidget* parent = nullptr);
22+
QSize sizeHint() const override;
3023

3124
protected:
32-
void showEvent(QShowEvent* event) override
33-
{
34-
Q_UNUSED(event);
35-
QSizePolicy sp = sizePolicy();
36-
sp.setHorizontalPolicy(QSizePolicy::Minimum);
37-
setSizePolicy(sp);
38-
}
25+
void showEvent(QShowEvent* event) override;
3926
};
4027

4128
#endif // BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H

0 commit comments

Comments
 (0)