mirror of
https://github.com/kvazar-network/kevacoin.git
synced 2025-01-09 14:47:55 +00:00
eec7757445
Introduce a PlatformStyle to handle platform-specific customization of the UI. This replaces 'scicon', as well as #ifdefs to determine whether to place icons on buttons. The selected PlatformStyle defaults to the platform that the application was compiled on, but can be overridden from the command line with `-uiplatform=<x>`. Also fixes the warning from #6328.
80 lines
1.9 KiB
C++
80 lines
1.9 KiB
C++
// Copyright (c) 2011-2014 The Bitcoin Core developers
|
|
// Distributed under the MIT software license, see the accompanying
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
#ifndef BITCOIN_QT_RECEIVECOINSDIALOG_H
|
|
#define BITCOIN_QT_RECEIVECOINSDIALOG_H
|
|
|
|
#include "guiutil.h"
|
|
|
|
#include <QDialog>
|
|
#include <QHeaderView>
|
|
#include <QItemSelection>
|
|
#include <QKeyEvent>
|
|
#include <QMenu>
|
|
#include <QPoint>
|
|
#include <QVariant>
|
|
|
|
class OptionsModel;
|
|
class PlatformStyle;
|
|
class WalletModel;
|
|
|
|
namespace Ui {
|
|
class ReceiveCoinsDialog;
|
|
}
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
class QModelIndex;
|
|
QT_END_NAMESPACE
|
|
|
|
/** Dialog for requesting payment of bitcoins */
|
|
class ReceiveCoinsDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
enum ColumnWidths {
|
|
DATE_COLUMN_WIDTH = 130,
|
|
LABEL_COLUMN_WIDTH = 120,
|
|
AMOUNT_MINIMUM_COLUMN_WIDTH = 160,
|
|
MINIMUM_COLUMN_WIDTH = 130
|
|
};
|
|
|
|
explicit ReceiveCoinsDialog(const PlatformStyle *platformStyle, QWidget *parent = 0);
|
|
~ReceiveCoinsDialog();
|
|
|
|
void setModel(WalletModel *model);
|
|
|
|
public Q_SLOTS:
|
|
void clear();
|
|
void reject();
|
|
void accept();
|
|
|
|
protected:
|
|
virtual void keyPressEvent(QKeyEvent *event);
|
|
|
|
private:
|
|
Ui::ReceiveCoinsDialog *ui;
|
|
GUIUtil::TableViewLastColumnResizingFixer *columnResizingFixer;
|
|
WalletModel *model;
|
|
QMenu *contextMenu;
|
|
const PlatformStyle *platformStyle;
|
|
|
|
void copyColumnToClipboard(int column);
|
|
virtual void resizeEvent(QResizeEvent *event);
|
|
|
|
private Q_SLOTS:
|
|
void on_receiveButton_clicked();
|
|
void on_showRequestButton_clicked();
|
|
void on_removeRequestButton_clicked();
|
|
void on_recentRequestsView_doubleClicked(const QModelIndex &index);
|
|
void recentRequestsView_selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
|
|
void updateDisplayUnit();
|
|
void showMenu(const QPoint &point);
|
|
void copyLabel();
|
|
void copyMessage();
|
|
void copyAmount();
|
|
};
|
|
|
|
#endif // BITCOIN_QT_RECEIVECOINSDIALOG_H
|