Stav 23.06.2026

This commit is contained in:
2026-06-23 15:20:56 +02:00
commit 6d91e83e8c
5670 changed files with 1145969 additions and 0 deletions
+78
View File
@@ -0,0 +1,78 @@
from kivy.metrics import dp
from kivy.uix.modalview import ModalView
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.scrollview import ScrollView
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.uix.label import Label
class ClosureSelectDialog(ModalView):
def __init__(self, closures, on_select, title="Vyber uzávěrku", **kwargs):
super().__init__(**kwargs)
self.size_hint = (None, None)
self.size = (dp(700), dp(700))
self.auto_dismiss = True
self.closures = closures or []
self.on_select = on_select
scroll = ScrollView(size_hint=(1, 1))
content = GridLayout(
cols=1,
spacing=dp(10),
padding=dp(12),
size_hint_y=None,
)
content.bind(minimum_height=content.setter("height"))
lbl_title = Label(
text=title,
size_hint_y=None,
height=dp(40),
)
content.add_widget(lbl_title)
for c in self.closures:
txt = self._closure_text(c)
btn = Button(
text=txt,
markup=True,
size_hint_y=None,
height=dp(90),
halign="left",
valign="middle",
text_size=(dp(650), None),
)
btn.bind(
size=lambda inst, val: setattr(
inst, "text_size", (inst.width - dp(20), None)
)
)
btn.bind(
on_release=lambda inst, clsrep_no=c.clsrep_no: self._select(clsrep_no)
)
content.add_widget(btn)
btn_close = Button(
text="Zavřít",
size_hint_y=None,
height=dp(56),
)
btn_close.bind(on_release=self.dismiss)
content.add_widget(btn_close)
scroll.add_widget(content)
self.add_widget(scroll)
def _select(self, clsrep_no):
self.dismiss()
if self.on_select:
self.on_select(clsrep_no)
def _closure_text(self, c):
clsrep_no = getattr(c, "clsrep_no", "") or ""
ucislo_od = getattr(c, "ucislo_od", "") or ""
ucislo_do = getattr(c, "ucislo_do", "") or ""
closed_at_od = getattr(c, "closed_at_od", "") or ""
closed_at_do = getattr(c, "closed_at_do", "") or ""
return (
f"[b]Uzávěrka {clsrep_no}[/b]\n"
f"Účty: {ucislo_od} - {ucislo_do}\n"
f"Od: {closed_at_od}\n"
f"Do: {closed_at_do}"
)