]> git.lyx.org Git - lyx.git/blob - src/frontends/gnome/GPreamble.h
applying Martin Craig's gnome patch. Upgrading to gtkmm-2.0+ from the 1.3 developmen...
[lyx.git] / src / frontends / gnome / GPreamble.h
1 // -*- C++ -*-
2 /**
3  * \file GPreamble.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Michael Koziarski
8  *
9  * Full author contact details are available in file CREDITS
10  */
11
12 #ifndef GPREAMBLE_H
13 #define GPREAMBLE_H
14
15 #ifdef __GNUG__
16 #pragma interface
17 #endif
18
19 #include "ControlPreamble.h"
20 #include "GnomeBase.h"
21
22 namespace Gtk {
23 class Button;
24 class TextView;
25 }
26
27 /**
28  * This class implements the dialog to modify the LaTeX preamble
29  */
30 class GPreamble : public GnomeCB<ControlPreamble> {
31 public:
32         ///
33         GPreamble();
34         ///
35         ~GPreamble();
36
37         void apply();
38         void update();
39
40 private:
41         /// Build the dialog
42         void build();
43
44         /// Returns true if the dialog input is in a valid state.
45         bool validate() const;
46
47         ///
48         void connect_signals();
49         ///
50         void disconnect_signals();
51
52         /// generated by accessors.py
53         Gtk::Button * ok_btn() const;
54         /// generated by accessors.py
55         Gtk::Button * apply_btn() const;
56         /// generated by accessors.py
57         Gtk::Button * cancel_btn() const;
58         /// generated by accessors.py
59         Gtk::TextView * preamble() const;
60
61         ///
62         SigC::Connection slot_preamble_;
63
64
65 };
66
67 #endif