X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiCommandBuffer.h;h=07370875f31cea00c653f266247bae721cb49a2e;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=6ed08f6cbe0f2c1066f79ff618ef6fd70a6b279b;hpb=9ecadac14d62072502920374a0597a0a6311cff6;p=lyx.git diff --git a/src/frontends/qt4/GuiCommandBuffer.h b/src/frontends/qt4/GuiCommandBuffer.h index 6ed08f6cbe..07370875f3 100644 --- a/src/frontends/qt4/GuiCommandBuffer.h +++ b/src/frontends/qt4/GuiCommandBuffer.h @@ -4,6 +4,8 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * + * \author Lars + * \author Asger and Jürgen * \author John Levon * * Full author contact details are available in file CREDITS. @@ -12,21 +14,27 @@ #ifndef GUICOMMANDBUFFER_H #define GUICOMMANDBUFFER_H -#include "ControlCommandBuffer.h" +#include "support/docstring.h" +#include #include +#include + class QListWidgetItem; namespace lyx { namespace frontend { +class GuiView; class GuiCommandEdit; -class GuiCommandBuffer : public QWidget { +class GuiCommandBuffer : public QWidget +{ Q_OBJECT + public: - GuiCommandBuffer(GuiViewBase * view); + GuiCommandBuffer(GuiView * view); public Q_SLOTS: /// cancel command compose @@ -35,8 +43,10 @@ public Q_SLOTS: void dispatch(); /// tab-complete void complete(); - /// select-complete - void complete_selected(QListWidgetItem *); + /// show history + void listHistoryUp(); + /// called when an item in a list is selected + void itemSelected(QListWidgetItem *); /// up void up(); /// down @@ -45,11 +55,47 @@ public Q_SLOTS: void hideParent(); private: /// owning view - GuiViewBase * view_; - /// controller - ControlCommandBuffer controller_; + GuiView * view_; /// command widget GuiCommandEdit * edit_; + + /// return the previous history entry if any + std::string const historyUp(); + /// return the next history entry if any + std::string const historyDown(); + + /// return the font and depth in the active BufferView as a message. + docstring const getCurrentState() const; + + /// hide the command buffer. + void hide() const; + + /// open a listbox and show the contents of the list. When reversed + /// is true, the contents of the list is filled bottom-up. + void showList(std::vector const & list, + QPoint const & pos, bool reversed = false) const; + + /// return the possible completions + std::vector const completions(std::string const & prefix, + std::string & new_prefix); + + /// dispatch a command + void dispatch(std::string const & str); + + /// available command names + std::vector commands_; + + /// command history + std::vector history_; + + /// current position in command history + std::vector::const_iterator history_pos_; + + /// the button up + QPushButton * upPB; + + /// the button down + QPushButton * downPB; }; } // namespace frontend