Beispiel #1
0
def gengrid_clicked(obj):

    global item_count
    item_count = 25

    # window
    win = elementary.Window("gengrid", elementary.ELM_WIN_BASIC)
    win.title_set("Gengrid")
    win.autodel_set(True)
    if obj is None:
        win.callback_delete_request_add(lambda o: elementary.exit())

    # background
    bg = elementary.Background(win)
    win.resize_object_add(bg)
    bg.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    bg.show()

    # main table
    tb = elementary.Table(win)
    win.resize_object_add(tb)
    tb.homogeneous_set(0)
    tb.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    tb.show()

    # gengrid
    itc = elementary.GengridItemClass(item_style="default",
                                      text_get_func=gg_text_get,
                                      content_get_func=gg_content_get,
                                      state_get_func=gg_state_get,
                                      del_func=gg_del)
    gg = elementary.Gengrid(win)
    gg.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    gg.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    gg.horizontal_set(False)
    gg.bounce_set(False, True)
    gg.item_size_set(80, 80)
    gg.align_set(0.5, 0.0)
    tb.pack(gg, 0, 0, 6, 1)
    gg.callback_selected_add(gg_sel)
    gg.callback_unselected_add(gg_unsel)
    gg.callback_clicked_double_add(gg_clicked_double)
    gg.show()

    # add the first items
    for i in range(item_count):
        gg.item_append(itc, i, None)

    # multi select
    def multi_select_changed(bt, gg):
        gg.multi_select_set(bt.state)
        print((gg.multi_select_get()))

    bt = elementary.Check(win)
    bt.text = "MultiSelect"
    bt.state = gg.multi_select_get()
    bt.callback_changed_add(multi_select_changed, gg)
    tb.pack(bt, 0, 1, 1, 1)
    bt.show()

    # horizontal
    def horizontal_changed(bt, gg):
        gg.horizontal_set(bt.state)

    bt = elementary.Check(win)
    bt.text_set("Horizontal")
    bt.callback_changed_add(horizontal_changed, gg)
    tb.pack(bt, 1, 1, 1, 1)
    bt.show()

    # bounce h
    def bounce_h_changed(bt, gg):
        (h_bounce, v_bounce) = gg.bounce_get()
        gg.bounce_set(bt.state, v_bounce)
        print((gg.bounce_get()))

    bt = elementary.Check(win)
    bt.text_set("BounceH")
    (h_bounce, v_bounce) = gg.bounce_get()
    bt.state = h_bounce
    bt.callback_changed_add(bounce_h_changed, gg)
    tb.pack(bt, 4, 1, 1, 1)
    bt.show()

    # bounce v
    def bounce_v_changed(bt, gg):
        (h_bounce, v_bounce) = gg.bounce_get()
        gg.bounce_set(h_bounce, bt.state)
        print((gg.bounce_get()))

    bt = elementary.Check(win)
    bt.text_set("BounceV")
    (h_bounce, v_bounce) = gg.bounce_get()
    bt.state = v_bounce
    bt.callback_changed_add(bounce_v_changed, gg)
    tb.pack(bt, 5, 1, 1, 1)
    bt.show()

    # item size
    def item_size_w_changed(sl, gg):
        (w, h) = gg.item_size_get()
        gg.item_size_set(sl.value, h)
        print((gg.item_size_get()))

    def item_size_h_changed(sl, gg):
        (w, h) = gg.item_size_get()
        gg.item_size_set(w, sl.value)
        print((gg.item_size_get()))

    sl = elementary.Slider(win)
    sl.text_set("ItemSizeW")
    sl.min_max_set(0, 500)
    sl.indicator_format_set("%.0f")
    sl.unit_format_set("%.0f")
    sl.span_size_set(100)
    (w, h) = gg.item_size_get()
    sl.value = w
    sl.callback_changed_add(item_size_w_changed, gg)
    tb.pack(sl, 0, 2, 2, 1)
    sl.show()

    sl = elementary.Slider(win)
    sl.text_set("ItemSizeH")
    sl.min_max_set(0, 500)
    sl.indicator_format_set("%.0f")
    sl.unit_format_set("%.0f")
    sl.span_size_set(100)
    (w, h) = gg.item_size_get()
    sl.value = h
    sl.callback_changed_add(item_size_h_changed, gg)
    tb.pack(sl, 0, 3, 2, 1)
    sl.show()

    # align
    def alignx_changed(sl, gg):
        (ax, ay) = gg.align_get()
        gg.align_set(sl.value, ay)
        print((gg.align_get()))

    def aligny_changed(sl, gg):
        (ax, ay) = gg.align_get()
        gg.align_set(ax, sl.value)
        print((gg.align_get()))

    sl = elementary.Slider(win)
    sl.text_set("AlignX")
    sl.min_max_set(0.0, 1.0)
    sl.indicator_format_set("%.2f")
    sl.unit_format_set("%.2f")
    sl.span_size_set(100)
    (ax, ay) = gg.align_get()
    sl.value = ax
    sl.callback_changed_add(alignx_changed, gg)
    tb.pack(sl, 0, 4, 2, 1)
    sl.show()

    sl = elementary.Slider(win)
    sl.text_set("AlignY")
    sl.min_max_set(0.0, 1.0)
    sl.indicator_format_set("%.2f")
    sl.unit_format_set("%.2f")
    sl.span_size_set(100)
    (ax, ay) = gg.align_get()
    sl.value = ax
    sl.callback_changed_add(aligny_changed, gg)
    tb.pack(sl, 0, 5, 2, 1)
    sl.show()

    # select first
    def select_first_clicked(bt, gg):
        ggi = gg.first_item
        ggi.selected = not ggi.selected

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Select first")
    bt.callback_clicked_add(select_first_clicked, gg)
    tb.pack(bt, 2, 2, 1, 1)
    bt.show()

    # select last
    def select_last_clicked(bt, gg):
        ggi = gg.last_item
        ggi.selected = not ggi.selected

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Select last")
    bt.callback_clicked_add(select_last_clicked, gg)
    tb.pack(bt, 3, 2, 1, 1)
    bt.show()

    # selection del
    def seldel_clicked(bt, gg):
        for ggi in gg.selected_items_get():
            ggi.delete()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Sel del")
    bt.callback_clicked_add(seldel_clicked, gg)
    tb.pack(bt, 4, 2, 1, 1)
    bt.show()

    # clear
    def clear_clicked(bt, gg):
        global item_count
        item_count = 0
        gg.clear()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Clear")
    bt.callback_clicked_add(clear_clicked, gg)
    tb.pack(bt, 5, 2, 1, 1)
    bt.show()

    # show first/last
    def show_clicked(bt, gg, first):
        ggi = gg.first_item if first else gg.last_item
        ggi.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Show first")
    bt.callback_clicked_add(show_clicked, gg, True)
    tb.pack(bt, 2, 3, 1, 1)
    bt.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Show last")
    bt.callback_clicked_add(show_clicked, gg, False)
    tb.pack(bt, 3, 3, 1, 1)
    bt.show()

    # bring-in first/last
    def bring_in_clicked(bt, gg, first):
        ggi = gg.first_item if first else gg.last_item
        ggi.bring_in()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("BringIn first")
    bt.callback_clicked_add(bring_in_clicked, gg, True)
    tb.pack(bt, 4, 3, 1, 1)
    bt.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("BringIn last")
    bt.callback_clicked_add(bring_in_clicked, gg, False)
    tb.pack(bt, 5, 3, 1, 1)
    bt.show()

    # append
    def append_clicked(bt, gg, n):
        global item_count
        while n:
            item_count += 1
            gg.item_append(itc, item_count, None)
            n -= 1

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Append 1")
    bt.callback_clicked_add(append_clicked, gg, 1)
    tb.pack(bt, 2, 4, 1, 1)
    bt.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Append 100")
    bt.callback_clicked_add(append_clicked, gg, 100)
    tb.pack(bt, 3, 4, 1, 1)
    bt.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Append 1000")
    bt.callback_clicked_add(append_clicked, gg, 1000)
    tb.pack(bt, 4, 4, 1, 1)
    bt.show()

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Append 10000 :)")
    bt.callback_clicked_add(append_clicked, gg, 10000)
    tb.pack(bt, 5, 4, 1, 1)
    bt.show()

    # prepend
    def prepend_clicked(bt, gg):
        global item_count
        item_count += 1
        gg.item_prepend(itc, item_count)

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Prepend")
    bt.callback_clicked_add(prepend_clicked, gg)
    tb.pack(bt, 2, 5, 1, 1)
    bt.show()

    # insert_before
    def ins_before_clicked(bt, gg):
        global item_count
        item_count += 1
        before = gg.selected_item_get()
        if before:
            gg.item_insert_before(itc, item_count, before)
        else:
            print("nothing selected")

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Ins before")
    bt.callback_clicked_add(ins_before_clicked, gg)
    tb.pack(bt, 3, 5, 1, 1)
    bt.show()

    # insert_after
    def ins_after_clicked(bt, gg):
        global item_count
        item_count += 1
        after = gg.selected_item_get()
        if after:
            gg.item_insert_after(itc, item_count, after)
        else:
            print("nothing selected")

    bt = elementary.Button(win)
    bt.size_hint_align_set(evas.EVAS_HINT_FILL, 0)
    bt.text_set("Ins after")
    bt.callback_clicked_add(ins_after_clicked, gg)
    tb.pack(bt, 4, 5, 1, 1)
    bt.show()

    win.resize(480, 800)
    win.show()
