Ejemplo n.º 1
0
    def _create_popup(self, instance):
        # create the popup containing a BoxLayout
        content = BoxLayout(orientation='vertical', spacing=10)
        self.popup = popup = Popup(content=content,
            title=self.title, size_hint=(None, None), size=(400, 400))
        popup.height = pygame.midi.get_count() * 30 + 150

        # add a spacer
        content.add_widget(Widget(size_hint_y=None, height=1))
        uid = str(self.uid)

        device_count = pygame.midi.get_count()

        # add all the selectable MIDI output devices
        for i in range(device_count):
            if pygame.midi.get_device_info(i)[3] == 1 and (pygame.midi.get_device_info(i)[4] == 0 or pygame.midi.get_device_info(i)[1] == self.value):
                # if it's an output device and it's not already opened (unless it's the device opened by ME), display it in list.
                # if this is the device that was selected before, display it pressed
                state = 'down' if pygame.midi.get_device_info(i)[1].decode() == self.value else 'normal'
                btn = ToggleButton(text=str(pygame.midi.get_device_info(i)[1].decode()), state=state, group=uid)
                btn.bind(on_release=self._set_option)
                content.add_widget(btn)

        # finally, add a cancel button to return on the previous panel
        btn = Button(text='Cancel', size_hint_y=None, height=50)
        btn.bind(on_release=popup.dismiss)
        content.add_widget(btn)

        # and open the popup !
        popup.open()
Ejemplo n.º 2
0
    def build(self):
        self.provider = None
        self.sensors_values = []
        self.gps_values = ['', '', 0, 0]
        self.trigger_sensor_update_values = \
                Clock.create_trigger(self.sensor_update_values, 0)
        self.trigger_gps_update_values = \
                Clock.create_trigger(self.gps_update_values, 0)

        # search categories
        self.categories = ['gps-location']
        for key in sensortypes:
            self.categories.append('sensor-{}'.format(key))

        # create main ui
        root = MainUI()

        # fill the dropdown with all the categories
        for cat in self.categories:
            btn = ToggleButton(text=cat, size_hint_y=None, height='44sp',
            group='sensors')
            btn.bind(on_release=self.select_category)
            root.dropdown.add_widget(btn)

        return root
Ejemplo n.º 3
0
    def __init__(self, rows, cols, bombs):
        super().__init__(orientation='horizontal', spacing=20, padding=[10, 10, 10, 0])
        self.grid = FieldGrid(rows, cols, bombs)
        self.r = rows
        self.c = cols
        self.b = bombs

        grid_anchor = AnchorLayout(anchor_x='left', anchor_y='top')
        buttons_anchor = AnchorLayout(anchor_x='right', anchor_y='top')
        buttons = BoxLayout(orientation='vertical', spacing=5, size_hint=(None, None), size=(100, Window.size[1]))
        new_game = Button(text="New game", size_hint=(None, None), size=(100, 30), on_press=lambda _: self.new_game())
        menu = Button(text="Main menu", size_hint=(None, None), size=(100, 30), on_press=lambda _: gui.to_menu())
        mark = ToggleButton(text="Mark", size_hint=(None, None), size=(100, 30))
        mark.bind(state=lambda *_: self.change_mark())

        labels = RelativeLayout()
        self.status = Label(text="Playing")
        self.time = TimeLabel(text="00:00", pos=(0, -20))
        labels.add_widget(self.status)
        labels.add_widget(self.time)

        grid_anchor.add_widget(self.grid)
        buttons.add_widget(mark)
        buttons.add_widget(new_game)
        buttons.add_widget(menu)
        buttons.add_widget(labels)
        buttons_anchor.add_widget(buttons)

        self.add_widget(grid_anchor)
        self.add_widget(buttons_anchor)
Ejemplo n.º 4
0
class Transport(AnchorLayout):

    btn_play = ''

    def __init__(self, **kwargs):
        super(Transport, self).__init__(**kwargs)

        self.medium = kwargs.get('medium', '')

        self.anchor_x = 'center'
        self.anchor_y = 'top'

        btn_size = "30px"

        self.btn_play = ToggleButton(
            size=(btn_size, btn_size),
            size_hint=(None, None),
            background_normal='images/play.png',
            background_down='images/pause.png',
            border=(0,0,0,0),
            state='down')

        self.add_widget(self.btn_play)

        self.btn_play.bind(on_release=self.medium.toggle_play_status)
        self.padding = 10

    def on_spacebar_pressed(self, *args):
        self.btn_play.state = 'normal' \
            if self.btn_play.state == 'down' else 'down'
        self.medium.toggle_play_status()
Ejemplo n.º 5
0
    def addGraph(self,datapoint,xData,yData,dt):
        points = [t for t in zip((xData).astype(int),yData)];
        ymin = int(min(yData))
        ymax = int(max(yData))
        xmin = int(min(xData))
        xmax = int(max(xData))

        if self.setMinMax :
            if self.ids.graph.ymin > ymin:
                self.ids.graph.ymin = ymin
            if self.ids.graph.ymax < ymax:
                self.ids.graph.ymax = ymax
            if self.ids.graph.xmin > xmin:
                self.ids.graph.xmin = xmin
            if self.ids.graph.xmax < xmax:
                self.ids.graph.xmax = xmax  
        else:
            self.ids.graph.ymin = ymin
            self.ids.graph.ymax = ymax
            self.ids.graph.xmin = xmin
            self.ids.graph.xmax = xmax  
            self.setMinMax = True

        plot = LinePlot(color=self.color)
        plot.points = points
        self.ids.graph.add_plot(plot)
        index = random.randint(0,3)
        btn1 = ToggleButton(text=datapoint,background_color=self.color)
        btn1.bind(state=partial(self.on_press,datapoint))
        cp = ColorPicker(color=self.color)
        cp.bind(color=partial(self.on_color,datapoint))
        self.plotdata[datapoint] = {'color':self.color,'button':btn1,'plot':plot,'colorpick':cp,'points':points}
        self.color[index]=self.color[index] - (random.random());
        self.ids.hBox.add_widget(btn1)
        self.ids.hBoxColor.add_widget(cp)
Ejemplo n.º 6
0
	def render_distribuite(self,tab):
		self.dist_layout = GridLayout(cols=2)
		self.Blayout=BoxLayout(orientation='vertical')
		self.Blayout.size_hint=( 1, 1)
		btnDistr=Button(text='Start Distribuite',size_hint=(1, .1))
		btnDistr.bind(on_press=self.start_dist)
		self.btnReckivy=ToggleButton(text='Choose recipes for Kivy Launcher',size_hint=(1, .1))
		self.btnReckivy.bind(on_release=self.select_kivy_rec)

		self.recipe_layout = GridLayout(cols=4)
		thedir=os.path.join(self.py4a_path,'recipes')
		recipes=[ name for name in os.listdir(thedir) if os.path.isdir(os.path.join(thedir, name)) ]
		for r in recipes:
			t=ToggleButton(text=r)
			t.bind(state=self.add_remove)
			self.recipe_layout.add_widget(t)
		self.Blayout.add_widget(btnDistr)
		self.Blayout.add_widget(self.btnReckivy)
		self.Blayout.add_widget(self.recipe_layout)




		self.dist_layout.add_widget(self.Blayout)
		self.dist_layout.add_widget(self.kvc)


		tab.add_widget(self.dist_layout)
Ejemplo n.º 7
0
	def build(self):
		# Set up the layout:
		layout = GridLayout(cols=5, spacing=30, padding=30, row_default_height=150)

		# Make the background gray:
		with layout.canvas.before:
			Color(.2,.2,.2,1)
			self.rect = Rectangle(size=(800,600), pos=layout.pos)

		# Instantiate the first UI object (the GPIO input indicator):
		inputDisplay = InputButton(text="Input")

		# Schedule the update of the state of the GPIO input button:
		Clock.schedule_interval(inputDisplay.update, 1.0/10.0)

		# Create the rest of the UI objects (and bind them to callbacks, if necessary):
		outputControl = ToggleButton(text="COUCH")
		outputControl.bind(on_press=press_callback)
		beepButton = Button(text="COUNTER")
		beepButton.bind(on_press=press_callback)


		# Add the UI elements to the layout:
		layout.add_widget(inputDisplay)
		layout.add_widget(outputControl)
		layout.add_widget(beepButton)


		return layout
