]> git.lyx.org Git - features.git/blob - ChangeLog
several small and larger changes, read the Changelog
[features.git] / ChangeLog
1 2000-02-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
2
3         * src/support/lyxsum.C: rework to be more flexible.
4         
5         * several places: don't check if a pointer is 0 if you are going
6         to delete it.
7
8         * src/text.C: remove some dead code.
9
10         * src/insets/figinset.C: remove some dead code
11         
12         * src/buffer.C: move the BufferView funcs to BufferView2.C
13         remove all support for insetlatexdel
14         remove support for oldpapersize stuff
15         made some member funcs const
16
17         * src/kbmap.C: use a std::list to store the bindings in.
18         
19         * src/BufferView2.C: new file
20
21         * src/kbsequence.[Ch]: new files
22         
23         * src/LyXAction.C + others: remove all trace of buffer-previous
24         
25         * src/Bullet.[Ch]: moved ITEMIZE_DEFAULTS inside Bullet.C so that we
26         only have one copy in the binary of this table.
27         
28         * hebrew patch: moved some functions from LyXText to more
29         appropriate places. (LyXParagraph, BufferParams, LyXFont)
30         
31         * several files: remove support for XForms older than 0.88
32         whitespace changes.
33         remove some #if 0 #endif code
34         
35         * src/TextCache.[Ch]: new file. Holds the textcache.
36
37         * src/BufferView.C: changes to use the new TextCache interface.
38         (waitForX): remove the now unused code.
39         
40         * src/BackStack.h: remove some commented code
41
42         * lib/bind/emacs.bind: remove binding for buffer-previous
43
44 2000-02-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
45
46         * applied the hebrew patch.
47
48         * src/lyxrow.h: make sure that all Row variables are initialized.
49
50         * src/text2.C (TextHandleUndo): comment out a delete, this might
51         introduce a memory leak, but should also help us to not try to
52         read freed memory. We need to look at this one.
53
54         * src/paragraph.C (SimpleDocBookOneTablePar): initialize column to 0
55         (LyXParagraph): initalize footnotekind.
56
57         * src/lyxrc.C (output): added case RC_DATE_INSERT_FORMAT. Jug
58         forgot this when applying the patch. Please heed the warnings.
59
60         * src/BufferView.C (buffer): a fix for the buffer-reload problem
61         (aka. reformat problem)
62
63         * src/bufferlist.C (exists): made const, and use const_iterator
64         (isLoaded): new func.
65         (release): use std::find to find the correct buffer.
66
67         * src/bufferlist.h: made getState a const func.
68         made empty a const func.
69         made exists a const func.
70         new func: isLoaded
71
72 2000-02-01  Juergen Vigna  <jug@sad.it>
73
74         * src/lyxfunc.C lyxrc.C: changed from insert-date to date-insert
75
76         * po/it.po: updated a bit the italian po file and also changed the
77         'file nuovo' for newfile to 'filenuovo' without a space, this did
78         annoy me a lot :)
79         
80         * src/lyxrc.C (LyXRC): added support for a default insert_date_format
81         for the new insert_date command.
82
83         * src/lyxfunc.C (Dispatch): added support for a insert_date function
84         from jdblair, to insert a date into the current text conforming to
85         a strftime format (for now only considering the locale-set and not
86         the document-language).
87
88 2000-01-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
89
90         * src/lyxfont.C (textWidth): hopefully better fix for the Array
91         Bounds Read error seen by purify. The problem was that islower is
92         a macros which takes an unsigned char and uses it as an index for
93         in array of characters properties (and is thus subject to the
94         above error).
95         (drawText): ditto.
96
97         * src/lyx_cb.C (UpdateLayoutDocument): use a switch to set
98         correctly the paper sides radio buttons.
99         (UpdateDocumentButtons): ditto.
100
101 2000-01-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
102
103         * src/kbmap.C (getsym + others): change to return unsigned int,
104         returning a long can give problems on 64 bit systems. (I assume
105         that int is 32bit on 64bit systems)
106
107 2000-01-27  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
108
109         * src/lyxfunc.C (processKeyEvent): fix a the buffer returned by
110         LyXLookupString to be zero-terminated. Really fixes problems seen
111         by purify, I think.
112
113 2000-01-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
114
115         * src/lyxfunc.C (processKeyEvent): "fix" so that we never try to
116         write a (char*)0 to the lyxerr stream.
117
118         * src/lastfiles.C: move algorithm before the using statemets.
119
120 2000-01-26  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
121
122         * src/lastfiles.C: move using directives in global scope (egcs 1.x
123         complains otherwise).
124         * src/table.C: ditto
125
126         * lib/reLyX/reLyX.in: use variable @LYX_DIR@ as built-in data
127         directory. 
128
129         * lib/reLyX/configure.in (LYX_DIR): re-introduce this variable
130         that I removed earlier... It is really needed.
131
132         * lib/examples/multicol.lyx: new file, splitted from Extended.lyx. 
133
134 2000-01-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
135
136         * INSTALL: update xforms home page URL.
137
138         * lib/configure.m4: fix a bug with unreadable layout files.
139
140         * src/table.C (calculate_width_of_column): add "using std::max"
141         directive. 
142
143 2000-01-25  Lars Gullik Bjønnes  <larsbj@lyx.org>
144
145         * several files: marked several lines with "DEL LINE", this is
146         lines that can be deleted without changing anything.
147         if (<ptr>) // DEL LINE  /* this line is _never_ needed. Delete
148                                    checks this anyway */
149                 delete <ptr>
150
151         * src/insets/insetlatexaccent.C: Changed some debugs to Debug::KEY
152
153         * src/DepTable.C (update): add a "+" at the end when the checksum
154         is different. (debugging string only)
155
156         * src/paragraph.C (ReturnNextInsetPointer): fix bug that caused
157         the next inset to not be displayed. This should also fix the list
158         of labels in the "Insert Crossreference" dialog.
159
160 2000-01-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
161
162         * src/support/LSubstring.C (LSubstring): set pos to string::npos
163         when regex was not found.
164
165         * src/support/lstrings.C (lowercase): use handcoded transform always.
166         (uppercase): ditto
167
168         * src/text.C (Delete): fixed the crash. cursor.par->prev and
169         old_cursor.par->prev could be 0.
170
171         * several files: changed post inc/dec to pre inc/dec
172         
173         * src/lastfiles.C (writeFile): use ostream_iterator and copy to
174         write the lastfiles to file.
175
176         * src/BufferView.C (buffer): only show TextCache info when debugging
177         (buffer): ditto
178         (resizeCurrentBuffer): ditto
179         (workAreaExpose): ditto
180
181         * lib/kbd/iso8859-7.cdef: changed to new quoting scheme
182
183         * lib/kbd/iso8859-2.cdef: changed to new quoting scheme
184
185         * src/insets/insetlatexaccent.C (Draw): make the display of UMLAUT
186         a bit better by removing the special case for \i and \j.
187
188 2000-01-24  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
189
190         * src/lyx_main.C (easyParse): remove test for bad comand line
191         options, since this broke all xforms-related parsing.
192
193         * src/kbmap.C (getsym): set return type to unsigned long, as
194         declared in header. On an alpha, long is _not_ the same as int.
195
196         * src/support/LOstream.h: add a "using std::flush;"
197
198         * src/insets/figinset.C: ditto.
199
200 2000-01-21  Lars Gullik Bjønnes  <larsbj@lyx.org>
201
202         * src/bufferlist.C (write): use blinding fast file copy instead of
203         "a char at a time", now we are doing it the C++ way.
204
205         * src/insets/figinset.C: get rid of struct pidwaitpit, use a
206         std::list<int> instead.
207         (addpidwait): reflect move to std::list<int>
208         (sigchldchecker): ditto
209
210         * src/bmtable.c (fl_set_bmtable_file): have arguments in the X r5
211         version also. 
212
213         * src/paragraph.C (FirstPhysicalPar): remove assert and comment
214         that obviously was wrong...
215
216         * src/lyxfont.C (textWidth): have c as char c[2] instead of char
217         c, this avoids warnings with purify and islower.
218
219         * src/insets/figinset.C: rename struct queue to struct
220         queue_element and rewrite to use a std::queue. gsqueue is now a
221         std::queue<queue_element>
222         (runqueue): reflect move to std::queue
223         (addwait): ditto
224
225         * src/support/lstrings.h (tostr): specialize for bool, otherwise
226         we would get "1" "0" instead of "true" "false. Also make the tostr
227         functions inline.
228
229 2000-01-21  Juergen Vigna  <jug@sad.it>
230
231         * src/buffer.C (writeFileAscii): Disabled code for special groff
232         handling of tabulars till I fix this in table.C
233
234 2000-01-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
235
236         * src/support/mkdir.C (mkdir): change second argument of mkdir to
237         unsigned long int.
238         * src/support/lyxlib.h: ditto.
239
240 2000-01-20  Lars Gullik Bjønnes  <larsbj@lyx.org>
241
242         * src/insets/insetlatexaccent.C (Draw): make accents on top of 'i'
243         and 'j' look better. This might fix the "macron" bug that has been
244         observed.
245
246         * src/support/lstrings.[Ch] (tostr): reimplement all the tostr
247         functions as one template function. Delete the old versions.
248
249         * src/support/lyxsum.C: move using std::ifstream inside
250         MODERN_STL_STREAMS
251
252         * src/support/Makefile.am (libsupport_la_SOURCES): added mkdir.C
253         and putenv.C
254
255         * src/mathed/formulamacro.C: delete #include "bufferlist.h" never used
256
257         * src/mathed/formula.C: delete #include "bufferlist.h" never used
258
259         * src/insets/figinset.C (InitFigures): use new instead of malloc
260         to allocate memory for figures and bitmaps.
261         (DoneFigures): use delete[] instead of free to deallocate memory
262         for figures and bitmaps.
263         (runqueue): use new to allocate 
264         (getfigdata): use new/delete[] instead of malloc/free
265         (RegisterFigure): ditto
266
267         * some files: moved some declarations closer to first use, small
268         whitespace changes use preincrement instead of postincrement where
269         it does not make a difference.
270         
271         * src/kbmap.[Ch]: delete code according to define NO_HASH, it is a
272         step on the way to use stl::containers for key maps. 
273
274         * src/bufferlist.h: add a typedef for const_iterator and const
275         versions of begin and end.
276
277         * src/bufferlist.[Ch]: change name of member variable _state to
278         state_. (avoid reserved names)
279         (makePup): removed
280         (getFileNames): returns the filenames of the buffers in a vector.
281
282         * configure.in (ALL_LINGUAS): added ro
283
284         * src/support/putenv.C: new file
285
286         * src/support/mkdir.C: new file
287
288 2000-01-20  Allan Rae <rae@lyx.org>
289
290         * lib/layouts/IEEEtran.layout: Added several theorem environments
291
292         * lib/templates/IEEEtran.lyx: Example theorem environments and a
293         couple of minor additions.
294
295         * lib/doc/LaTeXConfig.lyx.in:  Use URL insets for ftp sites 
296         (except for those in footnotes of course)
297
298 2000-01-19  Lars Gullik Bjønnes  <larsbj@lyx.org>
299
300         * src/lyxlookup.C (CloseLyXLookup): set xic=0; after destruction. 
301
302         * src/mathed/math_utils.C (MathedLookupBOP): rewrite to use
303         std::sort and std::lower_bound instead of qsort and handwritten
304         binarysearch.
305         (struct compara): struct that holds the functors used by std::sort
306         and std::lower_bound in MathedLookupBOP.
307
308 2000-01-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
309
310         * src/support/LAssert.h: do not do partial specialization. We do
311         not really need it.
312
313         * src/support/lyxlib.h: note that lyx::getUserName() and
314         lyx::date() are not in use right now. Should these be suppressed?
315
316         * src/buffer.C (makeLaTeXFile): we do not need the user name here.
317         (makeLinuxDocFile): do not put date and user name in linuxdoc
318         headers. 
319
320         * src/support/lyxlib.h (kill): change first argument to long int,
321         since that's what solaris uses.
322
323         * src/support/kill.C (kill): fix declaration to match prototype.
324
325         * config/lyxinclude.m4 (LYX_CXX_NAMESPACES): fix the macro to
326         actually check whether namespaces are supported. This is not what
327         it used to do.
328
329         * src/support/lyxsum.C: add a using directive.
330
331 2000-01-17  Lars Gullik Bjønnes  <larsbj@lyx.org>
332
333         * src/support/kill.C: if we have namespace support we don't have
334         to include lyxlib.h.
335
336         * src/support/lyxlib.h: use namespace lyx if supported.
337
338 2000-01-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
339
340         * src/support/date.C: new file
341
342         * src/support/chdir.C: new file
343
344         * src/support/getUserName.C: new file
345
346         * src/support/getcwd.C: new file
347
348         * src/support/abort.C: new file
349
350         * src/support/kill.C: new file
351
352         * src/support/lyxlib.h: moved all the functions in this file
353         insede struct lyx. Added also kill and abort to this struct. This
354         is a way to avoid the "kill is not defined in <csignal>", we make
355         C++ wrappers for functions that are not ANSI C or ANSI C++.
356
357         * src/support/lyxsum.C (sum): use #ifdef MODERN_STL_STREAMS
358         instead of #if __GLIBCPP__. Since lyxsum is now put inside struct
359         lyx it has been renamed to sum.
360
361 2000-01-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
362
363         * src/text.C: add using directives for std::min and std::max.
364
365 2000-01-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
366
367         * src/texrow.C (getIdFromRow): actually return something useful in
368         id and pos. Hopefully fixes the bug with positionning of errorbox
369         insets. 
370
371         * src/lyx_main.C (easyParse): output an error and exit if an
372         incorrect command line option has been given.
373
374         * src/spellchecker.C (ispell_check_word): document a memory leak.
375
376         * src/bufferlist.C (write): fix mismatched allocation/deletion,
377         where a "struct utimbuf" is allocated with "new" and deleted with
378         "delete[]". 
379
380 2000-01-13  Lars Gullik Bjønnes  <larsbj@lyx.org>
381
382         * src/text2.C (CutSelection): don't delete double spaces.
383         (PasteSelection): ditto
384         (CopySelection): ditto
385         
386         * src/text.C (Backspace): don't delete double spaces.
387
388         * src/lyxlex.C (next): fix a bug that were only present with
389         conformant std::istream::get to read comment lines, use
390         std::istream::getline instead. This seems to fix the problem.
391
392 2000-01-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
393
394         * src/text2.C (DeleteEmptyParagraphMechanism): fix for the "not
395         allowed to insert space before space" editing problem. Please read
396         commends at the beginning of the function. Comments about usage
397         are very welcome.
398
399         * src/text.C (InsertChar): fix for the "not allowed to insert
400         space before space" editing problem.
401
402         * src/text2.C (DeleteEmptyParagraphMechanism): when
403         IsEmptyTableRow can only return false this last "else if" will
404         always be a no-op. Commented out.
405
406         * src/text.C (RedoParagraph): As far as I can understand tmp
407         cursor is not really needed.
408
409         * src/lyxtext.[Ch] (IsEmptyTableCell): commented out. As used at
410         present it could only return false anyway. 
411         (several functions): Did something not so smart...added a const
412         specifier on a lot of methods.
413         
414         * src/paragraph.C (BreakParagraph): removed the tmp->text.reserve
415         and add a tmp->text.resize. The LyXParagraph constructor does the
416         resize for us.
417         (BreakParagraphConservative): ditto
418
419         * src/support/path.h (Path): add a define so that the wrong usage
420         "Path("/tmp") will be flagged as a compilation error:
421         "`unnamed_Path' undeclared (first use this function)"
422
423 2000-01-12  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
424
425         * config/lyxinclude.m4 (LYX_FUNC_PUTENV_ARGTYPE): fix the macro,
426         which was bogus for several reasons.
427
428         * src/LaTeX.C (scanAux): fix the regular expression used to scan
429         .aux files. 
430         (runBibTeX): ditto.
431
432         * autogen.sh: do not use "type -path" (what's that anyway?).
433
434         * src/support/filetools.C (findtexfile): remove extraneous space
435         which caused a kpsewhich warning (at least with kpathsea version
436         3.0). 
437
438 2000-01-11  Lars Gullik Bjønnes  <larsbj@lyx.org>
439
440         * src/mathed/Makefile.am (noinst_LTLIBRARIES): use .la
441
442         * src/insets/Makefile.am (noinst_LTLIBRARIES): use .la
443
444         * src/Makefile.am (lyx_DEPENDENCIES): switch back to .la libs
445
446 2000-01-11  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
447
448         * src/paragraph.C (BreakParagraph): do not reserve space on text
449         if we don't need to (otherwise, if pos_end < pos, we end up
450         reserving huge amounts of memory due to bad unsigned karma).
451         (BreakParagraphConservative): ditto, although I have not seen
452         evidence the bug can happen here.
453
454         * src/lyxparagraph.h: add a using std::list.
455
456 2000-01-11  Juergen Vigna  <jug@sad.it>
457
458         * src/menus.C (MenuDocu): output an Alert if the documentation-file
459         could not be found.
460
461 2000-01-11  Lars Gullik Bjønnes  <larsbj@lyx.org>
462
463         * src/vc-backend.C (doVCCommand): change to be static and take one
464         more parameter: the path to chdir too be fore executing the command.
465         (retrive): new function equiv to "co -r"
466
467         * src/bufferlist.C (loadLyXFile): implement the missing parts if
468         file_not_found_hook is true.
469
470         * src/lyxvc.C (file_not_found_hook): implement file_not_found_hook.
471
472         * src/support/filetools.C (IsFileWriteable): use FileInfo to check
473         if a file is readwrite,readonly...anything else.
474
475 2000-01-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
476
477         * src/lyx_cb.C (MakeLaTeXOutput): name change from MakeDVIOutput
478         (CreatePostscript): name change from MenuRunDVIPS (or something)
479         (PreviewPostscript): name change from MenuPreviewPS
480         (PreviewDVI): name change from MenuPreviewDVI
481
482         * lib/lyxrc.example: added \pdflatex_command, \pdf_mode,
483         \view_pdf_command., \pdf_to_ps_command
484
485         * lib/configure.m4: added search for PDF viewer, and search for
486         PDF to PS converter. 
487         (lyxrc.defaults output): add \pdflatex_command,
488         \view_pdf_command and \pdf_to_ps_command.
489
490         * src/lyx_cb.C (MenuPreviewDVI): renamed from MenuPreview.
491
492         * src/bufferlist.C (write): we don't use blocksize for anything so
493         I removed it.
494
495 2000-01-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
496
497         * src/support/block.h: disable operator T* (), since it causes
498         problems with both compilers I tried. See comments in the file.
499
500         * lib/reLyX/configure.in: do not define LYX_DIR. support flag
501         --with-lyxname. 
502
503         * lib/reLyX/reLyX.in: change LYX_DIR to pkgdatadir; change env.
504         variable LYX_DIR_10x to LYX_DIR_11x.
505
506         * src/Makefile.am: replace variable LYX_DIR with pkgdatadir.
507
508         * INSTALL: document --with-lyxname.
509         * NEWS: ditto.
510
511         * configure.in: new configure flag --with-lyxname which allows to
512         choose the name under which lyx is installed. Default is "lyx", of
513         course. It used to be possible to do this with --program-suffix,
514         but the later has in fact a different meaning for autoconf.
515
516         * src/support/lstrings.h (lstrchr): reformat a bit.
517
518         * src/lyxlex.h: include LIstream.h, for Sun CC this time.
519         * src/mathed/math_defs.h: ditto.
520
521 2000-01-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
522
523         * src/lyxrc.[Ch]: New tag and variable "\make_backup". Defaults to
524         true, decides if we create a backup file or not when saving. New
525         tag and variable \pdf_mode, defaults to false. New tag and
526         variable \pdflatex_command, defaults to pdflatex. New tag and
527         variable \view_pdf_command, defaults to xpdf. New tag and variable
528         \pdf_to_ps_command, defaults to pdf2ps.
529
530 2000-01-08  Lars Gullik Bjønnes  <larsbj@lyx.org>
531
532         * src/bufferlist.C (close): don't call insetUnlock if the buffer
533         does not have a BufferView.
534         (unlockInset): ditto + don't access the_locking_inset if the
535         buffer does not have a BufferView.
536
537         * src/LyXView.C (KeyPressMask_raw_callback): add a XSync in
538         certain circumstances so that we don't continue a keyboard
539         operation long after the key was released. Try f.ex. to load a
540         large document, press PageDown for some seconds and then release
541         it. Before this change the document would contine to scroll for
542         some time, with this change it stops imidiatly.
543
544         * src/support/block.h: don't allocate more space than needed. As
545         long as we don't try to write to the arr[x] in a array_type arr[x]
546         it is perfectly ok. (if you write to it you might segfault).
547         added operator value_type*() so that is possible to pass the array
548         to functions expecting a C-pointer.
549
550         * lib/Makefile.am (dist-hook): don't fail completely if unable to
551         cvs.
552
553         * intl/*: updated to gettext 0.10.35, tried to add our own
554         required modifications. Please verify.
555
556         * po/*: updated to gettext 0.10.35, tried to add our own required
557         modifications. Please verify.
558         
559         * src/support/lstrings.C (tostr): go at fixing the problem with
560         cxx and stringstream. When stringstream is used return
561         oss.str().c_str() so that problems with lyxstring and basic_string
562         are avoided. Note that the best solution would be for cxx to use
563         basic_string all the way, but it is not conformant yet. (it seems)
564
565         * src/lyx_cb.C + other files: moved several global functions to
566         class BufferView, some have been moved to BufferView.[Ch] others
567         are still located in lyx_cb.C. Code changes because of this. (part
568         of "get rid of current_view project".)
569
570         * src/buffer.C + other files: moved several Buffer functions to
571         class BufferView, the functions are still present in buffer.C.
572         Code changes because of this.
573
574         * config/lcmessage.m4: updated to most recent. used when creating
575         acinclude.m4.
576
577         * config/progtest.m4: updated to most recent. used when creating
578         acinclude.m4.
579         
580         * config/gettext.m4: updated to most recent. applied patch for
581         tmplinguas.
582
583         * config/gettext.m4.patch: new file that shows what changes we
584         have done to the local copy of gettext.m4.
585
586         * config/libtool.m4: new file, used in creation of acinclude.m4
587
588         * config/lyxinclude.m4: new file, this is the lyx created m4
589         macros, used in making acinclude.m4.
590         
591         * autogen.sh: GNU m4 discovered as a separate task not as part of
592         the lib/configure creation. 
593         Generate acinlucde from files in config. Actually cat
594         lyxinclude.m4, libtool.m4 and gettext.m4 together. This makes it
595         easier to upgrade .m4 files that really are external.
596
597         * src/Spacing.h: moved using std::istringstream to right after
598         <sstream>. This should fix the problem seen with some compilers.
599
600 2000-01-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
601
602         * src/lyx_cb.C: began some work to remove the dependency a lot of
603         functions have on BufferView::text, even if not really needed.
604         (GetCurrentTextClass): removed this func, it only hid the
605         current_view. 
606
607         * src/Makefile.am (lyx_DEPENDENCIES): use support/libsupport.la I
608         forgot this in last commit.
609
610         * src/Bullet.C (bulletEntry): use static char const *[] for the
611         tables, becuase of this the return arg had to change to string.
612         (bulletSize): ditto
613         (~Bullet): removed unneeded destructor
614
615         * src/BufferView.C (beforeChange): moved from lyx_cb.C
616         (insetSleep): moved from Buffer
617         (insetWakeup): moved from Buffer
618         (insetUnlock): moved from Buffer
619
620         * buffer.[Ch], BufferView.[Ch] + others: moved the_locking_inset
621         from Buffer to BufferView.
622         
623         * acinclude.m4: include libtool.m4 from libtool 1.3.4.
624
625         * config/ltmain.sh: updated to version 1.3.4 of libtool
626
627         * config/ltconfig: updated to version 1.3.4 of libtool
628
629 2000-01-06  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
630
631
632         * src/buffer.C (pop_tag): fix a dubious for() loop initialization.
633         Did I get that right?
634
635         * src/lyxlex.h: add a "using" directive or two.
636         * src/Spacing.h: ditto.
637         * src/insets/figinset.C: ditto.
638         * src/support/filetools.C: ditto.
639         * src/support/lstrings.C: ditto.
640         * src/BufferView.C: ditto.
641         * src/bufferlist.C: ditto.
642         * src/lyx_cb.C: ditto.
643         * src/lyxlex.C: ditto.
644
645         * NEWS: add some changes for 1.1.4.
646         
647 2000-01-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
648
649         * src/BufferView.C: first go at a TextCache to speed up switching
650         between documents.
651
652 2000-01-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
653
654         * lib/examples/ItemizeBullets.lyx: update from Tino Meinen. 
655         * lib/examples/nl_voorbeeld_ruw.lyx: ditto.
656         * lib/examples/nl_voorbeeld_verlyxt.lyx: ditto.
657         * lib/examples/nl_opsommingstekens.lyx: new translation from Tino
658         Meinen.
659         
660         * src/mathed/math_defs.h (MathedRowSt): make sure that all
661         members of the struct are correctly initialized to 0 (detected by
662         purify) 
663         * src/lyxrc.C (LyXRC): ditto for print_adapt_output.
664         * src/insets/figinset.C (InsetFig): ditto for pswid and pshgh.
665
666         * src/insets/figinset.C (sigchldchecker): use "delete" to free a
667         pidwait, since it was allocated with "new". This was potentially
668         very bad. Thanks to Michael Schmitt for running purify for us.
669
670
671 2000-01-04  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
672
673         * src/lyx_gui_misc.C: add a 'using std::make_pair;' statement.
674
675         * src/lyx_gui_misc.h: add a 'using std::pair;' statement.
676
677 1999-12-30  Allan Rae  <rae@lyx.org>
678
679         * lib/templates/IEEEtran.lyx: minor change
680
681         * src/lyxvc.C (registrer, checkIn), src/lyx_cb.C (MenuInsertLabel),
682         src/mathed/formula.C (LocalDispatch): askForText changes
683
684         * src/lyx_gui_misc.[Ch] (askForText): now returns a bool also so we 
685         know when a user has cancelled input. Fixes annoying problems with
686         inserting labels and version control.
687
688 1999-12-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
689
690         * src/support/lstrings.C (tostr): rewritten to use strstream and
691         stringstream
692
693 1999-12-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
694
695         * src/support/filetools.C (IsFileWriteable): use fstream to check
696         (IsDirWriteable): use fileinfo to check
697
698         * src/support/filetools.h (FilePtr): whole class deleted
699
700         * src/insets/figinset.C (GetPSSizes): rewritten to use ifstream.
701
702         * src/lyxparagraph.h (readSimpleWholeFile): make arg istream
703
704         * src/lyx_cb.C (InsertAsciiFile): use ifstream instead of FilePtr
705
706         * src/bufferlist.C (write): use ifstream and ofstream instead of
707         FILE*
708
709         * src/Spacing.h: use istrstream instead of sscanf
710
711         * src/mathed/math_defs.h: change first arg to istream from FILE*
712
713         * src/buffer.C (insertLyXFile): use ifstream instead of FilePtr
714
715         * src/mathed/math_parser.C: have yyis to be an istream 
716         (LexGetArg): use istream (yyis)
717         (yylex): ditto
718         (mathed_parse): ditto
719         (mathed_parser_file): first arg istream instead of FILE*, set yyis
720
721         * src/mathed/formula.C (Read): rewritten to use istream
722
723         * src/mathed/formulamacro.C (Read): rewritten to use istream
724
725         * src/lyxlex.h (~LyXLex): deleted desturctor 
726         (getStream): new function, returns an istream
727         (getFile): deleted funtion
728         (IsOK): return is.good();
729
730         * src/lyxlex.C (LyXLex): delete file and owns_file
731         (setFile): open an filebuf and assign that to a istream instead of
732         using FILE*
733         (setStream): new function, takes an istream as arg. 
734         (setFile): deleted function
735         (EatLine): rewritten us use istream instead of FILE*
736         (next): ditto
737         (nextToken): ditto
738
739         * src/table.C (LyXTable): use istream instead of FILE*
740         (Read): rewritten to take an istream instead of FILE*
741
742 1999-12-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
743
744         * src/buffer.C (Dispatch): remove an extraneous break statement.
745
746         * src/support/filetools.C (QuoteName): change to do simple
747         'quoting'. More work is necessary. Also changed to do nothing
748         under emx (needs fix too).
749         (Putenv): Cast the argument of putenv() with PUTENV_TYPE_ARG.
750
751         * acinclude.m4 (STL_STRING_FWD_H_LOCATION): add the comment for
752         config.h.in to the AC_DEFINE_UNQUOTED() call.
753         (LYX_FUNC_PUTENV_ARGTYPE): new macro. Checks whether putenv()
754         needs char * as argument (because Solaris 7 declares it like
755         that). 
756
757         * acconfig.h: remove placeholder for STL_STRING_FWD_H_LOCATION;
758         remove definition of BZERO.
759
760 1999-12-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
761
762         * src/support/LRegex.C: include <regex.h> if HAVE_REGEX_H is
763         defined, "lyxregex.h" if not.
764
765         * src/support/Makefile.am (noinst_LTLIBRARIES): changed from
766         pkglib_ to noinst_
767         (REGEX): new variable that is set to regex.c lyxregex.h when
768         AM_CONDITIONAL USE_REGEX is set.
769         (libsupport_la_SOURCES): add $(REGEX)
770
771         * src/mathed/Makefile.am (noinst_LTLIBRARIES): changed from
772         pkglib_ to noinst_
773
774         * src/insets/Makefile.am (noinst_LTLIBRARIES): changed from
775         pkglib_ to noinst_
776
777         * configure.in: add call to LYX_REGEX 
778
779         * acinclude.m4 (LYX_REGEX): checks if we need to use the included
780         regex or not. Uses a a AM_CONDITIONAL to decide what to compile. 
781
782 1999-12-22  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
783
784         * lib/bind/fi_menus.bind: new file, from
785         pauli.virtanen@saunalahti.fi. 
786
787         * src/buffer.C (getBibkeyList): pass the parameter delim to
788         InsetInclude::getKeys and InsetBibtex::getKeys.
789
790         * src/insets/insetinclude.[Ch] (getKeys): add parameter delim, which
791         is passed to Buffer::getBibkeyList
792         
793         * src/insets/insetbib.[Ch] (getKeys): add parameter delim, and use it
794         instead of the hardcoded comma.
795
796         * src/insets/insetbib.C (getKeys): make sure that there are not
797         leading blanks in bibtex keys. Normal latex does not care, but
798         harvard.sty seems to dislike blanks at the beginning of citation
799         keys. In particular, the retturn value of the function is
800
801         * INSTALL: make it clear that libstdc++ is needed and that gcc
802         2.7.x probably does not work.
803
804         * src/support/filetools.C (findtexfile): make debug message go to
805         the LATEX channel
806         * src/insets/insetbib.C (getKeys): ditto
807
808         * src/debug.C (showTags): make sure that the output is correctly
809         aligned. 
810
811         * configure.in: add a comment for TWO_COLOR_ICON define.
812
813         * acconfig.h: remove all the entries that already defined in
814         configure.in or acinclude.m4.
815
816         * src/buffer.C (makeLaTeXFile): headers of latex file also changed
817         to avoid user name, date and copyright.
818
819 1999-12-21  Juergen Vigna  <jug@sad.it>
820
821         * src/table.C (Read): Now read bogus row format informations
822                 if the format is < 5 so that afterwards the table can
823                 be read by lyx but without any format-info. Fixed the
824                 crash we experienced when not doing this.
825
826 1999-12-21  Lars Gullik Bjønnes  <larsbj@lyx.org>
827
828         * src/text2.C (RedoHeightOfParagraph): rename arg cursor -> cur
829         (RedoDrawingOfParagraph): ditto
830         (RedoParagraphs): ditto
831         (RemoveTableRow): ditto
832
833         * src/text.C (Fill): rename arg paperwidth -> paper_width
834
835         * src/buffer.C (insertLyXFile): rename var filename -> fname
836         (writeFile): rename arg filename -> fname
837         (writeFileAscii): ditto
838         (makeLaTeXFile): ditto
839         (makeLinuxDocFile): ditto
840         (makeDocBookFile): ditto
841
842         * src/LaTeX.C (runMakeIndex): change arg name from file -> f
843         (runBibTeX): ditto
844
845         * src/Makefile.am (lyx_SOURCES): add bmtable.c and remove bmtable.C
846
847         * src/bmtable.h: add extern "C" on this file when __cplusplus is
848         defined.
849
850         * src/bmtable.c: new file, a C'ified copy of bmtable.C, this is
851         compiled by a C compiler not C++. 
852
853         * src/layout.h (LyXTextClass): added typedef for const_iterator
854         (LyXTextClassList): added typedef for const_iterator + member
855         functions begin and end.
856
857         * src/LyXView.C (UpdateDocumentClassChoice): rewritten to use
858         iterators to fill the choice_class.
859         (updateLayoutChoice): rewritten to use iterators to fill the
860         layoutlist in the toolbar.
861
862         * src/BufferView.h (BufferView::work_area_width): removed unused
863         variable. 
864
865         * src/lyx_gui_misc.C (WarnReadonly): added string parameter 'file'
866
867         * src/buffer.C (sgmlOpenTag): drop the use of the static space array
868         (sgmlCloseTag): ditto
869
870         * src/support/lstrings.h: return type of countChar changed to
871         unsigned char.
872
873         * src/support/lstrings.C (countChar): use HAVE_STD_COUNT to choose
874         what version of this func to use. Also made to return unsigned int.
875
876         * configure.in: call LYX_STD_COUNT 
877
878         * acinclude.m4 (LYX_STD_COUNT): new function checks for a standard
879         conforming std::count. 
880
881 1999-12-20  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
882
883         * src/mathed/math_draw.C (Draw, Metrics): fix a bug where a prime
884         and a subscript would give bad display (patch from Dekel Tsur
885         <dekel@math.tau.ac.il>). 
886
887         * src/insets/insetlatexaccent.h: make sure ACCENT_TYPES is public. 
888
889         * src/spellchecker.C (create_ispell_pipe): use a const_cast to
890         please sun CC.
891
892         * src/chset.h: add a few 'using' directives
893
894         * src/lyxfunc.C (Dispatch): check that LFUN_UNKNOWN_ACTION is not
895         triggered when no buffer is active
896
897         * src/layout.C: removed `break' after `return' in switch(), since
898         it is unreachable.
899
900         * src/lyx_main.C (init): make sure LyX can be ran in place even
901         when libtool has done its magic with shared libraries. Fix the
902         test for the case when the system directory has not been found.
903
904         * src/lyx_cb.C (MenuMakeLaTeX): make sure to keep the full path
905         name for the latex file.
906         (MenuMakeHTML): ditto
907
908         * src/buffer.h: add an optional boolean argument, which is passed
909         to ChangeExtension.
910
911 1999-12-20  Allan Rae  <rae@lyx.org>
912
913         * lib/templates/IEEEtran.lyx: small correction and update.
914
915         * configure.in: Attempted to use LYX_PATH_HEADER
916
917         * src/stl_string_fwd.h: Don't need HAVE_STL_STRING_FWD_H anymore
918
919         * acconfig.h, acinclude.m4 (LYX_STL_STRING_FWD): totally revised after
920         input from JMarc.  Now use preprocessor to find the header.
921         Also stopped making HAVE_STL_STRING_FWD_H and extended the comments.
922         (LYX_PATH_HEADER): My, so far, failed attempt to generalize
923         LYX_STL_STRING_FWD.  See comments in file.      
924
925 1999-12-19  Asger Alstrup Nielsen  <alstrup@diku.dk>
926
927         * The global MiniBuffer * minibuffer variable is dead.
928         
929         * The global FD_form_main * fd_form_main variable is dead.
930
931 1999-12-17  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
932
933         * src/toolbar.C (set): condition #warning on WITH_WARNINGS
934
935         * src/table.h: add the LOstream.h header
936         * src/debug.h: ditto
937         
938         * src/LyXAction.h: change the explaination of the ReadOnly
939         attribute: is indicates that the function _can_ be used.
940
941         * src/LyXAction.C (init): find-replace _can_ be used in read-only
942         mode. 
943
944 1999-12-16  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
945
946         * src/lyxfont.C (ascent): Make sure that char is _always_ used as
947         unsigned. 
948         (descent): ditto
949         (lbearing): ditto
950         (rbearing): ditto
951
952         * src/paragraph.C (GetWord): assert on pos>=0
953         (GetChar): ditto
954         
955         * src/support/lyxstring.C: condition the use of an invariant on
956         ENABLE_ASSERTIONS 
957         * src/support/lyxstring.h: ditto
958
959         * src/Bullet.[Ch]: replace DEBUG_AS_DEFAULT by ENABLE_ASSERTIONS.
960         Use LAssert.h instead of plain assert().
961
962         * src/support/lstrings.h: add LAssert.h, in case it is needed.
963
964         * src/lyxfunc.C: do not include LAssert.h, it is not used.
965         * src/support/filetools.C: ditto
966
967         * src/support/LAssert.h: make Assert a no-op if ENABLE_ASSERTIONS
968         is not defined. 
969
970         * INSTALL: document the new configure flags
971         
972         * configure.in: suppress --with-debug; add --enable-assertions
973
974         * acinclude.m4: various changes in alignment of help strings.
975
976 1999-12-16  Lars Gullik Bjønnes  <larsbj@lyx.org>
977
978         * src/kbmap.C: commented out the use of the hash map in kb_map,
979         beginning of movement to a stl::container. 
980
981         * several files: removed code that was not in effect when
982         MOVE_TEXT was defined.
983         
984         * lib/kbd/iso8859-1.cdef: removed bogus backslashes. Backslashes
985         for escaping should not be used. We can discuss if the string
986         should be enclosed in f.ex. [] instead of "".
987
988         * src/trans_mgr.C (insert): use the new returned value from
989         encodeString to get deadkeys and keymaps done correctly.
990
991         * src/chset.C (encodeString): changed to return a pair, to tell
992         what to use if we know the string.
993
994         * src/lyxscreen.h (fillArc): new function.
995
996         * src/FontInfo.C (resize): rewritten to use more std::string like
997         structore, especially string::replace.
998
999         * src/insets/insetlatexaccent.C (Draw): use fillArc for the
1000         approp. accents.
1001
1002         * configure.in (chmod +x some scripts): remove config/gcc-hack 
1003
1004 1999-12-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1005
1006         * src/buffer.C (writeFile): change once again the top comment in a
1007         .lyx file to point to www.lyx.org and to use LYX_DOCVERSION
1008         instead of an hardcoded version number.
1009         (makeDocBookFile): ditto
1010
1011         * src/version.h: add new define LYX_DOCVERSION
1012
1013         * po/de.po: update from Pit Sütterlin
1014         * lib/bind/de_menus.bind: ditto.
1015         
1016         * src/lyxfunc.C (Dispatch): call MenuExport()
1017         * src/buffer.C (Dispatch): ditto
1018
1019         * src/lyx_cb.C (MenuMakeHTML): new function, moved from
1020         LyXFunc::Dispatch().
1021         (MenuExport): new function, moved from
1022         LyXFunc::Dispatch().
1023
1024         * src/trans_mgr.C (insert): small cleanup
1025         * src/chset.C (loadFile): ditto
1026
1027         * lib/kbd/iso8859-1.cdef: add missing backslashes
1028
1029 1999-12-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
1030
1031         * src/insets/insetlatexaccent.C (Lbearing): new function, used to
1032         help with placing the manually drawn accents better.
1033         (Rbearing): ditto
1034         (Draw): x2 and hg changed to float to minimize rounding errors and
1035         help place the accents better.
1036
1037         * src/lyxfont.C (ascent): fixed faulty static_cast, casting from
1038         unsigned short to char is just wrong...cast the char to unsigned
1039         char instead so that the two values can compare sanely. This
1040         should also make the display of insetlatexaccents better and
1041         perhaps also some other insets.
1042         (descent): ditto
1043         (lbearing): new function
1044         (rbearing): ditto
1045
1046 1999-12-15  Allan Rae  <rae@lyx.org>
1047
1048         * src/stl_string_fwd.h, src/Makefile.am (lyx_SOURCES):  added new
1049         header that provides a wrapper around the very annoying SGI STL header
1050         of the same name.
1051
1052         * src/support/lyxstring.C, src/LString.h:
1053         removed old SGI-STL-compatability attempts.
1054
1055         * configure.in: Use LYX_STL_STRING_FWD.
1056
1057         * acinclude.m4 (LYX_STL_STRING_FWD), acconfig.h: Test if 
1058         stl_string_fwd.h is around and try to determine it's location.
1059         Major improvement over previous SGI STL 3.2 compatability.
1060         Three small problems remain with this function due to my zero
1061         knowledge of autoconf.  JMarc and lgb see the comments in the code.
1062
1063 1999-12-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1064
1065         * src/broken_const.h, config/hack-gcc, config/README: removed
1066         
1067         * configure.in: remove --with-gcc-hack option; do not call
1068         LYX_CXX_STL_STACK 
1069
1070         * INSTALL: remove documentation of --with-broken-const and
1071         --with-gcc-hack
1072         
1073         * acconfig.h: remove all trace of BROKEN_CONST define
1074
1075         * src/buffer.C (makeDocBookFile): update version number in output
1076         file. 
1077         (SimpleDocBookOnePar): fix an assert when trying to a character
1078         access beyond string length
1079         [Patch from Jose']
1080
1081 1999-12-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1082
1083         * po/de.po: fix the Export menu
1084
1085         * lyx.man: update the description of -dbg
1086
1087         * src/lyx_main.C (setDebuggingLevel): call Debug::showLevel()
1088         (commandLineHelp): updated
1089         (easyParse): show list of available debug levels if -dbg is passed
1090         without argument.
1091
1092         * src/Makefile.am: add debug.C
1093
1094         * src/debug.h: moved some code to debug.C
1095
1096         * src/debug.C: new file. Contains code to set and show debug
1097         level. 
1098
1099         * src/layout.C: remove 'break' after 'continue' in switch
1100         statements, since these cannot be reached.
1101
1102 1999-12-13  Allan Rae  <rae@lyx.org>
1103
1104         * src/mathed/math_hash.C (math_hash): renamed from hash(), name clash.
1105         (in_word_set): hash() -> math_hash()
1106
1107         * src/LString.h: Used USING_EXCEPTIONS in SGI STL-3.2 support 
1108
1109         * acconfig.h: Added a test for whether we are using exceptions in the
1110         current compilation run. If so USING_EXCEPTIONS is defined.
1111
1112         * config.in: Check for existance of stl_string_fwd.h
1113         * src/LString.h: If compiling --with-included-string and SGI's
1114         STL version 3.2 is present (see above test) we need to block their
1115         forward declaration of string and supply a __get_c_string().
1116         However, it turns out this is only necessary if compiling with
1117         exceptions enabled so I've a bit more to add yet.
1118
1119         * src/insets/figinset.[Ch], src/insets/insetinclude.C,
1120           src/insets/insetloa.C, src/layout.h, src/lyxparagraph.h,
1121           src/support/LRegex.h, src/undo.h:
1122         Shuffle the order of the included files a little to ensure that
1123         LString.h gets included before anything that includes stl_string_fwd.h
1124
1125         *  src/support/lyxstring.C: We need to #include LString.h instead of
1126         lyxstring.h to get the necessary definition of __get_c_string.
1127         (__get_c_string): New function.  This is defined static just like SGI's
1128         although why they need to do this I'm not sure.  Perhaps it should be
1129         in lstrings.C instead.
1130
1131         * lib/templates/IEEEtran.lyx:  New template file.
1132
1133 1999-12-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
1134         
1135         * Makefile.in.in (MKINSTALLDIRS): use $(srcdir)/@MKINSTALLDIRS@
1136         * intl/Makefile.in (MKINSTALLDIRS):  ditto
1137
1138         * src/LyXAction.C (init): changed to hold the LFUN data in a
1139         automatic array in stead of in callso to newFunc, this speeds up
1140         compilation a lot. Also all the memory used by the array is
1141         returned when the init is completed.
1142
1143         * a lot of files: compiled with -Wold-style-cast, changed most of
1144         the reported offenders to C++ style casts. Did not change the
1145         offenders in C files. 
1146
1147         * src/trans.h (Match): change argument type to unsigned int.
1148
1149         * src/support/DebugStream.C: fix some types on the streambufs so
1150         that it works on a conforming implementation.
1151
1152 1999-12-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1153
1154         * lib/examples/example_{raw,lyxified}.lyx: fix embarassing sentence.
1155
1156         * src/support/lyxstring.C: remove the inline added earlier since
1157         they cause a bunch of unsatisfied symbols when linking with dec
1158         cxx. Cxx likes to have the body of inlines at the place where they
1159         are declared.
1160
1161         * src/trans.C (AddDeadkey): add an 'unsigned char' cast to avoid
1162         accessing negative bounds in array. This fixes the crash when
1163         inserting accented characters.
1164         * src/trans.h (Match): ditto
1165
1166         * src/buffer.C (Dispatch): since this is a void, it should not try
1167         to return anything...
1168
1169 1999-12-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
1170
1171         * src/buffer.h: removed the two friends from Buffer. Some changes
1172         because of this. Buffer::getFileName and Buffer::setFileName
1173         renamed to Buffer::fileName() and Buffer::fileName(...).
1174
1175 1999-12-09  Lars Gullik Bjønnes <larsbj@lyx.org>
1176
1177         * buffer.[Ch], BufferView.[Ch] + other files: Moved Buffer::text
1178         and Buffer::update(short) to BufferView. This move is currently
1179         controlled by a define MOVE_TEXT, this will be removed when all
1180         shows to be ok. This move paves the way for better separation
1181         between buffer contents and buffer view. One side effect is that
1182         the BufferView needs a rebreak when swiching buffers, if we want
1183         to avoid this we can add a cache that holds pointers to LyXText's
1184         that is not currently in use. 
1185
1186         * buffer.[Ch], lyx_main.C: small changes to the "-export" patch by
1187         André Pönitz. 
1188
1189 1999-11-18  André Pönitz <poenitz@mathematik.tu-chemnitz.de>
1190
1191         * buffer.[Ch]: Dispatch() - new dispatcher on the buffer level
1192
1193         * lyx_main.C: new command line option -x (or --execute) and
1194           -e (or --export). Now direct conversion from .lyx to .tex
1195           (.dvi, .ps, ...) is possible  ('lyx file.lyx --export latex')
1196           Unfortunately, X is still needed and the GUI pops up during the
1197           process...
1198
1199 1999-12-07  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1200
1201         * src/Spacing.C: add a using directive to bring stream stuff into
1202         normal namespace.
1203         * src/paragraph.C: ditto
1204         * src/buffer.C: ditto
1205
1206         * NEWS: updated a bit the new features of 1.1.3 (took a few things
1207         from Lars' announcement).
1208
1209         * lib/examples/nl_voorbeeld_{ruw,verlyxt}.lyx: new tutorial
1210         example files from Tino Meinen.
1211         
1212 1999-12-06  Allan Rae  <rae@lyx.org>
1213
1214         * src/LaTeX.C (runBibTeX): fix typo in accessing submatch pair.
1215
1216 1999-12-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
1217
1218         * src/support/lyxstring.C: added a lot of inline for no good
1219         reason
1220         
1221         * src/lyxfont.[Ch]: removed latexWriteStartChanges, and
1222         latexWriteEndChanges, they were not used.
1223         
1224         * src/layout.h (operator<<): output operator for PageSides
1225
1226         * src/mathed/math_iter.C (my_memcpy): slightly changed.
1227
1228         * some example files: loaded in LyX 1.0.4 and saved again to update
1229         certain constructs (table format) 
1230
1231         * a lot of files: did the change to use fstream/iostream for all
1232         writing of files. Done with a close look at Andre Poenitz's patch.
1233
1234         * some files: whitespace changes.
1235         
1236 1999-12-06  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1237
1238         * src/mathed/math_iter.C (my_memcpy): new function. Since the
1239         built-in memcpy() is broken on egcs and gcc 2.95 for alpha
1240         architecture, we provide our own. It is used unconditionnally, but
1241         I do not think this is a performance problem. Thanks to Angus
1242         Leeming <a.leeming@ic.ac.uk> for the code (and again to Michal
1243         Jaegermann <michal@ellpspace.math.ualberta.ca> for finding it the
1244         first time).
1245         (GetInset): use my_memcpy.
1246         (Insert): ditto
1247         (Copy): ditto
1248
1249         * lib/chkconfig.ltx: some cleanup of the latex code. I am not sure
1250         it is easier to understand, but it uses less TeX-only constructs now.
1251
1252         * acinclude.m4 (LYX_SEARCH_PROG): make it work when the PATH
1253         elements contain spaces
1254
1255         * lib/configure: regenerated
1256         
1257         * lib/configure.m4 (SEARCH_PROG): make it work when the PATH
1258         elements contain spaces; display the list of programs that are
1259         tried.
1260
1261         * autogen.sh: make sure lib/configure is executable
1262
1263         * lib/examples/*: rename the tutorial examples to begin with the
1264         two-letters language code.
1265
1266         * src/lyxfunc.C (getStatus): do not query current font if no
1267         buffer exists.
1268
1269         * src/lyx_cb.C (RunScript): use QuoteName
1270         (MenuRunDvips): ditto
1271         (PrintApplyCB): ditto
1272
1273         * src/support/filetools.[Ch] (QuoteName): new function. Add quotes
1274         around argument, so that it works well with the current shell.
1275         Does not work properly with OS/2 shells currently.
1276
1277         * src/LaTeXLog.C (ShowLatexLog): use Buffer::getLatexName
1278         * src/LyXSendto.C (SendtoApplyCB): ditto
1279         * src/lyxfunc.C (Dispatch): ditto
1280         * src/buffer.C (runLaTeX): ditto
1281         (runLiterate): ditto
1282         (buildProgram): ditto
1283         (runChktex): ditto
1284         * src/lyx_cb.C (RunScript): ditto
1285         (MenuMakeLaTeX): ditto
1286         
1287         * src/buffer.h (getLatexName): new method 
1288
1289         * src/support/filetools.C (MakeLatexName): renamed from SpaceLess
1290
1291 1999-12-02  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1292
1293         * images/sqrt.xpm: change name of the sqrt icon to sqrt_xpm.
1294         * src/mathed/math_panel.C (mathed_get_pixmap_from_icon): ditto
1295         (create_math_panel): ditto
1296
1297         * src/lyxfunc.C (getStatus): re-activate the code which gets
1298         current font and cursor; add test for export to html.
1299
1300         * src/lyxrc.C (read): remove unreachable break statements; add a
1301         few "using".
1302
1303         * src/bmtable.C (fl_set_bmtable_data): add a const_cast.
1304         
1305 1999-12-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
1306
1307         * src/mathed/formula.C (LocalDispatch): fix small whitspace bug
1308         introduced by faulty regex.
1309         * src/buffer.C: ditto
1310         * src/lastfiles.C: ditto
1311         * src/paragraph.C: ditto
1312         * src/table.C: ditto
1313         * src/vspace.C: ditto
1314         * src/insets/figinset.C: ditto
1315         Note: most of these is absolutely harmless, except the one in
1316         src/mathed formula.C.
1317
1318 1999-11-30  Kayvan A. Sylvan  <kayvan@satyr.sylvan.com>
1319
1320         * src/ImportNoweb.C (documentclass): fixed bounds for substr
1321           operation, yielding correct results for the reLyX command.
1322
1323 1999-12-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
1324
1325         * src/support/filetools.C (ExpandPath): removed an over eager
1326         Assert.
1327         (ReplaceEnvironmentPath): ditto
1328
1329         * src/toolbar.C (BubbleTimerCB): use C++ style casts. This clearly
1330         shows that we are doing something fishy in our code...
1331         (BubblePost): ditto
1332         (ToolbarCB): ditto
1333
1334         * src/lyxrc.C (read): use a double switch trick to get more help
1335         from the compiler. (the same trick is used in layout.C)
1336         (write): new function. opens a ofstream and pass that to output
1337         (output): new function, takes a ostream and writes the lyxrc
1338         elemts to it. uses a dummy switch to make sure no elements are
1339         forgotten. 
1340
1341         * src/lyxlex.h: added a struct pushpophelper for use in functions
1342         with more than one exit point.
1343
1344         * src/lyxlex.[Ch] (GetInteger): made it const
1345         (GetFloat): ditto
1346         (GetBool): ditto
1347
1348         * src/lyxfunc.C (Dispatch): added case for LFUN_SAVEPREFERENCES
1349
1350         * src/layout.[hC] : LayoutTags splitted into several enums, new
1351         methods created, better error handling cleaner use of lyxlex. Read
1352         the diff.
1353
1354         * src/bmtable.[Ch]: change some member prototypes because of the
1355         image const changes. 
1356
1357         * commandtags.h, src/LyXAction.C (init): new function:
1358         "preferences-save", saves the lyxrc entries into .lyx/preferences.
1359         This file is not read automatically but you can add \input
1360         preferences to your lyxrc if you want to. We need to discuss how
1361         to handle this. 
1362
1363         * src/LaTeX.C (runBibTeX): use regex to match for the needed lines
1364         in .aux, also remove .bib and .bst files from dependencies when
1365         running bibtex.
1366
1367         * src/BufferView.C, src/LyXView.C: add const_cast several places
1368         because of changes to images.
1369
1370         * lib/images/*: same change as for images/*
1371         
1372         * lib/lyxrc.example: Default for accept_compound is false not no.
1373
1374         * images/*: changed to be const, however I have som misgivings
1375         about this change so it might be changed back.
1376
1377 1999-11-26  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1378
1379         * lib/configure, po/POTFILES.in: regenerated
1380
1381         * autogen.sh: autogenerate lib/configure from lib/configure.m4
1382
1383         * config/lib_configure.m4: removed
1384         
1385         * lib/configure.m4: new file (was config/lib_configure.m4)
1386
1387         * configure.in: do not test for rtti, since we do not use it.
1388         
1389 1999-11-26  Lars Gullik Bjønnes  <larsbj@lyx.org>
1390
1391         * src/support/lyxstring.C (lyxstring::Srep): Changed to use a
1392         doubling of allocated space scheme. This makes it faster for large
1393         strings end to use less memory for small strings. xtra rememoved. 
1394
1395         * src/insets/figinset.C (waitalarm): commented out.
1396         (GhostscriptMsg): use static_cast
1397         (GhostscriptMsg): use new instead of malloc to allocate memory for
1398         cmap. also delete the memory after use.
1399
1400         * src/lyx_cb.C (SetXtermCursor): made cursor_undefined a bool
1401
1402         * src/LaTeX.C (scanAux): new method. Scans the .aux file and looks
1403         for changes in bibtex database or style.
1404         (runBibTeX): remove all .bib and .bst files from dep before we
1405         begin. 
1406         (run): use scanAuc in when dep file already exist.
1407
1408         * src/DepTable.C (remove_files_with_extension): new method
1409         (exist): new method
1410
1411         * src/DepTable.[Ch]: made many of the methods const. 
1412
1413 1999-11-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1414
1415         * src/bufferparams.C: make sure that the default textclass is
1416         "article". It used to be the first one by description order, but
1417         now the first one is "docbook".
1418
1419         * src/lyx_main.C (setDebuggingLevel): change type of argument to
1420         string; call Debug::value.
1421         (easyParse): pass complete argument to setDebuggingLevel().
1422
1423         * src/debug.h (value): fix the code that parses debug levels.
1424
1425         * src/debug.h: add new debug type ACTION, reserved for LyXAction
1426         class.  
1427
1428         * src/LyXAction.C: use Debug::ACTION as debug channel.
1429
1430         * src/lyxlookup.C: make the debug statements go to Debug::KEY.
1431
1432         * NEWS: updated for the future 1.1.3 release.
1433
1434         * src/mathed/symbol_def.h: swap the definitions of \varepsilon and
1435         \epsilon. Now \epsilon shows as red text, and \varepsilon shows as
1436         it should. This is of course a controversial change (since many
1437         people will find that their lyx workscreen is suddenly full of
1438         red), but done for the sake of correctness.
1439
1440         * src/mathed/formulamacro.h, src/mathed/math_macro.[Ch],
1441           src/mathed/math_root.[Ch] (Clone): return a MathedInset*  
1442
1443         * src/insets/inseterror.h, src/insets/inseturl.h,
1444           src/insets/insetinfo.h, src/insets/figinset.h,
1445           src/mathed/formulamacro.h, src/mathed/math_macro.h
1446           (EditMessage): add a missing const and add _() to make sure that
1447         translation happens
1448
1449         * src/ImportNoweb.C, src/LyXAction.h, src/insets/figinset.C,
1450           src/insets/insetbib.C, src/support/filetools.C: add `using'
1451         directives for cxx.  
1452
1453         * src/lyxfunc.C (Dispatch): make sure nothing bad happens when
1454         doing 'Insert index of last word' at the beginning of a paragraph.
1455
1456 1999-11-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
1457
1458         * several files: white-space changes.
1459
1460         * src/mathed/formula.C: removed IsAlpha and IsDigit
1461
1462         * src/insets/insetbib.C (getKeys): use findtexfile to look for the
1463         .bib file. use a ifstream instead of FilePtr when parsing the .bib
1464         file for keys.
1465
1466         * src/insets/figinset.C (GetPSSizes): don't break when
1467         "EndComments" is seen. But break when a boundingbox is read.
1468
1469         * all classes inherited from Inset: return value of Clone
1470         changed back to Inset *.
1471
1472         * all classes inherited form MathInset: return value of Clone
1473         changed back to MathedInset *.
1474         
1475         * src/insets/figinset.C (runqueue): use a ofstream to output the
1476         gs/ps file. Might need some setpresicion or setw. However I can
1477         see no problem with the current code.
1478         (runqueue): use sleep instead of the alarm/signal code. I just
1479         can't see the difference.
1480
1481         * src/paragraph.C (LyXParagraph): reserve space in the new
1482         paragraph and resize the inserted paragraph to just fit.
1483
1484         * src/lyxfunc.h (operator|=): added operator for func_status.
1485
1486         * src/lyxfunc.C (MenuNew): use FileInfo instead of FilePtr to
1487         check for readable file.
1488
1489         * src/lyx_cb.C (MenuMakeLaTeX): use FileInfo instead of FilePtr to
1490         check for readable file.
1491         (MenuMakeLinuxDoc): ditto
1492         (MenuMakeDocBook): ditto
1493         (MenuMakeAscii): ditto
1494         (InsertAsciiFile): split the test for openable and readable
1495
1496         * src/bmtable.C (draw_bitmaptable): use
1497         fl_state[fl_get_vclass()].depth instead of DefualtScreen.
1498
1499         * src/LaTeX.C, src/support/filetools.[Ch]: moved do_popen and
1500         findtexfile from LaTeX to filetools.
1501         
1502         * src/ImportNoweb.C (documentclass): rewrote to use ifstream
1503         instead of FilePtr. Needs to be verified by a literate user.
1504
1505 1999-11-23  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1506
1507         * src/mathed/formula.[Ch] (GetCursorPos): add a missing 'const'.
1508         (EditMessage): likewise.
1509
1510         * src/paragraph.C (SimpleTeXSpecialChars): output ~ and ^
1511         respectively as \textasciitilde and \textasciicircum.
1512
1513 1999-11-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
1514
1515         * src/support/lyxstring.h: made the methods that take iterators
1516         use const_iterator.
1517
1518         * src/support/lstrings.C (countChar): use std::cound(itr, itr, val)
1519         (regexMatch): made is use the real regex class.
1520
1521         * src/support/Makefile.am: changed to use libtool
1522
1523         * src/support/.cvsignore: added *.lo, .libs and libsupport.la
1524
1525         * src/mathed/math_defs.h: made the mathaligns be in a enum instead
1526         of defines.
1527         (MathIsInset ++): changed several macros to be inline functions
1528         instead. 
1529
1530         * src/mathed/Makefile.am: changed to use libtool
1531
1532         * src/mathed/.cvsignore: added *.lo, .libs and libmathed.la
1533
1534         * src/insets/inset* : Clone changed to const and return type is
1535         the true insettype not just Inset*.
1536         
1537         * src/insets/Makefile.am: changed to use libtool
1538
1539         * src/insets/.cvsignore: added *.lo, .libs and libinsets.la
1540
1541         * src/undo.[Ch] : added empty() and changed some of the method
1542         names.
1543         
1544         * src/texrow.[Ch]: rewrote to store texrow's in a std::list.
1545
1546         * src/lyxparagraph.h: use id() and id(...) instead of getID and
1547         setID use block<> for the bullets array, added const several places.
1548
1549         * src/lyxfunc.C (getStatus): new function
1550
1551         * src/lyxfunc.[Ch] : small changes to take advantage of the new
1552         LyXAction, added const to several funtions.
1553
1554         * src/filedlg.[Ch]: rewrote to store userchache and groupchache in
1555         a std::map, and to store the dir items in a vector.
1556
1557         * src/Makefile.am (lyx_DEPENDENCIES): changed to use libtool files
1558         as dependencies.
1559
1560         * src/LyXView.[Ch] + other files : changed currentView to view.
1561         
1562         * src/LyXAction.[Ch] : ported from the old devel branch.
1563         
1564         * src/.cvsignore: added .libs and a.out
1565
1566         * configure.in : changes to use libtool. 
1567
1568         * acinclude.m4 : inserted libtool.m4
1569
1570         * .cvsignore: added libtool
1571
1572 1999-11-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1573
1574         * src/Makefile.am (lyx_DEPENDENCIES): give the explicit object
1575         file name in insets and mathed directories (otherwise the
1576         dependency is not taken in account under cygwin).
1577
1578         * src/text2.C (InsertString[AB]): make sure that we do not try to
1579         read characters past the string length.
1580
1581 1999-11-18  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1582
1583         * lib/doc/LaTeXConfig.lyx.in, 
1584           lib/chkconfig.ltx: remove the test for linuxdoc-sgml.sty.
1585
1586         * src/buffer.C (writeFile): Do not add a comment on top of .lyx
1587         file saying who created them and when this heppened; this is
1588         useless and annoys tools like cvs.
1589
1590         * lib/layouts/g-brief-{en,de}.layout,
1591           lib/templates/g-brief-{en,de}.lyx: new versions of the textclass
1592         from Thomas Hartkens <thomas@hartkens.de>.
1593
1594         * src/{insets,mathed}/Makefile.am: do not declare an empty
1595         LDFLAGS, so that it can be set at configure time (useful on Irix
1596         for -n32 flag).
1597
1598         * lib/reLyX/configure.in: make sure that the prefix is set
1599         correctly in LYX_DIR.
1600
1601 1999-11-18  André Pönitz <poenitz@mathematik.tu-chemnitz.de>
1602
1603         * src/commandtags.h: introduction of a new tag 'LFUN_SEQUENCE' to
1604         be used by 'command-sequence' this allows to bind a key to a
1605         sequence of LyX-commands
1606         (Example: 'command-sequence math-insert alpha; math-insert beta;")
1607
1608         * src/LyXAction.C: add "command-sequence"
1609
1610         * src/LyXFunction.C: handling of "command-sequence"
1611
1612         * src/LyXFunction.[hC] changed LyXFunc::Dispatch(string const
1613          &cmd, string const &arg) to LyXFunc::Dispatch(string const& s)
1614
1615         * src/lyxserver.C, src/minibuffer.C: Use this new interface
1616
1617 1999-11-17  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1618
1619         * src/buffer.C (writeFile): Do not output a comment giving user
1620         and date at the beginning of a .lyx file. This is useless and
1621         annoys cvs anyway; update version number to 1.1.
1622
1623         * src/Makefile.am (LYX_DIR): add this definition, so that a
1624         default path is hardcoded in LyX.
1625
1626         * configure.in: Use LYX_GNU_GETTEXT.
1627
1628         * acinclude.m4 (LYX_GNU_GETTEXT): new macro, essentially a copy of
1629         AM_GNU_GETTEXT with a bug fixed. 
1630
1631         * src/lyx_cb.C (RunLinuxDoc): add a cast to please dec cxx.
1632
1633         * src/chset.C: add "using std::ifstream;" to please dec cxx.
1634
1635         * src/lyx_main.C (init), INSTALL.OS2: the environment variable
1636         which is used to point to LyX data is now LYX_DIR_11x.
1637
1638         * lyx.man: convert to a unix text file; small updates.
1639
1640 1999-11-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
1641
1642         * src/support/LSubstring.[Ch]: made the second arg of most of the
1643         constructors be a const reference. 
1644
1645         * src/mathed/math_parser.C (LexInitCodes): small bug introduced by
1646         me fixed.
1647
1648         * src/support/lyxstring.[Ch] (swap): added missing member function
1649         and specialization of swap(str, str); 
1650
1651         * src/menus.C (ShowBufferMenu): to use the new BufferStorage
1652
1653         * src/bufferlist.[Ch]: use the new BufferStorage class and remove all
1654         trace of the old one.
1655
1656         * src/undo.[Ch]: made the undostack use std::list to store undo's in
1657         put the member definitions in undo.C.
1658
1659         * src/lyxparagraph.h, src/paragraph.C + a lot of files: removed
1660         NEW_TEXT and have now only code that was included when this was
1661         defined. 
1662
1663         * src/intl.C (LCombo): use static_cast
1664         (LCombo2): ditto
1665         (DispatchCallback): ditto
1666
1667         * src/definitions.h: removed whole file
1668         
1669         * src/commandtags.h: comment out LFUN_INSERT_INSET_LATEX
1670
1671         * src/chset.[Ch]: a lot rewritten, does not use lyxlex for cdef
1672         parsing and stores in a std:map. a regex defines the file format.
1673         removed unneeded members.
1674
1675         * src/bufferparams.h: added several enums from definitions.h here.
1676         Removed unsused destructor. Changed some types to use proper enum
1677         types. use block to have the temp_bullets and user_defined_bullets
1678         and to make the whole class assignable.
1679
1680         * src/bufferparams.C (Copy): removed this functions, use a default
1681         assignment instead. 
1682
1683         * src/buffer.h: made isLatex, isLinuxDoc, isDocBook, isSGML and
1684         isLiterate const.
1685
1686         * src/buffer.C (readLyXformat2): commend out all that have with
1687         oldpapersize to do. also comment out all that hve to do with
1688         insetlatex and insetlatexdel. 
1689         (setOldPaperStuff): commented out
1690
1691         * src/Makefile.am (lyx_SOURCES): remove definitions.h, add undo.C
1692
1693         * src/LyXAction.C: remove use of inset-latex-insert
1694
1695         * src/mathed/math_panel.C (button_cb): use static_cast
1696
1697         * src/insets/Makefile.am (insets_o_SOURCES): removed
1698         insetlatex.[Ch] 
1699
1700         * src/support/lyxstring.C (helper): use the unsigned long
1701         specifier, UL, instead of a static_cast.
1702
1703         * src/support/Makefile.am (libsupport_a_SOURCES): added block.h
1704
1705         * src/support/block.h: new file. to be used as a c-style array in
1706         classes, so that the class can be assignable.
1707
1708 1999-11-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1709
1710         * src/lyx_gui_misc.C (askForText): when fl_show_input() returns
1711         NULL, make sure to return an empty string (it is not possible to
1712         set a string to NULL).
1713
1714 1999-11-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1715
1716         * src/support/LRegex.C: use regex_t instead of re_pattern_buffer.
1717
1718         * src/support/lyxstring.C (helper): fix bogus cast in assertion.
1719
1720         * src/{mathed,insets}/Makefile.am (CXXLINK): add $(LDFLAGS) to the
1721         link line, so that Irix users (for example) can set it explicitely to
1722         "-n32".
1723         
1724         * src/Makefile.am (lyx_LDADD): use LYX_LIB as a variable, so that
1725         it can be overidden at make time (static or dynamic link, for
1726         example).
1727         
1728         * src/vc-backend.C, src/LaTeXFeatures.h, 
1729           src/support/LRegex.C, src/support/LRegex.h: add a few "using" 
1730         statements to bring templates to global namespace.
1731
1732 1999-11-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
1733
1734         * src/support/lyxstring.C (operator[] const): make it standard
1735         conforming. 
1736
1737         * src/minibuffer.C (Init): changed to reflect that more
1738         information is given from the lyxvc and need not be provided here.
1739
1740         * src/lyxvc.[Ch]: rewrote to use the vc-backend.
1741         
1742         * src/Makefile.am (lyx_SOURCES): add vc-backend.[Ch]
1743
1744         * src/LyXView.C (UpdateTimerCB): use static_cast
1745         (KeyPressMask_raw_callback): ditto
1746
1747         * src/BufferView.[Ch]: name change _owner -> owner_ and _buffer ->
1748         buffer_, a lot of changes because of this. currentBuffer() ->
1749         buffer(), setBuffer(...) -> buffer(...), getOwner() -> owner(),
1750         also changes to other files because of this.
1751
1752 1999-11-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
1753
1754         * src/vc-backend.[Ch]: new files. The backends for vc handling,
1755         have no support for RCS and partial support for CVS, will be
1756         improved later.
1757         
1758         * src/insets/ several files: changes because of function name
1759         changes in Bufferview and LyXView.
1760         
1761         * src/mathed/math_symbols.C (math_insert_symbol): use static_cast
1762
1763         * src/support/LSubstring.[Ch]: new files. These implement a
1764         Substring that can be very convenient to use. i.e. is this
1765         possible:
1766         string a = "Mary had a little sheep";
1767         Substring(a, "sheep") = "lamb";
1768         a is now "Mary has a little lamb".
1769
1770         * src/support/LRegex.[Ch]: a regex class that can be used to pick
1771         out patterns and subpatterns of strings. It is used by LSubstring
1772         and also by vc-backend.C
1773         
1774         * src/support/lyxstring.C: went over all the assertions used and
1775         tried to correct the wrong ones and flag which of them is required
1776         by the standard. some bugs found because of this. Also removed a
1777         couple of assertions.
1778
1779         * src/support/Makefile.am (libsupport_a_SOURCES): added
1780         LSubstring.[Ch] and LRegex.[Ch]
1781
1782         * src/support/FileInfo.h: have struct stat buf as an object and
1783         not a pointer to one, some changes because of this.
1784
1785         * src/LaTeXFeatures.C (getTClassPreamble): also use the
1786         information in layout when adding the layouts preamble to the
1787         textclass preamble.
1788
1789         * src/LaTeXFeatures.h: use a vector<bool> to store the layout
1790         usage in.
1791
1792         * configure.in (CPPFLAGS): use AC_CHECK_FUNCS to check for XOpenIM
1793         because of bug in OS/2.
1794
1795 1999-11-08  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1796
1797         * lib/layouts/lyxmacros.inc (lyxcode): set the font with
1798         \verbatim@font instead of \ttfamily, so that it can be redefined.
1799
1800         * src/BackStack.h, src/DepTable.C, src/DepTable.h, src/LaTeX.C,
1801           src/LaTeX.h, src/lastfiles.C, src/lastfiles.h, src/layout.C,
1802           src/layout.h, src/text2.C: add 'using' directive to bring the
1803         STL templates we need from the std:: namespace to the global one.
1804         Needed by DEC cxx in strict ansi mode.
1805
1806         * src/support/LIstream.h,src/support/LOstream.h,
1807           src/support/lyxstring.h,src/table.h,
1808           src/lyxlookup.h: do not include <config.h> in header
1809         files. This should be done in the .C files only.
1810
1811         * development/lyx.spec.in: WHATSNEW has been renamed to NEWS
1812         (from Kayvan).
1813         
1814
1815 1999-11-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1816
1817         * config/lib_configure.m4,lib/configure,lib/lyxrc.example: update
1818         from Kayvan to fix the tth invokation.
1819
1820         * development/lyx.spec.in: updates from Kayvan to reflect the
1821         changes of file names.
1822
1823 1999-11-05  Lars Gullik Bjønnes  <larsbj@lyx.org>
1824
1825         * src/text2.C (InsertStringB): use std::copy
1826         (InsertStringA): use std::copy
1827
1828         * src/bufferlist.C: use a vector to store the buffers in. This is
1829         an internal change and should not affect any other thing.
1830         
1831         * src/BufferView.C (waitForX): use XSync instead of the lengthy
1832         stuff in waitForX.
1833
1834         * src/text.C (Fill): fix potential bug, one off bug.
1835
1836 1999-11-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
1837
1838         * src/Makefile.am (lyx_main.o): add more files it depends on.
1839
1840         * src/lyx_cb.C (addNewlineAndDepth): parameters in wrong order.
1841
1842         * src/support/lyxstring.C: use size_t for the reference count,
1843         size, reserved memory and xtra.
1844         (internal_compare): new private member function. Now the compare
1845         functions should work for std::strings that have embedded '\0'
1846         characters.
1847         (compare): all compare functions rewritten to use
1848         internal_compare.
1849         
1850 1999-11-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
1851
1852         * src/support/lyxstring.C (compare): pass c_str()
1853         (compare): pass c_str
1854         (compare): pass c_str
1855
1856 1999-11-03  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1857
1858         * src/support/DebugStream.C: <config.h> was not included correctly.
1859
1860         * lib/configure: forgot to re-generate it :( I'll make this file
1861         auto generated soon.
1862
1863 1999-11-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
1864
1865         * acinclude.m4 (cross_compiling): add -fpermissive when gcc 2.95.x
1866         is used.
1867
1868         * src/support/lyxstring.C: some changes from length() to rep->sz.
1869         avoids a function call.
1870
1871         * src/support/filetools.C (SpaceLess): yet another version of the
1872         algorithm...now per Jean-Marc's suggestions.
1873
1874 1999-11-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
1875
1876         * src/layout.C (less_textclass_desc): functor for use in sorting
1877         of textclasses. 
1878         (LyXTextClass::Read): sort the textclasses after reading.
1879         
1880         * src/support/filetools.C (SpaceLess): new version of the
1881         SpaceLess functions. What problems does this one give? Please
1882         report.
1883
1884         * images/banner_bw.xbm: made the arrays unsigned char *
1885
1886 1999-11-02  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1887
1888         * src/support/lyxstring.C (find): remove bogus assertion in the
1889         two versions of find where this has not been done yet.
1890
1891         * src/support/lyxlib.h: add missing int return type to
1892         lyx::chdir(). 
1893
1894         * src/menus.C (ShowFileMenu): disable exporting to html if no
1895         html export command is present.
1896
1897         * config/lib_configure.m4: add a test for an HTML converter. The
1898         programs checked for are, in this order: tth, latex2html and
1899         hevea. 
1900
1901         * lib/configure: generated from config/lib_configure.m4.
1902
1903         * src/lyxfunc.C (Dispatch): update and improve the execution of an
1904         html converter. The parameters are now passed through $$FName and
1905         $$OutName, instead of standard input/output.
1906
1907         * src/lyxrc.{C,h}: rename \tth_command to \html_command.
1908
1909         * lib/lyxrc.example: update description of \html_command. 
1910         add "quotes" around \screen_font_xxx font setting examples to help
1911         people who use fonts with spaces in their names.
1912
1913 1999-11-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
1914
1915         * Distribution files: updates for v1.1.2
1916
1917         * src/support/lyxstring.C (find): remove bogus assert and return
1918         npos for the same condition.
1919
1920 1999-11-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
1921
1922         * added patch for OS/2 from SMiyata.
1923
1924 1999-10-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
1925
1926         * src/text2.C (CutSelection): make space_wrapped a bool
1927         (CutSelection): dont declare int i until we have to.
1928         (alphaCounter): return a char const *.
1929
1930 1999-10-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1931
1932         * src/support/syscall.C (Systemcalls::kill): 
1933           src/support/filetools.C (PutEnv, PutEnvPath): 
1934           src/lyx_cb.C (addNewlineAndDepth): 
1935           src/FontInfo.C (FontInfo::resize): condition some #warning
1936         directives with WITH_WARNINGS.
1937         
1938
1939 1999-10-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
1940
1941         * src/layout.[Ch] + several files: access to class variables
1942         limited and made accessor functions instead a lot of code changed
1943         becuase of this. Also instead of returning pointers often a const
1944         reference is returned instead.
1945         
1946         * src/form1.C (create_form_Figure): added a couple fo "no-c-format"
1947
1948         * src/Makefile.am (dist-hook): added used to remove the CVS from
1949         cheaders upon creating a dist
1950         (EXTRA_DIST): added cheaders
1951
1952         * src/support/lstrings.C (tostr(char)): fix it to handle param as
1953         a character not as a small integer. 
1954
1955         * src/support/lyxstring.C (find): removed Assert and added i >=
1956         rep->sz to the first if.
1957
1958 1999-10-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
1959
1960         * src/layout.[Ch] src/BufferView.C src/LaTeXFeatures.C
1961         src/LyXView.C src/buffer.C src/bufferparams.C
1962         src/lyx_cb.C src/lyxfunc.C src/paragraph.C src/text.C 
1963         src/text2.C src/insets/insetinclude.C:
1964         lyxlayout renamed to textclasslist.
1965
1966         * src/layout.C: some lyxerr changes.
1967
1968         * src/layout.[Ch] (LyXLayout::Read): changed second paramter to
1969         LyXTextClass. rewrote LT_COPYSTYLE, rewrote LT_OBSOLETEDBY
1970         (LyXLayoutList): removed all traces of this class.
1971         (LyXTextClass::Read): rewrote LT_STYLE
1972         (LyXTextClass::hasLayout): new function
1973         (LyXTextClass::GetLayout): rewritten to return an iterator + has
1974         both const and nonconst version.
1975         (LyXTextClass::delete_layout): new function.
1976         (LyXTextClassList::Style): bug fix. do the right thing if layout
1977         is to big.
1978         (LyXTextClassList::NumberOfLayout): new acces to layoutlist.
1979         (LyXTextClassList::NameOfLayout): ditto 
1980         (LyXTextClassList::Load): ditto
1981
1982         * src/buffer.C (makeLaTeXFile): new access to layoutlist
1983
1984         * src/LaTeXFeatures.C (getTClassPreamble): new access to layoutlist
1985
1986         * src/LyXAction.C (LookupFunc): added a workaround for sun
1987         compiler, on the other hand...we don't know if the current code
1988         compiles on sun at all...
1989
1990         * src/support/filetools.C (CleanupPath): subst fix
1991
1992         * src/insets/insetbib.C (delDatabase): subst fix, this looks
1993         _really_ weird.
1994
1995         * src/support/filetools.C (PutEnvPath): subst fix, how come nobody
1996         complained about this one?
1997
1998         * src/insets/insetinclude.C (Latex): subst fix
1999
2000         * src/insets/insetbib.C (getKeys): subst fix
2001
2002         * src/LyXSendto.C (SendtoApplyCB): subst fix
2003
2004         * src/lyx_main.C (init): subst fix
2005
2006         * src/layout.C (Read): subst fix
2007
2008         * src/lyx_sendfax_main.C (button_send): subst fix
2009
2010         * src/buffer.C (RoffAsciiTable): subst fix
2011
2012         * src/lyx_cb.C (MenuFax): subst fix
2013         (PrintApplyCB): subst fix
2014
2015 1999-10-26  Juergen Vigna  <jug@sad.it>
2016
2017         * src/table.C (TexEndOfCell) + (DocBookEndOfCell): removed some #if 0
2018
2019         (Read): Cleaned up this code so now we read only format vestion >= 5
2020
2021 1999-10-26  Lars Gullik Bjønnes  <larsbj@lyx.org>
2022
2023         * src/support/filetools.C (PutEnvPath): subst fix for EMX, how
2024         come nobody has complained about this one?
2025
2026         * src/insets/insetinclude.C (Latex): subst fix
2027
2028         * src/insets/insetbib.C (getKeys): subst fix
2029
2030         * src/lyx_main.C (init): subst fix
2031
2032         * src/layout.C (Read): subst fix
2033
2034         * src/buffer.C (RoffAsciiTable): subst fix
2035
2036         * src/lyx_cb.C (MenuFax): subst fix.
2037
2038         * src/layout.[hC] + some other files: rewrote to use
2039         std::container to store textclasses and layouts in.
2040         Simplified, removed a lot of code. Make all classes
2041         assignable. Further simplifications and review of type
2042         use still to be one. 
2043
2044         * src/menus.C (ShowFileMenu/ShowFileMenu2): Use the iterators from
2045         lastfiles to create the lastfiles partr of the menu.
2046
2047         * src/lastfiles.[Ch]: rewritten to use deque to store the
2048         lastfiles in. Uses fstream for reading and writing. Simplifies
2049         code.
2050
2051         * src/support/syscall.C: remove explicit cast.
2052
2053         * src/BufferView.C (CursorToggleCB): removed code snippets that
2054         were commented out.
2055         use explicat C++ style casts instead of C style casts. also use
2056         u_vdata instea of passing pointers in longs.
2057
2058         * src/PaperLayout.C: removed code snippets that were commented out.
2059
2060         * src/lyx_gui_misc.C: removed code snippets that were commented out. 
2061
2062         * src/lyx_main.C: removed code snippets that wer commented out.
2063
2064         * src/paragraph.C: removed code snippets that were commented out.
2065
2066         * src/lyxvc.C (logClose): use static_cast
2067         (logUpdate): ditto
2068         (viewLog): remove explicit cast to void*
2069         (showLog): removed old commented code
2070
2071         * src/menus.C: use static_cast instead of C style casts. use
2072         u_vdata instead of u_ldata. remove explicit cast to (long) for
2073         pointers. Removed old code that was commented out.
2074
2075         * src/insets/inset.C: removed old commented func
2076
2077         * src/insets/insetref.C (InsetRef): removed old code that had been
2078         commented out for a long time.
2079         (Edit): ditto
2080         (escape): removed C style cast
2081
2082         * src/insets/insetlatexaccent.C (Draw): removed old commented code
2083
2084         * src/insets/insetlatex.C (Draw): removed old commented code
2085         (Read): rewritten to use string
2086
2087         * src/insets/insetlabel.C (escape): removed C style cast
2088
2089         * src/insets/insetindex.h: removed vdata and ldata from FD_index_form
2090
2091         * src/insets/insetindex.C: use static_cast and u_vdata, removed
2092         old commented code.
2093
2094         * src/insets/insetinclude.h: removed a couple of stupid bools
2095
2096         * src/insets/insetinclude.C (include_cb): use static_cast and u_data.
2097         (Clone): remove C style cast
2098         (getKeys): changed list to lst because of std::list
2099
2100         * src/insets/inseterror.C (Draw): removed som old commented code.
2101
2102         * src/insets/insetcommand.C (Draw): removed some old commented code.
2103
2104         * src/insets/insetbib.C (bibitem_cb): removed code that has been
2105         commented out forever.
2106         (bibitem_cb): use static_cast instead of C style cast
2107         use of vdata changed to u_vdata.
2108
2109         * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forward the data
2110         parameter.
2111         (CloseUrlCB): use static_cast instead of C style cast.
2112         (CloseUrlCB): added a fl_free form...it seemed to be missing.
2113
2114         * src/insets/insetinfo.C (Edit): pass object in u_vdata instead
2115         (C_InsetInfo_CloseInfoCB): forward the ob parameter
2116         (CloseInfoCB): static_cast from ob->u_vdata instead.
2117         (Edit): removed bogus arg from fl_set_object_shortcut, set to 1
2118         instead. 
2119
2120         * src/insets/inseterror.C (Edit): pass object in u_vdata instead
2121         (C_InsetError_CloseErrorCB): forward the ob parameter
2122         (CloseErrorCB): static_cast from ob->u_vdata instead.
2123
2124         * src/vspace.h: include LString.h since we use string in this class.
2125
2126         * src/vspace.C (lyx_advance): changed name from advance because of
2127         nameclash with stl. And since we cannot use namespaces yet...I
2128         used a lyx_ prefix instead. Expect this to change when we begin
2129         using namespaces.
2130
2131         * src/BufferView.[Ch] (BufferView::~BufferView): removed 
2132
2133         * src/BackStack.h: rewrote to use std::stack. made BackStackItem
2134         and removed now defunct constructor and deconstructor.
2135
2136         * src/BufferView.h: have backstack as a object not as a pointer.
2137         removed initialization from constructor. added include for BackStack 
2138
2139         * development/lyx.spec.in (%build): add CFLAGS also.
2140
2141         * src/screen.C (drawFrame): removed another warning.
2142
2143 1999-10-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2144
2145         * renamed WHATSNEW to NEWS (usual GNU style), CHANGES to
2146         OLD-CHANGES (not used anymore) and modified INSTALL, INSTALL.OS2,
2147         README and ANNOUNCE a bit for the next release. More work is
2148         needed, of course.
2149
2150         * src/paragraph.C (SimpleTeXBlanks): spaces are automatically made
2151         unbreakable if we are in freespacing mode (LyX-Code), but not in
2152         latex mode.
2153
2154 1999-10-25  Lars Gullik Bjønnes  <larsbj@lyx.org>
2155
2156         * src/BackStack.h: fixed initialization order in constructor
2157
2158         * Makefile.am (MAINTAINERCLEANFILES): removed po/POTFILES.in
2159
2160         * acinclude.m4 (VERSION): new rules for when a version is
2161         development, added also a variable for prerelease.
2162         (warnings): we set with_warnings=yes for prereleases
2163         (lyx_opt): prereleases compile with same optimization as development 
2164         (CXXFLAGS): only use pedantic if we are a development version 
2165
2166         * src/BufferView.C (restorePosition): don't do anything if the
2167         backstack is empty.
2168
2169         * src/BackStack.h: added member empty, use this to test if there
2170         is anything to pop...
2171
2172 1999-10-25  Juergen Vigna  <jug@sad.it>
2173
2174         * forms/form1.fd +
2175         * forms/layout_forms.fd +
2176         * forms/latexoptions.fd +
2177         * lyx.fd: changed for various form resize issues
2178
2179         * src/mathed/math_panel.C +
2180         * src/insets/inseterror.C +
2181         * src/insets/insetinfo.C +
2182         * src/insets/inseturl.C +
2183         * src/insets/inseturl.h +
2184         * src/LaTeXLog.C +
2185         * src/LyXSendto.C +
2186         * src/PaperLayout.C +
2187         * src/ParagraphExtra.C +
2188         * src/TableLayout.C +
2189         * src/form1.C +
2190         * src/layout_forms.C +
2191         * src/lyx.C +
2192         * src/lyx_cb.C +
2193         * src/lyx_gui.C +
2194         * src/lyxfr0.C +
2195         * src/lyxfunc.C +
2196         * src/lyxvc.C +
2197         * src/menus.C: fixed various resize issues. So now forms can be
2198         resized savely or not be resized at all.
2199         
2200         * forms/form_url.fd +
2201         * src/insets/form_url.[Ch]: added because it's cleaner and easier
2202         to modify IMO.
2203
2204         * src/insets/Makefile.am: added files form_url.[Ch]
2205         
2206 1999-10-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2207
2208         * INSTALL: it is now possible to compile LyX with digital C++ 6.1
2209         (and presumably 6.2).
2210
2211         * src/{BufferView,LyXView,combox,filedlg,intl,lyxserver,lyxvc,
2212         menus,minibuffer,toolbar}.{C,h}: added C_xxx wrappers around
2213         remaining static member callbacks. 
2214
2215         * src/lyxfunc.C (Dispatch): Use _() instead of N_() fot minibuffer
2216         messages. 
2217
2218         * src/support/lyxstring.h: declare struct Srep as friend of
2219         lyxstring, since DEC cxx complains otherwise.
2220
2221 1999-10-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
2222
2223 1999-10-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
2224
2225         * src/LaTeX.C (run): made run_bibtex also depend on files with
2226         extension ".bst"
2227         (runBibTeX): added scans for "\\bibstyle", now also ".bst" files
2228         are put into the dependency file.
2229
2230         * src/spellchecker.C (create_ispell_pipe): removed old #warning,
2231         the code has shown itself to work
2232         (create_ispell_pipe): removed another warning, added a comment
2233         instead. 
2234
2235         * src/minibuffer.C (ExecutingCB): removed code that has been
2236         commented out a long time
2237
2238         * src/lyxfunc.C (processKeyEvent): removed some very old commented
2239         out code + a warning.
2240
2241         * src/support/lyxstring.h: comment out the three private
2242         operators, when compiling with string ansi conforming compilers
2243         they make problems.
2244
2245         * src/mathed/math_symbols.C (AddBitmap): change 6th arg to be
2246         unsigned char *.
2247         (pixmapFromBitmapData): change type of bdata to be unsigned char *
2248         (pixmapFromBitmapData): add a reinterpret_cast in the call to
2249         XCreateImage
2250
2251         * src/mathed/math_panel.h: change 6th arg to AddBitmap to be
2252         unsigned char *
2253
2254         * src/mathed/math_panel.C (create_math_panel): remove explicit
2255         casts
2256
2257         * src/bmtable.h: change last paramter to fl_set_bmtable_data to be
2258         unsigned char *.
2259
2260         * src/bmtable.C (struct BMTABLE_SPEC): make bdata unsigned char *
2261         (draw_bitmaptable): add a reinterpret_cast to sp->bdata in the call
2262         to XCreatePixmapFromBitmapData
2263         (fl_set_bmtable_data): change the last argument to be unsigned
2264         char *
2265         (fl_set_bmtable_file): change bdata to unsinged char *, change bw
2266         and bh to be unsigned int, remove explicit casts in call to
2267         XReadBitmapFileData.
2268
2269         * images/arrows.xbm: made the arrays unsigned char *
2270         * images/varsz.xbm: ditto
2271         * images/misc.xbm: ditto
2272         * images/greek.xbm: ditto
2273         * images/dots.xbm: ditto
2274         * images/brel.xbm: ditto
2275         * images/bop.xbm: ditto
2276
2277         * Makefile.am (MAINTAINERCLEANFILES): added po/POTFILES.in
2278
2279         * acinclude.m4 (LYX_GXX_STRENGHT_REDUCE): removed. 
2280         (LYX_PROG_CXX): added -pedantic to g++ compile options when
2281         with-warnings, removed the __STRING_ANSI__ hack, seems to not be
2282         needed. 
2283         (LYX_CXX_CHEADERS): added <clocale> to the test. 
2284
2285 1999-10-23  Lars Gullik Bjønnes  <larsbj@lyx.org>
2286
2287         * src/lyx_cb.C (addNewlineAndDepth): changed to use string::append.
2288
2289         * src/support/lyxstring.C (append): fixed something that must be a
2290         bug, rep->assign was used instead of rep->append.
2291
2292         * src/support/Makefile.am (libsupport_a_SOURCES): added LIstream.h
2293         and LOstream.h
2294
2295         * src/lyxfunc.C (processKeyEvent): removed faulty line that made
2296         lyx insert double chars. Fix spotted by Kayvan.
2297
2298 1999-10-23  Asger Alstrup Nielsen  <alstrup@alstrup.galaxy.dk>
2299
2300         * Fixed the tth support. I messed up with the Emacs patch apply feature
2301         and omitted the changes in lyxrc.C.
2302
2303 1999-10-22  Juergen Vigna  <jug@sad.it>
2304
2305         * src/insets/figinset.C (CallbackFig): Just changed the defines a bit.
2306
2307         * src/lyx_cb.C (MenuInsertRef) + 
2308         * src/lyx_gui.C (create_forms): Inserted fl_set_form_minsize so that
2309         the form cannot be resized under it limits (fixes a segfault)
2310         
2311         * src/lyx.C (create_form_form_ref) +
2312         * forms/lyx.fd: Changed Gravity on name input field so that it is
2313         resized correctly.
2314
2315 1999-10-22  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2316
2317         * configure.in: use LYX_CXX_STL_MODERN_STREAMS; check for headers
2318         <ostream> and <istream>.
2319         
2320         * acinclude.m4 (LYX_CXX_STL_MODERN_STREAMS): new test. Checks
2321         whether <fstream> provides the latest standard features, or if we
2322         have an oldstyle library (like in egcs).
2323         (LYX_CXX_STL_STRING): fix the test.
2324
2325         * src/support/DebugStream.{C,h}: use L{I,O}stream.h and condition the
2326         code on MODERN_STL_STREAM.
2327
2328         * src/support/lyxstring.h: use L{I,O}stream.h.
2329
2330         * src/support/L{I,O}stream.h: new files, designed to setup
2331         correctly streams for our use
2332           - includes the right header depending on STL capabilities
2333           - puts std::ostream and std::endl (for LOStream.h) or
2334           std::istream (LIStream.h) in toplevel namespace.
2335
2336 1999-10-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
2337
2338         * src/LaTeX.C (run): added a check in 0 sumchange so that if it
2339         was a bib file that had been changed we ensure that bibtex is run.
2340         (runBibTeX): enhanced to extract the names of the bib files and
2341         getting their absolute path and enter them into the dep file.
2342         (findtexfile): static func that is used to look for tex-files,
2343         checks for absolute patchs and tries also with kpsewhich.
2344         Alternative ways of finding the correct files are wanted. Will
2345         probably be moved.
2346         (do_popen): function that runs a command using popen and returns
2347         the whole output of that command in a string. Should be moved to
2348         somewhere else.
2349
2350         * src/DepTable.[Ch] (extchanged): new function that returns true if a
2351         file with extension ext has changed.
2352
2353         * src/insets/figinset.C: added ifdef guards around the fl_free
2354         code that jug commented out. Now it is commented out when
2355         compiling with XForms == 0.89.
2356
2357         * src/support/lyxstring.C: moved the definition of lyxstring::Srep
2358         to lyxstring.C, and only keep a forward declaration in
2359         lyxstring.h. Simplifies the header file a bit and should help a
2360         bit on compile time too. Also changes to Srep will not mandate a
2361         recompile of code just using string.
2362         (~lyxstring): definition moved here since it uses srep.
2363         (size): definition moved here since it uses srep.
2364
2365         * src/support/lyxstring.h: removed a couple of "inline" that should
2366         not be there.
2367
2368 1999-10-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2369
2370         * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forgot to pass
2371         the 'ob' argument.
2372
2373 1999-10-21  Juergen Vigna  <jug@sad.it>
2374
2375         * src/table.C (SetPWidth): Just a small fix so the alignment is not
2376         set to left if I just remove the width entry (or it is empty).
2377
2378         * src/text2.C (SetCursorIntern): Fixed a bug calculating to use wrong
2379         paragraph when having dummy paragraphs.
2380
2381 1999-10-20  Juergen Vigna  <jug@sad.it>
2382
2383         * src/insets/figinset.C: just commented some fl_free_form calls
2384         and added warnings so that this calls should be activated later
2385         again. This avoids for now a segfault, but we have a memory leak!
2386
2387         * src/lyxfunc.C (processKeyEvent) (Dispatch): changed
2388         'const char * argument' to 'string argument', this should
2389         fix some Asserts() in lyxstring.C.
2390
2391         * src/lyxfunc.h: Removed the function argAsString(const char *)
2392         as it is not used anymore.
2393
2394 1999-10-20  Lars Gullik Bjønnes  <larsbj@lyx.org>
2395
2396         * src/support/lyxstring.C (getline): reads now _all_ chars. uses
2397         get instead of >>
2398
2399         * src/Literate.h: some funcs moved from public to private to make
2400         interface clearer. Unneeded args removed.
2401
2402         * src/Literate.C (scanLiterateLogFile): rewritten to use iostream
2403         instead of lyxlex.
2404         (scanBuildLogFile): ditto
2405
2406         * src/LaTeX.C (scanLogFile): merged LaTeX Error handling into
2407         normal TeX Error. Still room for improvement.
2408
2409         * src/LaTeX.[Ch]: removed scanError. Wrong place and not needed.
2410
2411         * src/buffer.C (insertErrors): changes to make the error
2412         desctription show properly.
2413
2414         * src/LaTeX.C (deplog): removed the test for file in lyx doc dir.
2415         could never happen
2416
2417         * src/support/lyxstring.C (helper): changed to use
2418         sizeof(object->rep->ref).
2419         (operator>>): changed to use a pointer instead.
2420
2421         * src/support/lyxstring.h: changed const reference & to value_type
2422         const & lets see if that helps.
2423
2424 1999-10-19  Lars Gullik Bjønnes  <larsbj@lyx.org>
2425
2426         * Makefile.am (rpmdist): fixed to have non static package and
2427         verison.
2428
2429         * src/support/lyxstring.C: removed the compilation guards
2430
2431         * src/vspace.C (nextToken): use i + 1  instead of ++i. Maks things
2432         a bit clearer.
2433
2434         * src/support/Makefile.am (LYXSTRING): bruker USE_LYXSTRING for
2435         conditional compile of lyxstring.Ch
2436
2437         * acinclude.m4 (LYX_CXX_STL_STRING): new and improved, still a
2438         stupid check, but it is a lot better than the bastring hack. 
2439         (LYX_CXX_STL_STRING): bruker nå AM_CONDITIONAL(USE_LYXSTRING  
2440
2441         * several files: changed string::erase into string::clear. Not
2442         really needed.
2443         
2444         * src/chset.C (encodeString): use a char temporary instead
2445
2446         * src/table.C (TexEndOfCell): added tostr around
2447         column_of_cell(fcell+i)+1 and around right_column_of_cell(fcell+i)+1
2448         (TexEndOfCell): ditto
2449         (TexEndOfCell): ditto
2450         (TexEndOfCell): ditto
2451         (DocBookEndOfCell): ditto
2452         (DocBookEndOfCell): ditto
2453         (DocBookEndOfCell): ditto
2454         (DocBookEndOfCell): ditto
2455
2456         * src/paragraph.C (TeXEnvironment): added tostr around foot_count -1
2457
2458         * src/lyxfr1.C (SearchReplaceAllCB): added tostr around replace_count
2459
2460         * src/lyx_cb.C (MenuRunLaTeX): added tostr around ret
2461         (MenuBuildProg): added tostr around ret
2462         (MenuRunChktex): added tostr around ret
2463         (DocumentApplyCB): added tostr around ret
2464
2465         * src/chset.C (encodeString): added tostr around t->ic
2466
2467         * src/buffer.C (makeLaTeXFile): added tostr around secnumdepth
2468         (makeLaTeXFile): added tostr around tocdepth
2469         (makeLaTeXFile): added tostr around ftcound - 1
2470
2471         * src/insets/insetbib.C (setCounter): added tostr around counter.
2472
2473         * src/support/lyxstring.h: added an operator+=(int) to catch more
2474         mistakes. 
2475
2476         * src/support/lyxstring.C (lyxstring): We DON'T allow NULL pointers.
2477         (lyxstring): We DON'T allow NULL pointers.
2478
2479 1999-10-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2480
2481         * src/mathed/math_macro.C (MathMacroArgument::Write,
2482         MathMacroTemplate::WriteDef): add tostr() around macro arg numbers
2483         when writing them out.
2484
2485         * src/LString.C: remove, since it is not used anymore.
2486         
2487         * src/support/lyxstring.C: condition the content to
2488         USE_INCLUDED_STRING macro.
2489
2490         * src/mathed/math_symbols.C, src/support/lstrings.C,
2491         src/support/lyxstring.C: add `using' directive to specify what
2492         we need in <algorithm>. I do not think that we need to
2493         conditionalize this, but any thought is appreciated.
2494
2495         * many files: change all callback functions to "C" linkage
2496         functions to please strict C++ compilers like DEC cxx 6.1 in mode
2497         strict_ansi. Those who were static are now global. 
2498             The case of callbacks which are static class members is
2499         trickier, since we have to make C wrappers around them (see
2500         InsetError, InsetInfo and InsetUrl). The same holds for friends. I
2501         did not finish this yet, since it defeats the purpose of
2502         encapsulation, and I am not sure what the best route is.
2503
2504 1999-10-19  Juergen Vigna  <jug@sad.it>
2505
2506         * src/support/lyxstring.C (lyxstring): we permit to have a null
2507         pointer as assignment value and just don't assign it.
2508
2509         * src/vspace.C (nextToken): corrected this function substituting
2510         find_first(_not)_of with find_last_of.
2511
2512         * src/TableLayout.C (UpdateLayoutTable) (TableOptionsCB)
2513                 (TableOptCloseCB) (TableSpeCloseCB):
2514         inserted fl_set_focus call for problem with fl_hide_form() in
2515         xforms-0.89.
2516
2517 1999-10-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2518
2519         * src/lyx_cb.C (LayoutsCB): fix bug where int was added to a
2520         string. 
2521
2522 1999-10-18  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2523
2524         * src/lyxrc.C (Read): RC_PRINTEXSTRAOPTIONS now uses
2525         LyXLex::next() and not eatline() to get its argument.
2526
2527 1999-10-17  Lars Gullik Bjønnes  <larsbj@lyx.org>
2528
2529         * src/DepTable.[Ch]: rewritten to store the dependencies in a map
2530         instead, use fstreams for io of the depfile, removed unneeded
2531         functions and variables. 
2532
2533         * src/LaTeX.[Ch] (class TeXErrors): rewrote to store the errors in a
2534         vector instead, removed all functions and variables that is not in
2535         use.
2536
2537 1999-10-16  Lars Gullik Bjønnes  <larsbj@lyx.org>
2538
2539         * src/buffer.C (insertErrors): use new interface to TeXError
2540
2541         * Makefile.am (rpmdist): added a rpmdist target
2542
2543         * lib/reLyX/Makefile.am: added RelyxFigure.pm and Verbatim.pm as
2544         per Kayvan's instructions.
2545
2546 1999-10-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2547
2548         * src/Makefile.am: add a definition for localedir, so that locales
2549         are found after installation (Kayvan)
2550
2551 1999-10-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
2552
2553         * development/.cvsignore: new file.
2554
2555 1999-10-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2556
2557         * acinclude.m4 (LYX_CXX_CHEADERS): New macro. Checks whether the
2558         C++ compiler provides wrappers for C headers and use our alternate
2559         version otherwise.
2560
2561         * configure.in: use LYX_CXX_CHEADERS.
2562
2563         * src/cheader/: new directory, populated with cname headers from
2564         libstdc++-2.8.1. They are a bit old, but probably good enough for
2565         what we want (support compilers who lack them).
2566         
2567         * src/insets/Makefile.am, src/mathed/Makefile.am: remove src/support
2568         from includes. It turns out is was stupid.
2569  
2570 1999-10-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
2571
2572         * lib/Makefile.am (install-data-local): forgot a ';'
2573         (install-data-local): forgot a '\'
2574         (libinstalldirs): needed after all. reintroduced.
2575
2576 1999-10-13  Lars Gullik Bjønnes  <larsbj@lyx.org>
2577
2578         * configure.in (AC_OUTPUT): added lyx.spec
2579
2580         * development/lyx.spec: removed file
2581
2582         * development/lyx.spec.in: new file
2583
2584         * po/*.po: merged with lyx.pot becuase of make distcheck
2585         
2586         * lib/Makefile.am (dist-hook): added dist-hook so that
2587         documentation files will be included when doing a make
2588         dist/distdir/distcheck. Requires cvs export -r HEAD lyxdoc to run.
2589         (pkgdata_SCRIPTS): added configure.cmd for now, we can use som
2590         conditional later.
2591         more: tried to make install do the right thing, exclude CVS dirs
2592         etc.
2593
2594         * src/LaTeXLog.C (ShowLatexLog): reordered som statements so that
2595         Path would fit in more nicely.
2596
2597         * all files that used to use pathstack: uses now Path instead.
2598         This change was a lot easier than expected.
2599         
2600         * src/support/path.h: new file
2601
2602         * src/support/Makefile.am (libsupport_a_SOURCES): added path.h
2603
2604         * src/Makefile.am (lyx_SOURCES): removed pathstack.[Ch]
2605
2606         * src/support/lyxstring.C (getline): Default arg was given for
2607         para 3. removed.
2608
2609         * Configure.cmd: removed file 
2610
2611 1999-10-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2612
2613         * src/support/DebugStream.[Ch]: remove the explicit std:: before
2614         streams classes and types, add the proper 'using' statements when
2615         MODERN_STL is defined.
2616         
2617         * src/debug.h: move the << operator definition after the inclusion
2618         of DebugStream.h
2619
2620         * src/support/filetools.C: include "LAssert.h", which is needed
2621         later. 
2622
2623         * src/insets/Makefile.am, src/mathed/Makefile.am: add src/support
2624         to includes. 
2625
2626         * src/lyxfont.h, src/commandtags.h, src/mathed/math_defs.h:
2627         include "debug.h" to define a proper ostream.
2628
2629 1999-10-12  Asger Alstrup Nielsen  <alstrup@alstrup.galaxy.dk>
2630
2631         * src/sys*: Cleaned up the Systemcall stuff a bit. Added "kill(int)"
2632           method to the SystemCall class which can kill a process, but it's
2633           not fully implemented yet.
2634
2635         * src/*.C: Changed Systemcalls::Startscript() to startscript()
2636
2637         * src/support/FileInfo.h: Better documentation  
2638
2639         * src/lyxfunc.C: Added support for buffer-export html
2640         
2641         * src/menus.C: Added Export->As HTML...
2642         
2643         * lib/bind/*.bind: Added short-cut for buffer-export html
2644
2645         * src/lyxrc.*: Added support for new \tth_command
2646         
2647         * lib/lyxrc.example: Added stuff for new \tth_command
2648
2649 1999-10-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
2650
2651         * lib/Makefile.am (IMAGES): removed images/README
2652         (pkgdata_SCRIPTS): use this instead of bin_SCRIPTS to that it
2653         installes in correct place. Check permisions is installed
2654         correctly.
2655
2656         * src/LaTeX.C: some no-op changes moved declaration of some
2657         variables around.
2658
2659         * src/LaTeX.h (LATEX_H): changed include guard name
2660
2661 1999-10-12  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2662
2663         * lib/reLyX/Makefile.am: install noweb2lyx.
2664
2665         * lib/Makefile.am: install configure. 
2666
2667         * lib/reLyX/configure.in: declare a config aux dir; set package
2668         name to lyx (not sure what the best solution is); generate noweb2lyx.
2669
2670         * lib/layouts/egs.layout: fix the bibliography layout.
2671
2672 1999-10-08  Jürgen Vigna <jug@sad.it>
2673
2674         * src/support/filetools.C (FileOpenSearch): Fixed a bug where
2675         when in the PATH was something like /usr/bin;;/bin (note: the ;;)
2676         it returned without continuing to search the path.
2677         
2678 1999-10-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
2679
2680         * src/insets/insetquotes.C (Draw): Simplified a gread deal. This
2681         also fixes a bug. It is not allowed to do tricks with std::strings
2682         like: string a("hei"); &a[e]; this will not give what you
2683         think... Any reason for the complexity in this func?
2684
2685 1999-10-06  Asger Alstrup Nielsen  <alstrup@diku.dk>
2686
2687         * Updated README and INSTALL a bit, mostly to check that my
2688         CVS rights are correctly set up.
2689
2690 1999-10-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
2691
2692         * src/support/lyxstring.C (helper): removed bogus Assert. strlen
2693         does not allow '\0' chars but lyxstring and std::string does.
2694
2695 1999-10-05  Lars Gullik Bjønnes  <larsbj@lyx.org>
2696
2697         * autogen.sh (AUTOCONF): let the autogen script create the
2698         POTFILES.in file too. POTFILES.in should perhaps now not be
2699         included in the cvs module.
2700
2701         * some more files changed to use C++ includes instead of C ones.
2702
2703         * src/filedlg.C (Reread): fixed a bug wrt Time. It was appended
2704         not assigned.
2705         (Reread): added tostr to nlink. buggy output otherwise.
2706         (Reread): added a string() around szMode when assigning to Buffer,
2707         without this I got a log of garbled info strings.
2708
2709         * acconfig.h: commented out the PTR_AS_INT macros. They should not
2710         be needed.
2711
2712         * I have added several ostream & operator<<(ostream &, some_type)
2713         functions. This has been done to avoid casting and warnings when
2714         outputting enums to lyxerr. This as thus eliminated a lot of
2715         explicit casts and has made the code clearer. Among the enums
2716         affected: kb_action, InsetLatexAccent::ACCENT_TYPE, a couple of
2717         mathed enums, some font enum the Debug::type enum. 
2718
2719         * src/support/lyxstring.h (clear): missing method. equivalent of
2720         erase(0, npos).
2721
2722         * all files that contained "stderr": rewrote constructs that used
2723         stderr to use lyxerr instead. (except bmtable)
2724
2725         * src/support/DebugStream.h (level): and the passed t with
2726         Debug::ANY to avoid spurious bits set.
2727
2728         * src/debug.h (Debug::type value): made it accept strings of the
2729         type INFO,INIT,KEY.
2730
2731         * configure.in (Check for programs): Added a check for kpsewhich,
2732         the latex generation will use this later to better the dicovery of
2733         all used files. 
2734
2735         * src/BufferView.C (create_view): we don't need to cast this to
2736         (void*) that is done automatically.
2737         (WorkAreaButtonPress): removed some dead code.
2738
2739 1999-10-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2740
2741         * src/minibuffer.C (Init): make sure that the "Welcome to LyX!"
2742         is not overwritten when translated (David Sua'rez de Lis).
2743
2744         * lib/CREDITS: Added David Sua'rez de Lis
2745
2746         * lib/reLyX/configure.in: setup LYX_DIR correctly in reLyX.
2747
2748         * src/bufferparams.C (BufferParams): default input encoding is now
2749         "latin1" 
2750
2751         * acinclude.m4 (cross_compiling): comment out macro
2752         LYX_GXX_STRENGTH_REDUCE. 
2753
2754         * acconfig.h: make sure that const is not defined (to empty) when
2755         we are compiling C++. Remove commented out code using SIZEOF_xx
2756         macros.
2757         
2758         * configure.in : move the test for const and inline as late as
2759         possible so that these C tests do not interefere with C++ ones.
2760         Remove the call to LYX_GXX_STRENGTH_REDUCE, since its usefulness
2761         has not been proven. 
2762
2763 1999-10-04  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2764
2765         * src/table.C (getDocBookAlign): remove bad default value for
2766         isColumn parameter.
2767
2768         * src/menus.C (ShowFileMenu): add a missing tostr() for lastfiles
2769         shortcut. 
2770         (ShowFileMenu2): ditto.
2771
2772         * lib/reLyX/.cvsignore: add configure and aclocal.m4 to the list
2773         of files to ignore.
2774
2775 1999-10-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
2776
2777         * Most files: finished the change from the old error code to use
2778         DebugStream for all lyxerr debugging. Only minor changes remain
2779         (e.g. the setting of debug levels using strings instead of number) 
2780
2781 1999-10-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
2782
2783         * src/layout.C (Add): Changed to use compare_no_case instead of
2784         strcasecmp.
2785
2786         * src/FontInfo.C: changed loop variable type too string::size_type.
2787
2788 1999-10-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
2789
2790         * src/support/Makefile.am: added -I${srcdir}/../ to INCLUDES and
2791         set ETAGS_ARGS to --c++ 
2792
2793 1999-09-30  Lars Gullik Bjønnes  <larsbj@lyx.org>
2794
2795         * src/table.C (DocBookEndOfCell): commented out two unused variables
2796
2797         * src/paragraph.C: commented out four unused variables. 
2798
2799         * src/lyx_cb.C (TocUpdateCB): moved variable i and added a new i
2800         insed a if clause with type string::size_type.
2801
2802         * src/lyxfr1.C (IsSearchStringInText): changed iSrch from int to
2803         string::size_type.
2804
2805         * src/lyxfunc.C (Dispatch): use string::size_type as loop variable.
2806
2807         * src/lyx_cb.C (ReplaceWord): use string::size_type as loop
2808         variable, also changed loop to go from 0 to lenght + 1, instead of
2809         -1 to length. This should be correct.
2810
2811         * src/LaTeX.C (scanError): use string::size_type as loop variable
2812         type.
2813
2814         * src/BufferView.C (WorkAreaButtonPress): moved #if 0 up two lines
2815         (l.896) since y_tmp and row was not used anyway.
2816
2817         * src/insets/insetref.C (escape): use string::size_type as loop
2818         variable type.
2819
2820         * src/insets/insetquotes.C (Width): use string::size_type as loop
2821         variable type.
2822         (Draw): use string::size_type as loop variable type.
2823
2824         * src/insets/insetlatexaccent.C (checkContents): use
2825         string::size_type as loop variable type.
2826
2827         * src/insets/insetlabel.C (escape): use string::size_type as loop
2828         variable type.
2829
2830         * src/insets/insetinfo.C: added an extern for current_view.
2831
2832         * src/insets/insetcommand.C (scanCommand): use string::size_type
2833         as loop variable type.
2834
2835         * most files: removed the RCS tags. With them we had to recompile
2836         a lot of files after a simple cvs commit. Also we have never used
2837         them for anything meaningful. 
2838
2839         * most files: tags-query-replace NULL 0. As adviced several plases
2840         we now use "0" instead of "NULL" in our code. 
2841
2842         * src/support/filetools.C (SpaceLess): use string::size_type as
2843         loop variable type.
2844
2845 1999-09-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
2846
2847         * src/paragraph.C: fixed up some more string stuff.
2848
2849 1999-09-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
2850
2851         * src/support/filetools.h: make modestr a std::string.
2852
2853         * src/filetools.C (GetEnv): made ch really const.
2854
2855         * src/lyxlib.h: removed the Maximum and Minimum inline functions,
2856         made code that used these use max/min from <algorithm> instead.
2857
2858         * changed several c library include files to their equivalent c++
2859         library include files. All is not changed yet.
2860
2861         * created a support subdir in src, put lyxstring and lstrings
2862         there + the extra files atexit, fileblock, strerror. Created
2863         Makefile.am. edited configure.in and src/Makefile.am to use this
2864         new subdir. More files moved to support.
2865
2866         * imported som of the functions from repository lyx, filetools
2867         
2868         * ran tags-query-replace on LString -> string, corrected the bogus
2869         cases. Tried to make use of lstrings.[hC], debugged a lot. There
2870         is still some errors in there. This is errors where too much or
2871         too litle get deleted from strings (string::erase, string::substr,
2872         string::replace), there can also be some off by one errors, or
2873         just plain wrong use of functions from lstrings. Viewing of quotes
2874         is wrong. 
2875
2876         * LyX is now running fairly well with string, but there are
2877         certainly some bugs yet (see above) also string is quite different
2878         from LString among others in that it does not allow null pointers
2879         passed in and will abort if it gets any.
2880         
2881         * Added the revtex4 files I forgot when setting up the repository.
2882
2883 1999-09-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
2884
2885         * All over: Tried to clean everything up so that only the files
2886           that we really need are included in the cvs repository.
2887         * Switched to use automake.
2888         * Generaton of reLyX is not perfect, LYX_DIR does not get substituted.
2889         * Install has not been checked.
2890
2891 1999-09-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
2892
2893         * po/pt.po: Three errors:
2894                l.533 and l.538 format specification error
2895                l. 402 duplicate entry, I just deleted it.
2896