Beispiel #2
0
	def build_gui (self):

		def destroy (obj, *args, **kargs):
			
			self.sensorTimer.delete()
			self.SaveConfig (self.configfile)
			elementary.exit ()

		gui_items = dict ()

		# Start elementary
		elementary.init ()

		# Create main window
		gui_items['mainwin'] = elementary.Window ("Wax-Chooser", elementary.ELM_WIN_BASIC)
		gui_items['mainwin'].title_set ("Wax-Chooser")
		gui_items['mainwin'].callback_destroy_add (destroy)

		# Create background
		bg = elementary.Background (gui_items['mainwin'])
		bg.size_hint_weight_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		bg.size_hint_min_set (200,300)
		gui_items['mainwin'].resize_object_add (bg)
		bg.show ()

		# Create main box (vertical by default)
		gui_items['mainbox'] = elementary.Box (gui_items['mainwin'])
		gui_items['mainbox'].size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		gui_items['mainbox'].size_hint_align_set (-1.0, evas.EVAS_HINT_FILL)
		gui_items['mainwin'].resize_object_add (gui_items['mainbox'])
		gui_items['mainbox'].show ()

		# Create title label
		gui_items['title'] = elementary.Label (gui_items['mainwin'])
		gui_items['title'].text_set ("Current Conditions")
		gui_items['mainbox'].pack_start (gui_items['title'])
		gui_items['title'].size_hint_weight_set (1.0, evas.EVAS_HINT_FILL)
		gui_items['title'].size_hint_align_set (0.5, -1.0)
		gui_items['title'].show ()

		# Create scroller to hold condition descripion items
		self.sc2 = elementary.Scroller(gui_items['mainwin'])
		self.sc2.bounce_set(0, 0)
		self.sc2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 1.0)
		self.sc2.size_hint_align_set(-1.0, evas.EVAS_HINT_FILL)
		gui_items['mainbox'].pack_end(self.sc2)
		self.sc2.show()
		gui_items['mainwin'].resize_object_add (self.sc2)
		
		# Create condtion description box (vertical by default)
		box2 = elementary.Box (gui_items['mainwin'])
		box2.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		box2.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		self.sc2.content_set (box2)
		box2.show ()
		

		gui_items['rows'] = []
		
		# Create four boxes: temperature, humidity, snow type, and buttons, set as horizonal
		tbox = elementary.Box (gui_items['mainwin'])
		#tbox.horizontal_set (1)
		#box1.homogenous_set (1)
		tbox.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		tbox.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		box2.pack_end (tbox)
		tbox.show ()
		
		# Create temperature widget label
		
		tl = elementary.Label (gui_items['mainwin'])
		tl.text_set ('Temperature')
		tbox.pack_start( tl )
		tl.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		tl.size_hint_align_set (0.4, 0.5)
		tl.show ()
						
		# Create temperature slider
		gui_items['temperatureSlider'] = elementary.Slider (gui_items['mainwin'])
		gui_items['temperatureSlider'].size_hint_weight_set (1, 0)
		gui_items['temperatureSlider'].size_hint_align_set (-1, 0)
		if self.usingCelsius:
			gui_items['temperatureSlider'].min_max_set (-30.0, 10.0)
			gui_items['temperatureSlider'].value = 0
		else:
			gui_items['temperatureSlider'].min_max_set (-15.0, 45.0)
			gui_items['temperatureSlider'].value = 32
		gui_items['temperatureSlider'].unit_format_set( '%1.1f degrees' )
		tbox.pack_end (gui_items['temperatureSlider'])
		gui_items['temperatureSlider'].show ()
		
		
		tsbox = elementary.Box (gui_items['mainwin'])
		tsbox.horizontal_set (1)
		tsbox.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		tsbox.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		box2.pack_end (tsbox)
		tsbox.show ()

		# Create Use Sensor button
		gui_items['sensorButton'] = elementary.Button (gui_items['mainwin'])
		gui_items['sensorButton']._callback_add ('clicked', self.setTemperatureFromSensor)
		ic = elementary.Icon(gui_items['sensorButton'])
		ic.file_set(os.path.join(IMAGE_DIR, "thermometer.png"))
		gui_items['sensorButton'].icon_set( ic)
		gui_items['sensorButton'].text_set( "Searching for sensor" )
		gui_items['sensorButton'].size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		gui_items['sensorButton'].size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		
		tsbox.pack_end (gui_items['sensorButton'])
		if self.usingSensor:
			gui_items['sensorButton'].show ()
		
		######## Humidity ############		
		hbox = elementary.Box (gui_items['mainwin'])
		#box1.homogenous_set (1)
		hbox.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		hbox.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		box2.pack_end (hbox)
		hbox.show ()
		gui_items['mainwin'].resize_object_add (hbox)
		
		#create humidity widget label
		hl = elementary.Label (gui_items['mainwin'])
		hl.text_set ('Humidity')
		hl.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		hl.size_hint_align_set (0.45, 0.5)
		hbox.pack_start (hl)		
		hl.show ()
		
		hbox2 = elementary.Box (gui_items['mainwin'])
		hbox2.horizontal_set (1)
		#box1.homogenous_set (1)
		hbox2.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		hbox2.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		hbox.pack_end (hbox2)
		gui_items['mainwin'].resize_object_add (hbox2)
		hbox2.show ()	
		
		#Create humidity toolbar
		rhtoolbar = elementary.Toolbar(gui_items['mainwin'])
		rhtoolbar.menu_parent_set(gui_items['mainwin'])
		rhtoolbar.homogenous_set(0)		
		rhtoolbar.icon_size_set( 64 )		
	#	print str( rhtoolbar.icon_size )
		rhtoolbar.icon_size = ( 96 )		
	#	print str( rhtoolbar.icon_size )
		
		rhtoolbar.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)                                                            
		rhtoolbar.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		rhtoolbar.item_append(os.path.join(IMAGE_DIR, 'medrh.png'), "Normal", self.setHumidity,humidity=NORMAL_HUMIDITY)
		rhtoolbar.item_append(os.path.join(IMAGE_DIR, 'highrh.png'), "High", self.setHumidity,humidity=HIGH_HUMIDITY)
		rhtoolbar.first_item_get().selected_set(True)
		hbox2.pack_end( rhtoolbar )
		rhtoolbar.show()
		
		
		######## Snow Condition ############		
		sbox = elementary.Box (gui_items['mainwin'])
		#box1.homogenous_set (1)
		sbox.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		sbox.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		box2.pack_end (sbox)
		sbox.show ()
		
		
		#create snow cond widget label
		sl = elementary.Label (gui_items['mainwin'])
		sl.text_set ('Snow Condition')
		sl.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		sl.size_hint_align_set (0.45, 0.5)
		sbox.pack_start (sl)		
		sl.show ()
		
		sbox2 = elementary.Box (gui_items['mainwin'])
		sbox2.horizontal_set (1)
		#box1.homogenous_set (1)
		sbox2.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		sbox2.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		sbox.pack_end (sbox2)
		sbox2.show ()	
		
		#Create Snow condition toolbar
		sctoolbar = elementary.Toolbar(gui_items['mainwin'])
		sctoolbar.menu_parent_set(gui_items['mainwin'])
		sctoolbar.homogenous_set(0)
		sctoolbar.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)                                                            
		sctoolbar.size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		sctoolbar.item_append(os.path.join(IMAGE_DIR, 'newsnow.png'), "New", self.setSnowCond,snowcond=NEW_SNOW)
		sctoolbar.item_append(os.path.join(IMAGE_DIR, 'transformedsnow.png'), "Transformed", self.setSnowCond,snowcond=OLD_SNOW)
		sctoolbar.item_append(os.path.join(IMAGE_DIR, 'corn.png'), "Corn", self.setSnowCond,snowcond=CORN_SNOW)
		sctoolbar.item_append(os.path.join(IMAGE_DIR, 'ice.png'), "Ice", self.setSnowCond,snowcond=ICY_SNOW)
		sctoolbar.first_item_get().selected_set(True)		
		sbox2.pack_end( sctoolbar )
		sctoolbar.show()
			
		# Create bottom button row (prev, next city & refresh)
		box3 = elementary.Box (gui_items['mainwin'])
		box3.horizontal_set (1)
		box3.homogenous_set (1)
		box3.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		box3.size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		gui_items['mainbox'].pack_end (box3)
		box3.show ()

		# Find Wax button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Find Wax')
		bt._callback_add ('clicked', self.find_wax)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		# Add a prev icon to the button
		box3.pack_end (bt)
		bt.show ()

		# Settings button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Settings')
		bt._callback_add ('clicked', self.settingsDialog)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		# Add a next icon to the button
		box3.pack_end (bt)
		bt.show ()

		
		#####
		# Create wax display box (vertical by default)
		gui_items['waxbox'] = elementary.Box (gui_items['mainwin'])
		gui_items['waxbox'].size_hint_weight_set (evas.EVAS_HINT_FILL, 1.0)
		gui_items['waxbox'].size_hint_align_set (evas.EVAS_HINT_FILL, -1.0)
		gui_items['waxLabel'] = elementary.Label(gui_items['mainwin'])
		gui_items['waxLabel'].text_set("Wax")
		gui_items['waxbox'].pack_start(gui_items['waxLabel'])
		gui_items['waxLabel'].show()
		# Create box to hold the wax picture
	
		sc = elementary.Scroller(gui_items['waxbox'])
		sc.bounce_set(0, 0)
		sc.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.5)
		sc.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		
		
		ib = elementary.Box(gui_items['mainwin'])
		ib.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.5)
		ib.size_hint_align_set(evas.EVAS_HINT_FILL, 0.5)
		gui_items['waxicon'] = elementary.Icon(gui_items['mainwin'])
		gui_items['waxicon'].size_hint_weight_set(1.0, 0.5)
		gui_items['waxicon'].scale_set(0.2, 0.2)
		gui_items['waxicon'].size_hint_align_set(0.5, 0.0)
		ib.pack_end(gui_items['waxicon'])
		gui_items['mainwin'].resize_object_add (ib)
		
		gui_items['waxicon'].show()
		
		gui_items['waxtext'] = elementary.Entry( gui_items['mainwin'] )
		gui_items['waxtext'].size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		gui_items['waxtext'].size_hint_align_set(-1.0, 0.0)
		gui_items['waxtext'].scale_set(1)
		ib.pack_end(gui_items['waxtext'])
		gui_items['waxtext'].show()
		sc.content_set(ib)
		gui_items['waxbox'].pack_end(sc)
		gui_items['mainwin'].resize_object_add (sc)
		ib.show()
		sc.show()
		
		# Create bottom button row (warmer back colder)
		box3 = elementary.Box (gui_items['mainwin'])
		box3.horizontal_set (1)
		box3.homogenous_set (1)
		box3.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		box3.size_hint_align_set (evas.EVAS_HINT_FILL, 1.0)
		gui_items['waxbox'].pack_end (box3)
		box3.show ()
		gui_items['mainwin'].resize_object_add (box3)
		
		# Create the warmer button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Warmer')
		bt._callback_add ('clicked', self.warmerWax)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		box3.pack_end (bt)
		bt.show ()

		# Create the back button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Back')
		bt._callback_add ('clicked', self.closeWax)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		box3.pack_end (bt)
		bt.show ()
		
		# Create the Colder button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Colder')
		bt._callback_add ('clicked', self.colderWax)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		box3.pack_end (bt)
		bt.show ()
		
		gui_items['mainwin'].resize_object_add (gui_items['waxbox'])
		gui_items['waxbox'].hide ()
		
		#####
		# Create about box (vertical by default)
		gui_items['aboutbox'] = elementary.Box (gui_items['mainwin'])
		gui_items['aboutbox'].size_hint_weight_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		gui_items['aboutbox'].size_hint_align_set (-1.0, -1.0)
		al = elementary.Label(gui_items['mainwin'])
		al.size_hint_weight_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		al.size_hint_align_set (0.5, -1.0)
		al.text_set("About waxChooser")
		gui_items['aboutbox'].pack_start(al)
		al.show()
		sc2 = elementary.Scroller(gui_items['mainwin'])
		sc2.bounce_set(0, 0)
		sc2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 1.0)
		sc2.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		gui_items['aboutbox'].pack_end(sc2)
		gui_items['mainwin'].resize_object_add (sc2)
		sc2.show()

		ib =    elementary.Box(gui_items['aboutbox'])
		ic = elementary.Icon(gui_items['aboutbox'])
		ic.size_hint_weight_set(evas.EVAS_HINT_FILL,1.0)
		ic.scale_set(0, 0) 
		ic.size_hint_align_set(0.5, 0.5)
		gui_items['mainwin'].resize_object_add(ic)
		ic.file_set(os.path.join(IMAGE_DIR, "author.png"))
		ib.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		ib.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		ib.pack_end(ic)
		sc2.content_set(ib)

		ic.show()
		gui_items['mainwin'].resize_object_add (ic)
		
		# Create text box with 'about' info
		at = elementary.Entry( gui_items['mainbox'] )
		at.size_hint_weight_set(1.0, 0.0)
		at.size_hint_align_set(evas.EVAS_HINT_FILL, 0.0)
		at.scale_set(1)
		info = self.infoadd("waxChooser " + APP_VERSION)
		info += self.infoadd("Copyright (c) 2011 Benjamin Deering")
		info += self.infoadd("<*****@*****.**>" )
		at.text_set( info )	
		gui_items['aboutbox'].pack_end(at)
		at.show()
		
		# Create bottom button row (back, about)
		box3 = elementary.Box (gui_items['mainwin'])
		box3.horizontal_set (1)
		box3.homogenous_set (1)
		box3.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		box3.size_hint_align_set (-1.0, 0.0)
		gui_items['aboutbox'].pack_end (box3)
		box3.show ()
		# Create the back button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Back')
		bt._callback_add ('clicked', self.hideAbout)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_FILL)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, -1.0)
		box3.pack_end (bt)
		bt.show ()
		
		gui_items['mainwin'].resize_object_add (gui_items['aboutbox'])
		
		#####
		# Create settings box (vertical by default)
		gui_items['settingsbox'] = elementary.Box (gui_items['mainwin'])
		gui_items['settingsbox'].size_hint_weight_set (evas.EVAS_HINT_EXPAND, 1.0)
		gui_items['settingsbox'].size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		settingsLabel = elementary.Label(gui_items['mainwin'])
		settingsLabel.text_set('Settings')
		settingsLabel.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		settingsLabel.size_hint_align_set (0.5, -1.0)
		gui_items['settingsbox'].pack_start( settingsLabel)
		settingsLabel.show()	
		
		# Create scroller to hold settings toggles items
		sc2 = elementary.Scroller(gui_items['mainwin'])
		sc2.bounce_set(0, 0)
		sc2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 1.0)
		sc2.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
		gui_items['settingsbox'].pack_end(sc2)
		gui_items['mainwin'].resize_object_add (sc2)
		sc2.show()
		
		tb = 	elementary.Box(gui_items['settingsbox'])
		
		
		ut = elementary.Check (gui_items['mainwin'])
		ut.text_set('Units')
		ut.style_set("toggle")
		ut.text_part_set( 'off', 'Fahrenheit' )
		ut.text_part_set( 'on', 'Celsius' )
		ut.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		ut.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		tb.pack_end( ut )
		ut.state_set(self.usingCelsius)
		ut._callback_add('changed',self.setUnits)
		ut.show()
		
		for brand in self.brands:
			ut = elementary.Check (gui_items['mainwin'])
			ut.style_set("toggle")
			ut.text_set(brand)
			ut.text_part_set( 'on', 'enabled' )
			ut.text_part_set( 'off', 'disabled' )   
			ut.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
			ut.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
			ut.state_set(eval(self.enabledBrands[brand]))
			tb.pack_end( ut )
			ut._callback_add('changed',self.enableBrands,brand=brand)
			ut.show()

		ut = elementary.Check (gui_items['mainwin'])
		ut.text_set('Use MLX90614')
		ut.style_set("toggle")
		ut.text_part_set( 'on', 'Yes' )
		ut.text_part_set( 'off', 'No' )  
		ut.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		ut.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		tb.pack_end( ut )
		ut.state_set(self.usingSensor)
		ut._callback_add('changed',self.setSensor)
		ut.show()
		tb.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		tb.size_hint_align_set (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)		
		tb.show()	
		#gui_items['settingsbox'].pack_end( tb )	
		sc2.content_set(tb)
		# Create bottom button row (back, about)
		box3 = elementary.Box (gui_items['mainwin'])
		box3.horizontal_set (1)
		box3.homogenous_set (1)
		box3.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		box3.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		gui_items['settingsbox'].pack_end (box3)
		box3.show ()
			
		# Create the back button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('Back')
		bt._callback_add ('clicked', self.closeSettings)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		box3.pack_end (bt)
		bt.show ()
		
		# Create the about button
		bt = elementary.Button (gui_items['mainwin'])
		bt.text_set ('About')
		bt._callback_add ('clicked', self.showAbout)
		bt.size_hint_weight_set (evas.EVAS_HINT_EXPAND, 0.0)
		bt.size_hint_align_set (evas.EVAS_HINT_FILL, 0.0)
		box3.pack_end (bt)
		bt.show ()
		
		
		#self.widgets['settingsbox'].pack_start(settingsTitle)	
		gui_items['mainwin'].resize_object_add (gui_items['settingsbox'])
		gui_items['settingsbox'].hide ()
		
		
		return gui_items
