1
2
3
4
5
6 import wx
7 import wx.adv
8
9
10 import gettext
11
12
13
14 from Gnumed.wxpython.gmTextCtrl import cTextCtrl
15
16
17
20
21 kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_DIALOG_STYLE | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX | wx.RESIZE_BORDER
22 wx.Dialog.__init__(self, *args, **kwds)
23 self.SetSize((400, 400))
24 self._TCTRL_title = wx.TextCtrl(self, wx.ID_ANY, _("<hint title>"), style=wx.TE_CENTRE | wx.TE_READONLY)
25 self._TCTRL_hint = wx.TextCtrl(self, wx.ID_ANY, "", style=wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_WORDWRAP)
26 self._TCTRL_source = wx.TextCtrl(self, wx.ID_ANY, _("<hint source>"), style=wx.TE_CENTRE | wx.TE_READONLY)
27 self._URL_info = wx.adv.HyperlinkCtrl(self, wx.ID_ANY, _("Further information"), _("http://www.duckduckgo.com"), style=wx.adv.HL_DEFAULT_STYLE)
28 self._TCTRL_rationale = cTextCtrl(self, wx.ID_ANY, "", style=wx.TE_MULTILINE | wx.TE_WORDWRAP)
29 self._LBL_previous_rationale = wx.StaticText(self, wx.ID_ANY, _("Previous\nrationale"))
30 self._TCTRL_previous_rationale = cTextCtrl(self, wx.ID_ANY, "", style=wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_WORDWRAP)
31 self._BTN_OK = wx.Button(self, wx.ID_OK, "")
32 self._BTN_suppress = wx.Button(self, wx.ID_ANY, _("&Suppress"))
33 self._BTN_manage_hints = wx.Button(self, wx.ID_ANY, _("&Manage"), style=wx.BU_EXACTFIT)
34
35 self.__set_properties()
36 self.__do_layout()
37
38 self.Bind(wx.EVT_BUTTON, self._on_suppress_button_pressed, self._BTN_suppress)
39 self.Bind(wx.EVT_BUTTON, self._on_manage_hints_button_pressed, self._BTN_manage_hints)
40
41
43
44 self.SetTitle(_("Dynamic hint"))
45 self.SetSize((400, 400))
46 self._TCTRL_title.SetBackgroundColour(wx.Colour(255, 0, 0))
47 self._TCTRL_title.SetForegroundColour(wx.Colour(255, 255, 0))
48 self._TCTRL_title.SetFont(wx.Font(10, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, ""))
49 self._TCTRL_hint.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_BACKGROUND))
50 self._TCTRL_source.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_BACKGROUND))
51 self._URL_info.Enable(False)
52 self._TCTRL_rationale.SetToolTip(_("Enter a rationale for suppressing this hint."))
53 self._TCTRL_previous_rationale.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_BACKGROUND))
54 self._BTN_OK.SetToolTip(_("Dismiss this hint for now."))
55 self._BTN_OK.SetFocus()
56 self._BTN_suppress.SetToolTip(_("Suppress this hint in this patient (needs a rationale)."))
57 self._BTN_suppress.Enable(False)
58 self._BTN_manage_hints.SetToolTip(_("Manage dynamic hints."))
59
60
62
63 __szr_main = wx.BoxSizer(wx.VERTICAL)
64 __szr_buttons = wx.BoxSizer(wx.HORIZONTAL)
65 __gszr_rationale = wx.FlexGridSizer(2, 2, 3, 5)
66 __szr_main.Add(self._TCTRL_title, 0, wx.BOTTOM | wx.EXPAND | wx.LEFT | wx.RIGHT, 3)
67 __szr_main.Add(self._TCTRL_hint, 1, wx.ALIGN_CENTER_VERTICAL | wx.BOTTOM | wx.EXPAND | wx.LEFT | wx.RIGHT, 3)
68 __szr_main.Add(self._TCTRL_source, 0, wx.BOTTOM | wx.EXPAND | wx.LEFT | wx.RIGHT, 3)
69 __szr_main.Add(self._URL_info, 0, wx.ALIGN_CENTER | wx.BOTTOM, 5)
70 __lbl_rationale = wx.StaticText(self, wx.ID_ANY, _("Rationale for\nsuppression\nfor this patient"))
71 __gszr_rationale.Add(__lbl_rationale, 0, wx.ALIGN_CENTER_VERTICAL, 3)
72 __gszr_rationale.Add(self._TCTRL_rationale, 1, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
73 __gszr_rationale.Add(self._LBL_previous_rationale, 0, wx.ALIGN_CENTER_VERTICAL, 3)
74 __gszr_rationale.Add(self._TCTRL_previous_rationale, 1, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
75 __gszr_rationale.AddGrowableRow(0)
76 __gszr_rationale.AddGrowableCol(1)
77 __szr_main.Add(__gszr_rationale, 0, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND | wx.LEFT | wx.RIGHT, 3)
78 __szr_buttons.Add((20, 20), 2, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
79 __szr_buttons.Add(self._BTN_OK, 0, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 10)
80 __szr_buttons.Add((20, 20), 1, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
81 __szr_buttons.Add(self._BTN_suppress, 0, wx.ALIGN_CENTER_VERTICAL, 5)
82 __szr_buttons.Add((20, 20), 2, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
83 __szr_buttons.Add(self._BTN_manage_hints, 0, wx.ALIGN_CENTER_VERTICAL, 0)
84 __szr_buttons.Add((20, 20), 1, wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, 0)
85 __szr_main.Add(__szr_buttons, 0, wx.EXPAND | wx.LEFT | wx.RIGHT | wx.TOP, 3)
86 self.SetSizer(__szr_main)
87 self.Layout()
88
89
91 print("Event handler '_on_suppress_button_pressed' not implemented!")
92 event.Skip()
93
95 print("Event handler '_on_manage_hints_button_pressed' not implemented!")
96 event.Skip()
97
98
99