Ejemplo n.º 8
0
class PredictionStoneInput(PanelSettingsInput):
    def __init__(self):
        super(PredictionStoneInput, self).__init__("prediction stone")
        self.app = App.get_running_app()
        self.value = self.app.data['influence']['prediction_stone']
        self.options = BoxLayout(orientation='horizontal',
                                 size_hint=[1.0, None],
                                 height=20)
        self.black_button = ToggleButton(text="black",
                                         group='influence_prediction_stone',
                                         font_size=13)
        self.white_button = ToggleButton(text="white",
                                         group='influence_prediction_stone',
                                         font_size=13)
        self.black_button.allow_no_selection = False
        self.white_button.allow_no_selection = False
        self.options.add_widget(self.black_button)
        self.options.add_widget(self.white_button)
        self.add_widget(self.options)

        if self.value == 'black': self.black_button.state = 'down'
        elif self.value == 'white': self.white_button.state = 'down'

        self.black_button.bind(on_release=self.blackButtonPressed)
        self.white_button.bind(on_release=self.whiteButtonPressed)

    def blackButtonPressed(self, *largs):
        self.app.data['influence']['prediction_stone'] = 'black'
        self.value = 'black'

    def whiteButtonPressed(self, *largs):
        self.app.data['influence']['prediction_stone'] = 'white'
        self.value = 'white'
Ejemplo n.º 9
0
class DisplayStonesInput(PanelSettingsInput):
    def __init__(self):
        super(DisplayStonesInput, self).__init__("display stones")
        self.app = App.get_running_app()
        self.value = self.app.data['influence']['display_stones']
        self.options = BoxLayout(orientation='horizontal',
                                 size_hint=[1.0, None],
                                 height=20)
        self.yes_button = ToggleButton(text="yes",
                                       group='influence_display_stones',
                                       font_size=13)
        self.no_button = ToggleButton(text="no",
                                      group='influence_display_stones',
                                      font_size=13)
        self.yes_button.allow_no_selection = False
        self.no_button.allow_no_selection = False
        self.options.add_widget(self.yes_button)
        self.options.add_widget(self.no_button)
        self.add_widget(self.options)

        if self.value == 'yes': self.yes_button.state = 'down'
        elif self.value == 'no': self.no_button.state = 'down'

        self.yes_button.bind(on_release=self.yesButtonPressed)
        self.no_button.bind(on_release=self.noButtonPressed)

    def yesButtonPressed(self, *largs):
        self.app.data['influence']['display_stones'] = 'yes'
        self.value = 'yes'

    def noButtonPressed(self, *largs):
        self.app.data['influence']['display_stones'] = 'no'
        self.value = 'no'
Ejemplo n.º 10
0
class DisplayModeInput(PanelSettingsInput):
    def __init__(self):
        super(DisplayModeInput, self).__init__("display mode")
        self.app = App.get_running_app()
        self.value = self.app.data['influence']['display_mode']
        self.options = BoxLayout(orientation='horizontal',
                                 size_hint=[1.0, None],
                                 height=20)
        self.infl_pred_button = ToggleButton(text="influence prediction",
                                             group='influence_display_mode',
                                             font_size=13)
        self.cur_infl_button = ToggleButton(text="current influence",
                                            group='influence_display_mode',
                                            font_size=13)
        self.infl_pred_button.allow_no_selection = False
        self.cur_infl_button.allow_no_selection = False
        self.options.add_widget(self.infl_pred_button)
        self.options.add_widget(self.cur_infl_button)
        self.add_widget(self.options)

        if self.value == 'cur_infl': self.cur_infl_button.state = 'down'
        elif self.value == 'infl_pred': self.infl_pred_button.state = 'down'

        self.cur_infl_button.bind(on_release=self.curInflButtonPressed)
        self.infl_pred_button.bind(on_release=self.inflPredButtonPressed)

    def curInflButtonPressed(self, *largs):
        self.app.data['influence']['display_mode'] = 'cur_infl'
        self.value = 'cur_infl'

    def inflPredButtonPressed(self, *largs):
        self.app.data['influence']['display_mode'] = 'infl_pred'
        self.value = 'infl_pred'
Ejemplo n.º 11
0
    def _create_popup(self, instance):
        # create the popup
        content = BoxLayout(orientation='vertical', spacing='5dp')
        popup_width = min(0.95 * Window.width, dp(500))
        self.popup = popup = Popup(content=content,
                                   title=self.title,
                                   size_hint=(None, None),
                                   size=(popup_width, '400dp'))
        popup.height = len(self.options) * dp(55) + dp(150)

        # add all the options
        content.add_widget(Widget(size_hint_y=None, height=1))
        uid = str(self.uid)
        for option in self.options:
            state = 'down' if option == self.value else 'normal'
            btn = ToggleButton(text=option, state=state, group=uid)
            btn.bind(on_release=self._set_option)
            content.add_widget(btn)

        # finally, add a cancel button to return on the previous panel
        content.add_widget(SettingSpacer())
        btn = Button(text='Cancel', size_hint_y=None, height=dp(50))
        btn.bind(on_release=popup.dismiss)
        content.add_widget(btn)

        # and open the popup !
        popup.open()
Ejemplo n.º 12
0
def callback_btnplus(self):
	n,e=0,len(var.curwidget)
	while n<e-1:
		if var.curwidget[n]!="None":
			print (var.curwidget[n],self.parent)
			self.parent.remove_widget(var.curwidget[n])
		n=n+1
	
	dernierbtn=var.curwidget[n]
	var.curwidget=[]
	layout=self.parent
	#layout.bind(minimum_height=layout.setter('height'))
	i,k=var.curs,0
	if (i+1==len(var.lst)): var.curs,i=0,0
	while i<len(var.lst):
		print ("<",i,"/",len(var.lst),">")
		btn = ToggleButton(text="", size_hint_y=None, height=80, group='tg1',size_hint_x=.1,id=var.lst[i])
		btn.bind(on_press=callback_btn)
		img = Image(source=var.lst[i],size_hint_x=.9)
		var.curwidget.append(img)
		var.curwidget.append(btn)
		layout.add_widget(img)
		layout.add_widget(btn)
		if (k>100) or (i+1>=len(var.lst)): 
			var.curs=i
			i=len(var.lst) 
			btn = Button(text="plus...", size_hint_y=None, height=80,size_hint_x=.2)
			btn.bind(on_press=callback_btnplus)
			var.curwidget.append(btn)
			layout.add_widget(btn)
		k=k+1
		i=i+1
	self.parent.remove_widget(dernierbtn)
Ejemplo n.º 13
0
    def _create_popup(self, instance):
        # global oORCA
        # create the popup

        content = GridLayout(cols=1, spacing='5dp')
        scrollview = ScrollView(do_scroll_x=False)
        scrollcontent = GridLayout(cols=1, spacing='5dp', size_hint=(None, None))
        scrollcontent.bind(minimum_height=scrollcontent.setter('height'))
        self.popup = popup = Popup(content=content, title=self.title, size_hint=(0.5, 0.9), auto_dismiss=False)

        # we need to open the popup first to get the metrics
        popup.open()
        # Add some space on top
        content.add_widget(Widget(size_hint_y=None, height=dp(2)))
        # add all the options
        uid = str(self.uid)
        for option in self.options:
            state = 'down' if option == self.value else 'normal'
            btn = ToggleButton(text=option, state=state, group=uid, size=(popup.width, dp(55)), size_hint=(None, None))
            btn.bind(on_release=self._set_option)
            scrollcontent.add_widget(btn)

        # finally, add a cancel button to return on the previous panel
        scrollview.add_widget(scrollcontent)
        content.add_widget(scrollview)
        content.add_widget(SettingSpacer())
        # btn = Button(text='Cancel', size=((oORCA.iAppWidth/2)-sp(25), dp(50)),size_hint=(None, None))
        btn = Button(text='Cancel', size=(popup.width, dp(50)), size_hint=(0.9, None))
        btn.bind(on_release=popup.dismiss)
        content.add_widget(btn)
