4 * Copyright 2001 The LyX Team.
5 * See the file COPYING.
7 * \author Angus Leeming <a.leeming@ic.ac.uk>
13 /** This class instantiates and makes available the GUI-specific
14 ButtonController and View.
16 template <class Controller, class GUIview, class Policy, class GUIbc>
17 class GUI : public Controller {
20 GUI(LyXView & lv, Dialogs & d) : Controller(lv, d), view_(*this) {}
22 virtual ButtonControllerBase & bc() { return bc_; }
24 virtual ViewBase & view() { return view_; }
28 ButtonController<Policy, GUIbc> bc_;
33 /// Forward declaration of ButtonPolicies
35 class OkCancelReadOnlyPolicy;
36 class NoRepeatedApplyReadOnlyPolicy;
38 /** Specialization for About LyX dialog
40 class ControlAboutlyx;
42 template <class GUIview, class GUIbc>
44 public GUI<ControlAboutlyx, GUIview, OkCancelPolicy, GUIbc> {
47 GUIAboutlyx(LyXView & lv, Dialogs & d)
48 : GUI<ControlAboutlyx, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
51 /** Specialization for Bibitem dialog
55 template <class GUIview, class GUIbc>
57 public GUI<ControlBibitem, GUIview, OkCancelReadOnlyPolicy, GUIbc> {
60 GUIBibitem(LyXView & lv, Dialogs & d)
61 : GUI<ControlBibitem, GUIview, OkCancelReadOnlyPolicy, GUIbc>(lv, d) {}
65 /** Specialization for Bibtex dialog
69 template <class GUIview, class GUIbc>
71 public GUI<ControlBibtex, GUIview, OkCancelReadOnlyPolicy, GUIbc> {
74 GUIBibtex(LyXView & lv, Dialogs & d)
75 : GUI<ControlBibtex, GUIview, OkCancelReadOnlyPolicy, GUIbc>(lv, d) {}
79 /** Specialization for Character dialog
81 class ControlCharacter;
83 template <class GUIview, class GUIbc>
84 class GUICharacter : public GUI<ControlCharacter, GUIview,
85 OkApplyCancelReadOnlyPolicy, GUIbc>
89 GUICharacter(LyXView & lv, Dialogs & d)
90 : GUI<ControlCharacter, GUIview,
91 OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
95 /** Specialization for Citation dialog
97 class ControlCitation;
99 template <class GUIview, class GUIbc>
100 class GUICitation : public GUI<ControlCitation, GUIview,
101 NoRepeatedApplyReadOnlyPolicy, GUIbc>
105 GUICitation(LyXView & lv, Dialogs & d)
106 : GUI<ControlCitation, GUIview,
107 NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
111 /** Specialization for Error dialog
115 template <class GUIview, class GUIbc>
117 public GUI<ControlError, GUIview, OkCancelPolicy, GUIbc> {
120 GUIError(LyXView & lv, Dialogs & d)
121 : GUI<ControlError, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
125 /** Specialization for ERT dialog
129 template <class GUIview, class GUIbc>
131 public GUI<ControlERT, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
134 GUIERT(LyXView & lv, Dialogs & d)
135 : GUI<ControlERT, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
139 /** Specialization for External dialog
141 class ControlExternal;
143 template <class GUIview, class GUIbc>
145 public GUI<ControlExternal, GUIview, OkApplyCancelReadOnlyPolicy, GUIbc> {
148 GUIExternal(LyXView & lv, Dialogs & d)
149 : GUI<ControlExternal, GUIview, OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
153 /** Specialization for Graphics dialog
155 class ControlGraphics;
157 template <class GUIview, class GUIbc>
159 public GUI<ControlGraphics, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
162 GUIGraphics(LyXView & lv, Dialogs & d)
163 : GUI<ControlGraphics, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
167 /** Specialization for Include dialog
169 class ControlInclude;
171 template <class GUIview, class GUIbc>
173 public GUI<ControlInclude, GUIview, OkCancelReadOnlyPolicy, GUIbc> {
176 GUIInclude(LyXView & lv, Dialogs & d)
177 : GUI<ControlInclude, GUIview, OkCancelReadOnlyPolicy, GUIbc>(lv, d) {}
181 /** Specialization for Index dialog
185 template <class GUIview, class GUIbc>
187 public GUI<ControlIndex, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
190 GUIIndex(LyXView & lv, Dialogs & d)
191 : GUI<ControlIndex, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
195 /** Specialization for Log dialog
199 template <class GUIview, class GUIbc>
201 public GUI<ControlLog, GUIview, OkCancelPolicy, GUIbc> {
204 GUILog(LyXView & lv, Dialogs & d)
205 : GUI<ControlLog, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
209 /** Specialization for Minipage dialog
211 class ControlMinipage;
213 template <class GUIview, class GUIbc>
215 public GUI<ControlMinipage, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
218 GUIMinipage(LyXView & lv, Dialogs & d)
219 : GUI<ControlMinipage, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
223 /** Specialization for Float dialog
227 template <class GUIview, class GUIbc>
229 public GUI<ControlFloat, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
232 GUIFloat(LyXView & lv, Dialogs & d)
233 : GUI<ControlFloat, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
237 /** Specialization for Preamble dialog
239 class ControlPreamble;
241 template <class GUIview, class GUIbc>
243 public GUI<ControlPreamble, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
246 GUIPreamble(LyXView & lv, Dialogs & d)
247 : GUI<ControlPreamble, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
251 /** Specialization for Print dialog
255 template <class GUIview, class GUIbc>
257 public GUI<ControlPrint, GUIview, OkApplyCancelPolicy, GUIbc> {
260 GUIPrint(LyXView & lv, Dialogs & d)
261 : GUI<ControlPrint, GUIview, OkApplyCancelPolicy, GUIbc>(lv, d) {}
265 /** Specialization for Ref dialog
269 template <class GUIview, class GUIbc>
271 public GUI<ControlRef, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
274 GUIRef(LyXView & lv, Dialogs & d)
275 : GUI<ControlRef, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
279 /** Specialization for Search dialog
283 template <class GUIview, class GUIbc>
285 public GUI<ControlSearch, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
288 GUISearch(LyXView & lv, Dialogs & d)
289 : GUI<ControlSearch, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
292 /** Specialization for Spellchecker dialog
294 class ControlSpellchecker;
296 template <class GUIview, class GUIbc>
297 class GUISpellchecker :
298 public GUI<ControlSpellchecker, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
301 GUISpellchecker(LyXView & lv, Dialogs & d)
302 : GUI<ControlSpellchecker, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
305 /** Specialization for Toc dialog
309 template <class GUIview, class GUIbc>
311 public GUI<ControlToc, GUIview, OkCancelPolicy, GUIbc> {
314 GUIToc(LyXView & lv, Dialogs & d)
315 : GUI<ControlToc, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
319 /** Specialization for TabularCreate dialog
321 class ControlTabularCreate;
323 template <class GUIview, class GUIbc>
324 class GUITabularCreate :
325 public GUI<ControlTabularCreate, GUIview,
326 OkApplyCancelReadOnlyPolicy, GUIbc> {
329 GUITabularCreate(LyXView & lv, Dialogs & d)
330 : GUI<ControlTabularCreate, GUIview,
331 OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
335 /** Specialization for Thesaurus dialog
337 class ControlThesaurus;
339 template <class GUIview, class GUIbc>
341 public GUI<ControlThesaurus, GUIview,
342 OkApplyCancelReadOnlyPolicy, GUIbc> {
345 GUIThesaurus(LyXView & lv, Dialogs & d)
346 : GUI<ControlThesaurus, GUIview,
347 OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
351 /** Specialization for Url dialog
355 template <class GUIview, class GUIbc>
357 public GUI<ControlUrl, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
360 GUIUrl(LyXView & lv, Dialogs & d)
361 : GUI<ControlUrl, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
365 /** Specialization for VCLog dialog
369 template <class GUIview, class GUIbc>
371 public GUI<ControlVCLog, GUIview, OkCancelPolicy, GUIbc> {
374 GUIVCLog(LyXView & lv, Dialogs & d)
375 : GUI<ControlVCLog, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}