1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import wx
20
21 from timelinelib.wxgui.utils import BORDER
22 from timelinelib.plugin.pluginbase import PluginBase
23 from timelinelib.plugin.factory import EXPORTER
24 from timelinelib.wxgui.components.dialogbuttonssizers.dialogbuttonsclosesizer import DialogButtonsCloseSizer
25 import wx.lib.mixins.listctrl as listmix
26
27
29
32
34 return _("Export to Listbox...")
35
36 - def run(self, main_frame):
42
57
64
65
67
68 - def __init__(self, title, parent=None, events=None):
73
76
82
87
89 if wx.TheClipboard.Open():
90 self._copy_text_to_clipboard()
91 else:
92 self.view.DisplayErrorMessage(_("Unable to copy to clipboard."))
93
95 obj = wx.TextDataObject(self.GetText())
96 wx.TheClipboard.SetData(obj)
97 wx.TheClipboard.Close()
98
100 return self.list.GetText()
101
103 hbox = wx.BoxSizer(wx.HORIZONTAL)
104 hbox.Add(btn_copy, 0, flag=wx.ALL | wx.EXPAND, border=BORDER)
105 hbox.Add(btn_box, 1, flag=wx.ALL, border=BORDER)
106
107 vbox = wx.BoxSizer(wx.VERTICAL)
108 vbox.Add(ctrl, 1, flag=wx.ALL | wx.EXPAND, border=BORDER)
109 vbox.Add(hbox, 0, flag=wx.ALL | wx.EXPAND, border=BORDER)
110 return vbox
111
112
113 -class TestListCtrl(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin):
114
115 - def __init__(self, parent, pos=wx.DefaultPosition, size=(400, 400), style=wx.LC_REPORT):
118
120 import sys
121 self.InsertColumn(0, _("Time period"))
122 self.InsertColumn(1, _("Event"))
123 for period, event in items:
124 index = self.InsertStringItem(sys.maxint, period, 0)
125 self.SetStringItem(index, 1, event)
126 self.SetColumnWidth(0, wx.LIST_AUTOSIZE)
127 self.SetColumnWidth(1, wx.LIST_AUTOSIZE)
128
130 collector = []
131 for i in range(self.GetItemCount()):
132 item = self.GetItem(i, 0)
133 collector.append(item.GetText())
134 collector.append("\t")
135 item = self.GetItem(i, 1)
136 collector.append(item.GetText())
137 collector.append("\n")
138 return "".join(collector)
139