def init(self):
     mainWindow = Window('Refresher')
     self.setMainWindow(mainWindow)
     panel = Panel('Refresher example')
     layout = HorizontalLayout()
     refresher = Refresher()
     label = Label('0')
     thread = CounterThread(label)
     thread.start()
     label.setData(0)
     panel.addComponent(refresher)
     panel.addComponent(Label("<div style='margin-bottom:10px'>"
             + "The Refresher allows you to affect the UI "
             + "from external threads without "
             + "<a href='http://vaadin.com/forum/-/message_boards/message/69792' target='_blank'>"
             + "the ProgressIndicator hack</a>.</div>", Label.CONTENT_XHTML))
     panel.addComponent(layout)
     layout.setSpacing(True)
     layout.addComponent(Button('Start Counting',
                 StartClickListener(refresher, thread)))
     layout.addComponent(Button('Stop Counting',
                 StopClickListener(refresher, thread)))
     layout.addComponent(label)
     mainWindow.setContent(panel)