def addTab(self, *args):
        nargs = len(args)
        if nargs == 1:
            c, = args
            return self.addTab(c, len(self._components))
        elif nargs == 2:
            if isinstance(args[1], basestring):
                c, caption = args
                self.addTab(c, caption, None)
            else:
                c, position = args
                if c is None:
                    return None
                elif c in self._tabs:
                    return self._tabs.get(c)
                else:
                    return self.addTab(c, c.getCaption(), c.getIcon(), position)
        elif nargs == 3:
            c, caption, icon = args
            return self.addTab(c, caption, icon, len(self._components))
        elif nargs == 4:
            c, caption, icon, position = args
            if c is None:
                return None
            elif c in self._tabs:
                tab = self._tabs.get(c)
                tab.setCaption(caption)
                tab.setIcon(icon)
                return tab
            else:
                self._components.insert(position, c)
                tab = TabSheetTabImpl(caption, icon, self)
                self._tabs[c] = tab
                if self._selected is None:
                    self._selected = c
                    self.fireSelectedTabChange()
                super(TabSheet, self).addComponent(c)
                self.requestRepaint()
                return tab
        else:
            raise ValueError, 'invalid number of arguments'
Returns an absolute URL matching given view with its parameters.
dataset/ETHPy150Open rwl/muntjac/muntjac/ui/tab_sheet.py/TabSheet.addTab--crossover with--dataset/ETHPy150Open AppScale/appscale/AppServer/lib/django-1.4/django/templatetags/future.py/url