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