# Cagou: desktop/mobile frontend for Salut à Toi XMPP client # Copyright (C) 2016-2018 Jérôme Poisson (goffi@goffi.org) # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . #:set common_height 30 #:set button_height 50 : color: 1, 1, 1, 1 <EmptyWidget,StringWidget,PasswordWidget,JidInputWidget>: size_hint: 1, None height: dp(common_height) color: 1, 1, 1, 1 <TextWidget,LabelWidget,JidWidget>: size_hint: 1, 1 size_hint_min_y: max(dp(common_height), self.texture_size[1]) text_size: self.width, None color: 1, 1, 1, 1 <StringWidget,PasswordWidget,IntWidget>: multiline: False background_normal: app.expand('atlas://data/images/defaulttheme/textinput') <TextBoxWidget>: multiline: True height: dp(common_height) * 5 <ButtonWidget>: size_hint: 1, None height: dp(button_height) <BoolWidget>: size_hint: 1, 1 <DividerWidget>: size_hint: 1, None height: dp(20) canvas.before: Color: rgba: 1, 1, 1, 0.8 Line points: 0, self.y + dp(10), self.width, self.y + dp(10) width: dp(3) <ListWidgetItem>: size_hint_y: None height: dp(button_height) <ListWidget>: size_hint: 1, None layout: layout height: min(layout.minimum_height, dp(250)) do_scroll_x: False scroll_type: ['bars', 'content'] bar_width: dp(6) BoxLayout: id: layout size_hint: 1, None height: self.minimum_height orientation: "vertical" padding: dp(10) <AdvancedListRow>: canvas.before: Color: rgba: 1, 1, 1, 0.2 if self.global_index%2 else 0.1 Rectangle: pos: self.pos size: self.size size_hint: 1, None height: self.minimum_height rows: 1 canvas.after: Color: rgba: 0, 0, 1, 0.5 if self.selected else 0 Rectangle: pos: self.pos size: self.size <AdvancedListContainer>: cols: 1 size_hint: 1, None height: self.minimum_height <VerticalContainer>: size_hint: 1, 1 layout: layout do_scroll_x: False scroll_type: ['bars', 'content'] bar_width: dp(6) BoxLayout: id: layout orientation: "vertical" size_hint: 1, None height: self.minimum_height <PairsContainer>: cols: 2 size_hint: 1, None height: self.minimum_height padding: dp(10) <TabsContainer>: size_hint: 1, 1 <TabsPanelContainer>: layout: layout ScrollView: do_scroll_x: False scroll_type: ['bars', 'content'] bar_width: dp(6) BoxLayout: id: layout orientation: "vertical" size_hint: 1, None height: self.minimum_height <FormButton>: size_hint: 1, None height: dp(button_height) <FileDialog>: orientation: "vertical" message: message file_chooser: file_chooser Label: id: message size_hint: 1, None text_size: root.width, None size: self.texture_size FileChooserListView: id: file_chooser Button: size_hint: 1, None height: dp(50) text: "choose" on_release: root.onSelect(file_chooser.selection) Button: size_hint: 1, None height: dp(50) text: "cancel" on_release: root.onCancel() <XMLUIPanel>: orientation: "vertical" size_hint: 1, 1 canvas.before: Color: rgba: 0, 0, 0, 1 Rectangle: pos: self.pos size: self.size