]> git.lyx.org Git - lyx.git/blobdiff - src/bufferview_funcs.h
white space -> tabs
[lyx.git] / src / bufferview_funcs.h
index 8be453589c0f72cedd0d5e5d0b16427995f90ad6..161ed4a5ef6805355ef1529e7afc24b3f181691f 100644 (file)
@@ -4,88 +4,72 @@
  * This file is part of LyX, the document processor.
  * Licence details can be found in the file COPYING.
  *
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
  * \author Jean-Marc Lasgouttes
  * \author Angus Leeming
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef BUFFERVIEW_FUNCS_H
 #define BUFFERVIEW_FUNCS_H
 
-#include "LString.h"
+#include <string>
+#include <vector>
 
+namespace lyx {
+
+class Point;
 class BufferView;
-class LyXFont;
-class LyXText;
+class DocIterator;
+class Inset_code;
+class Font;
 
 namespace bv_funcs {
 
-/** Set \param data using \param font and \param toggle.
- *  If successful, returns true.
- */
-bool font2string(LyXFont const & font, bool toggle, string & data);
-/** Set \param font and \param toggle using \param data.
- *  If successful, returns true.
- */
-bool string2font(string const & data, LyXFont & font, bool & toggle);
-/** Returns the current freefont, encoded as a string to be passed to the
+/// Set \param data using \param font and \param toggle. Return success.
+bool font2string(Font const & font, bool toggle, std::string & data);
+
+/// Set \param font and \param toggle using \param data. Return success.
+bool string2font(std::string const & data, Font & font, bool & toggle);
+
+/** Returns the current freefont, encoded as a std::string to be passed to the
  *  frontends.
  */
-string const freefont2string();
-/** Set the freefont using the contents of \param data dispatched from
- *  the frontends and apply it at the current cursor location.
- */
-void update_and_apply_freefont(BufferView * bv, string const & data);
-/** Apply the contents of freefont at the current cursor location.
- */
-void apply_freefont(BufferView * bv);
+std::string const freefont2string();
+
+Point getPos(BufferView const & bv, DocIterator const & dit, bool boundary);
 
-/// what type of depth change to make
-enum DEPTH_CHANGE {
-       INC_DEPTH,
-       DEC_DEPTH
+enum CurStatus {
+       CUR_INSIDE,
+       CUR_ABOVE,
+       CUR_BELOW
 };
 
-/**
- * Increase or decrease the nesting depth of the selected paragraph(s)
- * if test_only, don't change any depths. Returns whether something
- * (would have) changed
- */
-extern bool changeDepth(BufferView *, LyXText *, DEPTH_CHANGE, bool test_only);
-
-///
-extern void emph(BufferView *);
-///
-extern void bold(BufferView *);
-///
-extern void noun(BufferView *);
-///
-extern void lang(BufferView *, string const &);
-///
-extern void number(BufferView *);
-///
-extern void tex(BufferView *);
-///
-extern void code(BufferView *);
-///
-extern void sans(BufferView *);
-///
-extern void roman(BufferView *);
-///
-extern void styleReset(BufferView *);
-///
-extern void underline(BufferView *);
-///
-extern void fontSize(BufferView *, string const &);
-/// Returns the current font and depth as a message.
-extern string const currentState(BufferView *);
-///
-extern void toggleAndShow(BufferView *, LyXFont const &,
-                         bool toggleall = true);
-/// replace selection with insertion
-extern void replaceSelection(LyXText * lt);
-}; // namespace bv_funcs
+
+CurStatus status(BufferView const * bv, DocIterator const & dit);
+
+
+Point coordOffset(BufferView const & bv, DocIterator const & dit, bool boundary);
+
+/// Moves cursor to the next inset with one of the given codes.
+void gotoInset(BufferView * bv, std::vector<Inset_code> const & codes,
+              bool same_content);
+
+/// Moves cursor to the next inset with given code.
+void gotoInset(BufferView * bv, Inset_code code, bool same_content);
+
+/// Looks for next inset with one of the the given code
+bool findInset(DocIterator & dit, std::vector<Inset_code> const & codes,
+              bool same_content);
+
+/// Looks for next inset with the given code
+void findInset(DocIterator & dit, Inset_code code, bool same_content);
+
+
+} // namespace bv_funcs
+
+
+} // namespace lyx
 
 #endif