예제 #1
0
    def submit_click(self, btn):
        res_fields = []

        for field in self.fields:
            a = {}
            for (k, v) in field.items():
                if is_lambda(v):
                    a[k] = v()
                else:
                    a[k] = v
            res_fields.append(a)

        gv.db.update_item(self.id_item, self.title_item.text, res_fields)
        set_screen('main')
예제 #2
0
    def on_enter(self):  # Будет вызвана в момент открытия экрана

        self.layout = GridLayout(cols=1, spacing=10, size_hint_y=None)
        self.layout.bind(minimum_height=self.layout.setter('height'))
        back_button = Button(text='< Назад в главное меню',
                             on_press=lambda x: set_screen('main'),
                             size_hint_y=None,
                             height=dp(40))
        self.layout.add_widget(back_button)
        root = RecycleView(size_hint=(1, None),
                           size=(Window.width, Window.height))
        root.add_widget(self.layout)
        self.add_widget(root)
예제 #3
0
    def __init__(self, **kw):
        super(MainScreen, self).__init__(**kw)

        super(MainScreen, self).__init__(**kw)
        box = BoxLayout(orientation='vertical')


        self.items_grid = GridLayout(cols=1, spacing=10, size_hint_y=None, padding=10)
        # Make sure the height is such that there is something to scroll.
        self.items_grid.bind(minimum_height=self.items_grid.setter('height'))
                
        scroll_view = ScrollView(size_hint=(1, 1), size=(Window.width, Window.height))
        scroll_view.add_widget(self.items_grid)

        box.add_widget(scroll_view)

        box.add_widget(Button(text='Добавить элемент;)',
                              on_press=lambda x: set_screen('add_item'),
                              size_hint_y=None, height=dp(80)))
        self.add_widget(box)
예제 #4
0
    def __init__(self, **kw):
        super(ViewItem, self).__init__(**kw)

        self.fields = []
        self.title_item = None

        box = BoxLayout(orientation='vertical')

        back_button = Button(text='< Назад в главное меню',
                             on_press=lambda x: set_screen('main'),
                             size_hint_y=None,
                             height=dp(60))
        box.add_widget(back_button)

        scroll_view = ScrollView(size_hint=(1, 1),
                                 size=(Window.width, Window.height))
        self.layout_fields = GridLayout(cols=1, spacing=10, size_hint_y=None)
        self.layout_fields.bind(
            minimum_height=self.layout_fields.setter('height'))

        scroll_view.add_widget(self.layout_fields)
        box.add_widget(scroll_view)

        self.lbl_total = Label(text="Итог: ", size_hint_y=None, height=dp(40))
        box.add_widget(self.lbl_total)

        wrapper = BoxLayout(size_hint_y=None, height=dp(60))
        btn_add = Button(text="Добавить поле")
        btn_add.bind(
            on_press=lambda x: self._add_item(None, None, None, 'Sum'))

        btn_submit = Button(text="Сохранить")
        btn_submit.bind(on_press=self.submit_click)

        wrapper.add_widget(btn_submit)
        wrapper.add_widget(btn_add)
        box.add_widget(wrapper)

        self.add_widget(box)
예제 #5
0
 def _view_item(self, id_item):
     gv.cur_id_item = id_item
     set_screen('view_item')