]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/DropDown.h
Yet more dialog tweaking from Rob.
[lyx.git] / src / frontends / xforms / DropDown.h
index 142a9091fd10baf88e85b46d4037e8e3f2945bff..530f1441a7d4af3ab2072ab0e5f265dc3c1a2575 100644 (file)
@@ -1,49 +1,61 @@
+// -*- C++ -*-
 /**
  * \file DropDown.h
- * Copyright 2001 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- * \author John Levon <moz@compsoc.man.ac.uk>
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS
  */
 
 #ifndef DROPDOWN_H
 #define DROPDOWN_H
-#include "LyXView.h"
-#include <sigc++/signal_system.h> 
+
+#ifdef __GNUG__
+#pragma interface
+#endif
+
+#include "forms_fwd.h"
+#include <X11/Xlib.h>
+
+#include <boost/signals/signal1.hpp>
+
 #include "LString.h"
-#include FORMS_H_LOCATION
 #include <vector>
+
 class DropDown {
 public:
        /// constructor
-       DropDown(LyXView * lv, FL_OBJECT * ob);
+       DropDown(FL_OBJECT * ob);
        /// destructor
        ~DropDown();
+
        /// choose from the list of choices.
        void select(std::vector<string> const & choices, int x, int y, int w);
 
        /// user completed action
        void completed();
+
+       /// a key was pressed. Act on it.
+       void key_pressed(char c);
+
        /// signal for completion
-       SigC::Signal1<void, string const &> result;
-        
+       boost::signal1<void, string const &> result;
+
+       /// signal that a key was pressed
+       boost::signal1<void, char> keypress;
+
        /// X event
        int peek(XEvent *);
 
 private:
-       /// move up a browser line 
+       /// move up a browser line
        void line_up();
 
        /// move down a browser line
        void line_down();
-       /// owning lyxview
-       LyXView * lv_;
+
        /// our form
        FL_FORM * form_;