Ejemplo n.º 14
0
    def load_data(self, event):
        try:
            self.data.head()
        except Exception:
            return 0
        print(self.data.head())  # Testing
        cols = self.data.columns
        self.x_cols = []
        if self.x_dropdown:
            self.x_btn.unbind(on_release=self.x_dropdown.open)
        del self.x_dropdown
        self.x_dropdown = DropDown(dismiss_on_select=False)
        for col in cols:
            btn = ToggleButton(text=col, size_hint_y=None, height=44)
            btn.bind(on_release=lambda btn: self.x_dropdown.select(btn.text))
            self.x_dropdown.add_widget(btn)
        self.x_btn.bind(on_release=self.x_dropdown.open)
        self.x_dropdown.bind(on_select=self.select_xcol)

        self.y_cols = []
        if self.y_dropdown:
            self.y_btn.unbind(on_release=self.y_dropdown.open)
        del self.y_dropdown
        self.y_dropdown = DropDown(dismiss_on_select=False)
        for col in cols:
            btn = ToggleButton(text=col, size_hint_y=None, height=44)
            btn.bind(on_release=lambda btn: self.y_dropdown.select(btn.text))
            self.y_dropdown.add_widget(btn)
        self.y_btn.bind(on_release=self.y_dropdown.open)
        self.y_dropdown.bind(on_select=self.select_ycol)
Ejemplo n.º 15
0
    def _create_popup(self, instance):
        # create the popup containing a BoxLayout
        content = BoxLayout(orientation='vertical', spacing=10)
        self.popup = popup = Popup(content=content,
            title=self.title, size_hint=(None, None), size=(400, 400))
        popup.height = pygame.midi.get_count() * 30 + 150

        # add a spacer
        content.add_widget(Widget(size_hint_y=None, height=1))
        uid = str(self.uid)
        
        device_count = pygame.midi.get_count()
        
        # add all the selectable MIDI output devices
        for i in range(device_count):
            if pygame.midi.get_device_info(i)[3] == 1 \
               and (pygame.midi.get_device_info(i)[4] == 0 \
                    or pygame.midi.get_device_info(i)[1] == self.value):
                # if it's an output device and it's not already opened (unless it's the device opened by ME), display it in list.
                # if this is the device that was selected before, display it pressed
                state = 'down' if pygame.midi.get_device_info(i)[1] == self.value else 'normal'
                btn = ToggleButton(text=pygame.midi.get_device_info(i)[1], state=state, group=uid)
                btn.bind(on_release=self._set_option)
                content.add_widget(btn)

        # finally, add a cancel button to return on the previous panel
        btn = Button(text='Cancel', size_hint_y=None, height=50)
        btn.bind(on_release=popup.dismiss)
        content.add_widget(btn)

        # and open the popup !
        popup.open()
    def __init__(self, **kwargs):
        self._buttons = {}

        super(PlaygroundSizeView, self).__init__(**kwargs)

        for title, values in self.default_sizes:
            grid = GridLayout(rows=4)

            def sort_sizes(item):
                return item[1][1] * item[1][0]

            values = sorted(values, key=sort_sizes, reverse=True)
            for name, size in values:
                btn = ToggleButton(text='', markup=True)
                btntext = ('%s\n[color=777777][size=%d]%dx%d[/size][/color]' %
                           (name, btn.font_size * 0.8, size[0], size[1]))
                btn.text = btntext
                btn.bind(on_press=partial(self.set_size, size))
                grid.add_widget(btn)
                self._buttons[name] = btn

            item = AccordionItem(title=title)
            item.add_widget(grid)
            self.accordion.add_widget(item)

        self.accordion.select(self.accordion.children[-1])

        self.update_buttons()
Ejemplo n.º 17
0
    def draw_filter(self):
        """Create a list of toggle buttons to allow user to show which buses
           should be shown on the screen.
        """
        # If we've got no filter then we need to set it up:
        if self.filters is None:

            # Clear the previous filter
            self.ids.bx_filter.clear_widgets()

        # Get the list of unique bus routes and apply a natural sort.
        routes = sorted(set([x["route"] for x in self.buses]),
                        key=natural_sort_key)

        # Create a toggle button for each route and set it as enabled
        # for now.
        for route in routes:
            route_found=False
            for child in self.ids.bx_filter.children:
                if (route == child.text):
                    route_found = True
            if (route_found == False):
                tb = ToggleButton(text=route, state="down")
                tb.bind(state=self.toggled)
                self.ids.bx_filter.add_widget(tb)

        # Run the "toggled" method now as this updates which buses are shown.
        self.toggled(None, None)
Ejemplo n.º 18
0
	def build(self):
		# Set up the layout:
		layout = GridLayout(cols=5, spacing=30, padding=30, row_default_height=150)

		# Make the background gray:
		with layout.canvas.before:
			Color(.2,.2,.2,1)
			self.rect = Rectangle(size=(800,600), pos=layout.pos)

		# Instantiate the first UI object (the GPIO input indicator):
		inputDisplay = InputButton(text="Input")

		# Schedule the update of the state of the GPIO input button:
		Clock.schedule_interval(inputDisplay.update, 1.0/10.0)

		# Create the rest of the UI objects (and bind them to callbacks, if necessary):
		outputControl = ToggleButton(text="LED")
		outputControl.bind(on_press=press_callback)
		beepButton = Button(text="BEEP!")
		beepButton.bind(on_press=press_callback)
		wimg = Image(source='logo.png')
		speedSlider = Slider(orientation='vertical', min=1, max=30, value=speed)
		speedSlider.bind(on_touch_down=update_speed, on_touch_move=update_speed)

		# Add the UI elements to the layout:
		layout.add_widget(wimg)
		layout.add_widget(inputDisplay)
		layout.add_widget(outputControl)
		layout.add_widget(beepButton)
		layout.add_widget(speedSlider)

		# Start flashing the LED
		Clock.schedule_once(flash, 1.0/speed)

		return layout
Ejemplo n.º 19
0
    def _create_popup(self, instance):

        # Create the popup
        content = BoxLayout(orientation='vertical', spacing='5dp')
        self.popup = Popup(content=content,
                           title=self.title,
                           size_hint=(0.25, None),
                           auto_dismiss=False,
                           separator_color=[1, 1, 1, 1],
                           height=dp(134) + dp(min(len(self.options), 4) * 63))

        # Add all the options to the Popup
        content.add_widget(Widget(size_hint_y=None, height=dp(1)))
        uid = str(self.uid)
        for option in self.options:
            state = 'down' if option == self.value else 'normal'
            btn = ToggleButton(text=option,
                               state=state,
                               group=uid,
                               height=dp(58),
                               size_hint=(1, None))
            btn.bind(on_release=self._set_option)
            content.add_widget(btn)

        # Add a cancel button to return on the previous panel
        content.add_widget(SettingSpacer())
        btn = Button(text='Cancel', height=dp(58), size_hint=(1, None))
        btn.bind(on_release=self.popup.dismiss)
        content.add_widget(btn)
        self.popup.open()
Ejemplo n.º 20
0
    def _create_subpopup(self, instance):
        ''' shows the sub popup '''
        # create the popup
        content         = GridLayout(cols=1, spacing='5dp')
        scrollview      = ScrollView( do_scroll_x=False)
        scrollcontent   = GridLayout(cols=1,  spacing='5dp', size_hint=(None, None))
        scrollcontent.bind(minimum_height=scrollcontent.setter('height'))
        self.subpopup   = popup = Popup(content=content, title=self.uOption, size_hint=(0.5, 0.9),  auto_dismiss=False)

        #we need to open the popup first to get the metrics
        popup.open()
        #Add some space on top
        content.add_widget(Widget(size_hint_y=None, height=dp(2)))
        # add all the options
        uid = str(self.uid)
        for option in self.aSubOption:
            state = 'down' if option == self.value else 'normal'
            oTbtn = ToggleButton(text=option, state=state, group=uid, size=(popup.width, dp(55)), size_hint=(None, None))
            oTbtn.bind(on_release=self._set_suboption)
            scrollcontent.add_widget(oTbtn)

        # finally, add a cancel button to return on the previous panel
        scrollview.add_widget(scrollcontent)
        content.add_widget(scrollview)
        content.add_widget(SettingSpacer())
        oMbtn = cMultiLineButton(text=ReplaceVars('$lvar(5009)'), size=(popup.width, dp(50)),size_hint=(0.9, None), halign='center', valign='middle')
        oMbtn.bind(on_release=popup.dismiss)
        content.add_widget(oMbtn)
