]> git.lyx.org Git - lyx.git/blob - src/frontends/Dialogs.h
I forgot to remove DialogBAse.h from Makefile.am when I nuked it yesterday.
[lyx.git] / src / frontends / Dialogs.h
1 // -*- C++ -*-
2 /**
3  * \file Dialogs.h
4  * Copyright 1995-2002 The LyX Team.
5  * See the file COPYING.
6  * \author Allan Rae, rae@lyx.org
7  */
8
9 #ifndef DIALOGS_H
10 #define DIALOGS_H
11
12 #ifdef __GNUG__
13 #pragma interface
14 #endif
15
16 #include "LString.h"
17
18 #include <boost/utility.hpp>
19 #include <boost/shared_ptr.hpp>
20 #include <boost/signals/signal0.hpp>
21 #include <boost/signals/signal1.hpp>
22
23 // Maybe this should be a UIFunc modelled on LyXFunc
24 class LyXView;
25
26 class InsetBibKey;
27 class InsetBibtex;
28 class InsetCommand;
29 class InsetError;
30 class InsetERT;
31 class InsetExternal;
32 class InsetFloat;
33 class InsetGraphics;
34 class InsetInclude;
35 class InsetInfo;
36 class InsetMinipage;
37 class Paragraph;
38 class InsetTabular;
39
40 /** Container of all dialogs and signals a LyXView needs or uses to access them
41     The list of dialog signals isn't comprehensive but should be a good guide
42     for any future additions.  Remember don't go overboard -- think minimal.
43  */
44 class Dialogs : boost::noncopyable
45 {
46 public:
47         ///
48         typedef boost::shared_ptr<boost::noncopyable> db_ptr;
49         ///
50         Dialogs(LyXView *);
51
52         /** Redraw all visible dialogs because, for example, the GUI colours
53             have been re-mapped. */
54         boost::signal0<void> redrawGUI;
55
56         /// Toggle tooltips on/off in all dialogs.
57         boost::signal0<void> toggleTooltips;
58
59         /// Are the tooltips on or off?
60         static bool tooltipsEnabled();
61
62         /**@name Global Hide and Update Signals */
63         //@{
64         /// Hide all visible dialogs
65         boost::signal0<void> hideAll;
66
67         /// Hide any dialogs that require a buffer for them to operate
68         boost::signal0<void> hideBufferDependent;
69
70         /** Update visible, buffer-dependent dialogs
71             If the bool is true then a buffer change has occurred
72             else its still the same buffer.
73          */
74         boost::signal1<void, bool> updateBufferDependent;
75         //@}
76
77         /**@name Dialog Access Signals.
78            Put into some sort of alphabetical order */
79         //@{
80         ///
81         void showAboutlyx();
82         /// show the key and label of a bibliography entry
83         void showBibitem(InsetCommand * ic);
84         /// show the bibtex dialog
85         void showBibtex(InsetCommand * ic);
86         ///
87         void showCharacter();
88         /// connected to the character dialog also
89         void setUserFreeFont();
90         ///
91         void showCitation(InsetCommand *);
92         ///
93         void createCitation(string const &);
94         ///
95         void showDocument();
96         ///
97         void showError(InsetError *);
98         ///
99         void showERT(InsetERT *);
100         ///
101         void updateERT(InsetERT *);
102         /// show the external inset dialog
103         void showExternal(InsetExternal *);
104         /// show the contents of a file.
105         void showFile(string const &);
106         ///
107         void showFloat(InsetFloat *);
108         /// show all forked child processes
109         void showForks();
110         ///
111         void showGraphics(InsetGraphics *);
112         /// show the details of a LyX file include inset
113         void showInclude(InsetInclude *);
114         ///
115         void showIndex(InsetCommand *);
116         ///
117         void createIndex();
118         /// show the LaTeX log or build file
119         void showLogFile();
120         /// display the top-level maths panel
121         void showMathPanel();
122         ///
123         void showMinipage(InsetMinipage *);
124         ///
125         void updateMinipage(InsetMinipage *);
126         ///
127         void showParagraph();
128         ///
129         boost::signal0<void>  updateParagraph;
130         ///
131         void showPreamble();
132         ///
133         void showPreferences();
134         ///
135         void showPrint();
136         ///
137         void showRef(InsetCommand *);
138         ///
139         void createRef(string const &);
140         ///
141         void showSearch();
142         ///
143         void showSendto();
144         /// bring up the spellchecker
145         void showSpellchecker();
146         ///
147         void showTabular(InsetTabular *);
148         ///
149         void updateTabular(InsetTabular *);
150         ///
151         void showTabularCreate();
152         /// show the TexInfo
153         void showTexinfo();
154         /// show the thesaurus dialog
155         void showThesaurus(string const &);
156         ///
157         void showTOC(InsetCommand *);
158         ///
159         void createTOC(string const &);
160         ///
161         void showUrl(InsetCommand *);
162         ///
163         void createUrl(string const &);
164         /// show the version control log
165         void showVCLogFile();
166         //@}
167 };
168
169 #endif