def list3_clicked(obj, item=None): win = StandardWindow("list-3", "List 3", autodel=True, size=(320, 300)) li = List(win, size_hint_weight=EXPAND_BOTH, mode=ELM_LIST_COMPRESS) win.resize_object_add(li) ic = Icon(win, file=os.path.join(img_path, "logo_small.png")) li.item_append("Hello", ic) ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False)) li.item_append("world", ic) ic = Icon(win, standard="edit", resizable=(False, False)) li.item_append(".", ic) ic = Icon(win, standard="delete", resizable=(False, False)) ic2 = Icon(win, standard="clock", resizable=(False, False)) it2 = li.item_append("How", ic, ic2) bx = Box(win, horizontal=True) bx.horizontal_set(True) ic = Icon(win, standard="delete", resizable=(False, False), size_hint_align=ALIGN_CENTER) bx.pack_end(ic) ic.show() ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False), size_hint_align=(0.5, 0.0)) bx.pack_end(ic) ic.show() ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False), size_hint_align=(0.0, EVAS_HINT_FILL)) bx.pack_end(ic) ic.show() li.item_append("are", bx) li.item_append("you") li.item_append("doing") li.item_append("out") li.item_append("there") li.item_append("today") li.item_append("?") li.item_append("Here") li.item_append("are") li.item_append("some") li.item_append("more") li.item_append("items") li.item_append("Is this label long enough?") it5 = li.item_append("Maybe this one is even longer so we can test long long items.") li.go() li.show() win.show()
def __init__(self): StandardWindow.__init__(self, "ex7", "Naviframe", size=(300, 200)) self.callback_delete_request_add(lambda o: elm.exit()) staticImage = staticImage = Image(self) staticImage.size_hint_weight = EXPAND_BOTH staticImage.file_set("images/logo.png") staticImage.tooltip_text_set("A picture!") staticImage.show() ourLabel = ourLabel = Label(self) ourLabel.size_hint_weight = EXPAND_BOTH ourLabel.text = "Hey look some text!" ourLabel.show() self.nf = Naviframe(self) self.nf.size_hint_weight = EXPAND_BOTH self.nf.size_hint_align = FILL_BOTH self.nf.show() buttonOne = Button(self) buttonOne.size_hint_weight = EXPAND_BOTH buttonOne.text = "Show image" buttonOne.callback_clicked_add(self.buttonPressed, staticImage) buttonOne.show() buttonTwo = Button(self) buttonTwo.size_hint_weight = EXPAND_BOTH buttonTwo.text = "Show label" buttonTwo.callback_clicked_add(self.buttonPressed, ourLabel) buttonTwo.show() buttonBox = Box(self) buttonBox.size_hint_weight = EXPAND_HORIZ buttonBox.horizontal_set(True) buttonBox.pack_end(buttonOne) buttonBox.pack_end(buttonTwo) buttonBox.show() mainBox = Box(self) mainBox.size_hint_weight = EXPAND_BOTH mainBox.pack_end(self.nf) mainBox.pack_end(buttonBox) mainBox.show() self.nf.item_simple_push(staticImage) self.resize_object_add(mainBox)
def __init__(self, rent): Box.__init__(self, rent) self.parent = rent self.name = "Theme Selector" self.section = "Appearance" self.searchData = [ "theme", "gtk", "elementary", "elm", "gnome", "appearance", "look" ] self.launchArg = "--theme" self.button = None self.icon = Icon(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.icon.standard_set('preferences-desktop-theme') self.icon.show() self.foundThemes = [] self.currentPreview = None self.selectedTheme = None self.previewBox = previewBox = Scroller(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) previewBox.show() self.themeList = List(self, size_hint_weight=(0.35, 1.0), size_hint_align=FILL_BOTH, mode=ELM_LIST_COMPRESS) #Adds themes in the ThemePaths to the list for selection self.populateThemes() self.themeList.go() self.themeList.show() themeBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) themeBox.horizontal_set(True) themeBox.pack_end(self.themeList) themeBox.pack_end(self.previewBox) themeBox.show() self.fs = fs = FileSelector(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fs.setMode("Open") fs.show() #need to do this to shutdown threading for the file selector self.parent.callback_delete_request_add(self.shutDownFS) fs.callback_activated_add(self.fileSelected) # Flip object has the file selector on one side # and the GUI on the other self.flip = Flip(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.flip.part_content_set("front", themeBox) self.flip.part_content_set("back", self.fs) self.flip.show() fs.callback_cancel_add( lambda o: self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS)) #self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS) self.mainBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.mainBox.pack_end(self.flip) self.mainBox.show() buttonBox = Box(self, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_BOTH) buttonBox.horizontal = True buttonApply = StandardButton(self, "Apply Selected", "ok", self.applyPressed) buttonApply.show() buttonWeb = StandardButton(self, "Get Themes", "applications-internet", self.webPressed) buttonWeb.show() #buttonGTK = StandardButton(self, "GTK Theme", "preferences-desktop-gnome", self.gtkPressed) #buttonGTK.show() #buttonElm = StandardButton(self, "Elementary Theme", "", self.elmPressed) #buttonElm.show() buttonImport = StandardButton(self, "Import Theme", "preferences-desktop-theme", self.importPressed) buttonImport.show() buttonReturn = StandardButton(self, "Back", "go-previous", self.returnPressed) buttonReturn.show() buttonBox.pack_end(buttonApply) buttonBox.pack_end(buttonWeb) #buttonBox.pack_end(buttonGTK) #buttonBox.pack_end(buttonElm) buttonBox.pack_end(buttonImport) buttonBox.pack_end(buttonReturn) buttonBox.show() self.pack_end(self.mainBox) self.pack_end(buttonBox)
def __init__(self, rent): Box.__init__(self, rent) self.parent = rent self.name = "Wallpaper" self.section = "Appearance" self.searchData = ["wallpaper", "appearance", "look"] self.launchArg = "--wallpaper" self.button = None self.icon = Icon(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) #Use FDO icons -> http://standards.freedesktop.org/icon-naming-spec/latest/ar01s04.html self.icon.standard_set('wallpaper') self.icon.show() self.foundWalls = [] self.currentPreview = None self.selectedWall = None self.flip = Flip(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) wallBox = Box(self.flip, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) wallBox.horizontal_set(True) self.previewBox = previewBox = Scroller(wallBox, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) previewBox.show() self.wallList = List(self, size_hint_weight=(0.35, 1.0), size_hint_align=FILL_BOTH, mode=ELM_LIST_COMPRESS) #Adds walls in the WallPaths to the list for selection self.populateWalls() self.wallList.go() self.wallList.show() wallBox.pack_end(self.wallList) wallBox.pack_end(self.previewBox) wallBox.show() self.fs = fs = FileSelector(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fs.setMode("Open") fs.show() #need to do this to shutdown threading for the file selector self.parent.callback_delete_request_add(self.shutDownFS) fs.callback_activated_add(self.fileSelected) # Flip object has the file selector on one side # and the GUI on the other self.flip.part_content_set("front", wallBox) self.flip.part_content_set("back", self.fs) self.flip.show() fs.callback_cancel_add( lambda o: self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS)) #self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS) self.mainBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.mainBox.pack_end(self.flip) self.mainBox.show() buttonBox = Box(self, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_BOTH) buttonBox.horizontal = True buttonApply = StandardButton(self, "Apply Selected", "ok", self.applyPressed) buttonApply.show() buttonImport = StandardButton(self, "Import Wallpaper", "wallpaper", self.importPressed) buttonImport.show() buttonReturn = StandardButton(self, "Back", "go-previous", self.returnPressed) buttonReturn.show() buttonBox.pack_end(buttonApply) #buttonBox.pack_end(buttonWeb) buttonBox.pack_end(buttonImport) buttonBox.pack_end(buttonReturn) buttonBox.show() self.pack_end(self.mainBox) self.pack_end(buttonBox)
def __init__(self, rent): Box.__init__(self, rent) self.parent = rent self.name = "Theme Selector" self.section = "Appearance" self.searchData = ["theme", "gtk", "elementary", "elm", "gnome", "appearance", "look"] self.launchArg = "--theme" self.button = None self.icon = Icon(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.icon.standard_set('preferences-desktop-theme') self.icon.show() self.foundThemes = [] self.currentPreview = None self.selectedTheme = None self.previewBox = previewBox = Scroller(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) previewBox.show() self.themeList = List(self, size_hint_weight=(0.35, 1.0), size_hint_align=FILL_BOTH, mode=ELM_LIST_COMPRESS) #Adds themes in the ThemePaths to the list for selection self.populateThemes() self.themeList.go() self.themeList.show() themeBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) themeBox.horizontal_set(True) themeBox.pack_end(self.themeList) themeBox.pack_end(self.previewBox) themeBox.show() self.fs = fs = FileSelector(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fs.setMode("Open") fs.show() #need to do this to shutdown threading for the file selector self.parent.callback_delete_request_add(self.shutDownFS) fs.callback_activated_add(self.fileSelected) # Flip object has the file selector on one side # and the GUI on the other self.flip = Flip(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.flip.part_content_set("front", themeBox) self.flip.part_content_set("back", self.fs) self.flip.show() fs.callback_cancel_add(lambda o: self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS)) #self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS) self.mainBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.mainBox.pack_end(self.flip) self.mainBox.show() buttonBox = Box(self, size_hint_weight = EXPAND_HORIZ, size_hint_align = FILL_BOTH) buttonBox.horizontal = True buttonApply = StandardButton(self, "Apply Selected", "ok", self.applyPressed) buttonApply.show() buttonWeb = StandardButton(self, "Get Themes", "applications-internet", self.webPressed) buttonWeb.show() #buttonGTK = StandardButton(self, "GTK Theme", "preferences-desktop-gnome", self.gtkPressed) #buttonGTK.show() #buttonElm = StandardButton(self, "Elementary Theme", "", self.elmPressed) #buttonElm.show() buttonImport = StandardButton(self, "Import Theme", "preferences-desktop-theme", self.importPressed) buttonImport.show() buttonReturn = StandardButton(self, "Back", "go-previous", self.returnPressed) buttonReturn.show() buttonBox.pack_end(buttonApply) buttonBox.pack_end(buttonWeb) #buttonBox.pack_end(buttonGTK) #buttonBox.pack_end(buttonElm) buttonBox.pack_end(buttonImport) buttonBox.pack_end(buttonReturn) buttonBox.show() self.pack_end(self.mainBox) self.pack_end(buttonBox)
def __init__(self, parent_widget, *args, **kwargs): Box.__init__(self, parent_widget, *args, **kwargs) self.cancelCallback = None self.actionCallback = None self.__first_run = True self.use_theme = False self.override_theme_font_size = True self.override_font_size = 14 self.theme_data = None self.default_font = 'Sans' self.default_font_style = 'Regular' self.default_font_size = 14 self.selected_font = self.default_font self.selected_font_style = self.default_font_style self.selected_font_size = self.default_font_size self.font_style_str = self.get_text_style(self.selected_font, self.selected_font_style, self.selected_font_size) self.preview_text = 'abcdefghijk ABCDEFGHIJK' # Font size min and max self.fs_min = 8 self.fs_max = 72 lb = Label(self, text="<br><hilight><i>Select Font</i></hilight>", size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_BOTH) lb.show() self.pack_end(lb) sp = Separator(self, horizontal=True, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_HORIZ) sp.show() self.pack_end(sp) # A horizontal box to hold our font list and font styles fontBox = Box(self, horizontal=True, homogeneous=True, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fontBox.show() self.pack_end(fontBox) # A vertical box to hold label and list of font families vBoxFL = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) vBoxFL.show() fontBox.pack_end(vBoxFL) # A vertical box to hold label and list of font styles vBoxFS = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) vBoxFS.show() fontBox.pack_end(vBoxFS) # Generate our needed font data #now =time.time() fonts = [] fonts_raw = self.evas.font_available_list() # populate with default font families # see elm_font_available_hash_add Function in EFL f_families = ['Sans', 'Serif', 'Monospace'] f_styles = ['Regular', 'Italic', 'Bold', 'Bold Italic'] fonts_raw += [i + ':style=' + s for i in f_families for s in f_styles] self.fonts_hash = {} for font in fonts_raw: a = font_properties_get(font) # if font name contains a '-' a.name will replace with '\\-' # This needs removed to properly display the name fn = a.name.replace('\\', '') fonts.append(fn) if fn in self.fonts_hash: self.fonts_hash.setdefault(fn, []).append(a.styles[0]) else: self.fonts_hash[fn] = [a.styles[0]] # Deal with some problematic special cases for a, s in self.fonts_hash.items(): #print(a,s) if s: if len(s) == 1: s[0] = s[0].rstrip() if s[0] == u'regular': s[0] = u'Regular' if s[0] == u'Medium Italic': self.fonts_hash.setdefault(a, []).append(u'Bold Italic') elif s[0] == u'Italic': if a != u'Romande ADF Script Std': self.fonts_hash.setdefault(a, []).append(u'Regular') self.fonts_hash.setdefault(a, []).append(u'Bold') self.fonts_hash.setdefault(a, []).append(u'Bold Italic') else: self.fonts_hash.setdefault(a, []).append(u'Italic') self.fonts_hash.setdefault(a, []).append(u'Bold') self.fonts_hash.setdefault(a, []).append(u'Bold Italic') elif len(s) == 2: if any(u'Oblique' in w for w in s): if a not in { u'Baskervald ADF Std Heavy', u'Latin Modern Roman Demi' }: self.fonts_hash.setdefault(a, []).append(u'Bold') self.fonts_hash.setdefault( a, []).append(u'Bold Oblique') elif any(u'Italic' in w for w in s): self.fonts_hash.setdefault(a, []).append(u'Bold') self.fonts_hash.setdefault(a, []).append(u'Bold Italic') else: self.fonts_hash.setdefault(a, []).append(u'Italic') self.fonts_hash.setdefault(a, []).append(u'Bold Italic') elif len(s) == 3 and set(s) == { u'Bold', u'Oblique', u'Medium' }: # case GWMonospace self.fonts_hash.setdefault(a, []).append(u'Bold Oblique') elif len(s) == 3 and set(s) == { u'Italic', u'Regular', u'Bold' }: # Case Eden Mills self.fonts_hash.setdefault(a, []).append(u'Bold Italic') elif len(s) < 4: print("may need fixed Font style for %s: %s" % (a, s)) #print(self.fonts_hash) # for some strange reason many fonts are displayed multiple times. The following lines remove # all duplicates and then sort them alphabetically. # FIXME: Is this still true fonts = list(set(fonts)) fonts.sort(cmp=locale.strcoll) # Elm List for holding font options self.font_list = List(self, size_hint_align=FILL_BOTH, size_hint_weight=EXPAND_BOTH, mode=ELM_LIST_LIMIT) #self.font_list.callback_selected_add(self.__font_demo_name_set) for font in fonts: self.font_list.item_append(font.replace('\\', '')) if font == self.selected_font: font_it = self.font_list.last_item_get() #print (time.time()- now) self.font_list.go() self.font_list.show() font_family_label = Label(self) font_family_label.text = "<br><b>Font:</b>" font_family_label.show() vBoxFL.pack_end(font_family_label) vBoxFL.pack_end(self.font_list) # Elm List for hold font styles self.font_style = List(self, size_hint_align=FILL_BOTH, size_hint_weight=EXPAND_BOTH, mode=ELM_LIST_LIMIT) #self.font_style.callback_selected_add(self.__font_demo_style_set) self.__reset_font_style_list(font_it.text_get()) self.font_style.go() self.font_style.show() font_style_label = Label(self) font_style_label.text = "<br><b>Style:</b>" font_style_label.show() vBoxFS.pack_end(font_style_label) vBoxFS.pack_end(self.font_style) # A table to hold font size Spinner and set theme default Check tb = Table(self, homogeneous=True, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_HORIZ) self.pack_end(tb) tb.show() # spinner to choose the font size self.font_sizer = Spinner(self) self.font_sizer.min_max_set(self.fs_min, self.fs_max) self.font_sizer.value_set(self.selected_font_size) #self.font_sizer.callback_changed_add(self.__font_demo_size_set) self.font_sizer.show() # Label for Spinner font_sizer_label = Label(self) font_sizer_label.text = "Font Size: " font_sizer_label.show() size_box = Box(self, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_HORIZ) size_box.horizontal_set(True) size_box.pack_end(font_sizer_label) size_box.pack_end(self.font_sizer) size_box.show() tb.pack(size_box, 33, 0, 34, 34) self.use_theme_ck = Check(self, text="Theme Default ", size_hint_weight=EXPAND_HORIZ, size_hint_align=(1, 0.5)) self.use_theme_ck.callback_changed_add(self.__use_theme_checked) self.use_theme_ck.show() tb.pack(self.use_theme_ck, 67, 0, 33, 34) # Entry to hold sample text self.font_demo = Entry(self, single_line=True, editable=False, context_menu_disabled=True, text=self.preview_text, scrollable=True, size_hint_weight=EXPAND_HORIZ, size_hint_align=FILL_HORIZ) self.font_demo.show() demo_box = Frame(self, size_hint_align=FILL_BOTH, text="Preview:", content=self.font_demo) demo_box.show() # Fixme: move this shit font_it.selected_set(True) font_it.show() # Ensure focus is on Font List self.font_list.focus_set(True) self.pack_end(demo_box) # cancel and OK buttons ok_button = Button(self) ok_button.text = "OK" ok_button.callback_pressed_add(self.__ok_button_pressed) ok_button.show() cancel_button = Button(self) cancel_button.text = "Cancel" cancel_button.callback_pressed_add(self.__cancel_button_pressed) cancel_button.show() # box for buttons button_box = Box(self) button_box.horizontal_set(True) button_box.show() button_box.pack_end(cancel_button) button_box.pack_end(ok_button) self.pack_end(button_box)
def __init__(self, rent): Box.__init__(self, rent) self.parent = rent self.name = "Wallpaper" self.section = "Appearance" self.searchData = ["wallpaper", "appearance", "look"] self.launchArg = "--wallpaper" self.button = None self.icon = Icon(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) #Use FDO icons -> http://standards.freedesktop.org/icon-naming-spec/latest/ar01s04.html self.icon.standard_set('wallpaper') self.icon.show() self.foundWalls = [] self.currentPreview = None self.selectedWall = None self.flip = Flip(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) wallBox = Box(self.flip, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) wallBox.horizontal_set(True) self.previewBox = previewBox = Scroller(wallBox, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) previewBox.show() self.wallList = List(self, size_hint_weight=(0.35, 1.0), size_hint_align=FILL_BOTH, mode=ELM_LIST_COMPRESS) #Adds walls in the WallPaths to the list for selection self.populateWalls() self.wallList.go() self.wallList.show() wallBox.pack_end(self.wallList) wallBox.pack_end(self.previewBox) wallBox.show() self.fs = fs = FileSelector(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fs.setMode("Open") fs.show() #need to do this to shutdown threading for the file selector self.parent.callback_delete_request_add(self.shutDownFS) fs.callback_activated_add(self.fileSelected) # Flip object has the file selector on one side # and the GUI on the other self.flip.part_content_set("front", wallBox) self.flip.part_content_set("back", self.fs) self.flip.show() fs.callback_cancel_add(lambda o: self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS)) #self.flip.go(ELM_FLIP_ROTATE_YZ_CENTER_AXIS) self.mainBox = Box(self, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) self.mainBox.pack_end(self.flip) self.mainBox.show() buttonBox = Box(self, size_hint_weight = EXPAND_HORIZ, size_hint_align = FILL_BOTH) buttonBox.horizontal = True buttonApply = StandardButton(self, "Apply Selected", "ok", self.applyPressed) buttonApply.show() buttonImport = StandardButton(self, "Import Wallpaper", "wallpaper", self.importPressed) buttonImport.show() buttonReturn = StandardButton(self, "Back", "go-previous", self.returnPressed) buttonReturn.show() buttonBox.pack_end(buttonApply) #buttonBox.pack_end(buttonWeb) buttonBox.pack_end(buttonImport) buttonBox.pack_end(buttonReturn) buttonBox.show() self.pack_end(self.mainBox) self.pack_end(buttonBox)
def list3_clicked(obj, item=None): win = StandardWindow("list-3", "List 3", autodel=True, size=(320, 300)) li = List(win, size_hint_weight=EXPAND_BOTH, mode=ELM_LIST_COMPRESS) win.resize_object_add(li) ic = Icon(win, file=os.path.join(img_path, "logo_small.png")) li.item_append("Hello", ic) ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False)) li.item_append("world", ic) ic = Icon(win, standard="edit", resizable=(False, False)) li.item_append(".", ic) ic = Icon(win, standard="delete", resizable=(False, False)) ic2 = Icon(win, standard="clock", resizable=(False, False)) it2 = li.item_append("How", ic, ic2) bx = Box(win, horizontal=True) bx.horizontal_set(True) ic = Icon(win, standard="delete", resizable=(False, False), size_hint_align=ALIGN_CENTER) bx.pack_end(ic) ic.show() ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False), size_hint_align=(0.5, 0.0)) bx.pack_end(ic) ic.show() ic = Icon(win, file=os.path.join(img_path, "logo_small.png"), resizable=(False, False), size_hint_align=(0.0, EVAS_HINT_FILL)) bx.pack_end(ic) ic.show() li.item_append("are", bx) li.item_append("you") li.item_append("doing") li.item_append("out") li.item_append("there") li.item_append("today") li.item_append("?") li.item_append("Here") li.item_append("are") li.item_append("some") li.item_append("more") li.item_append("items") li.item_append("Is this label long enough?") it5 = li.item_append( "Maybe this one is even longer so we can test long long items.") li.go() li.show() win.show()