Ejemplo n.º 21
0
	def __init__(self, **kwargs):
		super(MyApp,self).__init__(**kwargs)
		Window.size = (480, 640)
		with self.canvas:
			BorderImage(border=(10, 10, 10,10),source='time.jpg',size=(480,640))
		global btn1
		btn1 = ToggleButton(text=' START ', bold=True,group='state', size_hint=(.25,.022),
							pos=(190,380),border=(40,0,40,0))
		btn1.bind(on_press=MyApp.start_timer)
		global btn2
		btn2 = ToggleButton(text='LOG TASK', group='state', size_hint=(.25,.012),
							pos=(20,50),disabled=True,border=(20,0,20,0))
		btn2.bind(on_press=MyApp.comment_pop)
		btn3 = Button(text='VIEW TIMESHEET',size_hint=(.29,.012),pos=(335,50),
					  border=(20,0,20,0))
		btn3.bind(on_press=MyApp.timesheet_pop)
		btn4 = Button(text='MAIL TIMESHEET', group='state', size_hint=(.29,.012),
					  pos=(335,550),border=(20,0,20,0))
		btn4.bind(on_press=MyApp.mail_pop)
		btn5 = Button(text='READ ME', group='state', size_hint=(.25,.012),
					  pos=(20,550),border=(20,0,20,0))
		btn5.bind(on_press=MyApp.readme_pop)
		global l1
		l1 = Label (bold=True)
		self.add_widget(btn1)
		self.add_widget(btn2)
		self.add_widget(btn3)
		self.add_widget(btn4)
		self.add_widget(btn5)
		self.add_widget(l1)
Ejemplo n.º 22
0
	def build(self):
		# Set up the layout:
		layout = GridLayout(cols=5, spacing=30, padding=30, row_default_height=150)

		# Make the background gray:
		with layout.canvas.before:
			Color(.2,.2,.2,1)
			self.rect = Rectangle(size=(800,600), pos=layout.pos)

		# Instantiate the first UI object (the GPIO input indicator):
		inputDisplay = InputButton(text="Input")

		# Schedule the update of the state of the GPIO input button:
		Clock.schedule_interval(inputDisplay.update, 1.0/10.0)

		# Create the rest of the UI objects (and bind them to callbacks, if necessary):
		outputControl = ToggleButton(text="LED")
		outputControl.bind(on_press=press_callback)
		beepButton = Button(text="BEEP!")
		beepButton.bind(on_press=press_callback)
		wimg = Image(source='logo.png')
		speedSlider = Slider(orientation='vertical', min=1, max=30, value=speed)
		speedSlider.bind(on_touch_down=update_speed, on_touch_move=update_speed)

		# Add the UI elements to the layout:
		layout.add_widget(wimg)
		layout.add_widget(inputDisplay)
		layout.add_widget(outputControl)
		layout.add_widget(beepButton)
		layout.add_widget(speedSlider)

		# Start flashing the LED
		Clock.schedule_once(flash, 1.0/speed)

		return layout
Ejemplo n.º 23
0
    def stop_record(self):
        global stream
        global audio
        global playButton
        global finishButton

        stream.stop_stream()
        stream.close()
        audio.terminate()

        self.record_button.__setattr__('pos_hint', {'center_x': .38, 'y': .5})
        playButton = ToggleButton(
            text='Play',
            size_hint=(None, None),
            size=(150, 50),
            pos_hint={'center_x': .62, 'y': .5})
        finishButton = ToggleButton(
            text='Edit',
            size_hint=(None, None),
            size=(100, 40),
            pos_hint={'right': .97, 'y': .25}
        )
        playButton.bind(on_press=self.toggle_audio)
        self.ids.layout2.add_widget(playButton)
        self.ids.layout2.add_widget(finishButton)
Ejemplo n.º 24
0
	def build(self):
		self.ui=ThermoWidget()
		self.ui.weatherText='ThermoWidget'
		self.ui.picSource='weather/1.jpg'
		self.ui.tempDataText="temps"
		self.ui.setPointText="0.0"
		self.ui.ipAddressText="192.168.0.0"
		self.ui.averageTempText="0.0"
		self.ui.zoneAlertsText="Loading..."
		btn=self.ui.ids['increase']
		btn.bind(on_release=self.increaseSetPoint)
		btn=self.ui.ids['decrease']
		btn.bind(on_release=self.decreaseSetPoint)
		self.zones=self.ui.ids['zones']
		for z in range(0,4):
			btnstate='down' if self.currentZone==z else 'normal'
			btn = ToggleButton(
				allow_no_selection=False,
				text=str(z), 
				group='zonegroup', 
				size_hint=(None, None),
				halign='center',
				state=btnstate,
				background_normal='normal.png',
				background_down='down.png')
    			btn.bind(on_release=self.switch_zone)
    			self.zones.add_widget(btn)
		self.ui.weatherText=self.config.get('startup', 'weatherText')
		temp = subprocess.check_output(["ifconfig","wlan0"],universal_newlines=True)
		pos1=temp.find("inet addr:")
		pos2=temp.find(" Bcast:")
		self.ui.ipAddressText=temp[pos1+10:pos2]
		self.connectMQTT()
		Clock.schedule_interval(self.mainLoop, 10.0)
		return self.ui
Ejemplo n.º 25
0
 def populate_list(self):
     self.src_choices_box.clear_widgets()
     self.dest_choices_box.clear_widgets()
     label = Label(text='Source')
     self.src_choices_box.add_widget(label)
     label = Label(text='Dest')
     self.dest_choices_box.add_widget(label)
     for each in BLEND_FUNC:
         button = ToggleButton(text=str(
             self.func_chooser.translate_blend_func_value(each)),
                               font_size=self.size[0] * .12,
                               id=str(each),
                               group='func_choices')
         self.src_choices_box.add_widget(button)
         button.bind(on_press=self.press_src_button)
         if self.func_chooser.current_src == each:
             button.state = 'down'
         button = ToggleButton(text=str(
             self.func_chooser.translate_blend_func_value(each)),
                               font_size=self.size[0] * .12,
                               id=str(each),
                               group='func_choices2')
         button.bind(on_press=self.press_dest_button)
         self.dest_choices_box.add_widget(button)
         if self.func_chooser.current_dest == each:
             button.state = 'down'
Ejemplo n.º 26
0
class Date(BoxLayout):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.orientation = 'horizontal'
        self.dp = DatePicker()
        self.today_txt = self.dp.text
        self.tb = ToggleButton(text='Wczoraj', font_size=20)
        self.tb.bind(on_release=self.update)
        self.add_widget(self.dp)
        self.add_widget(self.tb)
        # ## TODO: tb: wczoraj jeśli kalendarz daje dziś i "dziś" jesli kalendarz daje cos innego

    def update(self, *args):
        self.dp.last_text = self.dp.text
        ## TODO zle sie zmienia
        if self.tb.state == 'down':
            self.dp.last_text = self.dp.text
            weekname = datetime.strftime(
                datetime.strptime(self.dp.yesterday, DATEFORMAT), '%a')
            self.dp.text = weekname + ', ' + self.dp.yesterday
        else:
            self.dp.text = self.dp.last_text

    def reset(self):
        self.tb.state = 'normal'
Ejemplo n.º 27
0
class SliderulMeu(GridLayout):

    def __init__(self, **kwargs):
        super(SliderulMeu, self).__init__(**kwargs)
        self.cols = 1
        self.padding = 150
        self.toggle1 = ToggleButton(text="muzica")
        self.toggle1.background_normal = "on.png"
        self.toggle1.background_down = "off.png"
        self.add_widget(self.toggle1)
        self.arata_volum = Label (text = "volum: 10")
        self.add_widget(self.arata_volum)
        self.slide_muzica = Slider(min=0, max=100, value=10)
        self.slide_muzica.step = 5
        self.slide_muzica.orientation="horizontal" # alte optiuni 'vertical'
        self.add_widget(self.slide_muzica)
        self.toggle1.bind(on_press=self.dezactiveaza_volum)
        self.slide_muzica.bind(value=self.valoare_volum)

    def valoare_volum (self,x,y):
        '''utilziat pentru a vedea volumul'''
        self.arata_volum.text = "volum: "+str(int(self.slide_muzica.value))
        
    def dezactiveaza_volum (self,x):
        '''utilziat pentru a acctiva sau a dezactiva slider-ul'''
        if (self.toggle1.state == "down") :
            self.slide_muzica.disabled =True
        else:
            self.slide_muzica.disabled =False
            self.slide_muzica.value = 0
