]> git.lyx.org Git - lyx.git/blob - src/frontends/xforms/FormCopyright.h
noncopyable + read ChangeLog
[lyx.git] / src / frontends / xforms / FormCopyright.h
1 // -*- C++ -*-
2 /* FormCopyright.h
3  * FormCopyright Interface Class
4  * This file is part of
5  * ====================================================== 
6  *
7  *           LyX, The Document Processor
8  *
9  *           Copyright 1995 Matthias Ettrich
10  *           Copyright 1995-2000 The LyX Team.
11  *
12  *           This file Copyright 2000
13  *           Allan Rae
14  * ======================================================
15  */
16
17 #ifndef FORMCOPYRIGHT_H
18 #define FORMCOPYRIGHT_H
19
20 #include "DialogBase.h"
21 #include "form_copyright.h"
22 #include "support/utility.hpp"
23
24 #ifdef __GNUG__
25 #pragma interface
26 #endif
27
28 class Dialogs;
29 // same arguement as in Dialogs.h s/LyX/UI/
30 class LyXView;
31
32 /** This class provides an XForms implementation of the FormCopyright Dialog.
33  */
34 class FormCopyright : public DialogBase, public noncopyable {
35 public:
36         /**@name Constructors and Destructors */
37         //@{
38         /// #FormCopyright x(LyXFunc ..., Dialogs ...);#
39         FormCopyright(LyXView *, Dialogs *);
40         ///
41         ~FormCopyright();
42         //@}
43
44         /**@name Real per-instance Callback Methods */
45         //@{
46         static  int WMHideCB(FL_FORM *, void *);
47         static void OKCB(FL_OBJECT *, long);
48         //@}
49
50 private:
51         /**@name Slot Methods */
52         //@{
53         /// Create the dialog if necessary, update it and display it.
54         void show();
55         /// Hide the dialog.
56         void hide();
57         /// Not used but we've got to implement it.
58         void update() {}
59         //@}
60
61         /// Build the dialog
62         void build();
63         ///
64         FD_form_copyright * build_copyright();
65         /// Explicitly free the dialog.
66         void free();
67
68         /**@name Private Data */
69         //@{
70         /// Real GUI implementation.
71         FD_form_copyright * dialog_;
72         /** Which LyXFunc do we use?
73             We could modify Dialogs to have a visible LyXFunc* instead and
74             save a couple of bytes per dialog.
75         */
76         LyXView * lv_;
77         /** Which Dialogs do we belong to?
78             Used so we can get at the signals we have to connect to.
79         */
80         Dialogs * d_;
81         /// Hide connection.
82         Connection h_;
83         //@}
84 };
85
86 #endif
87
88