comparison browser_side/richtext.py @ 364:4cf735b40304

browser_side: hide the syntax label when wysiwyg edtion is active
author souliane <souliane@mailoo.org>
date Wed, 19 Feb 2014 17:52:39 +0100
parents 019e1e706e74
children 97c5a9092bee
comparison
equal deleted inserted replaced
363:187126b63170 364:4cf735b40304
151 self.toolbar = HorizontalPanel() 151 self.toolbar = HorizontalPanel()
152 self.toolbar.syntax = syntax 152 self.toolbar.syntax = syntax
153 self.toolbar.addStyleName(self.style['toolbar']) 153 self.toolbar.addStyleName(self.style['toolbar'])
154 for key in composition.RICH_SYNTAXES[syntax].keys(): 154 for key in composition.RICH_SYNTAXES[syntax].keys():
155 self.addToolbarButton(syntax, key) 155 self.addToolbarButton(syntax, key)
156 label = Label(_("Syntax: %s") % syntax)
157 label.addStyleName("richTextSyntaxLabel")
158 self.toolbar.add(label)
159 self.wysiwyg_button = CheckBox('Wysiwyg edition') 156 self.wysiwyg_button = CheckBox('Wysiwyg edition')
160 wysiywgCb = lambda sender: self.setWysiwyg(sender.getChecked()) 157 wysiywgCb = lambda sender: self.setWysiwyg(sender.getChecked())
161 self.wysiwyg_button.addClickListener(wysiywgCb) 158 self.wysiwyg_button.addClickListener(wysiywgCb)
162 self.toolbar.add(self.wysiwyg_button) 159 self.toolbar.add(self.wysiwyg_button)
160 self.syntax_label = Label(_("Syntax: %s") % syntax)
161 self.syntax_label.addStyleName("richTextSyntaxLabel")
162 self.toolbar.add(self.syntax_label)
163 self.getFlexCellFormatter().setColSpan(self.toolbar_offset + count, 0, 2) 163 self.getFlexCellFormatter().setColSpan(self.toolbar_offset + count, 0, 2)
164 self.setWidget(self.toolbar_offset + count, 0, self.toolbar) 164 self.setWidget(self.toolbar_offset + count, 0, self.toolbar)
165 count += 1 165 count += 1
166 166
167 def setWysiwyg(self, wysiwyg, init=False): 167 def setWysiwyg(self, wysiwyg, init=False):
168 """Toggle the edition mode between rich content syntax and wysiwyg. 168 """Toggle the edition mode between rich content syntax and wysiwyg.
169 @param wysiwyg: boolean value 169 @param wysiwyg: boolean value
170 @param init: set to True to re-init without switching the widgets.""" 170 @param init: set to True to re-init without switching the widgets."""
171 def setWysiwyg(): 171 def setWysiwyg():
172 self.wysiwyg = wysiwyg 172 self.wysiwyg = wysiwyg
173 if hasattr(self, 'wysiwyg_button'): 173 try:
174 self.wysiwyg_button.setChecked(wysiwyg) 174 self.wysiwyg_button.setChecked(wysiwyg)
175 except TypeError:
176 pass
177 try:
178 if wysiwyg:
179 self.syntax_label.addStyleName('transparent')
180 else:
181 self.syntax_label.removeStyleName('transparent')
182 except TypeError:
183 pass
175 if not wysiwyg: 184 if not wysiwyg:
176 self.display.removeStyleName('richTextWysiwyg') 185 self.display.removeStyleName('richTextWysiwyg')
177 186
178 if init: 187 if init:
179 setWysiwyg() 188 setWysiwyg()