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 ShowFile dialog
294 class ControlShowFile;
296 template <class GUIview, class GUIbc>
298 public GUI<ControlShowFile, GUIview, OkCancelPolicy, GUIbc> {
301 GUIShowFile(LyXView & lv, Dialogs & d)
302 : GUI<ControlShowFile, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
305 /** Specialization for Spellchecker dialog
307 class ControlSpellchecker;
309 template <class GUIview, class GUIbc>
310 class GUISpellchecker :
311 public GUI<ControlSpellchecker, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
314 GUISpellchecker(LyXView & lv, Dialogs & d)
315 : GUI<ControlSpellchecker, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
318 /** Specialization for Toc dialog
322 template <class GUIview, class GUIbc>
324 public GUI<ControlToc, GUIview, OkCancelPolicy, GUIbc> {
327 GUIToc(LyXView & lv, Dialogs & d)
328 : GUI<ControlToc, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
332 /** Specialization for TabularCreate dialog
334 class ControlTabularCreate;
336 template <class GUIview, class GUIbc>
337 class GUITabularCreate :
338 public GUI<ControlTabularCreate, GUIview,
339 OkApplyCancelReadOnlyPolicy, GUIbc> {
342 GUITabularCreate(LyXView & lv, Dialogs & d)
343 : GUI<ControlTabularCreate, GUIview,
344 OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
348 /** Specialization for Texinfo dialog
350 class ControlTexinfo;
352 template <class GUIview, class GUIbc>
354 public GUI<ControlTexinfo, GUIview, OkCancelPolicy, GUIbc> {
357 GUITexinfo(LyXView & lv, Dialogs & d)
358 : GUI<ControlTexinfo, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}
361 /** Specialization for Thesaurus dialog
363 class ControlThesaurus;
365 template <class GUIview, class GUIbc>
367 public GUI<ControlThesaurus, GUIview,
368 OkApplyCancelReadOnlyPolicy, GUIbc> {
371 GUIThesaurus(LyXView & lv, Dialogs & d)
372 : GUI<ControlThesaurus, GUIview,
373 OkApplyCancelReadOnlyPolicy, GUIbc>(lv, d) {}
377 /** Specialization for Url dialog
381 template <class GUIview, class GUIbc>
383 public GUI<ControlUrl, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc> {
386 GUIUrl(LyXView & lv, Dialogs & d)
387 : GUI<ControlUrl, GUIview, NoRepeatedApplyReadOnlyPolicy, GUIbc>(lv, d) {}
391 /** Specialization for VCLog dialog
395 template <class GUIview, class GUIbc>
397 public GUI<ControlVCLog, GUIview, OkCancelPolicy, GUIbc> {
400 GUIVCLog(LyXView & lv, Dialogs & d)
401 : GUI<ControlVCLog, GUIview, OkCancelPolicy, GUIbc>(lv, d) {}