ocarina/src/extra/oGtk/tabs.py

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