Beispiel #3
0
def label_clicked(obj):
    win = elementary.Window("label", elementary.ELM_WIN_BASIC)
    win.title = "Label test"
    win.autodel = True
    if obj is None:
        win.callback_delete_request_add(lambda o: elementary.exit())

    bg = elementary.Background(win)
    win.resize_object_add(bg)
    bg.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    bg.show()

    vbox = elementary.Box(win)
    vbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    win.resize_object_add(vbox)
    vbox.show()

    lb = elementary.Label(win)
    lb.text = "<b>This is a small label</b>"
    lb.size_hint_align = (0.0, 0.5)
    vbox.pack_end(lb)
    lb.show()

    lb = elementary.Label(win)
    lb.text = "This is a larger label with newlines<br/>" \
              "to make it bigger, bit it won't expand or wrap<br/>" \
              "just be a block of text that can't change its<br/>" \
              "formatting as it's fixed based on text<br/>"
    lb.size_hint_align = (0.0, 0.5)
    vbox.pack_end(lb)
    lb.show()

    lb = elementary.Label(win)
    lb.line_wrap_set(elementary.ELM_WRAP_CHAR)
    lb.text =  "<b>This is more text designed to line-wrap here as " \
               "This object is resized horizontally. As it is " \
               "resized vertically though, nothing should change. " \
               "The amount of space allocated vertically should " \
               "change as horizontal size changes.</b>"
    lb.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    lb.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    vbox.pack_end(lb)
    lb.show()

    lb = elementary.Label(win)
    lb.text = "This small label set to wrap"
    lb.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    lb.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    vbox.pack_end(lb)
    lb.show()

    sp = elementary.Separator(win)
    sp.horizontal = True
    vbox.pack_end(sp)
    sp.show()

    gd = elementary.Grid(win)
    gd.size = (100, 100)
    gd.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    gd.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    vbox.pack_end(gd)
    gd.show()

    lb = elementary.Label(win)
    lb.text = "Test Label Ellipsis:"
    lb.size_hint_align = (0.0, 0.5)
    gd.pack(lb, 5, 5, 90, 15)
    lb.show()

    rect = evas.Rectangle(win.evas)
    rect.color = (255, 125, 125, 255)
    gd.pack(rect, 5, 15, 90, 15)
    rect.show()

    lb = elementary.Label(win)
    lb.text = "This is a label set to ellipsis. " \
              "If set ellipsis to true and the text doesn't fit " \
              "in the label an ellipsis(\"...\") will be shown " \
              "at the end of the widget."
    lb.ellipsis = True
    lb.size_hint_align = (0.0, 0.5)
    gd.pack(lb, 5, 15, 90, 15)
    lb.show()

    lb = elementary.Label(win)
    lb.text = "Test Label Slide:"
    lb.size_hint_align = (0.0, 0.5)
    gd.pack(lb, 5, 40, 90, 15)
    lb.show()

    rect = evas.Rectangle(win.evas)
    rect.color = (255, 125, 125, 255)
    gd.pack(rect, 5, 50, 90, 15)
    rect.show()

    lb = elementary.Label(win)
    lb.text = "This is a label set to slide. " \
              "If set slide to true the text of the label " \
              "will slide/scroll through the length of label." \
              "This only works with the themes \"slide_short\", " \
              "\"slide_long\" and \"slide_bounce\"."
    lb.slide = True
    lb.style = ("slide_short")
    lb.size_hint_align = (0.0, 0.5)
    gd.pack(lb, 5, 50, 90, 15)
    lb.show()

    rd = elementary.Radio(win)
    rd.state_value = 1
    rd.text = "slide_short"
    gd.pack(rd, 5, 65, 30, 15)
    rd.callback_changed_add(cb_slide_radio, lb)
    rd.show()
    rdg = rd

    rd = elementary.Radio(win)
    rd.group_add(rdg)
    rd.state_value = 2
    rd.text = "slide_long"
    gd.pack(rd, 35, 65, 30, 15)
    rd.callback_changed_add(cb_slide_radio, lb)
    rd.show()

    rd = elementary.Radio(win)
    rd.group_add(rdg)
    rd.state_value = 3
    rd.text = "slide_bounce"
    gd.pack(rd, 65, 65, 30, 15)
    rd.callback_changed_add(cb_slide_radio, lb)
    rd.show()

    sl = elementary.Slider(win)
    sl.text = "Slide Duration"
    sl.unit_format = "%1.1f units"
    sl.min_max = (1, 20)
    sl.value = 10
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    sl.callback_changed_add(cb_slider_duration, lb)
    gd.pack(sl, 5, 80, 90, 15)
    sl.show()

    win.resize(280, 400)
    win.show()
