def create_style_table(self):
     main_table = gtk.Table(5, 2)
     main_table.set_row_spacings(10)
     style_title_label = Label(_("Lyrics style"))
     # font_name
     font_families = get_font_families()
     font_name = config.get("scroll_lyrics", "font_name")
     try:
         font_item_index = font_families.index(font_name)
     except:    
         font_item_index = 0
         
     font_name_hbox, self.font_name_combo_box = self.create_combo_widget(_("Font:"),
                                                                         [(font_name, None) for font_name in font_families],
                                                                         font_item_index)
     font_type_hbox = self.create_font_type_box()
     
     font_size = int(config.get("scroll_lyrics", "font_size", 10))
     font_size_hbox, self.font_size_spin = self.create_combo_spin(_("Size:"), font_size, 5, 30, 1)
     
     # alignment.
     line_align_index = int(config.get("scroll_lyrics", "line_align", 1))
     line_align_hbox, self.line_align_combo_box = self.create_combo_widget(_("Alignment:"), 
                                             [(value, index) for index, value in enumerate([_("Left-aligned"), _("Centered"), _("Right-aligned")])],
                                                                            line_align_index)
     
     # scroll mode.
     scroll_mode_index = int(config.get("scroll_lyrics", "scroll_mode", 0))
     scroll_mode_hbox, self.scroll_mode_combo_box = self.create_combo_widget(_("Rolling:"),
                                              [(value, index) for index, value in enumerate([_("Always"), _("By line")])],
                                                                             scroll_mode_index) 
     
     
     inactive_color_label = Label(_("Coming:"))
     active_color_label = Label(_("Played:"))
     self.inactive_color_button = ColorButton(config.get("scroll_lyrics", "inactive_color"))
     self.active_color_button = ColorButton(config.get("scroll_lyrics", "active_color"))
     
     inactive_color_hbox = gtk.HBox(spacing=5)
     inactive_color_hbox.pack_start(inactive_color_label, False, False)
     inactive_color_hbox.pack_start(self.inactive_color_button, False, False)
     
     active_color_hbox = gtk.HBox(spacing=5)
     active_color_hbox.pack_start(active_color_label, False, False)
     active_color_hbox.pack_start(self.active_color_button, False, False)
     
     main_table.attach(style_title_label, 0, 2, 0, 1, yoptions=gtk.FILL, xpadding=8)
     main_table.attach(create_separator_box(), 0, 2, 1, 2, yoptions=gtk.FILL)
     main_table.attach(font_name_hbox, 0, 2, 2, 3, xpadding=20, xoptions=gtk.FILL)
     main_table.attach(font_type_hbox, 0, 1, 3, 4, xpadding=20)
     main_table.attach(font_size_hbox, 1, 2, 3, 4)
     main_table.attach(line_align_hbox, 0, 1, 4, 5, xpadding=20)
     main_table.attach(scroll_mode_hbox, 1, 2, 4, 5)
     main_table.attach(inactive_color_hbox, 0, 1, 5, 6, xpadding=20)
     main_table.attach(active_color_hbox, 1, 2, 5, 6)
     return main_table
 def create_style_table(self):
     main_table = gtk.Table(12, 2)
     main_table.set_row_spacings(CONTENT_ROW_SPACING)
     self.create_single_line_box()
     self.create_double_line_box()
     style_title_label = Label(_("Lyrics style"))
     
     # font_name
     font_families = get_font_families()
     font_name = config.get("lyrics", "font_name")
     try:
         font_item_index = font_families.index(font_name)
     except:    
         font_item_index = 0
         
     font_name_hbox, self.font_name_combo_box = self.create_combo_widget(_("Font"),
                                                                         [(font_name, None) for font_name in font_families],
                                                                         font_item_index)
     font_type_hbox = self.create_font_type_box()
     font_size = int(config.get("lyrics", "font_size", 30))
     font_size_hbox, self.font_size_spin = self.create_combo_spin(_("Size"), font_size, 16, 70, 1)
     
     line_number = config.getint("lyrics", "line_count")
     line_number_hbox, self.line_number_combo_box = self.create_combo_widget(_("Lines"),
                                                 [(_("Single"), 1), (_("Double"), 2)], select_index=line_number - 1)
     
     self.line_align_hbox = gtk.HBox()
     line_align_label = Label("%s:" % _("Alignment"))
     
     if line_number == 2:
         self.line_align_hbox.add(self.double_align_combo_box)
     else:    
         self.line_align_hbox.add(self.single_align_combo_box)
         
     part_align_hbox = set_widget_resize(line_align_label, self.line_align_hbox)
     
     outline_hbox, self.outline_spin = self.create_combo_spin(_("Outline"), 
                                                              int(config.get("lyrics", "outline_width", "3")), 0, 8, 1)
     
     # blur_color_button.
     blur_color_label = Label("%s:" % _("Stroke"))
     self.blur_color_button = ColorButton(config.get("lyrics", "blur_color", "#000000"))
     blur_color_hbox = set_widget_resize(blur_color_label, self.blur_color_button)
     
     predefine_color_hbox = self.create_predefine_box()
     inactive_color_label = Label("%s:" % _("Unplayed"))
     self.inactive_upper_color_button = ColorButton(config.get("lyrics", "inactive_color_upper"))
     self.inactive_middle_color_button = ColorButton(config.get("lyrics", "inactive_color_middle"))
     self.inactive_bottom_color_button = ColorButton(config.get("lyrics", "inactive_color_bottom"))
     
     inactive_color_subbox = gtk.HBox(spacing=10)
     inactive_color_subbox.pack_start(self.inactive_upper_color_button, False, False)
     inactive_color_subbox.pack_start(self.inactive_middle_color_button, False, False)
     inactive_color_subbox.pack_start(self.inactive_bottom_color_button, False, False)
     inactive_color_box = set_widget_resize(inactive_color_label, inactive_color_subbox, sizes2=(160, 22))
     
     active_color_label = Label("%s:" % _("Played"))
     self.active_upper_color_button = ColorButton(config.get("lyrics", "active_color_upper"))
     self.active_middle_color_button = ColorButton(config.get("lyrics", "active_color_middle"))
     self.active_bottom_color_button = ColorButton(config.get("lyrics", "active_color_bottom"))
     
     active_color_subbox = gtk.HBox(spacing=10)
     active_color_subbox.pack_start(self.active_upper_color_button, False, False)
     active_color_subbox.pack_start(self.active_middle_color_button, False, False)
     active_color_subbox.pack_start(self.active_bottom_color_button, False, False)
     active_color_box = set_widget_resize(active_color_label, active_color_subbox, sizes2=(160, 22))
     
     main_table.attach(style_title_label, 0, 2, 0, 1, yoptions=gtk.FILL, xpadding=8)
     main_table.attach(create_separator_box(), 0, 2, 1, 2, yoptions=gtk.FILL)
     main_table.attach(font_name_hbox, 0, 2, 2, 3)
     main_table.attach(font_type_hbox, 0, 2, 3, 4)
     main_table.attach(font_size_hbox, 0, 2, 4, 5)
     main_table.attach(line_number_hbox, 0, 2, 5, 6)
     main_table.attach(part_align_hbox, 0, 2, 6, 7)
     main_table.attach(outline_hbox, 0, 2, 7, 8)
     main_table.attach(blur_color_hbox, 0, 2, 8, 9)
     main_table.attach(predefine_color_hbox, 0, 2, 9, 10)
     main_table.attach(inactive_color_box, 0, 2, 10, 11)
     main_table.attach(active_color_box, 0, 2, 11, 12)
     return main_table
 def create_style_table(self):
     main_table = gtk.Table(9, 2)
     main_table.set_row_spacings(10)
     self.create_single_line_box()
     self.create_double_line_box()
     style_title_label = Label(_("Lyrics style"))
     
     # font_name
     font_families = get_font_families()
     font_name = config.get("lyrics", "font_name")
     try:
         font_item_index = font_families.index(font_name)
     except:    
         font_item_index = 0
         
     font_name_hbox, self.font_name_combo_box = self.create_combo_widget(_("Font:"),
                                                                         [(font_name, None) for font_name in font_families],
                                                                         font_item_index)
     font_type_hbox = self.create_font_type_box()
     font_size = int(config.get("lyrics", "font_size", 30))
     font_size_hbox, self.font_size_spin = self.create_combo_spin(_("Size:"), font_size, 16, 70, 1)
     
     line_number = config.getint("lyrics", "line_count")
     line_number_hbox, self.line_number_combo_box = self.create_combo_widget(_("Lines:"),
                                                 [(name, index + 1) for index, name in enumerate([_("Single"), _("Double")])],
                                                                             line_number - 1)
     
     self.line_align_hbox = gtk.HBox()
     part_align_hbox = gtk.HBox(spacing=5) 
     line_align_label = Label(_("Alignment:"))
     
     if line_number == 2:
         self.line_align_hbox.add(self.double_align_combo_box)
     else:    
         self.line_align_hbox.add(self.single_align_combo_box)
         
     part_align_hbox.pack_start(line_align_label, False, False)    
     part_align_hbox.pack_start(self.line_align_hbox, False, False)    
     
     outline_hbox, self.outline_spin = self.create_combo_spin(_("Outline:"), 
                                                              int(config.get("lyrics", "outline_width", "3")), 0, 8, 1)
     
     # blur_color_button.
     blur_color_hbox = gtk.HBox(spacing=5)
     blur_color_label = Label(_("Stroke:"))
     self.blur_color_button = ColorButton(config.get("lyrics", "blur_color", "#000000"))
     blur_color_hbox.pack_start(blur_color_label, False, False)
     blur_color_hbox.pack_start(self.blur_color_button, False, False)
     
     predefine_color_hbox = self.create_predefine_box()
     inactive_color_box = gtk.HBox(spacing=10)
     inactive_color_label = Label(_("Coming:"))
     self.inactive_upper_color_button = ColorButton(config.get("lyrics", "inactive_color_upper"))
     self.inactive_middle_color_button = ColorButton(config.get("lyrics", "inactive_color_middle"))
     self.inactive_bottom_color_button = ColorButton(config.get("lyrics", "inactive_color_bottom"))
     inactive_color_box.pack_start(inactive_color_label, False, False)
     inactive_color_box.pack_start(self.inactive_upper_color_button, False, False)
     inactive_color_box.pack_start(self.inactive_middle_color_button, False, False)
     inactive_color_box.pack_start(self.inactive_bottom_color_button, False, False)
     
     active_color_box = gtk.HBox(spacing=10)
     active_color_label = Label(_("Played:"))
     self.active_upper_color_button = ColorButton(config.get("lyrics", "active_color_upper"))
     self.active_middle_color_button = ColorButton(config.get("lyrics", "active_color_middle"))
     self.active_bottom_color_button = ColorButton(config.get("lyrics", "active_color_bottom"))
     active_color_box.pack_start(active_color_label, False, False)
     active_color_box.pack_start(self.active_upper_color_button, False, False)
     active_color_box.pack_start(self.active_middle_color_button, False, False)
     active_color_box.pack_start(self.active_bottom_color_button, False, False)
     
     main_table.attach(style_title_label, 0, 2, 0, 1, yoptions=gtk.FILL, xpadding=8)
     main_table.attach(create_separator_box(), 0, 2, 1, 2, yoptions=gtk.FILL)
     main_table.attach(font_name_hbox, 0, 2, 2, 3, xpadding=20, xoptions=gtk.FILL)
     main_table.attach(font_type_hbox, 0, 1, 3, 4, xpadding=20)
     main_table.attach(font_size_hbox, 1, 2, 3, 4)
     main_table.attach(line_number_hbox, 0, 1, 4, 5, xpadding=20)
     main_table.attach(part_align_hbox, 1, 2, 4, 5)
     main_table.attach(outline_hbox, 0, 1, 5, 6, xpadding=20)
     main_table.attach(blur_color_hbox, 1, 2, 5, 6)
     main_table.attach(predefine_color_hbox, 0, 2, 6, 7, xpadding=20, xoptions=gtk.FILL)
     main_table.attach(inactive_color_box, 0, 2, 7, 8, xpadding=35, xoptions=gtk.FILL)
     main_table.attach(active_color_box, 0, 2, 8, 9, xpadding=35, xoptions=gtk.FILL)
     return main_table