]> git.lyx.org Git - lyx.git/blob - src/frontends/controllers/ButtonControllerBase.C
* Baruch's GuiBC template.
[lyx.git] / src / frontends / controllers / ButtonControllerBase.C
1 // -*- C++ -*-
2 /* This file is part of
3  * ====================================================== 
4  *
5  *           LyX, The Document Processor
6  *
7  *           Copyright 2000-2001 The LyX Team.
8  *
9  * ======================================================
10  *
11  * \file ButtonControllerBase.C
12  * \author Allan Rae
13  */
14
15 #ifdef __GNUG__
16 #pragma implementation
17 #endif
18
19 #include <config.h>
20 #include "ButtonControllerBase.h"
21 #include "support/LAssert.h"
22
23
24 ButtonControllerBase::ButtonControllerBase(string const & cancel,
25                                            string const & close)
26         : cancel_label_(cancel), close_label_(close)
27 {}
28
29
30 void ButtonControllerBase::ok()
31 {
32         input(ButtonPolicy::SMI_OKAY);
33 }
34
35
36 void ButtonControllerBase::input(ButtonPolicy::SMInput in)
37 {
38         if (ButtonPolicy::SMI_NOOP == in) return;
39         bp().input(in);
40         refresh();
41 }
42
43
44 void ButtonControllerBase::apply()
45 {
46         input(ButtonPolicy::SMI_APPLY);
47 }
48
49
50 void ButtonControllerBase::cancel()
51 {
52         input(ButtonPolicy::SMI_CANCEL);
53 }
54
55
56 void ButtonControllerBase::undoAll()
57 {
58         input(ButtonPolicy::SMI_UNDO_ALL);
59 }
60
61
62 void ButtonControllerBase::hide()
63 {
64         input(ButtonPolicy::SMI_HIDE);
65 }
66
67
68 void ButtonControllerBase::valid(bool v)
69 {
70         if (v) {
71                 input(ButtonPolicy::SMI_VALID);
72         } else {
73                 input(ButtonPolicy::SMI_INVALID);
74         }
75 }
76
77
78 void ButtonControllerBase::invalid()
79 {
80         input(ButtonPolicy::SMI_INVALID);
81 }
82
83
84 bool ButtonControllerBase::readOnly(bool ro)
85 {
86         if (ro) {
87                 input(ButtonPolicy::SMI_READ_ONLY);
88         } else {
89                 input(ButtonPolicy::SMI_READ_WRITE);
90         }
91         return ro;
92 }
93
94
95 void ButtonControllerBase::readWrite()
96 {
97         readOnly(false);
98 }