Beispiel #4
0
def map_clicked(obj):
    win = elementary.Window("map", elementary.ELM_WIN_BASIC)
    win.title = "Map test"
    win.autodel = True
    if obj is None:
        win.callback_delete_request_add(lambda o: elementary.exit())

    bg = elementary.Background(win)
    win.resize_object_add(bg)
    bg.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    bg.show()

    vbox = elementary.Box(win)
    vbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    win.resize_object_add(vbox)
    vbox.show()

    Map = elementary.Map(win)
    Map.zoom = 2
    Map.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    Map.size_hint_align = (evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
    # Map.callback_clicked_add(cb_map_clicked)
    vbox.pack_end(Map)
    Map.show()

    # view
    hbox = elementary.Box(win)
    hbox.horizontal = True
    hbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    hbox.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
    vbox.pack_end(hbox)
    hbox.show()

    bt = elementary.Button(win)
    bt.text = "Zoom +"
    bt.callback_clicked_add(cb_btn_zoom, Map, 1)
    hbox.pack_end(bt)
    bt.show()

    bt = elementary.Button(win)
    bt.text = "Zoom -"
    bt.callback_clicked_add(cb_btn_zoom, Map, -1)
    hbox.pack_end(bt)
    bt.show()

    sl = elementary.Slider(win)
    sl.text = "Rotation:"
    sl.min_max = (0, 360)
    sl.value = 0
    sl.indicator_format = "%3.0f"
    sl.callback_changed_add(cb_slider_rot, Map)
    hbox.pack_end(sl)
    sl.show()

    ho = elementary.Hoversel(win)
    ho.hover_parent_set(win)
    type = elementary.ELM_MAP_SOURCE_TYPE_TILE
    ho.text_set("Tiles: %s" % (Map.source_get(type)))
    for src in Map.sources_get(type):
        ho.item_add(src)
    ho.callback_selected_add(cb_hovsel_selected, Map, type)
    hbox.pack_end(ho)
    ho.show()

    # show / bring in
    hbox = elementary.Box(win)
    hbox.horizontal = True
    hbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    hbox.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
    vbox.pack_end(hbox)
    hbox.show()

    bt = elementary.Button(win)
    bt.text = "Show Sydney"
    bt.callback_clicked_add(cb_btn_show, Map, 151.175274, -33.859126)
    hbox.pack_end(bt)
    bt.show()

    bt = elementary.Button(win)
    bt.text = "Show Paris"
    bt.callback_clicked_add(cb_btn_show, Map, 2.342913, 48.853701)
    hbox.pack_end(bt)
    bt.show()

    bt = elementary.Button(win)
    bt.text = "BringIn Sydney"
    bt.callback_clicked_add(cb_btn_bringin, Map, 151.175274, -33.859126)
    hbox.pack_end(bt)
    bt.show()

    bt = elementary.Button(win)
    bt.text = "BringIn Paris"
    bt.callback_clicked_add(cb_btn_bringin, Map, 2.342913, 48.853701)
    hbox.pack_end(bt)
    bt.show()

    hbox = elementary.Box(win)
    hbox.horizontal = True
    hbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    hbox.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
    vbox.pack_end(hbox)
    hbox.show()

    # options
    ck = elementary.Check(win)
    ck.text = "wheel_disabled"
    ck.callback_changed_add(lambda bt: Map.wheel_disabled_set(bt.state))
    hbox.pack_end(ck)
    ck.show()

    ck = elementary.Check(win)
    ck.text = "paused"
    ck.callback_changed_add(lambda bt: Map.paused_set(bt.state))
    hbox.pack_end(ck)
    ck.show()

    print_map_info(Map)

    win.resize(600, 600)
    win.show()
Beispiel #5
0
def evas3d_clicked(obj, item=None):
    win = elementary.Window("evas3d", elementary.ELM_WIN_BASIC)
    win.title_set("Evas 3d test")
    win.autodel_set(True)
    if obj is None:
        win.callback_delete_request_add(lambda o: elementary.exit())

    bg = elementary.Background(win)
    win.resize_object_add(bg)
    bg.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    bg.show()

    cube = Cube(win, 240, 240, 240)

    vbox = elementary.Box(win)
    vbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    win.resize_object_add(vbox)
    vbox.show()

    sl = elementary.Slider(win)
    sl.text = "Rot X"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (0, 360)
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_rot_x, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "Rot Y"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (0, 360)
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_rot_y, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "Rot Z"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (0, 360)
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_rot_z, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "CX Off"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (-320, 320)
    sl.value = cube.cxo
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_cx, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "CY Off"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (-320, 320)
    sl.value = cube.cyo
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_cy, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "Foc"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (1, 2000)
    sl.value = cube.focv
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_foc, cube)
    sl.show()

    sl = elementary.Slider(win)
    sl.text = "Z0"
    sl.unit_format = "%1.0f units"
    sl.span_size = 360
    sl.min_max = (-2000, 2000)
    sl.value = cube.z0v
    sl.size_hint_align = (evas.EVAS_HINT_FILL, 0.5)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.callback_changed_add(ch_z0, cube)
    sl.show()

    win.resize(480, 480)
    cube.update()
    win.show()
