title: Python PyQt4 invalid syntax
body: <p>I have been trying out some pieces of codes from <a href="http://code.google.com/p/kyui/" rel="nofollow">this kyui project</a>. And I have run into this following code for ribbon.</p>
  
  <pre><code>from PyQt4.QtCore import *
  from PyQt4.QtGui import *
  
  class KyRibbonBar(QTabWidget):
      def __init__(self, parent : QWidget = None):
          super().__init__(parent)
          self.setMovable(False)
          self.setDocumentMode(False)
          self.setElideMode(Qt.ElideNone)
          self.setUsesScrollButtons(False)
          self.__menuWidget = None
  
      def menuWidget(self) -&gt; QWidget:
          return self.__menuWidget
  
      def setMenuWidget(self, widget : QWidget = None) -&gt; None:
          self.setCornerWidget(widget, Qt.TopLeftCorner)
  
      def addRibbonTab(self, text : str, icon : QIcon = None) -&gt; QToolBar:
          index = self.addTab(QToolBar(text, self), text)
          if icon:
              assert isinstance(icon, QIcon)
              self.setTabIcon(index, icon)
  
      def setTabText(self, index : int = 0, text : str = None) -&gt; None:
          assert isinstance(text, str)
          super().setTabText(index)
          self.widget(index).setWindowTitle(text)
  </code></pre>
  
  <p>However, when i run the code itself, it actually give me error message saying that "invalid syntax" and highlighting the <code>:</code> in <code>def __init__(self, parent : QWidget = None):</code></p>
  
  <p>what are these <code>:</code> and <code>-&gt;</code> symbols do?</p>