Ejemplo n.º 28
0
        def subscroll(self):
            """
            opens scroll list of substitute characters in a popup
            """
            for btn in SMApp.marketlist:
                if btn.state == 'down':
                    SMApp.nameOff = btn
                    btn.state = 'normal'

            curs.execute('SELECT * FROM Subs')
            layout2 = GridLayout(cols=2, spacing=10, size_hint_y=None)
            layout2.bind(minimum_height=layout2.setter('height'))
            for row in curs:
                btn = ToggleButton(text=str(row[0]),
                                   size_hint_y=None,
                                   height=40)
                if row[1] == 1:
                    btn.background_color = (0.5, 1, 0.9, 1)
                layout2.add_widget(btn)
                btn.bind(on_press=subChar)
                SMApp.sublist.append(btn)
                lbl = Label(text=str(row[2]), size_hinty=None, height=40)
                layout2.add_widget(lbl)
            root = ScrollView(size_hint=(None, None), size=(400, 400))
            root.add_widget(layout2)
            SMApp.popup2 = Popup(content=root,
                                 size=(7, 10),
                                 size_hint=(0.55, 0.8),
                                 title="list of subs")

            SMApp.popup2.open()
Ejemplo n.º 29
0
    def build_buffs(self):
        # Buffs
        buffs = self.ids['buffs']
        buffs.clear_widgets()
        buffs.bind(minimum_height=buffs.setter('height'))
        sorted(self.possible_buffs_list, key=lambda x: x.name)
        for b in self.possible_buffs_list:
##            l = BoxLayout(orientation='horizontal', padding=5,
##                            size_hint=(1, None), height=30, width=320)
##
##            cb = CheckBox(size_hint=(None, None), size=(50,50))
##            cb._buff = b
##            cb.bind(active = self.update_buffs)
##            l.add_widget(cb)
##
##            name = Label(halign='left', size_hint=(None,1), valign='middle')
##            name.bind(texture_size=name.setter('size'))
##            name.text = b.name
##            l.add_widget(name)
            l = ToggleButton(text=b.name, size_hint=(1, None), height='50sp')
            l._buff = b
            l.bind(on_press = self.update_buffs)

            buffs.add_widget(l)

        # Management button
        l = Button(text='Add New Buff...', size_hint=(1, None), height='50sp')
        l.bind(on_press = self.new_buff)
        buffs.add_widget(l)

        # Make sure underling character also has no buffs applied
        self.c.buffs.clear()
Ejemplo n.º 30
0
        def subscroll(self):
            """
            opens scroll list of substitute characters in a popup
            """
            for btn in SMApp.teamlist:
                if btn.state == 'down':
                    SMApp.nameOff = btn
                    btn.state = 'normal'

      
            curs.execute('SELECT * FROM Subs')
            layout2 = GridLayout(cols=2, spacing=10, size_hint_y=None)
            layout2.bind(minimum_height=layout2.setter('height'))
            for row in curs:
                btn = ToggleButton(text=str(row[0]), size_hint_y=None, height=40)
                if row[1] == 1:
                    btn.background_color = (0.5, 1, 0.9, 1)
                layout2.add_widget(btn)
                btn.bind(on_press=subChar)
                SMApp.sublist.append(btn)
                lbl = Label(text=str(row[2]), size_hinty=None, height=40)
                layout2.add_widget(lbl)
            root = ScrollView(size_hint=(None, None), size=(400, 400))
            root.add_widget(layout2)
            SMApp.popup2 = Popup(content=root, size=(7, 10), size_hint=(0.55, 0.8), title="list of subs")

            SMApp.popup2.open()
Ejemplo n.º 31
0
    def _create_popup(self, instance):
        # create the popup
        content = BoxLayout(orientation='vertical', spacing='5dp')
        popup_width = min(0.95 * Window.width, dp(500))
        self.popup = popup = Popup(
            content=content, title=self.title, size_hint=(None, None),
            size=(popup_width, '400dp'))
        popup.height = len(self.options) * dp(55) + dp(150)

        # add all the options
        content.add_widget(Widget(size_hint_y=None, height=1))
        uid = str(self.uid)
        for option in self.options:
            state = 'down' if option == self.value else 'normal'
            btn = ToggleButton(text=option, state=state, group=uid)
            btn.bind(on_release=self._set_option)
            content.add_widget(btn)

        # finally, add a cancel button to return on the previous panel
        content.add_widget(SettingSpacer())
        btn = Button(text='Cancel', size_hint_y=None, height=dp(50))
        btn.bind(on_release=popup.dismiss)
        content.add_widget(btn)

        # and open the popup !
        popup.open()
    def __init__(self, **kwargs):
        self._buttons = {}

        super(PlaygroundSizeView, self).__init__(**kwargs)

        for title, values in self.default_sizes:
            grid = GridLayout(rows=4)

            def sort_sizes(item):
                return item[1][1] * item[1][0]

            values = sorted(values, key=sort_sizes, reverse=True)
            for name, size in values:
                btn = ToggleButton(text='', markup=True)
                btntext = ('%s\n[color=777777][size=%d]%dx%d[/size][/color]' %
                           (name, btn.font_size * 0.8, size[0], size[1]))
                btn.text = btntext
                btn.bind(on_press=partial(self.set_size, size))
                grid.add_widget(btn)
                self._buttons[name] = btn

            item = AccordionItem(title=title)
            item.add_widget(grid)
            self.accordion.add_widget(item)

        self.accordion.select(self.accordion.children[-1])

        self.update_buttons()
Ejemplo n.º 33
0
class Karkas(Widget):
    def __init__(self):
        super(Karkas, self).__init__()
        Window.size = (500, 200)
        Window.clearcolor = (0, 1, 0, 1)
        self.add_widget(
            Label(text='Audio (mp3)', pos=(30, 135), color=(0, 0, 1, 1)))
        self.add_widget(
            Label(text='Video (mp4)', pos=(30, 105), color=(0, 0, 1, 1)))
        self.add_widget(
            Label(text='Вставьте ссылку в поле ввода',
                  pos=(200, 0),
                  color=(0, 0, 1, 1)))
        self.url_input = TextInput(multiline=False,
                                   width=500,
                                   height=30,
                                   pos=(0, 70))
        self.add_widget(self.url_input)
        self.button_run = Button(pos=(200, 100),
                                 width=80,
                                 height=80,
                                 font_size=15,
                                 background_normal='dow1.png',
                                 background_down='dow2.png')
        self.button_run.bind(on_press=self.go_go)
        self.add_widget(self.button_run)
        self.btn1 = ToggleButton(text='1',
                                 color=(0, 0, 0, 0),
                                 group='formats',
                                 pos=(15, 180),
                                 width=10,
                                 height=10)
        self.btn1.bind(on_press=self.change_value1)
        self.btn2 = ToggleButton(text='2',
                                 color=(0, 0, 0, 0),
                                 group='formats',
                                 pos=(15, 150),
                                 width=10,
                                 height=10)
        self.btn2.bind(on_press=self.change_value2)
        self.add_widget(self.btn1)
        self.add_widget(self.btn2)
        self.value = 0

    def change_value2(self, btn2):
        if self.btn2.state == 'down':
            self.value = 2

    def change_value1(self, btn1):
        if self.btn1.state == 'down':
            self.value = 1

    def go_go(self, button_run):
        if self.value == 1:
            self.audio_load()
        elif self.value == 2:
            self.video_load()
        else:
            print('Сначала выберите формат файла: аудио или видео')
Ejemplo n.º 34
0
 def build_bouton(self, nom, couleur, i):
     b = ToggleButton(text=nom, background_normal="", background_down="")
     b.nom = nom
     b.index = i
     b.couleur = couleur
     b.background_color = b.couleur + (1, )
     b.bind(on_release=self.courbe_visibility)
     return b
