51 lines
1.1 KiB
Python
51 lines
1.1 KiB
Python
#! /usr/bin/python
|
|
|
|
# To change this template, choose Tools | Templates
|
|
# and open the template in the editor.
|
|
|
|
__author__="bjschuma"
|
|
__date__ ="$Mar 21, 2010 12:47:11 PM$"
|
|
|
|
|
|
import gtk
|
|
import guibuilder
|
|
|
|
class Tabs(gtk.Notebook):
|
|
def __init__(self,attrs):
|
|
gtk.Notebook.__init__(self)
|
|
self.tabPos = gtk.POS_TOP
|
|
self.border = True
|
|
|
|
for a in attrs:
|
|
if a == "tabpos":
|
|
if attrs[a] == "left":
|
|
self.tabPos = gtk.POS_LEFT
|
|
elif attrs[a] == "right":
|
|
self.tabPos = gtk.POS_RIGHT
|
|
elif attrs[a] == "bottom":
|
|
self.tabPos = gtk.POS_BOTTOM
|
|
else:
|
|
self.tabPos = gtk.POS_TOP
|
|
elif a == "border":
|
|
if attrs[a] == "False":
|
|
self.border = False
|
|
|
|
self.set_show_border(False)
|
|
self.set_tab_pos(self.tabPos)
|
|
self.show()
|
|
|
|
|
|
def addpage(self,page,label):
|
|
# Only rotate labels
|
|
if( isinstance(label, gtk.Label) ):
|
|
if self.tabPos == gtk.POS_LEFT:
|
|
label.set_angle(90)
|
|
elif self.tabPos == gtk.POS_RIGHT:
|
|
label.set_angle(-90)
|
|
|
|
self.append_page(page, label)
|
|
|
|
|
|
def make_tabs(attrs=None):return Tabs(attrs)
|
|
guibuilder.parts["tabs"] = make_tabs
|