fix the reformat bug, some small things

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@521 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Lars Gullik Bjønnes 2000-02-03 17:09:33 +00:00
parent 44d8adab0e
commit bb96fd7de6
9 changed files with 73 additions and 32 deletions

View File

@ -1,3 +1,20 @@
2000-02-03 Lars Gullik Bjønnes <larsbj@lyx.org>
* src/lyxrc.C (output): added case RC_DATE_INSERT_FORMAT. Jug
forgot this when applying the patch. Please heed the warnings.
* src/BufferView.C (buffer): a fix for the buffer-reload problem
(aka. reformat problem)
* src/bufferlist.C (exists): made const, and use const_iterator
(isLoaded): new func.
(release): use std::find to find the correct buffer.
* src/bufferlist.h: made getState a const func.
made empty a const func.
made exists a const func.
new func: isLoaded
2000-02-01 Juergen Vigna <jug@sad.it>
* src/lyxfunc.C lyxrc.C: changed from insert-date to date-insert

View File

@ -186,6 +186,7 @@ dnl Check the version of g++
2.7*) CXXFLAGS="$lyx_opt";;
2.95.1) CXXFLAGS="-g $lyx_opt -fpermissive -fno-rtti";;
2.95.*) CXXFLAGS="-g $lyx_opt -fno-rtti -fno-exceptions";;
*2.91.*) CXXFLAGS="-g $lyx_opt -Wno-return-type -fno-exceptions -fno-rtti";;
*) CXXFLAGS="-g $lyx_opt -fno-exceptions -fno-rtti";;
esac
else

View File

@ -186,6 +186,7 @@ dnl Check the version of g++
2.7*) CXXFLAGS="$lyx_opt";;
2.95.1) CXXFLAGS="-g $lyx_opt -fpermissive -fno-rtti";;
2.95.*) CXXFLAGS="-g $lyx_opt -fno-rtti -fno-exceptions";;
*2.91.*) CXXFLAGS="-g $lyx_opt -Wno-return-type -fno-exceptions -fno-rtti";;
*) CXXFLAGS="-g $lyx_opt -fno-exceptions -fno-rtti";;
esac
else

View File

@ -211,10 +211,12 @@ void BufferView::buffer(Buffer * b)
insetSleep();
buffer_->delUser(this);
// Put the old text into the TextCache.
textcache.push_back(text);
if (bufferlist.isLoaded(buffer_))
textcache.push_back(text);
else
delete text;
if (lyxerr.debugging())
showTextCache("buffer");
// delete text;
text = 0;
}

View File