Beispiel #6
0
def window_states_clicked(obj):
    win = elementary.Window("window-states", elementary.ELM_WIN_BASIC)
    win.title = "Window States test"
    win.autodel = True
    win.callback_moved_add(cb_win_moved)
    if obj is None:
        win.callback_delete_request_add(lambda o: elementary.exit())

    bg = elementary.Background(win)
    win.resize_object_add(bg)
    bg.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    bg.show()

    vbox = elementary.Box(win)
    vbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    win.resize_object_add(vbox)
    vbox.show()

    hbox = elementary.Box(win)
    hbox.horizontal = True
    hbox.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
    hbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    vbox.pack_end(hbox)
    hbox.show()

    for state in [True, False]:
        bt = elementary.Button(win)
        bt.text = "Alpha " + ("On" if state else "Off")
        bt.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
        bt.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
        bt.callback_clicked_add(cb_alpha, win, bg, state)
        hbox.pack_end(bt)
        bt.show()

    sl = elementary.Slider(win)
    sl.text = "Visual test"
    sl.indicator_format = "%3.0f"
    sl.min_max = (50, 150)
    sl.value = 50
    sl.inverted = True
    sl.size_hint_align = (0.5, evas.EVAS_HINT_FILL)
    sl.size_hint_weight = (evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
    vbox.pack_end(sl)
    sl.show()

    ck = elementary.Check(win)
    ck.text = "Resize on rotate"
    ck.size_hint_align = (0.0, 0.0)
    vbox.pack_end(ck)
    ck.show()

    hbox = elementary.Box(win)
    hbox.horizontal = True
    hbox.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
    hbox.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
    vbox.pack_end(hbox)
    hbox.show()

    for rot in [0, 90, 180, 270]:
        bt = elementary.Button(win)
        bt.text = "Rot " + str(rot)
        bt.size_hint_align = (evas.EVAS_HINT_FILL, 0.0)
        bt.size_hint_weight = (evas.EVAS_HINT_EXPAND, 0.0)
        bt.callback_clicked_add(cb_rot, win, ck, rot)
        hbox.pack_end(bt)
        bt.show()

    win.resize(280, 400)
    win.show()