1
0

kivy: disable amount and description buttons if payment request is signed

This commit is contained in:
ThomasV
2016-02-18 15:40:13 +01:00
parent e297bf81a2
commit fd0e5739e2
5 changed files with 19 additions and 15 deletions

View File

@@ -204,13 +204,16 @@ class SendScreen(CScreen):
self.screen.message = ''
self.screen.address = ''
self.payment_request = None
self.screen.is_pr = False
def set_request(self, pr):
self.payment_request = pr
self.screen.address = pr.get_requestor()
amount = pr.get_amount()
self.screen.amount = self.app.format_amount_and_units(amount) if amount else ''
self.screen.message = pr.get_memo()
if pr.is_pr():
self.screen.is_pr = True
self.payment_request = pr
def do_save(self):
if not self.screen.address:
@@ -439,13 +442,13 @@ class InvoicesScreen(CScreen):
msg = _('This screen shows the list of payment requests that have been sent to you. You may also use it to store contact addresses.')
invoices_list.add_widget(EmptyLabel(text=msg))
def do_pay(self, obj):
self.app.do_pay(obj)
pr = self.app.invoices.get(obj.key)
self.app.on_pr(pr)
def do_view(self, obj):
pr = self.app.invoices.get(obj.key)
pr.verify({})
pr.verify(self.app.contacts)
self.app.show_pr_details(pr.get_dict(), obj.status, True)
def do_delete(self, obj):

View File

@@ -11,6 +11,7 @@ SendScreen:
address: ''
amount: ''
message: ''
is_pr: False
BoxLayout
padding: '12dp', '12dp', '12dp', '12dp'
spacing: '12dp'
@@ -31,7 +32,7 @@ SendScreen:
BlueButton:
id: payto_e
text: s.address if s.address else _('Recipient')
on_release: app.address_dialog(s)
disabled: True
shorten: True
CardSeparator:
opacity: message_selection.opacity
@@ -49,6 +50,7 @@ SendScreen:
id: amount_e
default_text: _('Amount')
text: s.amount if s.amount else _('Amount')
disabled: root.is_pr
on_release: Clock.schedule_once(lambda dt: app.amount_dialog(s, True))
CardSeparator:
opacity: message_selection.opacity
@@ -66,6 +68,7 @@ SendScreen:
BlueButton:
id: description
text: s.message if s.message else _('Description')
disabled: root.is_pr
on_release: Clock.schedule_once(lambda dt: app.description_dialog(s))
BoxLayout:
size_hint: 1, None