@ -4,9 +4,9 @@
* LyX, The Document Word Processor
*
* Copyright 1995 Matthias Ettrich
* Copyright 1995-1999 The LyX Team.
* Copyright 1995-2000 The LyX Team.
*
* This file is Copyright 1996-1999
* This file is Copyright 1996-2000
* Lars Gullik Bjønnes
*
* ======================================================
@ -19,6 +19,8 @@
#include <config.h>
#include <fstream>
#include <algorithm>
#include <sys/types.h>
#include <utime.h>
@ -44,21 +46,18 @@ extern int RunLinuxDoc(int, string const &);
using std::ifstream;
using std::ofstream;
using std::ios;
using std::find;
//
// Class BufferStorage
//
void BufferStorage::release(Buffer * buf)
{
for(Container::iterator it = container.begin();
it != container.end(); ++it) {
if ((*it) == buf) {
Buffer * tmpbuf = (*it);
container.erase(it);
delete tmpbuf;
break;
}
Container::iterator it = find(container.begin(), container.end(), buf);
if (it != container.end()) {
Buffer * tmp = (*it);
container.erase(it);
delete tmp;
}
}
@ -85,7 +84,7 @@ BufferList::BufferList()
{}
bool BufferList::empty()
bool BufferList::empty() const
{
return bstore.empty();
}
@ -476,17 +475,25 @@ Buffer * BufferList::readFile(string const & s, bool ronly)
}
bool BufferList::exists(string const & s)
bool BufferList::exists(string const & s) const
{
for (BufferStorage::iterator it = bstore.begin();
it != bstore.end(); ++it) {
if ((*it)->fileName() == s)
for (BufferStorage::const_iterator cit = bstore.begin();
cit != bstore.end(); ++cit) {
if ((*cit)->fileName() == s)
return true;
}
return false;
}
bool BufferList::isLoaded(Buffer const * b) const
{
BufferStorage::const_iterator cit =
find(bstore.begin(), bstore.end(), b);
return cit != bstore.end();
}
Buffer * BufferList::getBuffer(string const & s)
{
for(BufferStorage::iterator it = bstore.begin();

View File

@ -4,9 +4,9 @@
*
* LyX, The Document Processor
* Copyright 1995 Matthias Ettrich
* Copyright 1995-1999 The LyX Team
* Copyright 1995-2000 The LyX Team
*
* This file is Copyright 1996
* This file is Copyright 1996-2000
* Lars Gullik Bjønnes
*
* ====================================================== */
@ -82,7 +82,7 @@ public:
};
/// returns the state of the bufferlist
list_state getState() { return state_; }
list_state getState() const { return state_; }
/** loads a LyX file or...
If the optional argument tolastfiles is false (default is
@ -93,7 +93,7 @@ public:
bool tolastfiles = true);
///
bool empty();
bool empty() const;
/// Saves buffer. Returns false if unsuccesful.
bool write(Buffer *, bool makeBackup);
@ -136,7 +136,10 @@ public:
Buffer * first();
/// returns true if the buffer exists already
bool exists(string const &);
bool exists(string const &) const;
/// returns true if the buffer is loaded
bool isLoaded(Buffer const * b) const;
/// returns a pointer to the buffer with the given name.
Buffer * getBuffer(string const &);

View File

@ -1201,6 +1201,9 @@ void LyXRC::output(ostream & os) const
os << "\\escape_chars \"" << isp_esc_chars << "\"\n";
case RC_MAKE_BACKUP:
os << "\\make_backup " << tostr(make_backup) << "\n";
case RC_DATE_INSERT_FORMAT:
os << "\\date_insert_format \"" << date_insert_format
<< "\"\n";
}
os.flush();
}

View File

@ -591,25 +591,25 @@ bool MathedXIter::Next()
{
// lyxerr << "Ne[" << pos << "]";
if (!OK()) return false;
int w= 0;
int w = 0;
// lyxerr << "xt ";
if (IsInset()) {
MathedInset* px = GetInset();
MathedInset * px = GetInset();
w = px->Width();
if (px->GetType() == LM_OT_SCRIPT) {
if (w>sw) sw = w;
if (w > sw) sw = w;
w = 0;
} else
sx = (px->GetLimits()) ? w: 0;
sx = (px->GetLimits()) ? w : 0;
} else {
byte c = GetChar();
if (c>= ' ') {
if (c >= ' ') {
// lyxerr << "WD[" << fcode << " " << size << " " << c << endl;
w = mathed_char_width(fcode, size, c);
} else
if (c == LM_TC_TAB && p) {
// w = p->GetTab(col+1);
w = (crow) ? crow->getTab(col+1): 0;
w = (crow) ? crow->getTab(col + 1) : 0;
//lyxerr << "WW[" << w << "]";
} else
if (c == LM_TC_CR && p) {
@ -627,9 +627,9 @@ bool MathedXIter::Next()
// lyxerr <<"LNX " << pos << endl;
// if (sw>0 && GetChar()!= LM_TC_UP && GetChar()!= LM_TC_DOWN) {
// w = (sx>sw) ? 0: sw-sx;
if ((sw>0 || sx>0) && GetChar()!= LM_TC_UP && GetChar()!= LM_TC_DOWN) {
if (sw>0)
w = (sx>sw) ? 0: sw-sx;
if ((sw > 0 || sx > 0) && GetChar() != LM_TC_UP && GetChar() != LM_TC_DOWN) {
if (sw > 0)
w = (sx > sw) ? 0 : sw - sx;
sx = sw = 0;
}
x += w;

View File

@ -14,6 +14,13 @@
#include <config.h>
// For 1.1.4 we disable the new code:
#ifdef MODERN_STL_STREAMS
#undef MODERN_STL_STREAMS
// It seems that some systems have buggy istream::readsome(...)
#endif
#ifdef MODERN_STL_STREAMS
#include <fstream>
using std::ifstream;