| Home | Trees | Indices | Help |
|
|---|
|
|
1 #======================================================================
2 # GNUmed notebook based patient edition plugin
3 # ------------------------------------------------
4 #
5 # this plugin displays a notebook container for patient edition
6 # current pages (0.1): identity, contacts, occupation
7 #
8 # @copyright: author
9 #======================================================================
10 __author__ = "Carlos Moro, Karsten Hilbert"
11 __license__ = 'GPL v2 or later (details at http://www.gnu.org)'
12
13 import logging
14
15
16 if __name__ == '__main__':
17
18 # stdlib
19 import sys
20 sys.path.insert(0, '../../../')
21
22 from Gnumed.pycommon import gmI18N
23 gmI18N.activate_locale()
24 gmI18N.install_domain()
25
26 # GNUmed
27 from Gnumed.wxpython import gmPlugin, gmDemographicsWidgets
28 from Gnumed.wxpython import gmAccessPermissionWidgets
29
30
31 _log = logging.getLogger('gm.ui')
32 #======================================================================
33 -class gmNotebookedPatientEditionPlugin(gmPlugin.cNotebookPlugin):
34 """Plugin to encapsulate notebooked patient edition window."""
35
36 tab_name = _('Demographics')
37 required_minimum_role = 'non-clinical access'
38
39 @gmAccessPermissionWidgets.verify_minimum_required_role (
40 required_minimum_role,
41 activity = _('loading plugin <%s>') % tab_name,
42 return_value_on_failure = False,
43 fail_silently = False
44 )
47 #-------------------------------------------------
50
52 self._widget = gmDemographicsWidgets.cNotebookedPatEditionPanel(parent, -1)
53 return self._widget
54
56 return ('patient', _('&Demographics'))
57
63
64 #======================================================================
65 # main
66 #----------------------------------------------------------------------
67 if __name__ == "__main__":
68
69 # 3rd party
70 import wx
71
72 # GNUmed
73 from Gnumed.business import gmPersonSearch
74
75 _log.info("starting Notebooked patient edition plugin...")
76
77 try:
78 # obtain patient
79 patient = gmPersonSearch.ask_for_patient()
80 if patient is None:
81 print "None patient. Exiting gracefully..."
82 sys.exit(0)
83 gmPatSearchWidgets.set_active_patient(patient=patient)
84
85 # display standalone notebooked patient editor
86 application = wx.PyWidgetTester(size=(800,600))
87 application.SetWidget(gmDemographicsWidgets.cNotebookedPatEditionPanel, -1)
88
89 application.frame.Show(True)
90 application.MainLoop()
91
92 # clean up
93 if patient is not None:
94 try:
95 patient.cleanup()
96 except:
97 print "error cleaning up patient"
98 except StandardError:
99 _log.exception("unhandled exception caught !")
100 # but re-raise them
101 raise
102
103 _log.info("closing Notebooked progress notes input plugin...")
104
105 #======================================================================
106
| Home | Trees | Indices | Help |
|
|---|
| Generated by Epydoc 3.0.1 on Sat Oct 5 03:57:17 2013 | http://epydoc.sourceforge.net |