def setup(self): self.SetBackgroundColour("white") self.SetTitle("Beyond Searcher BETA 1") self.SetSize(400, 600) box = wx.BoxSizer(wx.VERTICAL) self.searchbox = wx.TextCtrl(self, style=wx.TE_PROCESS_ENTER, id=1) self.searchbox.WriteText("Enter Search Query") self.Bind(wx.EVT_TEXT_ENTER, self.search, id=1) self.urlbox = rt.RichTextCtrl(self, style=wx.TE_MULTILINE | wx.TE_READONLY) self.urlbox.Bind(wx.EVT_TEXT_URL, self.OnURL) self.resultbox = rt.RichTextCtrl(self) box.Add(self.searchbox, 1, flag=wx.EXPAND | wx.ALL, border=5) box.Add(self.urlbox, 1, flag=wx.EXPAND | wx.ALL, border=5) box.Add(self.resultbox, 7, flag=wx.EXPAND | wx.ALL, border=5) hbox = wx.BoxSizer(wx.HORIZONTAL) self.previousbutton = wx.Button(self, -1, "<<") self.previousbutton.Bind(wx.EVT_BUTTON, self.prev) self.previousbutton.Disable() self.nextbutton = wx.Button(self, -1, ">>") self.nextbutton.Bind(wx.EVT_BUTTON, self.next) self.nextbutton.Disable() hbox.Add(self.previousbutton, 1, flag=wx.EXPAND | wx.ALL) hbox.Add(self.nextbutton, 1, flag=wx.EXPAND | wx.ALL) box.Add(hbox, 1, flag=wx.EXPAND | wx.ALL, border=10) self.SetSizer(box)
def __init__(self,title): wx.Frame.__init__(self,parent=None,id=-1,title=title,pos=wx.DefaultPosition,size=wx.DefaultSize,style = wx.DEFAULT_FRAME_STYLE ) self.SetStatusText("Welcome to the interface Help") self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER); wx.CallAfter(self.rtc.SetFocus)
def _init_rtc(self): #self._pnl_rtc = wx.Panel(self) self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER) #vbox = wx.BoxSizer(wx.VERTICAL) #vbox.Add(self.rtc,1,wx.ALIGN_LEFT|wx.ALL | wx.EXPAND,5) #self._pnl_rtc.SetSizer(vbox) #self._pnl_rtc.SetAutoLayout(True) #self._pnl_rtc.Layout() #self._pnl_rtc.Fit() self.rtc.Freeze() self.rtc.BeginSuppressUndo() self.rtc.BeginParagraphSpacing(0, 20) self.rtc.BeginAlignment(wx.TEXT_ALIGNMENT_CENTRE) # Create and initialize text attributes self.textAttr = rt.RichTextAttr() self.SetFontStyle(fontColor=wx.Colour(0, 0, 0), fontBgColor=wx.Colour(255, 255, 255), fontFace='Times New Roman', fontSize=10, fontBold=False, fontItalic=False, fontUnderline=False) self.rtc.EndSuppressUndo() self.rtc.Thaw()
def __init__(self, *args, **kw): wx.Frame.__init__(self, *args, **kw) self.MakeMenuBar() self.MakeToolBar() self.CreateStatusBar() self.SetStatusText("") self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER) wx.CallAfter(self.rtc.SetFocus) self.rtc.Freeze() self.rtc.BeginSuppressUndo() self.rtc.BeginParagraphSpacing(0, 20) self.rtc.BeginAlignment(rt.TEXT_ALIGNMENT_CENTRE) self.rtc.BeginBold() self.rtc.BeginFontSize(14) self.rtc.WriteText("Findings summary") self.rtc.EndFontSize() self.rtc.EndAlignment() self.rtc.EndBold() self.rtc.Newline() self.rtc.Newline() self.rtc.Newline() self.rtc.EndSuppressUndo() self.rtc.Thaw()
def __init__(self, parent, objet, toolBar=False, size=wx.DefaultSize): wx.Panel.__init__(self, parent, -1, style=wx.BORDER_SUNKEN) self.objet = objet self.sizer = wx.BoxSizer(wx.VERTICAL) if toolBar: self.tbar = self.MakeToolBar() if self.tbar != None: self.sizer.Add(self.tbar, flag=wx.EXPAND) self.rtc = rt.RichTextCtrl(self, size=size, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER | wx.WANTS_CHARS) # self.spell = RTCSpellCheck(self.rtc, language="fr_FR") self.toutVerifier = False self.sizer.Add(self.rtc, 1, flag=wx.EXPAND) self.SetSizer(self.sizer) self.Ouvrir() # self.rtc.Bind(rt.EVT_RICHTEXT_LEFT_CLICK, self.OnModified) # self.rtc.Bind(wx.EVT_IDLE, self.OnIdle) self.rtc.Bind(wx.EVT_KILL_FOCUS, self.Sauver) self.rtc.Bind(wx.EVT_TEXT_URL, self.OnURLClick)
def __init__(self, parent, title, text_data): wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=title, pos=wx.DefaultPosition, size=wx.Size(500, 500), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL) self.SetSizeHints(wx.DefaultSize, wx.DefaultSize) main_layout = wx.BoxSizer(wx.VERTICAL) self.text = rt.RichTextCtrl( self, wx.ID_ANY, text_data, pos=wx.DefaultPosition, size=wx.DefaultSize, style=rt.RE_READONLY, ) main_layout.Add(self.text, 1, wx.ALL | wx.EXPAND, 5) self.SetSizer(main_layout) self.Layout() self.Centre(wx.BOTH)
def _build_gui(self): """Create the necessary wx objects for the functional purposes of this output log panel. :return: None """ # Build the wx control objects. self.SetBackgroundColour(UIStyle.log_background_color) style = wx.TE_MULTILINE | wx.TE_READONLY | wx.HSCROLL | wx.TE_RICH self.save_log_button = Button(self, label="Save Log", size=UIStyle.log_big_button) self.save_log_button.SetBackgroundColour(UIStyle.button_background) self.save_log_button.SetForegroundColour(UIStyle.button_text) # Set the log control output size. self.log_text_ctrl = rt.RichTextCtrl(self, size=UIStyle.log_output_size, style=style) self.log_text_ctrl.SetBackgroundColour( wx.Colour(UIStyle.log_text_background_color)) self.Bind(wx.EVT_BUTTON, self.save_log, self.save_log_button) self._build_layout()
def pageOutput(self): self.logger = rt.RichTextCtrl(self.output, style=wx.TE_MULTILINE|wx.TE_READONLY|wx.TE_DONTWRAP|wx.LC_SORT_ASCENDING) self.logger.SetMargins((10,10)) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.logger, 1, wx.EXPAND, 0) self.output.SetSizer(sizer)
def guide(self): self.g_panel = wx.Panel(self, -1, size=wx.DisplaySize()) self.g_txt = rt.RichTextCtrl(self.g_panel, pos=((self.ww - 790) / 2, 150), size=(790, 330), style=rt.RE_MULTILINE | rt.RE_READONLY) font = wx.Font(18, wx.DEFAULT, wx.NORMAL, wx.NORMAL) self.g_txt.BeginLineSpacing(13) self.g_txt.BeginFont(font) self.cho = self.chocond.GetSelection() if self.cho: self.g_txt.WriteText( u'欢迎参加本实验,实验中你将看到数段文本材料,每个材料中都有一个\n带有灰色背景的词,将鼠标光标移到灰色区域则出现能辅助你理解该文\n本的附加信息,移开鼠标则信息消失。\n1.请在完成一遍阅读之后立即按下键盘上的空格键按钮,你将进入到\n测试页面,超过一定时间则自动跳入测试页面;\n2.作答完成后点击‘确定’按钮你将进入针对材料的评价页面;\n3.评价完毕后将进行数次数学运算,运算结束则进行下一篇材料的阅读。\n4.本实验将对您的阅读速度和答题正确率进行考察。若明白请点击‘实\n验练习’进行练习。' ) else: self.g_txt.WriteText( u'欢迎参加本实验,实验中你将看到数段文本材料,每个材料中都有一个带\n有灰色背景的词,阅读材料下方将呈现该词组的注释以帮你理解阅读。\n1.请在完成一遍阅读之后立即按下键盘上的空格键按钮,你将进入到测试\n页面,超过一定时间则自动跳入测试页面;\n2.作答完成后点击‘确定’按钮你将进入针对材料的评价页面;\n3.评价完毕后将进行数次数学运算,运算结束则进行下一篇材料的阅读;\n4.本实验将对您的阅读速度和答题正确率进行考察。若明白请点击‘实验\n练习’进行练习。' ) self.g_txt.EndLineSpacing() self.g_txt.EndFont() button = wx.Button(self.g_panel, -1, u'实验练习', pos=((self.ww - 150) / 2, 600), size=(150, 50)) button.Bind(wx.EVT_LEFT_DOWN, self.exp_start)
def __init__(self, parent=None, *args, **kw): wx.Panel.__init__(self, parent, id=-1) self.parent = parent # self.MakeMenuBar() self.tbar = self.MakeToolBar() # self.CreateStatusBar() # self.SetStatusText("Welcome to wx.richtext.RichTextCtrl!") self.rtc = rt.RichTextCtrl(self, -1, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER); # handler = rt.RichTextHTMLHandler() wx.CallAfter(self.rtc.SetFocus) # self.rtc.Freeze() # self.rtc.BeginSuppressUndo() # # self.rtc.EndSuppressUndo() # self.rtc.Thaw() sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.tbar, 1, wx.EXPAND | wx.ALL, 1) sizer.Add(self.rtc, 9, wx.EXPAND | wx.ALL, 1) # sizer.Add(save_button, 1, wx.EXPAND | wx.ALL, 1) self.SetSizer(sizer) self.book = args[0] self.loadFile()
def r_condition1(self): #---- start recording from iViewX a = self.l[int(self.i)] print a self.con_time = time.clock() self.c1_panel = wx.Panel(self, -1, size=wx.DisplaySize()) #here to get material Text f0 = open('data\%s_%s_%s.csv' % (self.cho, self.id, self.name), 'a') f0.write('%d,' % self.trialnum) self.trialnum += 1 s = str('%d,' % a) f0.write(s) f0.close() f = open('mate\%d.txt' % a, 'r') self.t = f.read() f.close() #here to get hint Text f2 = open('mate\%d_h.txt' % a, 'r') self.h = f2.read() f2.close() print a #here to get gain the position of keyword self.keyword = self.dic[a] if self.t.find(self.keyword): index = self.t.index(self.keyword) else: index = 0 font = wx.Font(22, wx.DEFAULT, wx.NORMAL, wx.NORMAL) self.hanzikuan = 29 self.hanzigao = 53 self.x = index % 28 * self.hanzikuan #the width of a single Chinese character'''#x coordition in statictext self.y = index / 28 * self.hanzigao #the heigth of a single Chinese character a = len(self.t) b = a / 56 #28 character in a line ,a char equal to 2 unit s = '' for i in range(b + 1): #i ref to lines num s += (self.t[56 * i:56 * (i + 1)] + '\n') s = s[0:len(s) - 1] s = '%s' % s txt = rt.RichTextCtrl(self.c1_panel, pos=((self.ww - 850) / 2, 150), size=(850, 530), style=rt.RE_MULTILINE | rt.RE_READONLY) #wx.TE_WORDWRAP line wrap txt.SetFont(font) txt.SetBackgroundColour('white') txt.BeginLineSpacing(17) txt.BeginFont(font) try: txt.WriteText(s) except UnicodeDecodeError, e: print e
def __init__(self, parent): """ In the 'previous' attribute is stored an ID string used to recover the previous panel from which the process is started. The 'logname' attribute is the name_of_panel.log file in which log messages will be written """ self.parent = parent # main frame self.PARENT_THREAD = None # the instantiated thread self.ABORT = False # if True set to abort current process self.ERROR = False # if True, all the tasks was failed self.previus = None # panel name from which it starts self.logname = None # example: Videomass_VideoConversion.log self.result = None # result of the final process wx.Panel.__init__(self, parent=parent) """ Constructor """ lbl = wx.StaticText(self, label=_("Log viewing console:")) self.OutText = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.TE_MULTILINE | wx.TE_READONLY) self.ckbx_text = wx.CheckBox(self, wx.ID_ANY, (_("Suppress excess " "output"))) self.barProg = wx.Gauge(self, wx.ID_ANY, range=0) self.labPerc = wx.StaticText(self, label="") self.button_stop = wx.Button(self, wx.ID_STOP, _("Abort")) self.button_close = wx.Button(self, wx.ID_CLOSE, "") sizer = wx.BoxSizer(wx.VERTICAL) grid = wx.GridSizer(1, 2, 5, 5) sizer.Add(lbl, 0, wx.ALL, 5) sizer.Add(self.OutText, 1, wx.EXPAND | wx.ALL, 5) sizer.Add(self.ckbx_text, 0, wx.ALL, 5) sizer.Add(self.barProg, 0, wx.EXPAND | wx.ALL, 5) sizer.Add(self.labPerc, 0, wx.ALL, 5) sizer.Add(grid, flag=wx.ALIGN_RIGHT | wx.RIGHT, border=5) grid.Add(self.button_stop, 0, wx.ALL, 5) grid.Add(self.button_close, 1, wx.ALL, 5) # set_properties: self.OutText.SetBackgroundColour(DARK_BROWN) self.ckbx_text.SetToolTip( _('If activated, hides some ' 'output messages.')) self.button_stop.SetToolTip(_("Stops current process")) self.SetSizerAndFit(sizer) # bind self.Bind(wx.EVT_BUTTON, self.on_stop, self.button_stop) self.Bind(wx.EVT_BUTTON, self.on_close, self.button_close) # ------------------------------------------ self.button_stop.Enable(True) self.button_close.Enable(False) pub.subscribe(self.youtubedl_from_import, "UPDATE_YDL_FROM_IMPORT_EVT") pub.subscribe(self.youtubedl_exec, "UPDATE_YDL_EXECUTABLE_EVT") pub.subscribe(self.update_display, "UPDATE_EVT") pub.subscribe(self.update_count, "COUNT_EVT") pub.subscribe(self.end_proc, "END_EVT")
def __init__(self, parent): wx.Panel.__init__(self, parent) box = wx.BoxSizer() self.rt = rt.RichTextCtrl(self, -1, style=wx.VSCROLL | wx.HSCROLL | wx.TE_READONLY) box.Add(self.rt, 1, wx.EXPAND, 0) self.SetSizer(box)
def __init__(self, parent, name): wx.Frame.__init__(self, parent, wx.ID_ANY, "Snapshot of %s" % (name)) self._sizer = wx.BoxSizer(wx.VERTICAL) self._text_ctrl = richtext.RichTextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.TE_READONLY) self._sizer.Add(self._text_ctrl, 1, wx.EXPAND)
def __init__(self, command): self.command = command conf2 = Conf() currentdir = os.path.dirname(os.path.abspath(__file__)) currentLanguage = conf2.get('GENERAL', 'lang') Language(currentdir, 'openplotter-settings', currentLanguage) wx.Frame.__init__(self, None, title=_('Post-installation actions'), size=(700, 350)) self.SetFont( wx.Font(10, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL)) icon = wx.Icon(currentdir + "/data/openplotter-48.png", wx.BITMAP_TYPE_PNG) self.SetIcon(icon) self.CreateStatusBar() font_statusBar = self.GetStatusBar().GetFont() font_statusBar.SetWeight(wx.BOLD) self.GetStatusBar().SetFont(font_statusBar) panel = wx.Panel(self, wx.ID_ANY) self.logger = rt.RichTextCtrl(panel, style=wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_DONTWRAP | wx.LC_SORT_ASCENDING) self.logger.SetMargins((10, 10)) self.okButton = wx.Button(panel, label=_('Start')) self.okButton.Bind(wx.EVT_BUTTON, self.OnOkButton) self.cancelButton = wx.Button(panel, label=_('Cancel')) self.cancelButton.Bind(wx.EVT_BUTTON, self.OnCloseButton) self.closeButton = wx.Button(panel, label=_('Close')) self.closeButton.Bind(wx.EVT_BUTTON, self.OnCloseButton) buttons = wx.BoxSizer(wx.VERTICAL) buttons.Add(self.okButton, 0, wx.ALL | wx.EXPAND, 5) buttons.Add(self.cancelButton, 0, wx.ALL | wx.EXPAND, 5) buttons.Add(self.closeButton, 0, wx.ALL | wx.EXPAND, 5) main = wx.BoxSizer(wx.HORIZONTAL) main.Add(self.logger, 1, wx.ALL | wx.EXPAND, 5) main.Add(buttons, 0, wx.ALL | wx.EXPAND, 5) panel.SetSizer(main) self.Centre() self.closeButton.Disable() self.logger.WriteText( _('This application has been updated recently and it needs to configure your system to work properly. Please be patient, it could take some time.' )) self.logger.Newline() self.logger.Newline() self.logger.WriteText(_('Press Start.'))
def __init__(self, parent): wx.Frame.__init__(self, parent, -1, "MyHexEditor", size=(800, 600)) self.initStatusBar() self.createMenuBar() self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER) wx.CallAfter(self.rtc.SetFocus) self.count = 5 self.dirName = "" self.fileName = ""
def __init__(self, *args, **kw): wx.Frame.__init__(self, *args, **kw) self.MakeMenuBar() self.MakeToolBar() self.CreateStatusBar() self.SetStatusText(u'Editor de documentos Sancabase') self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER); wx.CallAfter(self.rtc.SetFocus) self.rtc.Thaw() self.AddRTCHandlers()
def __init__(self, parent, id, title): wx.Dialog.__init__(self, parent, id, title) self.__sizer = wx.BoxSizer(wx.VERTICAL) self.__bsizer = self.CreateButtonSizer(wx.OK) self.__control = rt.RichTextCtrl(self, wx.ID_ANY, style=wx.TE_READONLY) #self.__control.SetSize((300, 250)) self.__sizer.Add(self.__control, 1, wx.ALIGN_CENTER | wx.EXPAND) self.__sizer.Add(self.__bsizer, 0, wx.ALIGN_CENTER) self.SetSizer(self.__sizer) self.SetSize((350, 300)) #self.__object = None self.__childObject = None self.__mode = "Image" self.Bind(wx.EVT_TEXT_URL, self.__onURL, self.__control)
def __init__(self, *args, **kw): wx.Panel.__init__(self, *args, **kw) sizer = wx.BoxSizer(wx.VERTICAL) self.toolbar = wx.ToolBar(self, -1) self.MakeToolBar() self.titlelabel = wx.StaticText(self, -1, 'The title') self.authorlabel = wx.StaticText(self, -1, 'The Author') self.datelabel = wx.StaticText(self, -1, 'Date') self.tagedit = PieTagWidget(self, -1, mode="lhorizontal") self.tagedit.setTagList(get_all_tags().keys()) self.tagedit.Bind(EVT_PIE_TAG_ADDED, self.OnTagAdded) self.tagedit.Bind(EVT_PIE_TAG_CLICKED, self.OnTagClicked) self.rtc = rt.RichTextCtrl( self, style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER|wx.WANTS_CHARS) rtcfont = wx.Font(12, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL) self.rtc.SetFont(rtcfont) sizer.Add(self.titlelabel, 0, wx.EXPAND|wx.ALL, 5) font = wx.Font(10, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD) self.titlelabel.SetFont(font) sizer.Add(self.authorlabel, 0, wx.EXPAND|wx.LEFT|wx.RIGHT, 5) sizer.Add(self.datelabel, 0, wx.EXPAND|wx.ALL, 5) sizer.Add(self.tagedit) sizer.Add(self.toolbar, 0, wx.EXPAND) sizer.Add(self.rtc, 1, wx.ALL|wx.EXPAND, 0) self.savebt = wx.Button(self, -1, _('Save')) self.donebt = wx.Button(self, -1, _('Save and Close')) lsizer = wx.BoxSizer(wx.HORIZONTAL) lsizer.Add((20,20), 1) lsizer.Add(self.savebt, 0, wx.ALL, 3) lsizer.Add(self.donebt, 0, wx.ALL, 3) sizer.Add(lsizer, 0, wx.EXPAND) self.SetSizer(sizer) self.Layout() self._do_bindings() self.savetimer = PeriodicSaveTimer(self) self.savetimer.Start(PIE_CONFIG.getint('Internal', 'minutes_between_save_notes') * 60 * 1000) wx.CallAfter(self.rtc.SetFocus)
def __init__(self, parent, ID, title): super(MainWindow, self).__init__(parent, ID, title=title, size=(450, 400)) panel = wx.Panel(self) vbox = wx.BoxSizer(wx.VERTICAL) hbox = wx.BoxSizer(wx.HORIZONTAL) font = wx.Font(12, wx.MODERN, wx.ITALIC, wx.BOLD, underline=False, faceName="", encoding=wx.FONTENCODING_DEFAULT) self.usertext = rt.RichTextCtrl(panel, style=wx.TE_MULTILINE | wx.BORDER_SUNKEN | wx.TE_READONLY | wx.TE_RICH2) #self.usertext.SetFont(font) hbox.Add(self.usertext, proportion=1, flag=wx.EXPAND) vbox.Add(hbox, proportion=3, flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5) vbox.Add((-1, 10)) h1box = wx.BoxSizer(wx.HORIZONTAL) m = wx.StaticText(panel, label="Write a \nmessage ... ") h1box.Add(m, flag=wx.EXPAND | wx.CENTER, border=5) self.t = wx.TextCtrl(panel, -1, " ", style=wx.TE_MULTILINE) h1box.Add(self.t, proportion=1, flag=wx.EXPAND) vbox.Add(h1box, proportion=1, flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=10) vbox.Add((-1, 10)) Press = wx.Button(panel, label="Submit") Press.Bind(wx.EVT_BUTTON, self.inserttext) h2box = wx.BoxSizer(wx.HORIZONTAL) h2box.Add(Press, proportion=1) vbox.Add(h2box, proportion=0, flag=wx.ALIGN_CENTER, border=10) vbox.Add((-1, 25)) panel.SetSizer(vbox) self.Centre() self.Show()
def __init__(self, parent, code=None): super(NoteManagerDialog, self).__init__(parent, wx.ID_ANY, u'ค้นหาบันทึกข้อความเพิ่มเติม', size=(700, 500), style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER) self._result = None self._code = code self.Center() self.SetBackgroundColour('white') self._noteTextCtrl = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL) self._noteTextCtrl.SetEditable(False) sizer = wx.BoxSizer(wx.HORIZONTAL) leftSizer = wx.BoxSizer(wx.VERTICAL) self._searchCtrl = wx.SearchCtrl(self, wx.ID_ANY, style=wx.TE_PROCESS_ENTER) if 'wxMac' in wx.PlatformInfo: font = wx.Font(14, wx.DEFAULT, wx.NORMAL, wx.NORMAL) font.SetFaceName('Tahoma') self._searchCtrl.SetFont(font) self._searchCtrl.SetFocus() self._searchCtrl.Bind(wx.EVT_TEXT, self.OnSearchCtrlTextEnter) self._readButton = wx.Button(self, wx.ID_ANY, u'อ่าน') self._readButton.Bind(wx.EVT_UPDATE_UI, self.OnUpdateReadButton) self._readButton.Bind(wx.EVT_BUTTON, self.OnReadButtonClick) with db_session: items = read.model.Model.GetNoteListItems(self._code) self._noteListBox = wx.ListBox(self, wx.ID_ANY, choices=items, style=wx.LB_SINGLE | wx.LB_NEEDED_SB) self._noteListBox.Bind(wx.EVT_LISTBOX, self.OnNoteListBoxSelect) self._noteListBox.Bind(wx.EVT_LISTBOX_DCLICK, self.OnNoteListBoxDoubleClick) leftSizer.Add(self._searchCtrl, 0, wx.EXPAND | wx.ALL, 5) leftSizer.Add(self._noteListBox, 1, wx.EXPAND | wx.ALL, 5) leftSizer.Add(self._readButton, 0, wx.CENTER | wx.BOTTOM, 10) sizer.Add(leftSizer, 1, wx.EXPAND) sizer.Add(self._noteTextCtrl, 1, wx.EXPAND | wx.ALL, 5) self.SetSizer(sizer)
def __init__(self, parent, style): super(create, self).__init__(parent, style) self.rtc = rt.RichTextCtrl(self) self.rtc.SetEditable(False) #make it not editable font = wx.Font(10, wx.MODERN, wx.NORMAL, wx.NORMAL, False, 'Consolas') self.rtc.SetFont(font) # self.rtc.Bind(wx.EVT_KEY_DOWN, self.OnKeyPress) #determing which listening group from which to recieve messages about UI updates # self.listening_group = 'placeholder' # pub.Publisher.subscribe(self.listen_to_updateUI, self.listening_group) sizer = wx.BoxSizer(wx.HORIZONTAL) sizer.Add(item=self.rtc, proportion=-1, flag=wx.EXPAND) self.SetSizer(sizer)
def initUI(self): panel = wx.Panel(self) vbox = wx.BoxSizer(wx.VERTICAL) hbox1 = wx.BoxSizer(wx.HORIZONTAL) hbox1 = wx.BoxSizer(wx.HORIZONTAL) font = wx.Font(22, wx.FONTFAMILY_DEFAULT, wx.NORMAL, wx.BOLD) labelTitle = wx.StaticText(panel, label="YOUR PAYMENT") labelTitle.SetFont(font) hbox1.Add(labelTitle, flag=wx.ALIGN_CENTRE, proportion=1) vbox.Add(hbox1, flag=wx.ALIGN_CENTRE | wx.LEFT | wx.RIGHT | wx.TOP | wx.BOTTOM, border=8) hbox2 = wx.BoxSizer(wx.VERTICAL) fontRichText = wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.NORMAL, wx.NORMAL) rt.RichTextBuffer.AddHandler(rt.RichTextXMLHandler()) # add suppport to read xml for richtext wx.FileSystem.AddHandler(wx.MemoryFSHandler()) # add suppport to read xml for richtext richText = rt.RichTextCtrl(panel, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER); richText.SetFont(fontRichText) path = os.path.abspath(self.instructionFile) richText.LoadFile(path, rt.RICHTEXT_TYPE_XML) richText.SetEditable(False) # richText.SetBackgroundColour(wx.Colour(240, 240, 240)) hbox2.Add(richText, flag=wx.ALIGN_CENTER | wx.EXPAND, proportion=1) vbox.Add(hbox2, flag=wx.EXPAND | wx.LEFT | wx.RIGHT | wx.TOP | wx.BOTTOM, border=10, proportion=1) hbox3 = wx.BoxSizer(wx.HORIZONTAL) boxNext = wx.BoxSizer(wx.VERTICAL) buttonNext = wx.Button(panel, label="GO TO THE EXPERIMENT") buttonNext.SetFont(font) buttonNext.Bind(wx.EVT_BUTTON, self.OnButtonNextClick) boxNext.Add(buttonNext, flag=wx.ALIGN_RIGHT) boxPrev = wx.BoxSizer(wx.VERTICAL) buttonPrev = wx.Button(panel, label="PREV") buttonPrev.SetFont(font) buttonPrev.Bind(wx.EVT_BUTTON, self.OnButtonPrevClick) boxPrev.Add(buttonPrev, flag=wx.ALIGN_LEFT) hbox3.Add(boxPrev, flag=wx.ALIGN_LEFT, proportion=1) hbox3.Add(boxNext, flag=wx.ALIGN_RIGHT, proportion=1) vbox.Add(hbox3, flag=wx.EXPAND | wx.LEFT | wx.RIGHT | wx.TOP | wx.BOTTOM, border=8) panel.SetSizer(vbox)
def add_richtext(parent, id=-1, **kwargs): value = kwargs.pop('value', '') size = kwargs.pop('size', (-1, -1)) readonly = kwargs.pop('readonly', True) style = kwargs.pop('style', wx.TE_MULTILINE) fg = kwargs.pop('fg', None) bg = kwargs.pop('bg', None) font = kwargs.pop('font', None) if readonly: style |= wx.TE_READONLY kw = dict(size=size, name=kwargs.pop('name', 'wxRichText'), style=style) rtc = rt.RichTextCtrl(parent, id, value, **kw) set_font(rtc, font) set_fg(rtc, fg) set_bg(rtc, bg) return rtc
def __init__(self, parent, name, manager, title): wx.Frame.__init__(self, parent, wx.ID_ANY, title) self._sizer = wx.BoxSizer(wx.VERTICAL) self._text_ctrl = richtext.RichTextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, wx.TE_READONLY) self._sizer.Add(self._text_ctrl, 1, wx.EXPAND) bottom_sizer = wx.BoxSizer(wx.HORIZONTAL) self._timeline = MessageTimeline(self, 30, None, None, self._write_status, self._get_color_for_message, None) bottom_sizer.Add(self._timeline, 1, wx.EXPAND | wx.ALL, 5) self._snapshot_button = wx.Button(self, wx.ID_ANY, "Snapshot") self._snapshot_button.Bind(wx.EVT_BUTTON, self._on_snapshot) self._snapshot_button.SetToolTip( wx.ToolTip("Freeze data in new window")) bottom_sizer.Add(self._snapshot_button, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5) self._sizer.Add(bottom_sizer, 0, wx.EXPAND) self.SetSizer(self._sizer) self._text_ctrl.SetFocus() self._manager = manager self._name = name self._default_style = self._text_ctrl.GetDefaultStyle() self._basic_style = self._text_ctrl.GetBasicStyle() self.Bind(wx.EVT_CHAR, self.on_char) self._text_ctrl.Bind(wx.EVT_CHAR, self.on_char) self.Bind(wx.EVT_CLOSE, self._on_close) self._last_values = {} self._last_status = None self._items = []
def __init__(self, parent, title): wx.Frame.__init__(self, parent, title=title, size=(1300, 1000)) # Create a Sizer s1 = wx.BoxSizer(wx.HORIZONTAL) # Add a RichTextCtrl self.txt = richtext.RichTextCtrl(self, -1) # Put the RichTextCtrl on the Sizer s1.Add(self.txt, 1, wx.EXPAND) # Set the main sizer self.SetSizer(s1) # Lay out the window self.Layout() self.SetAutoLayout(True) self.txt.AppendText('Now comes the fun part.\n\n') # Prepare some fake data for a demonstration graph title = 'Keyword Frequency' data = [50, 45, 25, 22, 20, 18, 15, 12, 11, 8, 7, 6, 4, 2, 1, 1] dataLabels = [ 'Long Label 1', 'Long Label 2', 'Really, really long label 3', 'Long Label 4', 'Long Label 5', 'Long Label 6', 'Long Label 7', 'Long Label 8', 'Long Label 9', 'Long Label 10', 'Long Label 11', 'Long Label 12', 'Long Label 13', 'Long Label 14', 'Long Label 15', '16' ] # Draw the BarChart. This places the graphic in the Report. bc1 = BarChartGraphic(title, data, dataLabels) bitmap1 = bc1.GetBitmap() self.txt.WriteImage(bitmap1.ConvertToImage()) # Draw a second BarChart # Prepare some fake data for a demonstration graph title = '' data = [25, 22, 20, 18, 15] dataLabels = [ 'Long Label 4', 'Long Label 5', 'Long Label 6', 'Long Label 7', 'Long Label 8' ] bc1 = BarChartGraphic(title, data, dataLabels) bitmap1 = bc1.GetBitmap() self.txt.WriteImage(bitmap1.ConvertToImage())
def Wins(self): self.win = text.RichTextCtrl(self, style = wx.DEFAULT_FRAME_STYLE) self.col_back() self.win.SetMinSize( (self.dis[0] - 400, self.dis[3]) ) self.win.Bind(wx.EVT_TEXT_URL, self.OnURL) font2 = wx.Font(conf_db.Dobd_class('fontrazviz').baz_vst(), wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, False, conf_db.Dobd_class('fontviz').baz_vst()) self.win.SetFont(font2) self.AddRTCHandlers() # цвет текста взависимости от темы if conf_db.Dobd_class('colorviz').baz_vst() == '#FFFFFF': self.win.BeginTextColour((0, 0, 0)) else: self.win.BeginTextColour((255, 255, 255)) # заголовок в зависимости от локали if sys_inf.Loc() == 'ru_RU': h = time.strftime('%H:%M мин. %d %h %G года\n') + int(conf_db.Dobd_class('ul').baz_vst())*'-' + '\n' else: h = time.strftime('%H:%M min %d %h %G year\n') + int(conf_db.Dobd_class('ul').baz_vst())*'-' + '\n' #поздравление с праздником и иконка files = sys_inf.CONF_PATH + 'prz.ini' for i in open(files, 'rb').readlines(): if time.strftime('%d') + ':' + time.strftime('%h') == i.split(';')[0]: d = i.split(';')[1] + 5*'\t' try: if i.split(';')[2]: im = wx.Image(i.split(';')[2].strip(), wx.BITMAP_TYPE_ANY) if im.GetWidth() < 128: if im.GetHeight() < 128: self.win.WriteImage(im) except IndexError: pass break else: d = '' if conf_db.Dobd_class('posfile').baz_vst() != 'Not':# последний файл self.win.LoadFile(conf_db.Dobd_class('posfile').baz_vst()) else: self.win.WriteText(d + h) return self.win
def resize_log_ctrl_height(self, height): """Resize the log panel text control to a new height value. This will clear the context of the current control and remove any previous log messages. :param height: The new height to set. :return: """ # Set the log control output size. if height < 0: height = 0 style = wx.TE_MULTILINE | wx.TE_READONLY | wx.HSCROLL | wx.TE_RICH size = (self.log_text_ctrl.Size[0], height) self.log_text_ctrl.Destroy( ) # Destroy current text control before creating new self.log_text_ctrl = rt.RichTextCtrl(self, size=size, style=style) self.log_text_ctrl.SetBackgroundColour( wx.Colour(UIStyle.log_text_background_color)) self._build_layout()
def _do_layout(self): #sizers self.sizer0 = wx.BoxSizer(wx.VERTICAL) self.sizer1 = wx.BoxSizer(wx.HORIZONTAL) #widgets self.ListDisplay = GBListCtrl(self) # google books listctrl will do self.RichText = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER | wx.TE_READONLY) self.RevertButton = wx.Button(self, -1, label=_('Review Sources')) self.SelAllButton = wx.Button(self, -1, label=_('Select All')) self.DoReportButton = wx.Button(self, -1, label=_('Make Report')) self.OrderChoice = wx.Choice(self, -1, choices=ORDERS.keys()) self.OrderChoice.SetSelection(2) rtcfont = wx.Font(12, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL) self.RichText.SetFont(rtcfont) #tooltips tt1 = wx.ToolTip(_('Make a report with the selected contents')) self.DoReportButton.SetToolTip(tt1) #add to sizers self.sizer1.Add(self.SelAllButton, 0, wx.ALL, 5) self.sizer1.Add((20, 20), 1) self.sizer1.Add(self.RevertButton, 0, wx.ALL, 5) self.sizer1.Add(self.OrderChoice, 0, wx.ALL | wx.EXPAND, 5) self.sizer1.Add(self.DoReportButton, 0, wx.ALL, 5) self.sizer0.Add(self.ListDisplay, 1, wx.ALL | wx.EXPAND, 5) self.sizer0.Add(self.RichText, 1, wx.ALL | wx.EXPAND, 5) self.sizer0.Add(self.sizer1, 0, wx.EXPAND) #layout self.RevertButton.Hide() self.RichText.Hide() self.SetSizer(self.sizer0) self.Layout()
def __init__(self, parent, style, log): wx.Panel.__init__(self, parent, -1, style=style) self.log = log self.rtc = rt.RichTextCtrl(self, style=wx.VSCROLL | wx.HSCROLL | wx.NO_BORDER | rt.RE_READONLY) # wx.CallAfter( self.rtc.SetFocus ) self.rtc.Freeze() self.rtc.BeginSuppressUndo() self.rtc.Newline() self.rtc.BeginTextColour((255, 0, 0)) self.rtc.WriteText("Colour, like this red bit.") self.rtc.EndTextColour() self.rtc.EndSuppressUndo() self.rtc.Thaw() sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.rtc, 1, wx.EXPAND) self.SetSizer(sizer)