address icons
@ -1,4 +1,5 @@
|
|||||||
Icon: src/qt/res/icons/clock*.png
|
Icon: src/qt/res/icons/clock*.png, src/qt/res/icons/tx*.png,
|
||||||
|
src/qt/res/src/*.svg
|
||||||
Designer: Wladimir van der Laan
|
Designer: Wladimir van der Laan
|
||||||
License: Creative Commons Attribution
|
License: Creative Commons Attribution
|
||||||
|
|
||||||
|
@ -30,6 +30,10 @@
|
|||||||
<file alias="export">res/icons/export.png</file>
|
<file alias="export">res/icons/export.png</file>
|
||||||
<file alias="synced">res/icons/synced.png</file>
|
<file alias="synced">res/icons/synced.png</file>
|
||||||
<file alias="remove">res/icons/remove.png</file>
|
<file alias="remove">res/icons/remove.png</file>
|
||||||
|
<file alias="tx_mined">res/icons/tx_mined.png</file>
|
||||||
|
<file alias="tx_input">res/icons/tx_input.png</file>
|
||||||
|
<file alias="tx_output">res/icons/tx_output.png</file>
|
||||||
|
<file alias="tx_inout">res/icons/tx_inout.png</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
<qresource prefix="/images">
|
<qresource prefix="/images">
|
||||||
<file alias="about">res/images/about.png</file>
|
<file alias="about">res/images/about.png</file>
|
||||||
|
BIN
src/qt/res/icons/tx_inout.png
Normal file
After Width: | Height: | Size: 631 B |
BIN
src/qt/res/icons/tx_input.png
Normal file
After Width: | Height: | Size: 594 B |
BIN
src/qt/res/icons/tx_mined.png
Normal file
After Width: | Height: | Size: 754 B |
BIN
src/qt/res/icons/tx_output.png
Normal file
After Width: | Height: | Size: 593 B |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
122
src/qt/res/src/inout.svg
Normal file
@ -0,0 +1,122 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
id="svg3039"
|
||||||
|
version="1.1"
|
||||||
|
inkscape:version="0.48.0 r9654"
|
||||||
|
width="120"
|
||||||
|
height="120"
|
||||||
|
sodipodi:docname="inout3.svg"
|
||||||
|
inkscape:export-filename="/home/orion/projects2/bitcoin/tx_mined.png"
|
||||||
|
inkscape:export-xdpi="12"
|
||||||
|
inkscape:export-ydpi="12"
|
||||||
|
style="display:inline">
|
||||||
|
<metadata
|
||||||
|
id="metadata3045">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<defs
|
||||||
|
id="defs3043" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="1127"
|
||||||
|
id="namedview3041"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:zoom="1"
|
||||||
|
inkscape:cx="87.12655"
|
||||||
|
inkscape:cy="67.287943"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="25"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="layer7" />
|
||||||
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer2"
|
||||||
|
inkscape:label="base"
|
||||||
|
style="display:none">
|
||||||
|
<path
|
||||||
|
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#afafaf;fill-opacity:1;stroke:none;stroke-width:7;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||||
|
d="m 45.375,17 c -13.984022,0.241082 -24.968241,3.28976 -37.4375,9.59375 -8.9920665,21.871558 -6.680947,46.393002 -1.96875,69 26.190925,13.15317 55.594909,12.97748 81.75,-0.21875 3.852144,-9.729509 1.599587,-12.800015 2.375,-23.15625 C 83.917272,72.423868 77.129905,67.688094 74.1875,75.25 72.702487,79.722025 76.119709,82.645519 69.15625,83.34375 53.023957,88.536726 37.721719,89.140031 21.875,82.28125 19.715285,68.367979 18.599566,53.65725 22.5,40 c 16.868164,-6.642068 33.121079,-6.120062 50.03125,-0.15625 1.285344,5.854815 1.574746,5.763255 2.375,11.6875 C 80.46378,51.970623 89.644961,53.334736 91.3125,46 91.85305,36.007959 89.372312,31.625095 87.1875,25.6875 73.709743,21.03478 59.804255,16.698888 45.375,17 z"
|
||||||
|
id="path3053"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccccccccccc" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer3"
|
||||||
|
inkscape:label="arrow_out"
|
||||||
|
style="display:none">
|
||||||
|
<path
|
||||||
|
style="fill:#6e6e6e;fill-opacity:1;stroke:none;display:inline"
|
||||||
|
d="m 63.983409,65.48134 0.267857,-9.514444 36.161424,-0.194173 -7.414458,-8.757971 3.798312,-7.572721 c 0,0 23.437946,20.796656 22.500436,21.185 -0.93751,0.388345 -23.170094,22.73838 -23.170094,22.73838 l -3.128654,-8.931927 7.548388,-8.5638 z"
|
||||||
|
id="path3844"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccscccc" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer4"
|
||||||
|
inkscape:label="arrow_in"
|
||||||
|
style="display:none">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path4080"
|
||||||
|
d="m 99.28763,65.48134 -0.26786,-9.514444 -36.161422,-0.194173 7.768009,-6.283097 -4.151865,-9.279828 c 0,0 -23.43795,20.028889 -22.500436,20.417233 0.937514,0.388345 23.170094,20.970613 23.170094,20.970613 l 3.482207,-9.639034 -7.901936,-6.088926 z"
|
||||||
|
style="fill:#6e6e6e;fill-opacity:1;stroke:none;display:inline"
|
||||||
|
sodipodi:nodetypes="cccccscccc" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer7"
|
||||||
|
inkscape:label="mined"
|
||||||
|
style="display:inline">
|
||||||
|
<path
|
||||||
|
style="fill:#a9a9a9;fill-opacity:1;stroke:none;display:inline"
|
||||||
|
d="M 9.4375,99.758169 78.14665,33.110294 73.680556,28.300653 67.153187,8.375 l 18.55147,6.527369 4.80964,3.779003 4.809641,-4.80964 11.680552,12.367647 -6.18382,4.80964 13.74183,14.085377 -12.71119,14.42892 -14.77247,-16.14665 -65.273693,70.770424 z"
|
||||||
|
id="path4103"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccccccccccc" />
|
||||||
|
<path
|
||||||
|
sodipodi:nodetypes="cccccccccccccc"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path4619"
|
||||||
|
d="M 114.5625,99.758169 45.85335,33.110294 50.319444,28.300653 56.846813,8.375 l -18.55147,6.527369 -4.80964,3.779003 -4.809641,-4.80964 -11.680556,12.367647 6.183825,4.80964 L 9.4375,45.134396 22.148693,59.563316 36.92116,43.416666 102.19485,114.18709 z"
|
||||||
|
style="fill:#a9a9a9;fill-opacity:1;stroke:none;display:inline" />
|
||||||
|
<path
|
||||||
|
style="fill:#6e6e6e;fill-opacity:1;stroke:none"
|
||||||
|
d="M 10.960155,44.693128 38.53732,16.408856 54.093669,10.752002 48.436815,28.076118 22.273864,56.713943 z"
|
||||||
|
id="path5256"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" />
|
||||||
|
<path
|
||||||
|
style="fill:#6e6e6e;fill-opacity:1;stroke:none"
|
||||||
|
d="M 69.296465,10.398449 85.559921,17.115963 111.72287,45.046681 102.17693,56.713943 74.953319,27.722565 z"
|
||||||
|
id="path5258"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
@ -340,58 +340,62 @@ QString TransactionTableModel::lookupAddress(const std::string &address, bool to
|
|||||||
return description;
|
return description;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant TransactionTableModel::formatTxType(const TransactionRecord *wtx) const
|
QString TransactionTableModel::formatTxType(const TransactionRecord *wtx) const
|
||||||
{
|
{
|
||||||
QString description;
|
|
||||||
|
|
||||||
switch(wtx->type)
|
switch(wtx->type)
|
||||||
{
|
{
|
||||||
case TransactionRecord::RecvWithAddress:
|
case TransactionRecord::RecvWithAddress:
|
||||||
description = tr("Received with");
|
return tr("Received with");
|
||||||
break;
|
|
||||||
case TransactionRecord::RecvFromIP:
|
case TransactionRecord::RecvFromIP:
|
||||||
description = tr("Received from IP");
|
return tr("Received from IP");
|
||||||
break;
|
|
||||||
case TransactionRecord::SendToAddress:
|
case TransactionRecord::SendToAddress:
|
||||||
description = tr("Sent to");
|
return tr("Sent to");
|
||||||
break;
|
|
||||||
case TransactionRecord::SendToIP:
|
case TransactionRecord::SendToIP:
|
||||||
description = tr("Sent to IP");
|
return tr("Sent to IP");
|
||||||
break;
|
|
||||||
case TransactionRecord::SendToSelf:
|
case TransactionRecord::SendToSelf:
|
||||||
description = tr("Payment to yourself");
|
return tr("Payment to yourself");
|
||||||
break;
|
|
||||||
case TransactionRecord::Generated:
|
case TransactionRecord::Generated:
|
||||||
description = tr("Mined");
|
return tr("Mined");
|
||||||
break;
|
default:
|
||||||
|
return QString();
|
||||||
}
|
}
|
||||||
return QVariant(description);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const
|
QVariant TransactionTableModel::txAddressDecoration(const TransactionRecord *wtx) const
|
||||||
{
|
{
|
||||||
QString description;
|
switch(wtx->type)
|
||||||
|
{
|
||||||
|
case TransactionRecord::Generated:
|
||||||
|
return QIcon(":/icons/tx_mined");
|
||||||
|
case TransactionRecord::RecvWithAddress:
|
||||||
|
case TransactionRecord::RecvFromIP:
|
||||||
|
return QIcon(":/icons/tx_input");
|
||||||
|
case TransactionRecord::SendToAddress:
|
||||||
|
case TransactionRecord::SendToIP:
|
||||||
|
return QIcon(":/icons/tx_output");
|
||||||
|
default:
|
||||||
|
return QIcon(":/icons/tx_inout");
|
||||||
|
}
|
||||||
|
return QVariant();
|
||||||
|
}
|
||||||
|
|
||||||
|
QString TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const
|
||||||
|
{
|
||||||
switch(wtx->type)
|
switch(wtx->type)
|
||||||
{
|
{
|
||||||
case TransactionRecord::RecvFromIP:
|
case TransactionRecord::RecvFromIP:
|
||||||
description = QString::fromStdString(wtx->address);
|
return QString::fromStdString(wtx->address);
|
||||||
break;
|
|
||||||
case TransactionRecord::RecvWithAddress:
|
case TransactionRecord::RecvWithAddress:
|
||||||
case TransactionRecord::SendToAddress:
|
case TransactionRecord::SendToAddress:
|
||||||
description = lookupAddress(wtx->address, tooltip);
|
return lookupAddress(wtx->address, tooltip);
|
||||||
break;
|
|
||||||
case TransactionRecord::SendToIP:
|
case TransactionRecord::SendToIP:
|
||||||
description = QString::fromStdString(wtx->address);
|
return QString::fromStdString(wtx->address);
|
||||||
break;
|
|
||||||
case TransactionRecord::SendToSelf:
|
case TransactionRecord::SendToSelf:
|
||||||
description = QString();
|
return QString();
|
||||||
break;
|
|
||||||
case TransactionRecord::Generated:
|
case TransactionRecord::Generated:
|
||||||
description = QString();
|
default:
|
||||||
break;
|
return QString();
|
||||||
}
|
}
|
||||||
return QVariant(description);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant TransactionTableModel::addressColor(const TransactionRecord *wtx) const
|
QVariant TransactionTableModel::addressColor(const TransactionRecord *wtx) const
|
||||||
@ -478,9 +482,12 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
|||||||
|
|
||||||
if(role == Qt::DecorationRole)
|
if(role == Qt::DecorationRole)
|
||||||
{
|
{
|
||||||
if(index.column() == Status)
|
switch(index.column())
|
||||||
{
|
{
|
||||||
|
case Status:
|
||||||
return formatTxDecoration(rec);
|
return formatTxDecoration(rec);
|
||||||
|
case ToAddress:
|
||||||
|
return txAddressDecoration(rec);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(role == Qt::DisplayRole)
|
else if(role == Qt::DisplayRole)
|
||||||
@ -522,7 +529,7 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
|||||||
case Status:
|
case Status:
|
||||||
return formatTxStatus(rec);
|
return formatTxStatus(rec);
|
||||||
case ToAddress:
|
case ToAddress:
|
||||||
return formatTxToAddress(rec, true);
|
return formatTxType(rec) + QString(" ") + formatTxToAddress(rec, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (role == Qt::TextAlignmentRole)
|
else if (role == Qt::TextAlignmentRole)
|
||||||
|
@ -63,10 +63,11 @@ private:
|
|||||||
QVariant addressColor(const TransactionRecord *wtx) const;
|
QVariant addressColor(const TransactionRecord *wtx) const;
|
||||||
QVariant formatTxStatus(const TransactionRecord *wtx) const;
|
QVariant formatTxStatus(const TransactionRecord *wtx) const;
|
||||||
QVariant formatTxDate(const TransactionRecord *wtx) const;
|
QVariant formatTxDate(const TransactionRecord *wtx) const;
|
||||||
QVariant formatTxType(const TransactionRecord *wtx) const;
|
QString formatTxType(const TransactionRecord *wtx) const;
|
||||||
QVariant formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const;
|
QString formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const;
|
||||||
QVariant formatTxAmount(const TransactionRecord *wtx, bool showUnconfirmed=true) const;
|
QVariant formatTxAmount(const TransactionRecord *wtx, bool showUnconfirmed=true) const;
|
||||||
QVariant formatTxDecoration(const TransactionRecord *wtx) const;
|
QVariant formatTxDecoration(const TransactionRecord *wtx) const;
|
||||||
|
QVariant txAddressDecoration(const TransactionRecord *wtx) const;
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void update();
|
void update();
|
||||||
|