X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBufferView.h;h=72bbc4c1dc19458b49ba06c3b3e4cca159af5425;hb=98c966c64594611e469313314abd1e59524adb4a;hp=6bf6350d14e253b5431ada779e426f4977b3d371;hpb=1ecfd5f42531d0dde9473407966278b79faa8dc9;p=lyx.git diff --git a/src/BufferView.h b/src/BufferView.h index 6bf6350d14..72bbc4c1dc 100644 --- a/src/BufferView.h +++ b/src/BufferView.h @@ -1,13 +1,10 @@ // -*- C++ -*- -/* This file is part of - * ====================================================== - * - * LyX, The Document Processor - * - * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team. +/** \file + * Copyright 2002 the LyX Team + * Read the file COPYING * - * ====================================================== */ + * \author Lars Gullik Bjønnes +*/ #ifndef BUFFER_VIEW_H #define BUFFER_VIEW_H @@ -16,8 +13,12 @@ #pragma interface #endif -#include FORMS_H_LOCATION +#include "LString.h" #include "undo.h" +#include "commandtags.h" + +#include "insets/inset.h" + #include class LyXView; @@ -25,11 +26,12 @@ class LyXText; class TeXErrors; class Buffer; class LyXScreen; -class WorkArea; class Language; +class Painter; +class UpdatableInset; /// -class BufferView : public noncopyable { +class BufferView : boost::noncopyable { public: /// enum UpdateCodes { @@ -42,7 +44,7 @@ public: /// CHANGE = 4 }; - + /// BufferView(LyXView * owner, int , int , int, int); /// @@ -54,8 +56,6 @@ public: /// LyXScreen * screen() const; /// - WorkArea * workarea() const; - /// void buffer(Buffer * b); /// void resize(int, int, int, int); @@ -64,39 +64,33 @@ public: /// void redraw(); /// - void fitCursor(LyXText *); + bool fitCursor(); /// void update(); // - void update(UpdateCodes uc); + void update(LyXText *, UpdateCodes uc); /// void updateScrollbar(); /// - Inset * checkInsetHit(LyXText *, int & x, int & y, - unsigned int button); - /// + Inset * checkInsetHit(LyXText *, int & x, int & y); + /// void redoCurrentBuffer(); /// int resizeCurrentBuffer(); /// - void gotoInset(std::vector const & codes, - bool same_content); - /// - void gotoInset(Inset::Code codes, bool same_content); - /// void cursorPrevious(LyXText *); /// void cursorNext(LyXText *); - /// + /// bool available() const; /// LyXView * owner() const; /// - void beforeChange(); - /// - void savePosition(unsigned int i); - /// - void restorePosition(unsigned int i); + void beforeChange(LyXText *); + /// + void savePosition(unsigned int i); + /// + void restorePosition(unsigned int i); /// bool isSavedPosition(unsigned int i); /** This holds the mapping between buffer paragraphs and screen rows. @@ -114,12 +108,10 @@ public: /// UpdatableInset * theLockingInset() const; /// - void theLockingInset(UpdatableInset * inset); + void theLockingInset(UpdatableInset * inset); /// void updateInset(Inset * inset, bool mark_dirty); /// - bool inset_slept; - /// int slx; /// int sly; @@ -138,13 +130,11 @@ public: /// string const nextWord(float & value); /// - void insertCorrectQuote(); - /// bool gotoLabel(string const & label); /// void paste(); /// - void cut(); + void cut(bool realcut = true); /// void copy(); /// @@ -152,35 +142,9 @@ public: /// void copyEnvironment(); /// - void hfill(); - /// - void protectedBlank(); - /// - void newline(); - /// - void menuSeparator(); - /// - void endOfSentenceDot(); - /// - void ldots(); - /// - void hyphenationPoint(); - /// void menuUndo(); /// void menuRedo(); -#ifndef NEW_INSETS - /// - void toggleFloat(); - /// - void openStuff(); -#endif - /// - void insertNote(); -#ifndef NEW_INSETS - /// - void allFloats(char flag, char figmar); -#endif /// removes all autodeletable insets bool removeAutoInsets(); /// @@ -191,12 +155,11 @@ public: Placie it in a layout of lout, if no_table make sure that it doesn't end up in a table. */ - bool insertInset(Inset * inset, string const & lout = string(), - bool no_table = false); - /// open and lock an updatable inset - bool open_new_inset(UpdatableInset * new_inset, bool behind = false); + //bool insertInset(Inset * inset, string const & lout = string(), + // bool no_table = false); + bool insertInset(Inset * inset, string const & lout = string()); /** Inserts a lyx file at cursor position. - @return #false# if it fails. + \return #false# if it fails. */ bool insertLyXFile(string const & file); /// @@ -206,7 +169,7 @@ public: /// void hideLockedInsetCursor(); /// - void fitLockedInsetCursor(int x, int y, int asc, int desc); + bool fitLockedInsetCursor(int x, int y, int asc, int desc); /// int unlockInset(UpdatableInset * inset); /// @@ -221,7 +184,7 @@ public: void toggleToggle(); /// void center(); - + /// bool focus() const; /// @@ -237,34 +200,22 @@ public: void setState(); /// - void pushIntoUpdateList(Inset * i); -#if 0 - /// - void workAreaExpose(); - /// - void workAreaButtonPress(int x, int y, unsigned int button); - /// - void workAreaButtonRelease(int x, int y, unsigned int button); + bool ChangeInsets(Inset::Code code, string const & from, + string const & to); /// - void workAreaMotionNotify(int x, int y, unsigned int state); - /// - void doubleClick(int x, int y, unsigned int button); - /// - void tripleClick(int x, int y, unsigned int button); - /// - void enterView(); - /// - void leaveView(); -#endif + bool ChangeRefsIfUnique(string const & from, string const & to); /// - bool ChangeRefs(string const & from, string const & to); + bool ChangeCitationsIfUnique(string const & from, string const & to); /// - bool ChangeRefsIfUnique(string const & from, string const & to); + string const getClipboard() const; /// void pasteClipboard(bool asPara); /// void stuffClipboard(string const &) const; + /// + bool Dispatch(kb_action action, string const & argument); private: + /// struct Pimpl; /// friend struct BufferView::Pimpl;