diff --git a/src/main.py b/src/main.py index f6fed4c..24e311f 100644 --- a/src/main.py +++ b/src/main.py @@ -9,6 +9,7 @@ from kivymd.app import MDApp from kivymd.uix.button import MDFlatButton from kivymd.uix.card.card import MDBoxLayout from kivymd.uix.dialog import MDDialog +from kivymd.uix.list import OneLineAvatarIconListItem Config.set('graphics', 'resizable', '0') Config.set('graphics', 'height', '1000') @@ -47,6 +48,16 @@ class MainScreen(Screen): class SettingsScreen(Screen): pass""" +class ShoppingEntry(OneLineAvatarIconListItem): + def __init__(self, text, **kwargs): + super().__init__(**kwargs) + + self.text = text + self.is_checked = False + + def delete(self, shopping_entry): + self.parent.remove_widget(shopping_entry) + class AddDialog(MDBoxLayout): def __init__(self, **kwargs): super().__init__(**kwargs) @@ -54,15 +65,15 @@ class AddDialog(MDBoxLayout): class ShoppingListApp(MDApp): add_dialog: MDDialog | None = None - def build(self): self.theme_cls.primary_palette = "Teal" self.theme_cls.theme_style = "Light" self.title = 'Shopping List App' - def add_shopping_entry(self): - pass + def add_shopping_entry(self, text): + self.root.ids['shopping_list'].add_widget(ShoppingEntry(text=text)) + self.close_add_popup() def open_add_popup(self): if self.add_dialog: @@ -71,7 +82,7 @@ class ShoppingListApp(MDApp): # SPRACHE buttons = [ MDFlatButton(text='Abbrechen', on_release=self.close_add_popup), - MDFlatButton(text='Bestätigen') + MDFlatButton(text='Bestätigen', on_release=lambda args: self.add_shopping_entry("Text")) ] # SPRACHE self.add_dialog = MDDialog( diff --git a/src/shoppinglist.kv b/src/shoppinglist.kv index 453c355..8eb36a4 100644 --- a/src/shoppinglist.kv +++ b/src/shoppinglist.kv @@ -1,11 +1,11 @@ -: - orientation: 'horizontal' - CheckBox: - active: root.is_checked - Label: - text: root.text - Button: - background_normal: 'res/delete.png' +#: +# orientation: 'horizontal' +# CheckBox: +# active: root.is_checked +# Label: +# text: root.text +# Button: +# background_normal: 'res/delete.png' id: float_root # Giving id to button @@ -85,11 +85,25 @@ # MainScreen: # SettingsScreen +: + id: shopping_entry + markup: True + + ImageLeftWidget: + MDCheckbox: + id: shopping_entry_check + # bind to property + + IconRightWidget: + icon: 'res/delete.png' + on_release: root.delete(shopping_entry) + : size_hint: 1, None height: '40dp' orientation: 'vertical' - scpaing: '5dp' + spacing: '5dp' + MDTextField: id: shopping_entry_text pos_hint: { 'center_y': 0.4 } @@ -98,11 +112,19 @@ MDFloatLayout: + + MDTopAppBar: + #SPRACHE + title: 'Shopping-List-App' + md_bg_color: app.theme_cls.accent_color + right_action_items: [['res/settings.png', lambda x: app.navigate_to_settings()]] + ScrollView: size_hint: 0.9, 0.9 pos_hint: { 'center_y': 0.5, 'center_x': 0.5 } MDList: id: shopping_list + MDFloatingActionButton: icon: 'plus' elevation_normal: 5