Ejemplo n.º 35
0
 def on_enter(self, *args):
     for card in config.flashcard_set.Flashcards:
         texts = (card.Question, card.Answer)
         button_term = ToggleButton(text=texts[0], halign='center', valign='middle')
         button_term.size_hint = (0.65, 0.35)
         button_term.bind(on_press=self.switched)
         self.card_button_texts[button_term] = texts
         self.ids.grid.add_widget(button_term)
Ejemplo n.º 36
0
 def create_buttons(self, button_names):
     for name in button_names:
         button = ToggleButton(group=self.group_name,
                               allow_no_selection=False,
                               text=name)
         button.bind(on_release=self.set_value)
         self.buttons = [button] + self.buttons
         self.add_widget(button)
Ejemplo n.º 37
0
        def build(self):
		self.ids.testolalayout.clear_widgets()
		
		for row in curs.execute("SELECT Light_name FROM Lights WHERE Room='X'"):
			btn = ToggleButton(text='%s' % row[0], size = (780, 45),size_hint=(None,None)) #create button
			btn.bind(state=self.lightscallback, on_press=self.showOLA)
			self.ids.testolalayout.add_widget(btn) #add to gridlayout 
		self.ids.testolalayout.bind(minimum_height=self.ids.testolalayout.setter('height'))
Ejemplo n.º 38
0
 def crear_botones_cursos(self, ciclo_seleccionado):
     contenedor_cursos=self.root.ids.contenedor_cursos
     contenedor_cursos.clear_widgets()
     lista_cursos_asociados=self.todos_cursos.filter(ciclo_id=ciclo_seleccionado.id)
     for curso in lista_cursos_asociados:
         btn_curso=ToggleButton(text=curso.nombre_curso, height=45, group="cursos")
         btn_curso.bind(on_press=self.on_curso_seleccionado)
         contenedor_cursos.add_widget(btn_curso)
Ejemplo n.º 39
0
 def crear_botones_modulos(self, curso_seleccionado):
     contenedor_modulos=self.root.ids.contenedor_modulos
     contenedor_modulos.clear_widgets()
     lista_modulos=self.todos_modulos.filter(curso_id=curso_seleccionado.id)
     for m in lista_modulos:
         btn_modulo=ToggleButton(text=m.nombre, height=45, group="modulos")
         btn_modulo.bind(on_press=self.on_modulo_seleccionado)
         contenedor_modulos.add_widget(btn_modulo)
Ejemplo n.º 40
0
class Light:
    def __init__(self, lifxlight, rooms):
        self.lifxlight = lifxlight
        self.rooms = rooms

        self.label = self.lifxlight.get_label()
        self.group = self.lifxlight.get_group_label()

        Logger.info("Lights: New light %s / %s" % (self.label, self.group))

        self.button = ToggleButton(text=self.label)
        self.button.bind(state=self.callback)

    def button_state(self):
        return False if self.button.state == 'normal' else True

    def callback(self, instance, value):
        """Ensures that light is set to same state as button"""
        button_state = False if value == 'normal' else True

        light_state = self.get_state()

        if light_state != button_state:
            # Is light offline?
            if light_state is None:
                return

            self.lifxlight.set_power(button_state)
            self.rooms.refresh()

        Logger.debug("Lights: Light is %s, value is %s, get_power is %s" % (self.label, value, self.get_state()))

    def refresh_light(self):
        light_state = self.get_state()

        if light_state is True:
            self.button.state = 'down'

        if light_state is False:
            self.button.state = 'normal'

        if light_state is None:
            self.button.state = 'normal'

    def get_state(self):
        try:
            power = self.lifxlight.get_power()
        except IOError:
            # Light is offline
            return None

        if power in LIFX_LAN_OFF:
            return False

        if power in LIFX_LAN_ON:
            return True

        return None
Ejemplo n.º 41
0
    def build(self):
        princ = BoxLayout(orientation='vertical')

        titulo = BoxLayout(orientation='horizontal',
                           size_hint_y=None,
                           height='70dp')

        titulo.add_widget(
            Label(text="[b]Tiwhu[/b] Domotica", font_size=40, markup=True))

        princ.add_widget(titulo)

        layout = GridLayout()

        btn1 = ToggleButton(
            background_color=get_color_from_hex('#3498db'),
            text=u'[b]L[/b]ampada\n[font=Metro]\uf106[/font]\nON',
            disabled=False)

        btn1.bind(on_press=self.callback)

        btn2 = Button(background_color=get_color_from_hex('#e74c3c'),
                      text=u'[font=Metro]\uf101[/font]\n25 C')

        btn3 = Button(
            background_color=get_color_from_hex('#1abc9c'),
            text=u'[b]P[/b]resenca [font=Metro]\uf104[/font]\n[size=50]+[/size]'
        )

        btn4 = Button(background_color=get_color_from_hex('#f1c40f'),
                      text=u'[b]P[/b]orta [font=Metro]\uf103[/font]\nAberta')

        btn5 = Button(background_color=get_color_from_hex('#9b59b6'),
                      text=u'[b]L[/b]umin. [font=Metro]\uf105[/font]\n85%')

        btn6 = Button(background_color=get_color_from_hex('#2d89ef'),
                      text=u'[b]D[/b]istancia [font=Metro]\uf108[/font]\n 2 M')

        layout.add_widget(btn1)
        layout.add_widget(btn2)
        layout.add_widget(btn3)
        layout.add_widget(btn4)
        layout.add_widget(btn5)
        layout.add_widget(btn6)

        dimer = BoxLayout(orientation='horizontal',
                          size_hint_y=None,
                          height='70dp')

        dimer.add_widget(Label(text="[b]D[/b]imer", font_size=30, markup=True))

        dimer.add_widget(Slider(size_hint_y=None))

        princ.add_widget(layout)
        # princ.add_widget(dimer)

        return princ
class LayoutParametro(BoxLayout):
    valor_act = NumericProperty(0)
    valor_sal = NumericProperty(0)

    def __init__(self, **kwargs):
        self.register_event_type('on_seleccion')
        self.register_event_type('on_salvar')
        self.register_event_type('on_restaurar')
        super(LayoutParametro, self).__init__(orientation='horizontal',
                                              size_hint=kwargs['size_hint'],
                                              pos_hint=kwargs['pos_hint'])

        self.bot_sel = ToggleButton(text=kwargs['text'], group='parametro')
        self.add_widget(self.bot_sel)
        self.bot_sel.bind(on_press=self.__seleccionado)

        self.txt_valor_act = Label(text='0.0')
        self.add_widget(self.txt_valor_act)

        self.txt_valor_sal = Label(text='0.0')
        self.add_widget(self.txt_valor_sal)

        self.bot_sal = Button(text='Salvar')
        self.add_widget(self.bot_sal)
        self.bot_sal.bind(on_press=self.__salvado)

        self.bot_res = Button(text='Restaurar')
        self.add_widget(self.bot_res)
        self.bot_res.bind(on_press=self.__restaurado)

        self.bind(valor_act=self.__valor_cambiado)
        self.bind(valor_sal=self.__valor_cambiado)

    def __seleccionado(self, boton):
        if boton.state == 'down':
            self.dispatch('on_seleccion')
        else:
            boton.state = 'down'

    def __salvado(self, boton):
        self.dispatch('on_salvar')

    def __restaurado(self, boton):
        self.dispatch('on_restaurar')

    def __valor_cambiado(self, *args):
        self.txt_valor_act.text = str(self.valor_act)
        self.txt_valor_sal.text = str(self.valor_sal)

    def on_seleccion(self, *args):
        pass

    def on_salvar(self, *args):
        pass

    def on_restaurar(self, *args):
        pass
