def populate_tweets(self, data): statuses = TwitterStatusReader().read(data) if not statuses: self.msg.Text = 'No tweets found!' return grid = Grid() grid.ShowGridLines = True self.top_panel.Content = grid first_column = ColumnDefinition() first_column.Width = GridLength(115.0) grid.ColumnDefinitions.Add(first_column) grid.ColumnDefinitions.Add(ColumnDefinition()) for i in range(len(statuses)): grid.RowDefinitions.Add(RowDefinition()) def configure_block(block, col, row): block.FontSize = 14 block.Margin = Thickness(5) block.HorizontalAlignment = HorizontalAlignment.Left block.VerticalAlignment = VerticalAlignment.Center grid.SetRow(block, row) grid.SetColumn(block, col) for row, status in enumerate(statuses): name = status['name'] text = status['text'] block1 = HyperlinkButton() block1.Content = name block1.NavigateUri = Uri('http://twitter.com/%s' % name) # this should open the link in a new window # but causes link to not function at all on Safari # It works for IE though #block1.TargetName = '_blank' block1.FontWeight = FontWeights.Bold configure_block(block1, 0, row) block2 = TextBlock() block2.Text = text block2.TextWrapping = TextWrapping.Wrap configure_block(block2, 1, row) grid.Children.Add(block1) grid.Children.Add(block2)
def add_stackpanel(document, items): panel = StackPanel() document.Children.Add(panel) panel.Margin = Thickness(10) for i, item in enumerate(items): item_panel = StackPanel() item_panel.Margin = Thickness(2) item_panel.Orientation = Orientation.Horizontal panel.Children.Add(item_panel) text = _get_text_block(u'\u2022\u00a0') item_panel.Children.Add(text) def goto_page(s, e, page=i + 1): _debug('goto', page) if topComboBoxPart.SelectedIndex == 0: topComboBoxPart.SelectedIndex = page else: topComboBoxPage.SelectedIndex = page button = HyperlinkButton() item_panel.Children.Add(button) button.Content = _get_text_block(item) button.Click += goto_page
def add_stackpanel(document, items): panel = StackPanel() document.Children.Add(panel) panel.Margin = Thickness(10) for i, item in enumerate(items): item_panel = StackPanel() item_panel.Margin = Thickness(2) item_panel.Orientation = Orientation.Horizontal panel.Children.Add(item_panel) text = _get_text_block(u"\u2022\u00a0") item_panel.Children.Add(text) def goto_page(s, e, page=i + 1): _debug("goto", page) if topComboBoxPart.SelectedIndex == 0: topComboBoxPart.SelectedIndex = page else: topComboBoxPage.SelectedIndex = page button = HyperlinkButton() item_panel.Children.Add(button) button.Content = _get_text_block(item) button.Click += goto_page