]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/RadioButtonGroup.h
Change the semantics of 'none' and 'auto' viewers/editors: 'none' means now
[lyx.git] / src / frontends / xforms / RadioButtonGroup.h
index 603e82b4307bbedaabca76ff547382f7dcb7a383..3be3c0ad6182c064d8b2e0fc325d343f151efb3e 100644 (file)
@@ -1,29 +1,27 @@
 // -*- C++ -*-
 /**
  * \file RadioButtonGroup.h
- * Copyright 2000 Baruch Even
  * This file is part of LyX, the document processor.
  * Licence details can be found in the file COPYING.
  *
  * \author Baruch Even
  * \author Rob Lahaye
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 
 #ifndef RADIOBUTTONGROUP_H
 #define RADIOBUTTONGROUP_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
 #include "support/types.h"
 #include <vector>
 #include <utility>
 #include "forms_fwd.h"
 
+namespace lyx {
+namespace frontend {
+
 /** This class simplifies interaction with a group of radio buttons:
  *  one, and only one, can be selected.
  *  The idea is that you register a bunch of radio buttons with
  */
 class RadioButtonGroup {
 public:
-       ///
-       typedef lyx::size_type size_type;
 
        /// Register a radio button with its corresponding value.
        void init(FL_OBJECT * ob, size_type value);
 
        // Set a single active button.
-       void set(size_type value);
-       void set(FL_OBJECT * ob);
+       void set(size_type value) const;
+       void set(FL_OBJECT * ob) const;
+
+       // None of the radiobuttons are set.
+       void unset() const;
 
        // Get the active button's value.
        size_type get() const;
 
+       void setEnabled(bool enabled);
+
 private:
        ///
        typedef std::pair<FL_OBJECT *, size_type> ButtonValuePair;
@@ -57,4 +58,7 @@ private:
        ButtonValueMap map;
 };
 
-#endif
+} // namespace frontend
+} // namespace lyx
+
+#endif // RADIOBUTTONGROUP_H