Ejemplo n.º 43
0
    def build_main(self):
        main_layout = BoxLayout(padding=5, orientation='vertical')
        group_layout = BoxLayout(padding=5)
        actions = {
            'List items': self.list_items,
            'Hire items': self.hire_items,
            "Return Items": self.return_items,
            "Confirm": self.confirm,
            "Add New Item": self.add_new_item
        }

        items = self.items.load()

        colors = [red, green, blue, purple]

        h_layout = BoxLayout(
            padding=5,
            orientation='vertical',
            size_hint_x=None,
            width=150,
        )
        for action_name in sorted(actions.keys()):
            callback = actions[action_name]
            btn = ToggleButton(text=action_name,
                               background_color=gray,
                               group="actions")
            btn.bind(on_press=callback)
            h_layout.add_widget(btn)
        group_layout.add_widget(h_layout)

        items = list(items.values())

        layout = SelectableGrid(cols=2,
                                up_count=5,
                                multiselect=True,
                                scroll_count=1)
        for idx, item in self.items.items.items():
            #print(idx)
            #   category, name, cost, state = item
            btn = Button(text=item.name,
                         background_color=color_for_state(item.status))
            btn.bind(on_touch_down=layout.do_touch)
            btn.storage_idx = idx

            layout.add_widget(btn)
        layout.bind(selected_nodes=self.set_selection)
        layout.items = self.items

        group_layout.add_widget(layout)

        main_layout.add_widget(group_layout)

        self.main_label = Label(text="loading...", size_hint_y=None, height=50)
        self.selected_functions = []
        main_layout.add_widget(self.main_label)

        return main_layout
Ejemplo n.º 44
0
    def build(self):
        global sounds,icons
        sounds,icons=loadData()
        #showmissingSounds()
        show = DEFAULT_SHOWTIME
        global MAX_NBITEMS
        MAX_NBITEMS = len(icons)
        g = MemoryLayout(rows=4,items = DEFAULT_NBITEMS, level=show,size_hint=(1,.9))
        config = BoxLayout(orientation='horizontal',spacing=10, size_hint=(1,.1))
        
        sound = ToggleButton(text='Sound On', size_hint=(0.1,1))
        sound.bind(on_press=MemoryButton.toggleSound)

        pb = MyPb(max=DEFAULT_NBITEMS, size_hint=(0.7,1),ml=g)
        
        score = LabelScore(text="Time:  0 s",size_hint=(0.1,1))
        missed =  LabelMissed(text="Missed:  0",size_hint=(0.1,1))
        
        config.add_widget(pb)
        config.add_widget(score)
        config.add_widget(missed)
        config.add_widget(sound)
        
        g.bind(missed=missed.update)     
        g.bind(elapsed=score.updateTime)        
        g.bind(left=pb.foundAnItem)
        g.bind(items=pb.newNbItems)

        playZone = BoxLayout(orientation='vertical')
        playZone.add_widget(g)
        playZone.add_widget(config)
        #select DEFAULT_NBITEMS
        shuffle(icons)
        iicons=icons[:DEFAULT_NBITEMS]

        iicons=iicons+iicons
        shuffle(iicons)
        for i in iicons:
            s = i.split(".png")[0].split(sep)[1]
            if sounds.has_key(s):
                aSound = choice(sounds[s])
            else:
                aSound = sounds['default'][0]

            btn = MemoryButton(
                text="",
                filenameIcon=i,
                filenameSound=aSound,
                )  
            g.add_widget(btn)

        root=FloatLayout()
        root.add_widget(Image(source='Jungle_Background_-_by-vectorjungle.jpg',allow_stretch=True,keep_ratio=False))
        root.add_widget(playZone)
        Clock.schedule_interval(g.initialCountdown,1)
        return root
Ejemplo n.º 45
0
    def dashboard_speed_tab(self):
        canvas = BoxLayout(orientation='vertical')

        # 1st layer
        setup = BoxLayout(orientation='horizontal')
        #setup.height = 20
        setup.size_hint = (1, None)
        btnPlus = Button(text='-', id="minus")
        self.w_spd_targetspeed = Label(text='10', font_size="20sp")
        btnMinus = Button(text='+', id="plus")
        btnAspd = ToggleButton(text='AirSpeed',
                               id="aspd",
                               group='speed_source',
                               state='down')
        btnGspd = ToggleButton(text='GndSpeed',
                               id="gspd",
                               group='speed_source')
        btnAspd.bind(state=self.cb_set_speed_source)
        btnGspd.bind(state=self.cb_set_speed_source)
        btnPlus.bind(state=self.cb_set_speed_source)
        btnMinus.bind(state=self.cb_set_speed_source)
        swRead = Switch(active=False)
        swRead.bind(active=self.toggle_reading)
        setup.add_widget(btnPlus)
        setup.add_widget(self.w_spd_targetspeed)
        setup.add_widget(btnMinus)
        setup.add_widget(btnAspd)
        setup.add_widget(btnGspd)
        setup.add_widget(swRead)

        # zaskrtavatko - hlas, tón, pipani
        # Ukazatel

        data = BoxLayout(orientation='horizontal')

        data_actual = BoxLayout(orientation='vertical')
        self.w_spd_release_status = Label(text="--Release--", markup=True)
        self.w_spd_speed_info = Label(text="info",
                                      markup=True,
                                      halign="center")
        data_actual.add_widget(self.w_spd_release_status)
        data_actual.add_widget(self.w_spd_speed_info)

        data_offset = BoxLayout(orientation='vertical')
        self.w_spd_offset = Label(text="Err", font_size="50sp", markup=True)
        data_offset.add_widget(self.w_spd_offset)

        self.w_spd_range = Range()

        data.add_widget(data_actual)
        data.add_widget(data_offset)
        data.add_widget(self.w_spd_range)

        canvas.add_widget(setup)
        canvas.add_widget(data)
        return canvas
Ejemplo n.º 46
0
 def createButton(name, index):
     button = ToggleButton(text=name,
                           size_hint=(0.25, 0.05),
                           pos_hint={
                               "right": 1,
                               "y": 0.05 * index
                           })
     button.bind(
         on_press=lambda x: (database.ChangeBuilding(index + 1)))
     graph_content.add_widget(button)
Ejemplo n.º 47
0
 def build_coordinate_system_options(self):
     lbl_coordinate_system = Label(text='Coordinate System:', size_hint=(.1, .05), pos_hint={'x': .45, 'y': .9})
     btn_coordinate_system_wgs84 = ToggleButton(text='WGS84', group='coordinate_system', state='down',
                                                size_hint=(.14, .05), pos_hint={'x': .59, 'y': .9})
     btn_coordinate_system_webmercator = ToggleButton(text='Web Mercator', group='coordinate_system',
                                                      size_hint=(.14, .05), pos_hint={'x': .73, 'y': .9})
     btn_coordinate_system_wgs84.bind(on_release=self.toggle_coordinate_system)
     btn_coordinate_system_webmercator.bind(on_release=self.toggle_coordinate_system)
     self.app.add_widget(lbl_coordinate_system)
     self.app.add_widget(btn_coordinate_system_wgs84)
     self.app.add_widget(btn_coordinate_system_webmercator)
Ejemplo n.º 48
0
 def build_mode_options(self):
     lbl_mode = Label(text='Mode:', size_hint=(.1, .05), pos_hint={'x': .08, 'y': .9})
     btn_mode_dynamic = ToggleButton(text='Dynamic', group='mode', state='down', size_hint=(.1, .05),
                                     pos_hint={'x': .16, 'y': .9})
     btn_mode_static = ToggleButton(text='Static', group='mode', size_hint=(.1, .05),
                                    pos_hint={'x': .26, 'y': .9})
     btn_mode_dynamic.bind(on_release=self.toggle_mode)
     btn_mode_static.bind(on_release=self.toggle_mode)
     self.app.add_widget(lbl_mode)
     self.app.add_widget(btn_mode_dynamic)
     self.app.add_widget(btn_mode_static)
