1 """GNUmed coding related widgets."""
2
3 __version__ = '$Revision: 1.4 $'
4 __author__ = 'karsten.hilbert@gmx.net'
5 __license__ = 'GPL (details at http://www.gnu.org)'
6
7
8 import logging, sys
9
10
11
12 import wx
13
14
15
16 if __name__ == '__main__':
17 sys.path.insert(0, '../../')
18
19 from Gnumed.business import gmCoding
20 from Gnumed.pycommon import gmTools
21 from Gnumed.wxpython import gmListWidgets
22
23
24 _log = logging.getLogger('gm.ui')
25 _log.info(__version__)
26
27
29
30 if parent is None:
31 parent = wx.GetApp().GetTopWindow()
32
33 def refresh(lctrl):
34 coded_terms = gmCoding.get_coded_terms (
35 coding_systems = coding_systems,
36 languages = languages,
37 order_by = u'term, coding_system, code'
38 )
39 items = [ [
40 ct['term'],
41 ct['code'],
42 ct['coding_system'],
43 gmTools.coalesce(ct['lang'], u''),
44 ct['version'],
45 ct['coding_system_long']
46 ] for ct in coded_terms ]
47 lctrl.set_string_items(items)
48 lctrl.set_data(coded_terms)
49
50 gmListWidgets.get_choices_from_list (
51 parent = parent,
52 msg = _('Coded terms known to GNUmed.'),
53 caption = _('Showing coded terms.'),
54 columns = [ _('Term'), _('Code'), _('System'), _('Language'), _('Version'), _(u'Coding system details') ],
55 single_selection = True,
56 can_return_empty = True,
57 ignore_OK_button = True,
58 refresh_callback = refresh
59
60
61
62
63
64
65 )
66
67
68
69 if __name__ == '__main__':
70
71 if len(sys.argv) < 2:
72 sys.exit()
73
74 if sys.argv[1] != 'test':
75 sys.exit()
76
77
78
79
80
81
82