Skip to content

Commit 685f327

Browse files
committed
qml: ui
1 parent 4886007 commit 685f327

File tree

3 files changed

+279
-363
lines changed

3 files changed

+279
-363
lines changed

electrum/gui/qml/components/InvoiceDialog.qml

Lines changed: 107 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,113 @@ ElDialog {
3030
height: parent.height
3131
columns: 2
3232

33+
Label {
34+
text: qsTr('Type')
35+
color: Material.accentColor
36+
}
37+
38+
RowLayout {
39+
Layout.fillWidth: true
40+
Image {
41+
Layout.preferredWidth: constants.iconSizeSmall
42+
Layout.preferredHeight: constants.iconSizeSmall
43+
source: invoice.invoiceType == Invoice.LightningInvoice
44+
? "../../icons/lightning.png"
45+
: "../../icons/bitcoin.png"
46+
}
47+
48+
Label {
49+
text: invoice.invoiceType == Invoice.OnchainInvoice
50+
? qsTr('On chain')
51+
: invoice.invoiceType == Invoice.LightningInvoice
52+
? qsTr('Lightning')
53+
: ''
54+
Layout.fillWidth: true
55+
}
56+
}
57+
58+
Label {
59+
text: qsTr('Status')
60+
color: Material.accentColor
61+
}
62+
63+
Label {
64+
text: invoice.status_str
65+
}
66+
67+
Label {
68+
visible: invoice.invoiceType == Invoice.OnchainInvoice
69+
Layout.columnSpan: 2
70+
text: qsTr('Address')
71+
color: Material.accentColor
72+
}
73+
74+
TextHighlightPane {
75+
visible: invoice.invoiceType == Invoice.OnchainInvoice
76+
77+
Layout.columnSpan: 2
78+
Layout.fillWidth: true
79+
80+
padding: 0
81+
leftPadding: constants.paddingMedium
82+
83+
Label {
84+
width: parent.width
85+
text: invoice.address
86+
font.family: FixedFont
87+
wrapMode: Text.Wrap
88+
}
89+
}
90+
91+
Label {
92+
visible: invoice.invoiceType == Invoice.LightningInvoice
93+
text: qsTr('Remote Pubkey')
94+
color: Material.accentColor
95+
}
96+
97+
TextHighlightPane {
98+
visible: invoice.invoiceType == Invoice.LightningInvoice
99+
100+
Layout.columnSpan: 2
101+
Layout.fillWidth: true
102+
103+
padding: 0
104+
leftPadding: constants.paddingMedium
105+
106+
Label {
107+
width: parent.width
108+
text: invoice.lnprops ? invoice.lnprops.pubkey : ''
109+
font.family: FixedFont
110+
wrapMode: Text.Wrap
111+
}
112+
}
113+
114+
Label {
115+
text: qsTr('Description')
116+
visible: invoice.message
117+
Layout.columnSpan: 2
118+
color: Material.accentColor
119+
}
120+
121+
TextHighlightPane {
122+
visible: invoice.message
123+
124+
Layout.columnSpan: 2
125+
Layout.preferredWidth: parent.width
126+
Layout.alignment: Qt.AlignHCenter
127+
128+
padding: 0
129+
leftPadding: constants.paddingMedium
130+
131+
Label {
132+
text: invoice.message
133+
width: parent.width
134+
font.pixelSize: constants.fontSizeXLarge
135+
wrapMode: Text.Wrap
136+
elide: Text.ElideRight
137+
}
138+
}
139+
33140
Label {
34141
text: qsTr('Amount to send')
35142
color: Material.accentColor
@@ -146,129 +253,6 @@ ElDialog {
146253

147254
}
148255

149-
Label {
150-
text: qsTr('Description')
151-
visible: invoice.message
152-
Layout.columnSpan: 2
153-
color: Material.accentColor
154-
}
155-
156-
TextHighlightPane {
157-
visible: invoice.message
158-
159-
Layout.columnSpan: 2
160-
Layout.preferredWidth: parent.width
161-
Layout.alignment: Qt.AlignHCenter
162-
163-
padding: 0
164-
leftPadding: constants.paddingMedium
165-
166-
Label {
167-
text: invoice.message
168-
Layout.fillWidth: true
169-
font.pixelSize: constants.fontSizeXLarge
170-
wrapMode: Text.Wrap
171-
elide: Text.ElideRight
172-
}
173-
}
174-
175-
Label {
176-
text: qsTr('Type')
177-
color: Material.accentColor
178-
}
179-
180-
RowLayout {
181-
Layout.fillWidth: true
182-
Image {
183-
Layout.preferredWidth: constants.iconSizeSmall
184-
Layout.preferredHeight: constants.iconSizeSmall
185-
source: invoice.invoiceType == Invoice.LightningInvoice
186-
? "../../icons/lightning.png"
187-
: "../../icons/bitcoin.png"
188-
}
189-
190-
Label {
191-
text: invoice.invoiceType == Invoice.OnchainInvoice
192-
? qsTr('On chain')
193-
: invoice.invoiceType == Invoice.LightningInvoice
194-
? qsTr('Lightning')
195-
: ''
196-
Layout.fillWidth: true
197-
}
198-
}
199-
200-
Label {
201-
visible: invoice.invoiceType == Invoice.OnchainInvoice
202-
text: qsTr('Address')
203-
color: Material.accentColor
204-
}
205-
206-
Label {
207-
visible: invoice.invoiceType == Invoice.OnchainInvoice
208-
Layout.fillWidth: true
209-
text: invoice.address
210-
font.family: FixedFont
211-
wrapMode: Text.Wrap
212-
}
213-
214-
Label {
215-
visible: invoice.invoiceType == Invoice.LightningInvoice
216-
text: qsTr('Remote Pubkey')
217-
color: Material.accentColor
218-
}
219-
220-
Label {
221-
visible: invoice.invoiceType == Invoice.LightningInvoice
222-
Layout.fillWidth: true
223-
text: invoice.lnprops ? invoice.lnprops.pubkey : ''
224-
font.family: FixedFont
225-
wrapMode: Text.Wrap
226-
}
227-
228-
Label {
229-
visible: invoice.invoiceType == Invoice.LightningInvoice
230-
text: qsTr('Route via (t)')
231-
color: Material.accentColor
232-
}
233-
234-
Label {
235-
visible: invoice.invoiceType == Invoice.LightningInvoice
236-
Layout.fillWidth: true
237-
text: invoice.lnprops ? invoice.lnprops.t : ''
238-
font.family: FixedFont
239-
wrapMode: Text.Wrap
240-
}
241-
242-
Label {
243-
visible: invoice.invoiceType == Invoice.LightningInvoice
244-
text: qsTr('Route via (r)')
245-
color: Material.accentColor
246-
}
247-
248-
Label {
249-
visible: invoice.invoiceType == Invoice.LightningInvoice
250-
Layout.fillWidth: true
251-
text: invoice.lnprops ? invoice.lnprops.r : ''
252-
font.family: FixedFont
253-
wrapMode: Text.Wrap
254-
}
255-
256-
Label {
257-
text: qsTr('Status')
258-
color: Material.accentColor
259-
}
260-
261-
Label {
262-
text: invoice.status_str
263-
}
264-
265-
Rectangle {
266-
height: 1
267-
Layout.fillWidth: true
268-
Layout.columnSpan: 2
269-
color: Material.accentColor
270-
}
271-
272256
Item { Layout.preferredHeight: constants.paddingLarge; Layout.preferredWidth: 1 }
273257

274258
InfoTextArea {

0 commit comments

Comments
 (0)