Ejemplo n.º 49
0
    def build(self):

        # Title and icon for program
        self.icon = 'memoIcon.png'
        self.title = 'Pro Soccer Mem 15'

        items, level = load_level()
        global g
        g = MemoryLayout(rows=4, items=items, level=level, size_hint=(1, .9))
        config = BoxLayout(orientation='horizontal', spacing=10, size_hint=(1, .1))
        narrate_box = BoxLayout(orientation='horizontal', spacing=10, size_hint=(1, .1))

        sound = ToggleButton(text='Sound On', size_hint=(0.15, 1))
        sound.bind(on_press=MemoryButton.toggle_sound)

        pb = MyPb(max=items, size_hint=(0.55, 1), ml=g)

        timing = LabelTime(text="Time:  0 s", size_hint=(0.15, 1))
        score = LabelScore(text="Score:  0 - 0", size_hint=(0.15, 1))
        narration = LabelNarrate(text="Welcome to Pro Soccer Mem 15. Loading...", size=(1, 1))

        narrate_box.add_widget(narration)
        config.add_widget(pb)
        config.add_widget(timing)
        config.add_widget(score)
        config.add_widget(sound)

        g.bind(narration=narration.update)
        g.bind(score=score.update)
        g.bind(elapsed=timing.update_time)
        g.bind(left=pb.found_an_item)
        g.bind(items=pb.new_nb_items)

        play_zone = BoxLayout(orientation='vertical')
        play_zone.add_widget(g)
        play_zone.add_widget(narrate_box)
        play_zone.add_widget(config)
        root = FloatLayout()
        root.add_widget(Image(source='court.jpg', allow_stretch=True, keep_ratio=False))
        root.add_widget(play_zone)

        # Screen manager
        global sm
        sm = ScreenManager()

        settings_screen = SettingsScreen(name='settings')
        settings_screen.add_widget(root)

        sm.add_widget(MenuScreen(name='menu'))
        sm.add_widget(CreditsScreen(name='credits'))

        sm.add_widget(settings_screen)

        return sm
Ejemplo n.º 50
0
 def set_rule_chooser(self):
     if self.lsystem:
         name,(axiom,rules,angle) = self.lsystem
     else:
         rules = {}
     self.rule_chooser.clear_widgets()
     for name in ["axiom"]+sorted(rules.keys()):
         btn = ToggleButton(text=name, group='rules',size_hint_y=None,height=sp(30))
         if name == 'axiom': btn.state = 'down'
         btn.bind(on_press = self.on_rule_choose)
         self.rule_chooser.add_widget(btn)
Ejemplo n.º 51
0
def add_tbtn(layout, text, func, group=None):

    btn = ToggleButton(text=text,
                       group=group,
                       halign='center',
                       valign='middle')
    btn.bind(on_press=func)
    btn.bind(size=btn.setter('text_size'))
    layout.add_widget(btn)

    return
Ejemplo n.º 52
0
    def add_items(self, choices):

        for choice in choices:
            btn = ToggleButton(text=choice, size_hint_y=None, height=44)
            self.add_widget(btn)
            btn.bind(on_press=self.update)
            self.division_buttons.append(btn)

        for i in self.division_buttons:
            if i in self.current_division:
                i.state = "down"
Ejemplo n.º 53
0
 def editgroup(self, widget):
     self.dropdown.clear_widgets()
     for player in sorted(self.currentplayer.all_zones,
                          key=lambda x: x.player_name):
         btn = ToggleButton(text='%s' % (player.player_name,),
                            size_hint_y=None, height=60)
         btn.bind(on_release=partial(self.makegroup, player))
         if player in self.currentplayer.group.members:
             btn.state = "down"
         self.dropdown.add_widget(btn)
     self.dropdown.open(widget)
 def filebar(self):
 	layout=BoxLayout(padding='2sp',size_hint=(1,None),height='100sp')
 	layout.orientation='horizontal'
 	files = self.element.files(self.current_ex)
 	for f in files:
         if f.strip() == self.current_file:
             button = ToggleButton(text=f,group = self.current_ex,state='down')
         else:
             button = ToggleButton(text=f,group = self.current_ex,state='normal')
         button.bind(on_press=self.update_currentFile)
         layout.add_widget(button)
 	return layout
 def mediakraken_find_server_list(self):
     self.server_list = common_network_mediakraken.com_net_mediakraken_find_server()
     if self.server_list is not None:
         for found_server in self.server_list:
             btn1 = ToggleButton(text=self.server_list[found_server][1],
                                 group='mediakraken_server', )
             btn1.bind(on_press=partial(self.MediaKraken_Event_Button_Server_Select,
                                        found_server))
             self.root.ids.mediakraken_server_list_layout.add_widget(btn1)
     else:
         # go back to main menu
         self.root.ids._screen_manager.current = 'Main_Remote'
Ejemplo n.º 56
0
 def getUI(self):
     result = ToggleButton()
     if self.value:
         result.state = 'down'
     skin = sm.getSkin('switch', self.asset)
     result.background_normal = os.path.join(skin['path'], skin["normal"])
     result.background_down = os.path.join(skin['path'], skin["down"])
     result.size = sm.getControlSize(skin, self.asset)
     result.border = 0,0,0,0
     self.uiEl = result
     self.prepareUiElement()
     result.bind(state=self.state_changed)
     return result
Ejemplo n.º 57
0
    def add_items(self, choices):
        searchButton = Button(text="Click to search", size_hint_y=None, height=44, on_press=self.pl_search_pop)
        self.add_widget(searchButton)

        for choice in choices:
            btn = ToggleButton(text=choice, size_hint_y=None, height=44)
            self.add_widget(btn)
            btn.bind(on_press=self.update)
            self.pl_buttons.append(btn)

        for i in self.pl_buttons:
            if i in self.current_pl:
                i.state = "down"
Ejemplo n.º 58
0
    def tischerstellung (self, Zielwidget, AnzahlTische, Auswahlliste, BackgroundcolorListe):
        Auswahlliste = ["Bestellung", "Abrechnung", "Best. Aendern", "Bennenen"]
        BackgroundcolorListe = [(1,0,0,1),(0,1,0,1),(0,0,1,1),(1,1,0,1)]
        Aktionsliste = [self.bestellung, self.abrechnung, self.bestellungaendern, self.tischbenennen]
        
        #self.DropdownObjects = []
        for i in range(AnzahlTische):
            if self.Tischliste != []:
                LetzterTisch = self.Tischliste[-1]['Nummer']
##                print LetzterTisch + 1
            else:
                LetzterTisch = 0
            
            TischNr = str(LetzterTisch+1)
            TischButtonText = "T " + TischNr
            DropdownObjekt = CustomDropDown() #von kovak hinzugefuegt
            #DropdownObjektButton = CustomButton(text = TischButtonText,
            DropdownObjektButton = ToggleButton(text = TischButtonText,
                                                group='Tische',
                                                #background_normal='bilder_oberflaeche/white2.png',
                                                background_normal='bilder_oberflaeche/buttonbackground_normal_gruenrandaussenbraun.png',
                                                background_down='bilder_oberflaeche/buttonbackground_normal_weissrandaussenbraun.png',
                                                #background_down='bilder_oberflaeche/white4.png',
                                                #background_color = (0.79, 0.39, 0.09, 1))#0.6))
                                                background_color = (1, 1, 1, 1))#0.6))
            Zielwidget.add_widget(DropdownObjektButton)
            DropdownObjektButton.bind(on_release=DropdownObjekt.open)
            self.DropdownObjects.append(DropdownObjekt) #von kovak hinzugefuegt

            for x in range(len(Auswahlliste)):

                DropdownUnterbutton = Button(text=Auswahlliste[x],
                                             id = TischNr,
                                             #auto_width='False',
                                             #width = '200sp',
                                             font_size = 15,
                                             size_hint_y=None,
                                             height=60,
                                             background_normal='bilder_oberflaeche/white2.png',
                                             background_down='bilder_oberflaeche/white3.png',
                                             background_color = BackgroundcolorListe[x],
                                             on_release = Aktionsliste[x])
                DropdownObjekt.add_widget(DropdownUnterbutton)

                #print' button', i, 'unterbutton', x



            DropdownObjektButton.text= TischButtonText
            self.TischButtondict = {'Nummer':(LetzterTisch + 1),'Objekt':DropdownObjektButton}
            self.Tischliste.append(self.TischButtondict)
Ejemplo n.º 59
0
	def render_distribuite(self,tab):
		Blayout=BoxLayout(orientation='vertical')
		btnDistr=Button(text='Start Distribuite',size_hint=(1, .1))
		btnDistr.bind(on_press=self.start_dist)
		layout = GridLayout(cols=4)
		thedir=os.path.join(self.py4a_path,'recipes')
		recipes=[ name for name in os.listdir(thedir) if os.path.isdir(os.path.join(thedir, name)) ]
		for r in recipes:
			t=ToggleButton(text=r)
			t.bind(state=self.add_remove)
			layout.add_widget(t)
		Blayout.add_widget(btnDistr)
		Blayout.add_widget(layout)
		tab.add_widget(Blayout)