]> git.lyx.org Git - lyx.git/blob - ChangeLog
Other small Backspace() fix in text.C and Undo/Redo for insets
[lyx.git] / ChangeLog
1 2000-03-29  Juergen Vigna  <jug@sad.it>
2
3         * src/insets/insetcollapsable.C (Clone): same as in InsetFoot
4
5         * src/insets/insetfoot.C (Clone): small change as for the below
6         new init function in the text-inset
7
8         * src/insets/insettext.C (init): new function as I've seen that
9         clone did not copy the Paragraph-Data!
10         (LocalDispatch): Added code so that now we have some sort of Undo
11         functionality (well actually we HAVE Undo ;)
12
13         * src/text.C (Backspace): Small fix for the a | a Backspace problem
14
15 2000-03-24  Dekel Tsur <dekel@math.tau.ac.il>
16         
17         * src/paragraph.C (AutoDeleteInsets) Fixed a bug (wrong positions
18         were erased)
19
20 2000-03-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
21
22         * src/main.C: added a runtime check that verifies that the xforms
23         header used when building LyX and the library used when running
24         LyX match. Exit with a message if they don't match. This is a
25         version number check only.
26
27         * src/buffer.C (save): Don't allocate memory on the heap for
28         struct utimbuf times.
29
30         * *: some using changes, use iosfwd instead of the real headers.
31
32         * src/lyxfont.C use char const * instead of string for the static
33         strings. Rewrite some functions to use sstream.
34
35 2000-03-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
36
37         * src/text.C (Backspace): hopefully fix the dreaded backaspace
38         bug. 
39
40 2000-03-27  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
41
42         * lib/layouts/svjog.layout: new file, for Springer-Verlag Journal
43         of Geodesy (from Martin Vermeer)
44
45         * lib/layouts/svjour.inc: include file for the Springer svjour
46         class. It can be used to support journals other than JoG.
47
48         * lib/Makefile.am: use $(DESTDIR) make variable (from Arkadiusz
49         Miskiewicz <misiek@pld.org.pl>)
50         * lib/reLyX/Makefile.am: ditto.
51
52 2000-03-27  Juergen Vigna  <jug@sad.it>
53
54         * src/insets/insettext.C: added Cut/Copy/Paste inside insets,
55         also some modifications with operations on selected text.
56
57         * src/BufferView.C (checkInsetHit): Now hopefully fixed all the
58         problems with clicking on insets (last famous words ;)
59
60         * src/insets/insetcommand.C (draw): 
61         (width): Changed to have a bit of space before and after the inset so
62         that the blinking cursor can be seen (otherwise it was hidden)
63
64 2000-03-22  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
65
66         * config/gettext.m4 (AM_WITH_NLS): fix a gettext bug where -lintl
67         would not be added to the link list when an installed gettext (not
68         part of libc) is found.
69
70 2000-03-24  Juergen Vigna  <jug@sad.it>
71
72         * src/insets/insetcollapsable.C (Edit): 
73         * src/mathed/formula.C (InsetButtonRelease): 
74         (InsetButtonPress): fixed for new handling of ButtonPress/Release
75         handling.
76
77         * src/BufferView.C (workAreaButtonPress): 
78         (workAreaButtonRelease): 
79         (checkInsetHit): Finally fixed the clicking on insets be handled
80         correctly!
81
82         * src/insets/insetert.C (Edit): inserted this call so that ERT
83         insets work always with LaTeX-font
84
85 2000-03-21  Kayvan A. Sylvan  <kayvan@camel.internal.sylvan.com>
86
87         * src/lyx_main.C (easyParse): Removed misplaced gui=false which
88         caused lyx to startup with no GUI in place, causing in a crash
89         upon startup when called with arguments.
90
91 2000-03-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
92
93         * src/FontLoader.C: better initialization of dummyXFontStruct.
94
95 2000-03-20 José Abílio Matos <jamatos@lyx.org>
96
97         * src/lyxrc.[Ch] Removed \sgml_extra_options, added 6 other flags
98         for linuxdoc and docbook import and export format options.
99
100         * lib/lyxrc.example Example of default values for the previous flags.
101
102         * src/lyx_cb.C Use those flags instead of the hardwired values for
103         linuxdoc and docbook export.
104
105         * src/lyxfunc.[Ch] Added HTML export for linuxdoc and docbook, added
106         linuxdoc import.
107
108         * src/menus.C Added menus entries for the new import/exports formats.
109         
110 2000-03-09 André Pönitz <poenitz@mathematik.tu-chemnitz.de>
111
112         * src/lyxrc.*: Added support for running without Gui 
113         (\use_gui false)
114           
115         * src/FontLoader.C: sensible defaults if no fonts are needed
116
117         * src/lyx_cb.C: New function ShowMessage (writes either to the
118         minibuffer or cout in case of no gui
119         New function AskOverwrite for common stuff
120         Consequently various changes to call these functions
121
122         * src/lyx_main.C:  allow gui = false and handle lyxrc \use_gui false
123         wild guess at sensible screen resolution when having no gui
124
125         * src/lyxfont.C: no gui, no fonts... set some defaults
126
127 2000-03-20  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
128
129         * src/LColor.C: made the command inset background a bit lighter.
130
131 2000-03-20  Hartmut Goebel <goebel@noris.net>
132
133         * lib/layouts/stdstruct.inc: split into stdtitle.inc and
134         stdstruct.inc. Koma-Script added some title elements which
135         otherwise have been listed below "bibliography". This split allows
136         adding title elements to where they belong.
137
138         * lib/layouts/scrclass.inc: changed to include stdtitle.inc, then
139         define the additional tilte elements and then include
140         stdstruct.inc. 
141
142         * many other layout files: changed to include stdtitle.inc just
143         before stdstruct.inc.
144
145 2000-03-18 Dekel Tsur <dekel@math.tau.ac.il>
146
147         * src/buffer.C: (save) Added the option to store all backup files
148         in a single directory
149
150         * src/lyxrc.[Ch]: Added variable \backupdir_path
151
152         * lib/lyxrc.example: Added descriptions of recently added variables
153
154         * src/insets/insetbib.[Ch]: Fixed few bugs (crash when editing a
155         bibtex inset, not closing the bibtex popup when deleting the inset)
156
157 2000-03-17  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
158
159         * src/lyx_cb.C: add a couple using directives.
160
161 2000-03-17 José Abílio Matos <jamatos@lyx.org>
162         * src/lyx_cb.C (RunLinuxDoc) Removed the flag==-1 option for linuxdoc 
163         import based on the filename.
164         
165         * src/bufferlist.C () Removed the call to RunLinuxDoc where a linuxdoc
166         file would be imported at start, if the filename where of a sgml file.
167
168         * src/support/filetools.C (IsSGMLfilename) Removed, no longer needed.
169         
170         * src/support/filetools.h (IsSGMLfilename) Removed, no longer needed.
171         
172 2000-03-16 Dekel Tsur <dekel@math.tau.ac.il>
173         * src/lyxfont.h Replaced the member variable bits.direction by the
174         member variable lang. Made many changes in other files.
175         This allows having a multi-lingual document
176
177         * src/lyxfunc.C, src/lyx_cb.C Added a new command "language <l>"
178         that change the current language to <l>.
179         Removed the command "font-rtl"
180
181         * src/buffer.C Changed LYX_FORMAT to 2.16 (as I changed the file
182         format for Hebrew documents)
183
184         * src/lyxrc.C, src/lyxfunc.C Added a new lyxrc command "auto_mathmode"
185         When auto_mathmode is "true", pressing a digit key in normal mode 
186         will cause entering into mathmode.
187         If auto_mathmode is "rtl" then this behavior will be active only
188         when writing right-to-left text.
189
190         * src/text2.C (InsertStringA) The string is inserted using the
191         current font.
192
193         * src/paragraph.C (GetEndLabel) Gives a correct result for
194         footnote paragraphs.
195
196         * src/paragraph.C (PreviousBeforeFootnote) Fixed a small bug
197
198 2000-03-16  Lars Gullik Bjønnes  <larsbj@lyx.org>
199
200         * src/text.C (Backspace): move RemoveParagraph and RemoveRow in
201         front of PasteParagraph. Never insert a ' '. This should at least
202         fix some cause for the segfaults that we have been experiencing,
203         it also fixes backspace behaviour slightly. (Phu!)
204
205         * src/support/lstrings.C (compare_no_case): some change to make it
206         compile with gcc 2.95.2 and stdlibc++-v3
207
208         * src/text2.C (MeltFootnoteEnvironment): change type o
209         first_footnote_par_is_not_empty to bool.
210
211         * src/lyxparagraph.h: make text private. Changes in other files
212         because of this.
213         (fitToSize): new function
214         (setContentsFromPar): new function
215         (clearContents): new function
216         (SetChar): new function
217
218         * src/paragraph.C (readSimpleWholeFile): deleted.
219
220         * src/lyx_cb.C (InsertAsciiFile): don't use a LyXParagraph to hold
221         the file, just use a simple string instead. Also read the file in
222         a more maintainable manner.
223
224         * src/text2.C (InsertStringA): deleted.
225         (InsertStringB): deleted.
226
227 2000-03-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
228
229         * src/text2.C (DeleteEmptyParagraphMechanism): don't run,
230         RedoParagraphs from the doublespace handling part, just set status
231         to NEED_MORE_REFRESH. Also don't update cursor position (should be
232         done, but perhaps not like this.)
233
234 2000-03-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
235
236         * src/text2.C (InsertStringA): don't forget to insert a META_INSET
237         character when inserting an inset.
238
239 2000-03-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
240
241         * src/bufferparams.C (readLanguage): now takes "default" into
242         consideration.
243
244         * src/lyx_main.C (LyX): remove the setup of lyxrc. (new)
245         also initialize the toplevel_keymap with the default bindings from
246         lyxrc. 
247         
248         * src/buffer.C (Buffer): remove lyxrc from the parameters.
249
250         * all files using lyxrc: have lyxrc as a real variable and not a
251         pointer. remove all extern LyXRC * lyxrc. The equiv to this is
252         done in lyxrc.h.
253         
254         * src/lyxrc.C: remove double call to defaultKeyBindings
255
256         * src/toolbar.[Ch]: Let the ToolbarDefaults handle the reading of
257         toolbar defauls using lyxlex. Remove enums, structs, functions
258         related to this. 
259
260         * src/lyxrc.h: use ToolbarDefaults instead of Toolbar for storing
261         toolbar defaults. Also store default keybindings in a map.
262
263         * src/ToolbarDefaults.[Ch]: New file. This class is used for
264         storing the toolbar defaults without any xforms dependencies. 
265
266         * src/insets/figinset.C: patch posted to list by Andre Poenitz
267         applied. Changed to use iterators.
268
269 2000-03-11  Kayvan A. Sylvan  <kayvan@satyr.sylvan.com>
270
271         * development/lyx.spec.in: Fix to ``unset LINGUAS'' line for
272         systems that don't have LINGUAS set to begin with.
273
274 2000-03-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
275
276         * src/text2.C (DeleteEmptyParagraphMechanism): small fix posted to
277         the list by Dekel Tsur.
278
279 2000-03-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
280
281         * src/insets/insetgraphics.C (GraphicxCB): declare with "C" linkage.
282         * src/insets/form_graphics.C: ditto.
283
284         * src/insets/inseturl.C (Latex): the free_spc argument is not used.
285
286 2000-03-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
287
288         * src/bufferparams.C (readLanguage): use the new language map
289
290         * src/intl.C (InitKeyMapper): use the new language map
291
292         * src/lyx_gui.C (create_forms): use the new language map
293
294         * src/language.[Ch]: New files. Used for holding the information
295         about each language. Now! Use this new language map enhance it and
296         make it really usable for our needs. 
297
298 2000-03-09 Dekel Tsur <dekel@math.tau.ac.il>
299         
300         * screen.C (ShowCursor): Removed duplicate code.
301         (ShowManualCursor): Support for 3 cursor shapes: Bar (default),
302         L (LTR text in RTL document), and reversed-L (RTL text in LTR document)
303         
304         * src/text.C (NextBreakPoint,Fill): Moved declaration of left_margin
305
306         * src/lyxtext.h
307         * src/text.C  Added TransformChar method. Used for rendering Arabic
308         text correctly (change the glyphs of the letter according to the
309         position in the word)
310
311         * src/buffer.C
312         * src/paragraph.C
313         * src/lyxrc.h
314         * src/lyxrc.C  Added lyxrc command {language_command_begin,
315         language_command_end,language_command_ltr,language_command_rtl,
316         language_package} which allows the use of either arabtex or Omega
317         for Arabic
318
319         * src/lyx_gui.C (init)
320         * src/lyxrc.h
321         * src/lyxrc.C Added lyxrc command screen_font_encoding_menu. Allows
322         to use encoding for menu fonts which is different than the encoding
323         for screen fonts
324
325         * src/buffer.C (makeLaTeXFile): If params.language = "default",
326         do not load the babel package.
327         To write an English document with Hebrew/Arabic, change the document
328         language to "english".
329
330         * src/text2.C (SetCounter): Fixed appendix labels for Hebrew document
331         (alphaCounter): changed to return char
332         (loweralphaCounter, hebrewCounter, romanCounter): New functions
333
334         * lib/lyxrc.example  Added examples for Hebrew/Arabic
335
336         * src/layout.h
337         * src/layout.C  Added layout command endlabeltype
338
339         * src/paragraph.C Added GetEndLabel(),LastPhysicalPar() const
340
341         * src/text.C (GetVisibleRow): Draw a box at the end of proof layout
342
343 2000-03-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
344
345         * src/mathed/math_delim.C (search_deco): return a
346         math_deco_struct* instead of index.
347
348 2000-03-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
349
350         * All files with a USE_OSTREAM_ONLY within: removed all code that
351         was unused when USE_OSTREAM_ONLY is defined.
352         
353         * src/support/lyxalgo.h (sorted): rewrote to use plain '<' instead
354         of any less. Removed header and using.
355
356         * src/text.C (GetVisibleRow): draw the string "Page Break
357         (top/bottom)" on screen when drawing a pagebreak line.
358
359 2000-03-09  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
360
361         * lib/doc/LaTeXConfig.lyx.in: add description of textclass llncs.
362
363         * src/mathed/math_macro.C (draw): do some cast magic.
364         (Metrics): ditto.
365
366         * src/mathed/math_defs.h: change byte* argument to byte const*.
367
368         * src/mathed/formulamacro.[Ch]: add free_spc to Latex() method.
369
370         * src/insets/insetfoot.[Ch]: Clone() always returns an Inset* (well I
371         know it is right to return InsetFoot* too, but cxx does not like
372         it...). 
373
374         * src/insets/insetcollapsable.[Ch] (Clone): make const.
375
376         * development/lyx.spec.in: unset LINGUAS to avoid i18n problems.
377
378         * src/mathed/math_delim.C: change == to proper assignment.
379
380 2000-03-09  Juergen Vigna  <jug@sad.it>
381
382         * src/insets/insettext.C (setPos): fixed various cursor positioning
383         problems (via mouse and cursor-keys)
384         (LocalDispatch): added posibility to add a Ctrl-Enter inside a text
385         inset (still a small display problem but it works ;)
386
387         * src/insets/insetcollapsable.C (draw): added button_top_y and
388         button_bottom_y to have correct values for clicking on the inset.
389
390         * src/support/lyxalgo.h: commented out 'using std::less'
391
392 2000-03-08  Juergen Vigna  <jug@sad.it>
393
394         * src/insets/insetcollapsable.C (InsetButtonRelease): Now a
395         Button-Release event closes as it is alos the Release-Event
396         which opens it.
397
398         * src/lyxfunc.C (Dispatch): forgot a break in the LFUN_INSET_ERT
399
400 2000-03-07  Kayvan A. Sylvan  <kayvan@camel.internal.sylvan.com>
401
402         * lib/layouts/literate-scrap.inc: Fixed initial comment. Now we
403         can add multiple spaces in Scrap (literate programming) styles...
404         which, by the way, is how I got hooked on LyX to begin with.
405  
406         * src/mathed/formula.C (Write): Added dummy variable to an
407         inset::Latex() call.
408         (Latex): Add free_spacing boolean to inset::Latex()
409
410         * src/mathed/formula.h (Latex): Added free_spacing boolean arg.
411         
412         * src/insets/lyxinset.h: Changed definition of the inset::Latex()
413         virtual function to include the free_spacing boolean from
414         the containing paragraph's style.
415  
416         * src/insets/inseturl.C, src/insets/inseturl.h (Latex):
417         Added free_spacing boolean arg to match inset.h
418         
419         * src/insets/insettext.C, src/insets/insettext.h (Latex):
420         Added free_spacing boolean arg to match inset.h
421         
422         * src/insets/insetspecialchar.C, src/insets/insetspecialchar.h (Latex):
423         Added free_spacing boolean and made sure that if in a free_spacing
424         paragraph, that we output normal space if there is a protected space.
425         
426         * src/insets/insetref.C, src/insets/insetref.h (Latex):
427         Added free_spacing boolean arg to match inset.h
428         
429         * src/insets/insetquotes.C, src/insets/insetquotes.h (Latex):
430         Added free_spacing boolean arg to match inset.h
431         
432         * src/insets/insetparent.C, src/insets/insetparent.h (Latex):
433         Added free_spacing boolean arg to match inset.h
434         
435         * src/insets/insetlatexaccent.C, src/insets/insetlatexaccent.h (Latex):
436         Added free_spacing boolean arg to match inset.h
437         
438         * src/insets/insetlatex.C, src/insets/insetlatex.h (Latex):
439         Added free_spacing boolean arg to match inset.h
440         
441         * src/insets/insetlabel.C, src/insets/insetlabel.h (Latex): Added
442         free_spacing boolean arg to match inset.h 
443         
444         * src/insets/insetinfo.C, src/insets/insetinfo.h (Latex):
445         Added free_spacing boolean arg to match inset.h
446         
447         * src/insets/insetinclude.C, src/insets/insetinclude.h (Latex):
448         Added free_spacing boolean arg to match inset.h
449         
450         * src/insets/insetgraphics.C, src/insets/insetgraphics.h (Latex):
451         Added free_spacing boolean arg to match inset.h
452         
453         * src/insets/inseterror.C, src/insets/inseterror.h (Latex):
454         Added free_spacing boolean arg to match inset.h
455         
456         * src/insets/insetcommand.C, src/insets/insetcommand.h (Latex):
457         Added free_spacing boolean arg to match inset.h
458         
459         * src/insets/insetbib.C, src/insets/insetbib.h (Latex): Added
460         free_spacing boolean arg to match inset.h
461         
462         * src/insets/figinset.C, src/insets/figinset.h (Latex): Added
463         free_spacing boolean arg to match inset.h
464         
465         * src/text2.C (DeleteEmptyParagraphMechanism): Fix this to
466         ignore free_spacing paragraphs. The user's spaces are left
467         alone. 
468         
469         * src/text.C (InsertChar): Fixed the free_spacing layout
470         attribute behavior. Now, if free_spacing is set, you can
471         add multiple spaces in a paragraph with impunity (and they
472         get output verbatim).
473         (SelectSelectedWord): Added dummy argument to inset::Latex()
474         call.
475         
476         * src/paragraph.C (TeXOnePar): Added dummy args to inset::Latex(...)
477         calls.
478         
479         * src/lyxfunc.C (Dispatch): Hard-spaces input in free_spacing
480         paragraph layouts now only input a simple space instead.
481         Special character insets don't make any sense in free-spacing
482         paragraphs.
483         
484         * src/buffer.C (parseSingleLyXformat2Token): Code to convert
485         hard-spaces in the *input* file to simple spaces if the layout
486         is free-spacing. This converts old files which had to have
487         hard-spaces in free-spacing layouts where a simple space was
488         preferrable.
489         (writeFileAscii): Added free_spacing check to pass to the newly
490         reworked inset::Latex(...) methods. The inset::Latex() code
491         ensures that hard-spaces in free-spacing paragraphs get output
492         as spaces (rather than "~").
493         
494 2000-03-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
495         
496         * src/mathed/math_delim.C (draw): draw the empty placeholder
497         delims with a onoffdash line.
498         (struct math_deco_compare): struct that holds the "functors" used
499         for the sort and the binary search in math_deco_table.
500         (class init_deco_table): class used for initial sort of the
501         math_deco_table. 
502         (search_deco): use lower_bound to do a binary search in the
503         math_deco_table.
504
505 2000-03-08  Lars Gullik Bjønnes  <larsbj@lyx.org>
506
507         * src/lyxrc.C: a small secret thingie...
508
509         * src/lyxlex.C (printTable): changed to take a ostream as paramter
510         and to not flush the stream as often as it used to.
511
512         * src/support/lyxalgo.h: new file 
513         (sorted): template function used for checking if a sequence is
514         sorted or not. Two versions with and without user supplied
515         compare. Uses same compare as std::sort.
516
517         * src/lyxlex.C (LyXLex): check if the table is sorted, if not sort
518         it and give warning on lyxerr.
519         (pushTable): ditto
520         (struct compare_tags): struct with function operators used for
521         checking if sorted, sorting and lower_bound.
522         (search_kw): use lower_bound instead of manually implemented
523         binary search.
524
525 2000-03-08  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
526
527         * src/insets/insetcollapsable.h: fix Clone() declaration.
528         * src/insets/insetfoot.h: ditto.
529
530         * src/insets/lyxinset.h: remove an extra comma at the end of enum.
531
532 2000-03-08  Juergen Vigna  <jug@sad.it>
533
534         * src/insets/lyxinset.h: added owner call which tells us if
535         this inset is inside another inset. Changed also the return-type
536         of Editable to an enum so it tells clearer what the return-value is.
537
538         * src/insets/insettext.C (computeTextRows): fixed computing of
539         textinsets which split automatically on more rows.
540
541         * src/insets/insetert.[Ch]: changed this to be of BaseType
542         InsetCollapsable.
543
544         * src/insets/insetfoot.[Ch]: added footnote inset
545
546         * src/insets/insetcollapsable.[Ch]: added this BaseClass for
547         collapsable insets (like footnote, ert, ...)
548
549 2000-03-08  Lars Gullik Bjønnes  <larsbj@lyx.org>
550
551         * src/lyxdraw.h: remvoe file
552
553         * src/lyxdraw.C: remove file
554
555         * src/insets/insettext.C: added <algorithm>.
556
557 2000-03-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
558
559         * src/mathed/math_panel.C (delim_cb): case MM_OK use string stream
560         (matrix_cb): case MM_OK use string stream
561
562         * src/mathed/formula.C (LocalDispatch): case LFUN_SETXY use string
563         stream.
564
565         * src/mathed/math_macro.C (draw): use string stream
566         (Metrics): use string stream
567
568         * src/paragraph.C (TeXFootnote): for case LyXParagraph::FIG, write
569         directly to the ostream.
570
571         * src/vspace.C (asString): use string stream.
572         (asString): use string stream
573         (asLatexString): use string stream
574
575         * src/lyx_cb.C (UpdateLayoutDocument): use string stream for
576         setting Spacing::Other.
577
578         * src/LaTeXFeatures.C (getPackages): use string stream instead of
579         sprintf when creating the stretch vale.
580
581         * src/text2.C (alphaCounter): changed to return a string and to
582         not use a static variable internally. Also fixed a one-off bug.
583         (SetCounter): changed the drawing of the labels to use string
584         streams instead of sprintf.
585
586         * src/support/lyxmanip.h: rewrite the newlineanDepth ostream
587         manipulator to use a scheme that does not require library support.
588         This is also the way it is done in the new GNU libstdc++. Should
589         work with DEC cxx now. 
590
591 2000-03-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
592
593         * src/mathed/math_inset.h (Write(ostream & os): add a space at the
594         end. This fixes a bug. 
595
596         * src/mathed (all files concerned with file writing): apply the
597         USE_OSTREAM_ONLY changes to mathed too.
598         
599         * src/support/DebugStream.h: make the constructor explicit.
600
601         * src/lyxfont.C (latexWriteStartChanges): small bug related to
602         count and ostream squashed.
603
604 2000-03-06  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
605
606         * src/support/Makefile.am (libsupport_la_SOURCES): add lyxmanip.h.
607
608         * src/buffer.C (makeLaTeXFile): add a .c_str(), since
609         ostringstream uses STL strings, and we might not.
610
611         * src/insets/insetspecialchar.C: add using directive.
612         * src/insets/insettext.C: ditto.
613
614 2000-03-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
615
616         * lib/layouts/seminar.layout: feeble attempt at a layout for
617         seminar.cls, far from completet and could really use some looking
618         at from people used to write layout files.
619
620         * src/support/lyxmanip.h (newlineAndDepth): ostream manipulator to
621         use instead of the AddNewlineAndDepth funtion in lyx_cb.C. This is
622         a lot nicer and works nicely with ostreams.
623
624         * src/mathed/formula.C (draw): a slightly different solution that
625         the one posted to the list, but I think this one works too. (font
626         size wrong in headers.)
627
628         * src/insets/insettext.C (computeTextRows): some fiddling on
629         Jürgens turf, added some comments that he should read.
630
631         * src/lyxrc.C: remove all traces of RC_NOMENUACCELERATORS, never
632         used and it gave compiler warnings.
633         RC_SHOW_BANNER + "\\show_banner" added, also to reading and
634         writing of lyxrc.
635
636         * src/lyx_gui.C (create_forms): do the right thing when
637         show_banner is true/false.
638
639         * src/lyx_cb.C (TimerCB): no need to close or do anything if
640         show_banner is false.
641
642         * most file writing files: Now use iostreams to do almost all of
643         the writing. Also instead of passing string &, we now use
644         stringstreams. mathed output is still not adapted to iostreams.
645         This change can be turned off by commenting out all the occurences
646         of the "#define USE_OSTREAM_ONLY 1" lines.
647         
648         * src/WorkArea.C (createPixmap): don't output debug messages.
649         (WorkArea): don't output debug messages.
650
651         * lib/lyxrc.example: added a comment about the new variable
652         \show_banner 
653
654         * development/Code_rules/Rules: Added some more commente about how
655         to build class interfaces and on how better encapsulation can be
656         achieved. 
657
658 2000-03-03  Juergen Vigna  <jug@sad.it>
659
660         * src/insets/insetert.C (InsetERT): Now ERT-insets break row
661         automatically with the width of the LyX-Window
662
663         * src/insets/insettext.C (computeTextRows): fixed update bug in
664         displaying text-insets (scrollvalues where not initialized!)
665
666 2000-03-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
667
668         * src/mathed/math_utils.C (MathedLookupBOP): using only res->id ==
669         id in the check of the result from lower_bound is not enough since
670         lower_bound can return last too, and then res->id will not be a
671         valid construct.
672
673         *  all insets and some code that use them: I have conditionalized
674         removed the Latex(string & out, ...) this means that only the
675         Latex(ostream &, ...) will be used. This is a work in progress to
676         move towards using streams for all output of files. 
677
678         * src/text.C (GetColumnNearX): initialize LyXParagraph::size_type
679         c to 0.
680
681 2000-03-02  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
682
683         * src/mathed/math_utils.C (MathedLookupBOP): fix the search
684         routine (this fixes bug where greek letters were surrounded by too
685         much white space).
686
687         * src/support/filetools.C (findtexfile): change a bit the search
688         algorithm, to fix bug introduced in 1.1.4. Note that --format is
689         no longer passed to kpsewhich, we may have to change that later.
690
691         * config/lyxinclude.m4 (LYX_PROG_CXX): better version-dependent
692         warning options to avoid problems with X header files (from Angus
693         Leeming).
694         * acinclude.m4: regenerated.
695
696 2000-03-02  Juergen Vigna  <jug@sad.it>
697
698         * src/insets/insettext.C (WriteParagraphData): Using the
699         par->writeFile() function for writing paragraph-data.
700         (Read): Using buffer->parseSingleLyXformat2Token()-function
701         for parsing paragraph data!
702
703         * src/buffer.C (readLyXformat2): removed all parse data and using
704         the new parseSingleLyXformat2Token()-function.
705         (parseSingleLyXformat2Token): added this function to parse (read)
706         lyx-file-format (this is called also from text-insets now!)
707
708 2000-03-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
709
710         * src/paragraph.C (BeginningOfMainBody): initialize previous_char
711         and temp.
712
713         * src/lyxfunc.C (Dispatch(LFUN_MENUSEARCH)): Do the Search dialog
714         directly instead of going through a func. One very bad thing: a
715         static LyXFindReplace, but I don't know where to place it. 
716
717         * src/lyxfr1.C (GetCurrentSelectionAsString): rewritten to use a
718         string instead of char[]. Also changed to static.
719         (GetSelectionOrWordAtCursor): changed to static inline
720         (SetSelectionOverLenChars): ditto.
721
722         * src/lyxfr0.[Ch] src/lyxfr1.[Ch]: rewrite to get rid of
723         current_view and global variables. both classes has changed names
724         and LyXFindReplace is not inherited from SearchForm.
725         
726         * src/lyx_gui_misc.C (CloseAllBufferRelatedPopups): remove the
727         fl_form_search form.
728
729         * src/lyx_gui.C (create_forms): removed the fl_form_search form.
730
731 2000-03-01  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
732
733         * lib/bind/*.bind: make sure 'buffer-previous' function is not
734         bound (from Kayvan).
735
736         * src/insets/Makefile.am (libinsets_la_SOURCES): add BoundingBox.h.
737
738         * lib/layouts/stdletter.inc: fix line spacing in Send_To_Address.
739
740 2000-03-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
741
742         * some things that I should comment but the local pub says head to
743         swirly... 
744         
745         * comment out all code that belongs to the Roff code for Ascii
746         export of tables. (this is unused)
747         
748         * src/LyXView.C: use correct type for global variable
749         current_layout. (LyXTextClass::size_type)
750
751         * some code to get the new insetgraphics closer to working I'd be
752         grateful for any help.
753         
754         * src/BufferView2.C (insertInset): use the return type of
755         NumberOfLayout properly. (also changes in other files)
756
757         * src/insets/insetspecialchar.[Ch]: add the PROTECTED SEPARATOR to
758         this as a test. I want to know what breaks because of this.
759
760         * src/BufferView.[Ch] (tripleClick): name change from trippleClick.
761
762 2000-02-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
763
764         * lib/layouts/stdlists.inc: changed the lyxlist latex definition
765         to use a \makebox in the label, this allows proper justification
766         with out using protected spaces or multiple hfills. Now it is
767         "label" for left justified, "\hfill label\hfill" for center, and
768         "\hfill label" for right justified. UserGuide.lyx sec. 3.3.6.5
769         should be changed accordingly. 
770
771 2000-02-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
772
773         * src/lyxtext.h: change SetLayout() to take a
774         LyXTextClass::size_type instead of a char (when there is more than
775         127 layouts in a class); also change type of copylayouttype.
776         * src/text2.C (SetLayout): ditto.
777         * src/LyXView.C (updateLayoutChoice): ditto.
778
779         * src/LaTeX.C (scanLogFile): errors where the line number was not
780         given just after the '!'-line were ignored (from Dekel Tsur).
781
782         * lib/lyxrc.example: fix description of \date_insert_format
783
784         * lib/layouts/llncs.layout: new layout, contributed by Martin
785         Vermeer. 
786
787 2000-02-25  Lars Gullik Bjønnes  <larsbj@lyx.org>
788
789         * config/lyxinclude.m4 (LYX_PROG_CXX): remove case support for gcc
790         2.7.* and add case support for gcc 2.96*. Gcc 2.96 only exists in
791         cvs at gcc.gnu.org (currently it fails with ICE on insetbib.C,
792         insetindex.C, insetloa.C, insettext.C, filetools.C, BufferView.C,
793         BufferView2.C, LyXView.C, buffer.C, lyx_cb.C, lyxfunc.C,
794         paragraph.C, text.C, text2.C)
795
796 2000-02-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
797
798         * src/insets/insettext.C (LocalDispatch): remove extra break
799         statement. 
800
801         * src/insets/insetert.[Ch] (Clone): change return value to Inset*
802         * src/insets/insettext.[Ch] (Clone): change return value to Inset*
803
804         * src/mathed/formulamacro.[Ch] (draw): add missing const qualifier
805         * src/insets/insettext.[Ch] (GetCursorPos): ditto
806
807         * src/insets/insetbib.h: move InsetBibkey::Holder and
808         InsetCitation::Holder in public space.
809
810 2000-02-25  Lars Gullik Bjønnes <larsbj@lyx.org>
811
812         * src/insets/insettext.h: small change to get the new files from
813         Juergen to compile (use "string", not "class string").
814
815         * src/insets/insettext.[Ch], src/insets/insertert.[Ch]: use string
816         const & as parameter to LocalDispatch, use LyXFont const & as
817         paramter to some other func. This also had impacto on lyxinsets.h
818         and the two mathed insets.
819
820 2000-02-24  Juergen Vigna  <jug@sad.it>
821
822         * src/buffer.C:
823         * src/commandtags.h: 
824         * src/LyXAction.C:
825         * src/lyxfunc.C: added code for LFUN_INSET_ERT and LFUN_INSET_TEXT
826
827         * src/BufferView.h
828         * src/BufferView.C
829         * src/BufferView2.C: added/updated code for various inset-functions
830
831         * src/insets/insetert.[Ch]: added implementation of InsetERT
832
833         * src/insets/insettext.[Ch]: added implementation of InsetText
834
835         * src/insets/inset.C (Edit): added "unsigned int button" parameter
836         (draw): added preliminary code for inset scrolling not finshed yet
837
838         * src/insets/inset.C (LocalDispatch): changed arg parameter to string
839         as it is in lyxfunc.C now
840
841         * src/insets/lyxinset.h: Added functions for text-insets
842
843 2000-02-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
844
845         * src/lyx_cb.C src/UpdateInset.[Ch]: move the updateinsetlist into
846         BufferView and reimplement the list as a queue put inside its own
847         class.
848
849         * src/bufferlist.[Ch] (updateInset): remove func, not needed.
850
851         * several files: use the new interface to the "updateinsetlist"
852         
853         * src/WorkArea.C (work_area_handler): call BufferView::doubleClick
854         on doubleclick.
855         (work_area_handler): call BufferView::trippleClick on trippleclick.
856
857         * src/BufferView.C (doubleClick): new function, selects word on
858         doubleclick. 
859         (trippleClick): new function, selects line on trippleclick.
860
861 2000-02-22  Allan Rae  <rae@lyx.org>
862
863         * lib/bind/xemacs.bind: buffer-previous not supported
864
865 2000-02-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
866
867         * src/insets/insettoc.[Ch] (LinuxDoc, DocBook): mark the methods
868         as const.
869
870 2000-02-20  Lars Gullik Bjønnes  <larsbj@lyx.org>
871
872         * src/bufferlist.C: get rid of current_view from this file
873
874         * src/spellchecker.C: get rid of current_view from this file
875
876         * src/vspace.C: get rid of current_view from this file
877         (inPixels): added BufferView parameter for this func
878         (asLatexCommand): added a BufferParams for this func
879
880         * src/text.C src/text2.C: get rid of current_view from these
881         files.
882         
883         * src/lyxfont.C (getFontDirection): move this function here from
884         text.C
885         
886         * src/bufferparams.C (getDocumentDirection): move this function
887         here from text.C
888
889         * src/paragraph.C (getParDirection): move this function here from
890         text.C 
891         (getLetterDirection): ditto
892         
893 2000-02-18  Lars Gullik Bjønnes  <larsbj@lyx.org>
894
895         * WorkArea, Painter, LyXScreen: Fixed the crash that occured on
896         resize due to wrong pixmap beeing used. Also took the opurtunity
897         to make the LyXScreen stateless on regard to WorkArea and some
898         general cleanup in the same files.
899         
900 2000-02-17  Lars Gullik Bjønnes  <larsbj@lyx.org>
901
902         * src/Makefile.am: add missing direction.h
903
904         * src/PainterBase.h: made the width functions const.
905         
906         * lib/kbd/iso8859-1.cdef: fix a couple of entries and define some
907         missing ones.
908         
909         * src/insets/insetcommand.C (draw): draw Editable as buttons.
910
911         * src/insets/insetlatexaccent.C (draw): make the accents draw
912         better, at present this will only work well with iso8859-1.
913         
914         * several files: remove the old drawing code, now we use the new
915         painter only.
916
917         * several files: remove support for mono_video, reverse_video and
918         fast selection.
919
920 2000-02-17  Juergen Vigna  <jug@sad.it>
921
922         * src/mathed/math_cursor.[Ch] (SelGetArea): Changed form int * to
923         int ** as we have to return the pointer, otherwise we have only
924         NULL pointers in the returning function.
925
926 2000-02-16  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
927
928         * src/LaTeX.C (operator()): quote file name when running latex.
929
930 2000-02-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
931
932         * src/toolbar.C (set): use fl_set_object_helper for the tooltop
933         (bubble tip), this removes our special handling of this.
934
935         * Remove all code that is unused now that we have the new
936         workarea. (Code that are not active when NEW_WA is defined.)
937
938         * Make the uses of XSync not conditionalized on define USE_XSYNC.
939         
940 2000-02-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
941
942         * src/lyxfunc.C (Dispatch): fix LFUN_LAYOUT when giving a
943         nonexisting layout; correctly redirect obsoleted layouts.
944
945         * lib/lyxrc.example: document \view_dvi_paper_option
946
947         * src/lyxrc.[Ch]: add support for the \view_dvi_paper_option
948         variable. 
949
950         * src/lyx_cb.C (RunScript): handle $$FName for command names. 
951         (PreviewDVI): handle the view_dvi_paper_option variable.
952         [Both from Roland Krause]
953
954 2000-02-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
955
956         * src/Painter.C (text(int,int,char,LyXFont)): call text(int, int,
957         char const *, int, LyXFont)
958         (text(int, int, string, LyXFont)): ditto 
959
960         * src/text.C (InsertCharInTable): attempt to fix the double-space
961         feature in tables too.
962         (BackspaceInTable): ditto.
963         (GetVisibleRow): make bottom pagebreak line be a onoff line.
964
965 2000-02-11  Lars Gullik Bjønnes  <larsbj@lyx.org>
966
967         * src/text2.C (owner): only complain if owner_ is set and bv != 0
968
969         * src/BufferView.C (resizeCurrentBuffer): set the owner of the
970         newly found text in textcache to this.
971         (buffer): set the owner of the text put into the textcache to 0
972
973         * src/insets/figinset.C (draw): fixed the drawing of figures with
974         the new Painter.
975
976         * src/text.C src/mathed/math_cursor.C: nailed and fixed the
977         drawing of mathframe, hfills, protected space, table lines. I have
978         now no outstanding drawing problems with the new Painter code. 
979
980 2000-02-11  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
981
982         * src/PainterBase.C (ellipse, circle): do not specify the default
983         arguments. 
984
985         * src/LColor.h: add using directive.
986
987         * src/Painter.[Ch]: change return type of methods from Painter& to
988         PainterBase&. Add a using directive.
989
990         * src/WorkArea.C: wrap xforms callbacks in C functions
991         C_WorkArea_xxx. 
992
993         * lib/layouts/foils.layout: font fix and simplifications from Carl
994         Ollivier-Gooch.
995
996 2000-02-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
997
998         * a lot of files: The Painter, LColor and WorkArea from the old
999         devel branch has been ported to lyx-devel. Some new files and a
1000         lot of #ifdeffed code. The new workarea is enabled by default, but
1001         if you want to test the new Painter and LColor you have to compile
1002         with USE_PAINTER defined (do this in config.h f.ex.) There are
1003         still some rought edges, and I'd like some help to clear those
1004         out. It looks stable (loads and displays the Userguide very well).
1005         
1006
1007 2000-02-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1008
1009         * src/buffer.C (pop_tag): revert to the previous implementation
1010         (use a global variable for both loops).
1011
1012         * lib/kbd/iso8859-1.cdef: fix definition for \"{e}.
1013
1014         * src/lyxrc.C (LyXRC): change slightly default date format.
1015
1016         * src/paragraph.C (TeXOnePar): Generate a correct latex file when
1017         there is an English text with a footnote that starts with a Hebrew
1018         paragraph, or vice versa.
1019         (TeXFootnote): ditto.
1020
1021         * src/text.C (LeftMargin): allow for negative values for
1022         parindent. Thanks to Philip Lehman <lehman@gmx.net> for testing
1023         this out.
1024
1025         * src/lyx_gui.C (create_forms): add iso88595 as a possible choice
1026         for input encoding (cyrillic)
1027
1028 2000-02-08  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1029
1030         * src/lyx_gui.C (create_forms): make combo box taller (from Dekel
1031         Tsur). 
1032
1033         * src/toolbar.C (set): ditto
1034         * src/insets/insetbib.C (create_form_citation_form): ditto
1035
1036         * lib/CREDITS: added Dekel Tsur.
1037
1038         * lib/kbd/hebrew.kmap, lib/kbd/null.kmap,
1039         lib/layouts/heb-article.layout, lib/layouts/heb-letter.layout: new
1040         hebrew supports files from Dekel Tsur.
1041         
1042         * lib/kbd/iso8859-8.cdef: new file, from Tzafrir Cohen
1043         <tzafrir@technion.ac.il> 
1044
1045         * src/lyxrc.C: put \date_insert_format at the right place.
1046
1047         * src/buffer.C (makeLaTeXFile): fix the handling of
1048         BufferParams::sides when writing out latex files.
1049
1050         * src/BufferView2.C: add a "using" directive.
1051
1052         * src/support/lyxsum.C (sum): when we use lyxstring,
1053         ostringstream::str needs an additional .c_str().
1054
1055 2000-02-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
1056
1057         * src/support/filetools.C (ChangeExtension): patch from Etienne
1058         applied.
1059
1060         * src/TextCache.C (show): remove const_cast and make second
1061         parameter non-const LyXText *.
1062
1063         * src/TextCache.h: use non const LyXText in show.
1064
1065         * src/paragraph.C (SimpleTeXSpecialChars): patch to make urls work
1066         with hebrew.
1067
1068 2000-02-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
1069
1070         * src/support/lyxsum.C: rework to be more flexible.
1071         
1072         * several places: don't check if a pointer is 0 if you are going
1073         to delete it.
1074
1075         * src/text.C: remove some dead code.
1076
1077         * src/insets/figinset.C: remove some dead code
1078         
1079         * src/buffer.C: move the BufferView funcs to BufferView2.C
1080         remove all support for insetlatexdel
1081         remove support for oldpapersize stuff
1082         made some member funcs const
1083
1084         * src/kbmap.C: use a std::list to store the bindings in.
1085         
1086         * src/BufferView2.C: new file
1087
1088         * src/kbsequence.[Ch]: new files
1089         
1090         * src/LyXAction.C + others: remove all trace of buffer-previous
1091         
1092         * src/Bullet.[Ch]: moved ITEMIZE_DEFAULTS inside Bullet.C so that we
1093         only have one copy in the binary of this table.
1094         
1095         * hebrew patch: moved some functions from LyXText to more
1096         appropriate places. (LyXParagraph, BufferParams, LyXFont)
1097         
1098         * several files: remove support for XForms older than 0.88
1099         whitespace changes.
1100         remove some #if 0 #endif code
1101         
1102         * src/TextCache.[Ch]: new file. Holds the textcache.
1103
1104         * src/BufferView.C: changes to use the new TextCache interface.
1105         (waitForX): remove the now unused code.
1106         
1107         * src/BackStack.h: remove some commented code
1108
1109         * lib/bind/emacs.bind: remove binding for buffer-previous
1110
1111 2000-02-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
1112
1113         * applied the hebrew patch.
1114
1115         * src/lyxrow.h: make sure that all Row variables are initialized.
1116
1117         * src/text2.C (TextHandleUndo): comment out a delete, this might
1118         introduce a memory leak, but should also help us to not try to
1119         read freed memory. We need to look at this one.
1120
1121         * src/paragraph.C (SimpleDocBookOneTablePar): initialize column to 0
1122         (LyXParagraph): initalize footnotekind.
1123
1124         * src/lyxrc.C (output): added case RC_DATE_INSERT_FORMAT. Jug
1125         forgot this when applying the patch. Please heed the warnings.
1126
1127         * src/BufferView.C (buffer): a fix for the buffer-reload problem
1128         (aka. reformat problem)
1129
1130         * src/bufferlist.C (exists): made const, and use const_iterator
1131         (isLoaded): new func.
1132         (release): use std::find to find the correct buffer.
1133
1134         * src/bufferlist.h: made getState a const func.
1135         made empty a const func.
1136         made exists a const func.
1137         new func: isLoaded
1138
1139 2000-02-01  Juergen Vigna  <jug@sad.it>
1140
1141         * src/lyxfunc.C lyxrc.C: changed from insert-date to date-insert
1142
1143         * po/it.po: updated a bit the italian po file and also changed the
1144         'file nuovo' for newfile to 'filenuovo' without a space, this did
1145         annoy me a lot :)
1146         
1147         * src/lyxrc.C (LyXRC): added support for a default insert_date_format
1148         for the new insert_date command.
1149
1150         * src/lyxfunc.C (Dispatch): added support for a insert_date function
1151         from jdblair, to insert a date into the current text conforming to
1152         a strftime format (for now only considering the locale-set and not
1153         the document-language).
1154
1155 2000-01-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1156
1157         * src/lyxfont.C (textWidth): hopefully better fix for the Array
1158         Bounds Read error seen by purify. The problem was that islower is
1159         a macros which takes an unsigned char and uses it as an index for
1160         in array of characters properties (and is thus subject to the
1161         above error).
1162         (drawText): ditto.
1163
1164         * src/lyx_cb.C (UpdateLayoutDocument): use a switch to set
1165         correctly the paper sides radio buttons.
1166         (UpdateDocumentButtons): ditto.
1167
1168 2000-01-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
1169
1170         * src/kbmap.C (getsym + others): change to return unsigned int,
1171         returning a long can give problems on 64 bit systems. (I assume
1172         that int is 32bit on 64bit systems)
1173
1174 2000-01-27  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1175
1176         * src/lyxfunc.C (processKeyEvent): fix a the buffer returned by
1177         LyXLookupString to be zero-terminated. Really fixes problems seen
1178         by purify, I think.
1179
1180 2000-01-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
1181
1182         * src/lyxfunc.C (processKeyEvent): "fix" so that we never try to
1183         write a (char*)0 to the lyxerr stream.
1184
1185         * src/lastfiles.C: move algorithm before the using statemets.
1186
1187 2000-01-26  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1188
1189         * src/lastfiles.C: move using directives in global scope (egcs 1.x
1190         complains otherwise).
1191         * src/table.C: ditto
1192
1193         * lib/reLyX/reLyX.in: use variable @LYX_DIR@ as built-in data
1194         directory. 
1195
1196         * lib/reLyX/configure.in (LYX_DIR): re-introduce this variable
1197         that I removed earlier... It is really needed.
1198
1199         * lib/examples/multicol.lyx: new file, splitted from Extended.lyx. 
1200
1201 2000-01-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1202
1203         * INSTALL: update xforms home page URL.
1204
1205         * lib/configure.m4: fix a bug with unreadable layout files.
1206
1207         * src/table.C (calculate_width_of_column): add "using std::max"
1208         directive. 
1209
1210 2000-01-25  Lars Gullik Bjønnes  <larsbj@lyx.org>
1211
1212         * several files: marked several lines with "DEL LINE", this is
1213         lines that can be deleted without changing anything.
1214         if (<ptr>) // DEL LINE  /* this line is _never_ needed. Delete
1215                                    checks this anyway */
1216                 delete <ptr>
1217
1218         * src/insets/insetlatexaccent.C: Changed some debugs to Debug::KEY
1219
1220         * src/DepTable.C (update): add a "+" at the end when the checksum
1221         is different. (debugging string only)
1222
1223         * src/paragraph.C (ReturnNextInsetPointer): fix bug that caused
1224         the next inset to not be displayed. This should also fix the list
1225         of labels in the "Insert Crossreference" dialog.
1226
1227 2000-01-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
1228
1229         * src/support/LSubstring.C (LSubstring): set pos to string::npos
1230         when regex was not found.
1231
1232         * src/support/lstrings.C (lowercase): use handcoded transform always.
1233         (uppercase): ditto
1234
1235         * src/text.C (Delete): fixed the crash. cursor.par->prev and
1236         old_cursor.par->prev could be 0.
1237
1238         * several files: changed post inc/dec to pre inc/dec
1239         
1240         * src/lastfiles.C (writeFile): use ostream_iterator and copy to
1241         write the lastfiles to file.
1242
1243         * src/BufferView.C (buffer): only show TextCache info when debugging
1244         (buffer): ditto
1245         (resizeCurrentBuffer): ditto
1246         (workAreaExpose): ditto
1247
1248         * lib/kbd/iso8859-7.cdef: changed to new quoting scheme
1249
1250         * lib/kbd/iso8859-2.cdef: changed to new quoting scheme
1251
1252         * src/insets/insetlatexaccent.C (Draw): make the display of UMLAUT
1253         a bit better by removing the special case for \i and \j.
1254
1255 2000-01-24  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1256
1257         * src/lyx_main.C (easyParse): remove test for bad comand line
1258         options, since this broke all xforms-related parsing.
1259
1260         * src/kbmap.C (getsym): set return type to unsigned long, as
1261         declared in header. On an alpha, long is _not_ the same as int.
1262
1263         * src/support/LOstream.h: add a "using std::flush;"
1264
1265         * src/insets/figinset.C: ditto.
1266
1267 2000-01-21  Lars Gullik Bjønnes  <larsbj@lyx.org>
1268
1269         * src/bufferlist.C (write): use blinding fast file copy instead of
1270         "a char at a time", now we are doing it the C++ way.
1271
1272         * src/insets/figinset.C: get rid of struct pidwaitpit, use a
1273         std::list<int> instead.
1274         (addpidwait): reflect move to std::list<int>
1275         (sigchldchecker): ditto
1276
1277         * src/bmtable.c (fl_set_bmtable_file): have arguments in the X r5
1278         version also. 
1279
1280         * src/paragraph.C (FirstPhysicalPar): remove assert and comment
1281         that obviously was wrong...
1282
1283         * src/lyxfont.C (textWidth): have c as char c[2] instead of char
1284         c, this avoids warnings with purify and islower.
1285
1286         * src/insets/figinset.C: rename struct queue to struct
1287         queue_element and rewrite to use a std::queue. gsqueue is now a
1288         std::queue<queue_element>
1289         (runqueue): reflect move to std::queue
1290         (addwait): ditto
1291
1292         * src/support/lstrings.h (tostr): specialize for bool, otherwise
1293         we would get "1" "0" instead of "true" "false. Also make the tostr
1294         functions inline.
1295
1296 2000-01-21  Juergen Vigna  <jug@sad.it>
1297
1298         * src/buffer.C (writeFileAscii): Disabled code for special groff
1299         handling of tabulars till I fix this in table.C
1300
1301 2000-01-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1302
1303         * src/support/mkdir.C (mkdir): change second argument of mkdir to
1304         unsigned long int.
1305         * src/support/lyxlib.h: ditto.
1306
1307 2000-01-20  Lars Gullik Bjønnes  <larsbj@lyx.org>
1308
1309         * src/insets/insetlatexaccent.C (Draw): make accents on top of 'i'
1310         and 'j' look better. This might fix the "macron" bug that has been
1311         observed.
1312
1313         * src/support/lstrings.[Ch] (tostr): reimplement all the tostr
1314         functions as one template function. Delete the old versions.
1315
1316         * src/support/lyxsum.C: move using std::ifstream inside
1317         MODERN_STL_STREAMS
1318
1319         * src/support/Makefile.am (libsupport_la_SOURCES): added mkdir.C
1320         and putenv.C
1321
1322         * src/mathed/formulamacro.C: delete #include "bufferlist.h" never used
1323
1324         * src/mathed/formula.C: delete #include "bufferlist.h" never used
1325
1326         * src/insets/figinset.C (InitFigures): use new instead of malloc
1327         to allocate memory for figures and bitmaps.
1328         (DoneFigures): use delete[] instead of free to deallocate memory
1329         for figures and bitmaps.
1330         (runqueue): use new to allocate 
1331         (getfigdata): use new/delete[] instead of malloc/free
1332         (RegisterFigure): ditto
1333
1334         * some files: moved some declarations closer to first use, small
1335         whitespace changes use preincrement instead of postincrement where
1336         it does not make a difference.
1337         
1338         * src/kbmap.[Ch]: delete code according to define NO_HASH, it is a
1339         step on the way to use stl::containers for key maps. 
1340
1341         * src/bufferlist.h: add a typedef for const_iterator and const
1342         versions of begin and end.
1343
1344         * src/bufferlist.[Ch]: change name of member variable _state to
1345         state_. (avoid reserved names)
1346         (makePup): removed
1347         (getFileNames): returns the filenames of the buffers in a vector.
1348
1349         * configure.in (ALL_LINGUAS): added ro
1350
1351         * src/support/putenv.C: new file
1352
1353         * src/support/mkdir.C: new file
1354
1355 2000-01-20  Allan Rae <rae@lyx.org>
1356
1357         * lib/layouts/IEEEtran.layout: Added several theorem environments
1358
1359         * lib/templates/IEEEtran.lyx: Example theorem environments and a
1360         couple of minor additions.
1361
1362         * lib/doc/LaTeXConfig.lyx.in:  Use URL insets for ftp sites 
1363         (except for those in footnotes of course)
1364
1365 2000-01-19  Lars Gullik Bjønnes  <larsbj@lyx.org>
1366
1367         * src/lyxlookup.C (CloseLyXLookup): set xic=0; after destruction. 
1368
1369         * src/mathed/math_utils.C (MathedLookupBOP): rewrite to use
1370         std::sort and std::lower_bound instead of qsort and handwritten
1371         binarysearch.
1372         (struct compara): struct that holds the functors used by std::sort
1373         and std::lower_bound in MathedLookupBOP.
1374
1375 2000-01-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1376
1377         * src/support/LAssert.h: do not do partial specialization. We do
1378         not really need it.
1379
1380         * src/support/lyxlib.h: note that lyx::getUserName() and
1381         lyx::date() are not in use right now. Should these be suppressed?
1382
1383         * src/buffer.C (makeLaTeXFile): we do not need the user name here.
1384         (makeLinuxDocFile): do not put date and user name in linuxdoc
1385         headers. 
1386
1387         * src/support/lyxlib.h (kill): change first argument to long int,
1388         since that's what solaris uses.
1389
1390         * src/support/kill.C (kill): fix declaration to match prototype.
1391
1392         * config/lyxinclude.m4 (LYX_CXX_NAMESPACES): fix the macro to
1393         actually check whether namespaces are supported. This is not what
1394         it used to do.
1395
1396         * src/support/lyxsum.C: add a using directive.
1397
1398 2000-01-17  Lars Gullik Bjønnes  <larsbj@lyx.org>
1399
1400         * src/support/kill.C: if we have namespace support we don't have
1401         to include lyxlib.h.
1402
1403         * src/support/lyxlib.h: use namespace lyx if supported.
1404
1405 2000-01-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
1406
1407         * src/support/date.C: new file
1408
1409         * src/support/chdir.C: new file
1410
1411         * src/support/getUserName.C: new file
1412
1413         * src/support/getcwd.C: new file
1414
1415         * src/support/abort.C: new file
1416
1417         * src/support/kill.C: new file
1418
1419         * src/support/lyxlib.h: moved all the functions in this file
1420         insede struct lyx. Added also kill and abort to this struct. This
1421         is a way to avoid the "kill is not defined in <csignal>", we make
1422         C++ wrappers for functions that are not ANSI C or ANSI C++.
1423
1424         * src/support/lyxsum.C (sum): use #ifdef MODERN_STL_STREAMS
1425         instead of #if __GLIBCPP__. Since lyxsum is now put inside struct
1426         lyx it has been renamed to sum.
1427
1428 2000-01-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1429
1430         * src/text.C: add using directives for std::min and std::max.
1431
1432 2000-01-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1433
1434         * src/texrow.C (getIdFromRow): actually return something useful in
1435         id and pos. Hopefully fixes the bug with positionning of errorbox
1436         insets. 
1437
1438         * src/lyx_main.C (easyParse): output an error and exit if an
1439         incorrect command line option has been given.
1440
1441         * src/spellchecker.C (ispell_check_word): document a memory leak.
1442
1443         * src/bufferlist.C (write): fix mismatched allocation/deletion,
1444         where a "struct utimbuf" is allocated with "new" and deleted with
1445         "delete[]". 
1446
1447 2000-01-13  Lars Gullik Bjønnes  <larsbj@lyx.org>
1448
1449         * src/text2.C (CutSelection): don't delete double spaces.
1450         (PasteSelection): ditto
1451         (CopySelection): ditto
1452         
1453         * src/text.C (Backspace): don't delete double spaces.
1454
1455         * src/lyxlex.C (next): fix a bug that were only present with
1456         conformant std::istream::get to read comment lines, use
1457         std::istream::getline instead. This seems to fix the problem.
1458
1459 2000-01-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
1460
1461         * src/text2.C (DeleteEmptyParagraphMechanism): fix for the "not
1462         allowed to insert space before space" editing problem. Please read
1463         commends at the beginning of the function. Comments about usage
1464         are very welcome.
1465
1466         * src/text.C (InsertChar): fix for the "not allowed to insert
1467         space before space" editing problem.
1468
1469         * src/text2.C (DeleteEmptyParagraphMechanism): when
1470         IsEmptyTableRow can only return false this last "else if" will
1471         always be a no-op. Commented out.
1472
1473         * src/text.C (RedoParagraph): As far as I can understand tmp
1474         cursor is not really needed.
1475
1476         * src/lyxtext.[Ch] (IsEmptyTableCell): commented out. As used at
1477         present it could only return false anyway. 
1478         (several functions): Did something not so smart...added a const
1479         specifier on a lot of methods.
1480         
1481         * src/paragraph.C (BreakParagraph): removed the tmp->text.reserve
1482         and add a tmp->text.resize. The LyXParagraph constructor does the
1483         resize for us.
1484         (BreakParagraphConservative): ditto
1485
1486         * src/support/path.h (Path): add a define so that the wrong usage
1487         "Path("/tmp") will be flagged as a compilation error:
1488         "`unnamed_Path' undeclared (first use this function)"
1489
1490 2000-01-12  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1491
1492         * config/lyxinclude.m4 (LYX_FUNC_PUTENV_ARGTYPE): fix the macro,
1493         which was bogus for several reasons.
1494
1495         * src/LaTeX.C (scanAux): fix the regular expression used to scan
1496         .aux files. 
1497         (runBibTeX): ditto.
1498
1499         * autogen.sh: do not use "type -path" (what's that anyway?).
1500
1501         * src/support/filetools.C (findtexfile): remove extraneous space
1502         which caused a kpsewhich warning (at least with kpathsea version
1503         3.0). 
1504
1505 2000-01-11  Lars Gullik Bjønnes  <larsbj@lyx.org>
1506
1507         * src/mathed/Makefile.am (noinst_LTLIBRARIES): use .la
1508
1509         * src/insets/Makefile.am (noinst_LTLIBRARIES): use .la
1510
1511         * src/Makefile.am (lyx_DEPENDENCIES): switch back to .la libs
1512
1513 2000-01-11  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1514
1515         * src/paragraph.C (BreakParagraph): do not reserve space on text
1516         if we don't need to (otherwise, if pos_end < pos, we end up
1517         reserving huge amounts of memory due to bad unsigned karma).
1518         (BreakParagraphConservative): ditto, although I have not seen
1519         evidence the bug can happen here.
1520
1521         * src/lyxparagraph.h: add a using std::list.
1522
1523 2000-01-11  Juergen Vigna  <jug@sad.it>
1524
1525         * src/menus.C (MenuDocu): output an Alert if the documentation-file
1526         could not be found.
1527
1528 2000-01-11  Lars Gullik Bjønnes  <larsbj@lyx.org>
1529
1530         * src/vc-backend.C (doVCCommand): change to be static and take one
1531         more parameter: the path to chdir too be fore executing the command.
1532         (retrive): new function equiv to "co -r"
1533
1534         * src/bufferlist.C (loadLyXFile): implement the missing parts if
1535         file_not_found_hook is true.
1536
1537         * src/lyxvc.C (file_not_found_hook): implement file_not_found_hook.
1538
1539         * src/support/filetools.C (IsFileWriteable): use FileInfo to check
1540         if a file is readwrite,readonly...anything else.
1541
1542 2000-01-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
1543
1544         * src/lyx_cb.C (MakeLaTeXOutput): name change from MakeDVIOutput
1545         (CreatePostscript): name change from MenuRunDVIPS (or something)
1546         (PreviewPostscript): name change from MenuPreviewPS
1547         (PreviewDVI): name change from MenuPreviewDVI
1548
1549         * lib/lyxrc.example: added \pdflatex_command, \pdf_mode,
1550         \view_pdf_command., \pdf_to_ps_command
1551
1552         * lib/configure.m4: added search for PDF viewer, and search for
1553         PDF to PS converter. 
1554         (lyxrc.defaults output): add \pdflatex_command,
1555         \view_pdf_command and \pdf_to_ps_command.
1556
1557         * src/lyx_cb.C (MenuPreviewDVI): renamed from MenuPreview.
1558
1559         * src/bufferlist.C (write): we don't use blocksize for anything so
1560         I removed it.
1561
1562 2000-01-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1563
1564         * src/support/block.h: disable operator T* (), since it causes
1565         problems with both compilers I tried. See comments in the file.
1566
1567         * lib/reLyX/configure.in: do not define LYX_DIR. support flag
1568         --with-lyxname. 
1569
1570         * lib/reLyX/reLyX.in: change LYX_DIR to pkgdatadir; change env.
1571         variable LYX_DIR_10x to LYX_DIR_11x.
1572
1573         * src/Makefile.am: replace variable LYX_DIR with pkgdatadir.
1574
1575         * INSTALL: document --with-lyxname.
1576         * NEWS: ditto.
1577
1578         * configure.in: new configure flag --with-lyxname which allows to
1579         choose the name under which lyx is installed. Default is "lyx", of
1580         course. It used to be possible to do this with --program-suffix,
1581         but the later has in fact a different meaning for autoconf.
1582
1583         * src/support/lstrings.h (lstrchr): reformat a bit.
1584
1585         * src/lyxlex.h: include LIstream.h, for Sun CC this time.
1586         * src/mathed/math_defs.h: ditto.
1587
1588 2000-01-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
1589
1590         * src/lyxrc.[Ch]: New tag and variable "\make_backup". Defaults to
1591         true, decides if we create a backup file or not when saving. New
1592         tag and variable \pdf_mode, defaults to false. New tag and
1593         variable \pdflatex_command, defaults to pdflatex. New tag and
1594         variable \view_pdf_command, defaults to xpdf. New tag and variable
1595         \pdf_to_ps_command, defaults to pdf2ps.
1596
1597 2000-01-08  Lars Gullik Bjønnes  <larsbj@lyx.org>
1598
1599         * src/bufferlist.C (close): don't call insetUnlock if the buffer
1600         does not have a BufferView.
1601         (unlockInset): ditto + don't access the_locking_inset if the
1602         buffer does not have a BufferView.
1603
1604         * src/LyXView.C (KeyPressMask_raw_callback): add a XSync in
1605         certain circumstances so that we don't continue a keyboard
1606         operation long after the key was released. Try f.ex. to load a
1607         large document, press PageDown for some seconds and then release
1608         it. Before this change the document would contine to scroll for
1609         some time, with this change it stops imidiatly.
1610
1611         * src/support/block.h: don't allocate more space than needed. As
1612         long as we don't try to write to the arr[x] in a array_type arr[x]
1613         it is perfectly ok. (if you write to it you might segfault).
1614         added operator value_type*() so that is possible to pass the array
1615         to functions expecting a C-pointer.
1616
1617         * lib/Makefile.am (dist-hook): don't fail completely if unable to
1618         cvs.
1619
1620         * intl/*: updated to gettext 0.10.35, tried to add our own
1621         required modifications. Please verify.
1622
1623         * po/*: updated to gettext 0.10.35, tried to add our own required
1624         modifications. Please verify.
1625         
1626         * src/support/lstrings.C (tostr): go at fixing the problem with
1627         cxx and stringstream. When stringstream is used return
1628         oss.str().c_str() so that problems with lyxstring and basic_string
1629         are avoided. Note that the best solution would be for cxx to use
1630         basic_string all the way, but it is not conformant yet. (it seems)
1631
1632         * src/lyx_cb.C + other files: moved several global functions to
1633         class BufferView, some have been moved to BufferView.[Ch] others
1634         are still located in lyx_cb.C. Code changes because of this. (part
1635         of "get rid of current_view project".)
1636
1637         * src/buffer.C + other files: moved several Buffer functions to
1638         class BufferView, the functions are still present in buffer.C.
1639         Code changes because of this.
1640
1641         * config/lcmessage.m4: updated to most recent. used when creating
1642         acinclude.m4.
1643
1644         * config/progtest.m4: updated to most recent. used when creating
1645         acinclude.m4.
1646         
1647         * config/gettext.m4: updated to most recent. applied patch for
1648         tmplinguas.
1649
1650         * config/gettext.m4.patch: new file that shows what changes we
1651         have done to the local copy of gettext.m4.
1652
1653         * config/libtool.m4: new file, used in creation of acinclude.m4
1654
1655         * config/lyxinclude.m4: new file, this is the lyx created m4
1656         macros, used in making acinclude.m4.
1657         
1658         * autogen.sh: GNU m4 discovered as a separate task not as part of
1659         the lib/configure creation. 
1660         Generate acinlucde from files in config. Actually cat
1661         lyxinclude.m4, libtool.m4 and gettext.m4 together. This makes it
1662         easier to upgrade .m4 files that really are external.
1663
1664         * src/Spacing.h: moved using std::istringstream to right after
1665         <sstream>. This should fix the problem seen with some compilers.
1666
1667 2000-01-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
1668
1669         * src/lyx_cb.C: began some work to remove the dependency a lot of
1670         functions have on BufferView::text, even if not really needed.
1671         (GetCurrentTextClass): removed this func, it only hid the
1672         current_view. 
1673
1674         * src/Makefile.am (lyx_DEPENDENCIES): use support/libsupport.la I
1675         forgot this in last commit.
1676
1677         * src/Bullet.C (bulletEntry): use static char const *[] for the
1678         tables, becuase of this the return arg had to change to string.
1679         (bulletSize): ditto
1680         (~Bullet): removed unneeded destructor
1681
1682         * src/BufferView.C (beforeChange): moved from lyx_cb.C
1683         (insetSleep): moved from Buffer
1684         (insetWakeup): moved from Buffer
1685         (insetUnlock): moved from Buffer
1686
1687         * buffer.[Ch], BufferView.[Ch] + others: moved the_locking_inset
1688         from Buffer to BufferView.
1689         
1690         * acinclude.m4: include libtool.m4 from libtool 1.3.4.
1691
1692         * config/ltmain.sh: updated to version 1.3.4 of libtool
1693
1694         * config/ltconfig: updated to version 1.3.4 of libtool
1695
1696 2000-01-06  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1697
1698
1699         * src/buffer.C (pop_tag): fix a dubious for() loop initialization.
1700         Did I get that right?
1701
1702         * src/lyxlex.h: add a "using" directive or two.
1703         * src/Spacing.h: ditto.
1704         * src/insets/figinset.C: ditto.
1705         * src/support/filetools.C: ditto.
1706         * src/support/lstrings.C: ditto.
1707         * src/BufferView.C: ditto.
1708         * src/bufferlist.C: ditto.
1709         * src/lyx_cb.C: ditto.
1710         * src/lyxlex.C: ditto.
1711
1712         * NEWS: add some changes for 1.1.4.
1713         
1714 2000-01-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
1715
1716         * src/BufferView.C: first go at a TextCache to speed up switching
1717         between documents.
1718
1719 2000-01-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1720
1721         * lib/examples/ItemizeBullets.lyx: update from Tino Meinen. 
1722         * lib/examples/nl_voorbeeld_ruw.lyx: ditto.
1723         * lib/examples/nl_voorbeeld_verlyxt.lyx: ditto.
1724         * lib/examples/nl_opsommingstekens.lyx: new translation from Tino
1725         Meinen.
1726         
1727         * src/mathed/math_defs.h (MathedRowSt): make sure that all
1728         members of the struct are correctly initialized to 0 (detected by
1729         purify) 
1730         * src/lyxrc.C (LyXRC): ditto for print_adapt_output.
1731         * src/insets/figinset.C (InsetFig): ditto for pswid and pshgh.
1732
1733         * src/insets/figinset.C (sigchldchecker): use "delete" to free a
1734         pidwait, since it was allocated with "new". This was potentially
1735         very bad. Thanks to Michael Schmitt for running purify for us.
1736
1737
1738 2000-01-04  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1739
1740         * src/lyx_gui_misc.C: add a 'using std::make_pair;' statement.
1741
1742         * src/lyx_gui_misc.h: add a 'using std::pair;' statement.
1743
1744 1999-12-30  Allan Rae  <rae@lyx.org>
1745
1746         * lib/templates/IEEEtran.lyx: minor change
1747
1748         * src/lyxvc.C (registrer, checkIn), src/lyx_cb.C (MenuInsertLabel),
1749         src/mathed/formula.C (LocalDispatch): askForText changes
1750
1751         * src/lyx_gui_misc.[Ch] (askForText): now returns a bool also so we 
1752         know when a user has cancelled input. Fixes annoying problems with
1753         inserting labels and version control.
1754
1755 1999-12-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
1756
1757         * src/support/lstrings.C (tostr): rewritten to use strstream and
1758         stringstream
1759
1760 1999-12-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
1761
1762         * src/support/filetools.C (IsFileWriteable): use fstream to check
1763         (IsDirWriteable): use fileinfo to check
1764
1765         * src/support/filetools.h (FilePtr): whole class deleted
1766
1767         * src/insets/figinset.C (GetPSSizes): rewritten to use ifstream.
1768
1769         * src/lyxparagraph.h (readSimpleWholeFile): make arg istream
1770
1771         * src/lyx_cb.C (InsertAsciiFile): use ifstream instead of FilePtr
1772
1773         * src/bufferlist.C (write): use ifstream and ofstream instead of
1774         FILE*
1775
1776         * src/Spacing.h: use istrstream instead of sscanf
1777
1778         * src/mathed/math_defs.h: change first arg to istream from FILE*
1779
1780         * src/buffer.C (insertLyXFile): use ifstream instead of FilePtr
1781
1782         * src/mathed/math_parser.C: have yyis to be an istream 
1783         (LexGetArg): use istream (yyis)
1784         (yylex): ditto
1785         (mathed_parse): ditto
1786         (mathed_parser_file): first arg istream instead of FILE*, set yyis
1787
1788         * src/mathed/formula.C (Read): rewritten to use istream
1789
1790         * src/mathed/formulamacro.C (Read): rewritten to use istream
1791
1792         * src/lyxlex.h (~LyXLex): deleted desturctor 
1793         (getStream): new function, returns an istream
1794         (getFile): deleted funtion
1795         (IsOK): return is.good();
1796
1797         * src/lyxlex.C (LyXLex): delete file and owns_file
1798         (setFile): open an filebuf and assign that to a istream instead of
1799         using FILE*
1800         (setStream): new function, takes an istream as arg. 
1801         (setFile): deleted function
1802         (EatLine): rewritten us use istream instead of FILE*
1803         (next): ditto
1804         (nextToken): ditto
1805
1806         * src/table.C (LyXTable): use istream instead of FILE*
1807         (Read): rewritten to take an istream instead of FILE*
1808
1809 1999-12-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1810
1811         * src/buffer.C (Dispatch): remove an extraneous break statement.
1812
1813         * src/support/filetools.C (QuoteName): change to do simple
1814         'quoting'. More work is necessary. Also changed to do nothing
1815         under emx (needs fix too).
1816         (Putenv): Cast the argument of putenv() with PUTENV_TYPE_ARG.
1817
1818         * acinclude.m4 (STL_STRING_FWD_H_LOCATION): add the comment for
1819         config.h.in to the AC_DEFINE_UNQUOTED() call.
1820         (LYX_FUNC_PUTENV_ARGTYPE): new macro. Checks whether putenv()
1821         needs char * as argument (because Solaris 7 declares it like
1822         that). 
1823
1824         * acconfig.h: remove placeholder for STL_STRING_FWD_H_LOCATION;
1825         remove definition of BZERO.
1826
1827 1999-12-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
1828
1829         * src/support/LRegex.C: include <regex.h> if HAVE_REGEX_H is
1830         defined, "lyxregex.h" if not.
1831
1832         * src/support/Makefile.am (noinst_LTLIBRARIES): changed from
1833         pkglib_ to noinst_
1834         (REGEX): new variable that is set to regex.c lyxregex.h when
1835         AM_CONDITIONAL USE_REGEX is set.
1836         (libsupport_la_SOURCES): add $(REGEX)
1837
1838         * src/mathed/Makefile.am (noinst_LTLIBRARIES): changed from
1839         pkglib_ to noinst_
1840
1841         * src/insets/Makefile.am (noinst_LTLIBRARIES): changed from
1842         pkglib_ to noinst_
1843
1844         * configure.in: add call to LYX_REGEX 
1845
1846         * acinclude.m4 (LYX_REGEX): checks if we need to use the included
1847         regex or not. Uses a a AM_CONDITIONAL to decide what to compile. 
1848
1849 1999-12-22  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1850
1851         * lib/bind/fi_menus.bind: new file, from
1852         pauli.virtanen@saunalahti.fi. 
1853
1854         * src/buffer.C (getBibkeyList): pass the parameter delim to
1855         InsetInclude::getKeys and InsetBibtex::getKeys.
1856
1857         * src/insets/insetinclude.[Ch] (getKeys): add parameter delim, which
1858         is passed to Buffer::getBibkeyList
1859         
1860         * src/insets/insetbib.[Ch] (getKeys): add parameter delim, and use it
1861         instead of the hardcoded comma.
1862
1863         * src/insets/insetbib.C (getKeys): make sure that there are not
1864         leading blanks in bibtex keys. Normal latex does not care, but
1865         harvard.sty seems to dislike blanks at the beginning of citation
1866         keys. In particular, the retturn value of the function is
1867
1868         * INSTALL: make it clear that libstdc++ is needed and that gcc
1869         2.7.x probably does not work.
1870
1871         * src/support/filetools.C (findtexfile): make debug message go to
1872         the LATEX channel
1873         * src/insets/insetbib.C (getKeys): ditto
1874
1875         * src/debug.C (showTags): make sure that the output is correctly
1876         aligned. 
1877
1878         * configure.in: add a comment for TWO_COLOR_ICON define.
1879
1880         * acconfig.h: remove all the entries that already defined in
1881         configure.in or acinclude.m4.
1882
1883         * src/buffer.C (makeLaTeXFile): headers of latex file also changed
1884         to avoid user name, date and copyright.
1885
1886 1999-12-21  Juergen Vigna  <jug@sad.it>
1887
1888         * src/table.C (Read): Now read bogus row format informations
1889                 if the format is < 5 so that afterwards the table can
1890                 be read by lyx but without any format-info. Fixed the
1891                 crash we experienced when not doing this.
1892
1893 1999-12-21  Lars Gullik Bjønnes  <larsbj@lyx.org>
1894
1895         * src/text2.C (RedoHeightOfParagraph): rename arg cursor -> cur
1896         (RedoDrawingOfParagraph): ditto
1897         (RedoParagraphs): ditto
1898         (RemoveTableRow): ditto
1899
1900         * src/text.C (Fill): rename arg paperwidth -> paper_width
1901
1902         * src/buffer.C (insertLyXFile): rename var filename -> fname
1903         (writeFile): rename arg filename -> fname
1904         (writeFileAscii): ditto
1905         (makeLaTeXFile): ditto
1906         (makeLinuxDocFile): ditto
1907         (makeDocBookFile): ditto
1908
1909         * src/LaTeX.C (runMakeIndex): change arg name from file -> f
1910         (runBibTeX): ditto
1911
1912         * src/Makefile.am (lyx_SOURCES): add bmtable.c and remove bmtable.C
1913
1914         * src/bmtable.h: add extern "C" on this file when __cplusplus is
1915         defined.
1916
1917         * src/bmtable.c: new file, a C'ified copy of bmtable.C, this is
1918         compiled by a C compiler not C++. 
1919
1920         * src/layout.h (LyXTextClass): added typedef for const_iterator
1921         (LyXTextClassList): added typedef for const_iterator + member
1922         functions begin and end.
1923
1924         * src/LyXView.C (UpdateDocumentClassChoice): rewritten to use
1925         iterators to fill the choice_class.
1926         (updateLayoutChoice): rewritten to use iterators to fill the
1927         layoutlist in the toolbar.
1928
1929         * src/BufferView.h (BufferView::work_area_width): removed unused
1930         variable. 
1931
1932         * src/lyx_gui_misc.C (WarnReadonly): added string parameter 'file'
1933
1934         * src/buffer.C (sgmlOpenTag): drop the use of the static space array
1935         (sgmlCloseTag): ditto
1936
1937         * src/support/lstrings.h: return type of countChar changed to
1938         unsigned char.
1939
1940         * src/support/lstrings.C (countChar): use HAVE_STD_COUNT to choose
1941         what version of this func to use. Also made to return unsigned int.
1942
1943         * configure.in: call LYX_STD_COUNT 
1944
1945         * acinclude.m4 (LYX_STD_COUNT): new function checks for a standard
1946         conforming std::count. 
1947
1948 1999-12-20  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1949
1950         * src/mathed/math_draw.C (Draw, Metrics): fix a bug where a prime
1951         and a subscript would give bad display (patch from Dekel Tsur
1952         <dekel@math.tau.ac.il>). 
1953
1954         * src/insets/insetlatexaccent.h: make sure ACCENT_TYPES is public. 
1955
1956         * src/spellchecker.C (create_ispell_pipe): use a const_cast to
1957         please sun CC.
1958
1959         * src/chset.h: add a few 'using' directives
1960
1961         * src/lyxfunc.C (Dispatch): check that LFUN_UNKNOWN_ACTION is not
1962         triggered when no buffer is active
1963
1964         * src/layout.C: removed `break' after `return' in switch(), since
1965         it is unreachable.
1966
1967         * src/lyx_main.C (init): make sure LyX can be ran in place even
1968         when libtool has done its magic with shared libraries. Fix the
1969         test for the case when the system directory has not been found.
1970
1971         * src/lyx_cb.C (MenuMakeLaTeX): make sure to keep the full path
1972         name for the latex file.
1973         (MenuMakeHTML): ditto
1974
1975         * src/buffer.h: add an optional boolean argument, which is passed
1976         to ChangeExtension.
1977
1978 1999-12-20  Allan Rae  <rae@lyx.org>
1979
1980         * lib/templates/IEEEtran.lyx: small correction and update.
1981
1982         * configure.in: Attempted to use LYX_PATH_HEADER
1983
1984         * src/stl_string_fwd.h: Don't need HAVE_STL_STRING_FWD_H anymore
1985
1986         * acconfig.h, acinclude.m4 (LYX_STL_STRING_FWD): totally revised after
1987         input from JMarc.  Now use preprocessor to find the header.
1988         Also stopped making HAVE_STL_STRING_FWD_H and extended the comments.
1989         (LYX_PATH_HEADER): My, so far, failed attempt to generalize
1990         LYX_STL_STRING_FWD.  See comments in file.      
1991
1992 1999-12-19  Asger Alstrup Nielsen  <alstrup@diku.dk>
1993
1994         * The global MiniBuffer * minibuffer variable is dead.
1995         
1996         * The global FD_form_main * fd_form_main variable is dead.
1997
1998 1999-12-17  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
1999
2000         * src/toolbar.C (set): condition #warning on WITH_WARNINGS
2001
2002         * src/table.h: add the LOstream.h header
2003         * src/debug.h: ditto
2004         
2005         * src/LyXAction.h: change the explaination of the ReadOnly
2006         attribute: is indicates that the function _can_ be used.
2007
2008         * src/LyXAction.C (init): find-replace _can_ be used in read-only
2009         mode. 
2010
2011 1999-12-16  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2012
2013         * src/lyxfont.C (ascent): Make sure that char is _always_ used as
2014         unsigned. 
2015         (descent): ditto
2016         (lbearing): ditto
2017         (rbearing): ditto
2018
2019         * src/paragraph.C (GetWord): assert on pos>=0
2020         (GetChar): ditto
2021         
2022         * src/support/lyxstring.C: condition the use of an invariant on
2023         ENABLE_ASSERTIONS 
2024         * src/support/lyxstring.h: ditto
2025
2026         * src/Bullet.[Ch]: replace DEBUG_AS_DEFAULT by ENABLE_ASSERTIONS.
2027         Use LAssert.h instead of plain assert().
2028
2029         * src/support/lstrings.h: add LAssert.h, in case it is needed.
2030
2031         * src/lyxfunc.C: do not include LAssert.h, it is not used.
2032         * src/support/filetools.C: ditto
2033
2034         * src/support/LAssert.h: make Assert a no-op if ENABLE_ASSERTIONS
2035         is not defined. 
2036
2037         * INSTALL: document the new configure flags
2038         
2039         * configure.in: suppress --with-debug; add --enable-assertions
2040
2041         * acinclude.m4: various changes in alignment of help strings.
2042
2043 1999-12-16  Lars Gullik Bjønnes  <larsbj@lyx.org>
2044
2045         * src/kbmap.C: commented out the use of the hash map in kb_map,
2046         beginning of movement to a stl::container. 
2047
2048         * several files: removed code that was not in effect when
2049         MOVE_TEXT was defined.
2050         
2051         * lib/kbd/iso8859-1.cdef: removed bogus backslashes. Backslashes
2052         for escaping should not be used. We can discuss if the string
2053         should be enclosed in f.ex. [] instead of "".
2054
2055         * src/trans_mgr.C (insert): use the new returned value from
2056         encodeString to get deadkeys and keymaps done correctly.
2057
2058         * src/chset.C (encodeString): changed to return a pair, to tell
2059         what to use if we know the string.
2060
2061         * src/lyxscreen.h (fillArc): new function.
2062
2063         * src/FontInfo.C (resize): rewritten to use more std::string like
2064         structore, especially string::replace.
2065
2066         * src/insets/insetlatexaccent.C (Draw): use fillArc for the
2067         approp. accents.
2068
2069         * configure.in (chmod +x some scripts): remove config/gcc-hack 
2070
2071 1999-12-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2072
2073         * src/buffer.C (writeFile): change once again the top comment in a
2074         .lyx file to point to www.lyx.org and to use LYX_DOCVERSION
2075         instead of an hardcoded version number.
2076         (makeDocBookFile): ditto
2077
2078         * src/version.h: add new define LYX_DOCVERSION
2079
2080         * po/de.po: update from Pit Sütterlin
2081         * lib/bind/de_menus.bind: ditto.
2082         
2083         * src/lyxfunc.C (Dispatch): call MenuExport()
2084         * src/buffer.C (Dispatch): ditto
2085
2086         * src/lyx_cb.C (MenuMakeHTML): new function, moved from
2087         LyXFunc::Dispatch().
2088         (MenuExport): new function, moved from
2089         LyXFunc::Dispatch().
2090
2091         * src/trans_mgr.C (insert): small cleanup
2092         * src/chset.C (loadFile): ditto
2093
2094         * lib/kbd/iso8859-1.cdef: add missing backslashes
2095
2096 1999-12-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
2097
2098         * src/insets/insetlatexaccent.C (Lbearing): new function, used to
2099         help with placing the manually drawn accents better.
2100         (Rbearing): ditto
2101         (Draw): x2 and hg changed to float to minimize rounding errors and
2102         help place the accents better.
2103
2104         * src/lyxfont.C (ascent): fixed faulty static_cast, casting from
2105         unsigned short to char is just wrong...cast the char to unsigned
2106         char instead so that the two values can compare sanely. This
2107         should also make the display of insetlatexaccents better and
2108         perhaps also some other insets.
2109         (descent): ditto
2110         (lbearing): new function
2111         (rbearing): ditto
2112
2113 1999-12-15  Allan Rae  <rae@lyx.org>
2114
2115         * src/stl_string_fwd.h, src/Makefile.am (lyx_SOURCES):  added new
2116         header that provides a wrapper around the very annoying SGI STL header
2117         of the same name.
2118
2119         * src/support/lyxstring.C, src/LString.h:
2120         removed old SGI-STL-compatability attempts.
2121
2122         * configure.in: Use LYX_STL_STRING_FWD.
2123
2124         * acinclude.m4 (LYX_STL_STRING_FWD), acconfig.h: Test if 
2125         stl_string_fwd.h is around and try to determine it's location.
2126         Major improvement over previous SGI STL 3.2 compatability.
2127         Three small problems remain with this function due to my zero
2128         knowledge of autoconf.  JMarc and lgb see the comments in the code.
2129
2130 1999-12-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2131
2132         * src/broken_const.h, config/hack-gcc, config/README: removed
2133         
2134         * configure.in: remove --with-gcc-hack option; do not call
2135         LYX_CXX_STL_STACK 
2136
2137         * INSTALL: remove documentation of --with-broken-const and
2138         --with-gcc-hack
2139         
2140         * acconfig.h: remove all trace of BROKEN_CONST define
2141
2142         * src/buffer.C (makeDocBookFile): update version number in output
2143         file. 
2144         (SimpleDocBookOnePar): fix an assert when trying to a character
2145         access beyond string length
2146         [Patch from Jose']
2147
2148 1999-12-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2149
2150         * po/de.po: fix the Export menu
2151
2152         * lyx.man: update the description of -dbg
2153
2154         * src/lyx_main.C (setDebuggingLevel): call Debug::showLevel()
2155         (commandLineHelp): updated
2156         (easyParse): show list of available debug levels if -dbg is passed
2157         without argument.
2158
2159         * src/Makefile.am: add debug.C
2160
2161         * src/debug.h: moved some code to debug.C
2162
2163         * src/debug.C: new file. Contains code to set and show debug
2164         level. 
2165
2166         * src/layout.C: remove 'break' after 'continue' in switch
2167         statements, since these cannot be reached.
2168
2169 1999-12-13  Allan Rae  <rae@lyx.org>
2170
2171         * src/mathed/math_hash.C (math_hash): renamed from hash(), name clash.
2172         (in_word_set): hash() -> math_hash()
2173
2174         * src/LString.h: Used USING_EXCEPTIONS in SGI STL-3.2 support 
2175
2176         * acconfig.h: Added a test for whether we are using exceptions in the
2177         current compilation run. If so USING_EXCEPTIONS is defined.
2178
2179         * config.in: Check for existance of stl_string_fwd.h
2180         * src/LString.h: If compiling --with-included-string and SGI's
2181         STL version 3.2 is present (see above test) we need to block their
2182         forward declaration of string and supply a __get_c_string().
2183         However, it turns out this is only necessary if compiling with
2184         exceptions enabled so I've a bit more to add yet.
2185
2186         * src/insets/figinset.[Ch], src/insets/insetinclude.C,
2187           src/insets/insetloa.C, src/layout.h, src/lyxparagraph.h,
2188           src/support/LRegex.h, src/undo.h:
2189         Shuffle the order of the included files a little to ensure that
2190         LString.h gets included before anything that includes stl_string_fwd.h
2191
2192         *  src/support/lyxstring.C: We need to #include LString.h instead of
2193         lyxstring.h to get the necessary definition of __get_c_string.
2194         (__get_c_string): New function.  This is defined static just like SGI's
2195         although why they need to do this I'm not sure.  Perhaps it should be
2196         in lstrings.C instead.
2197
2198         * lib/templates/IEEEtran.lyx:  New template file.
2199
2200 1999-12-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
2201         
2202         * Makefile.in.in (MKINSTALLDIRS): use $(srcdir)/@MKINSTALLDIRS@
2203         * intl/Makefile.in (MKINSTALLDIRS):  ditto
2204
2205         * src/LyXAction.C (init): changed to hold the LFUN data in a
2206         automatic array in stead of in callso to newFunc, this speeds up
2207         compilation a lot. Also all the memory used by the array is
2208         returned when the init is completed.
2209
2210         * a lot of files: compiled with -Wold-style-cast, changed most of
2211         the reported offenders to C++ style casts. Did not change the
2212         offenders in C files. 
2213
2214         * src/trans.h (Match): change argument type to unsigned int.
2215
2216         * src/support/DebugStream.C: fix some types on the streambufs so
2217         that it works on a conforming implementation.
2218
2219 1999-12-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2220
2221         * lib/examples/example_{raw,lyxified}.lyx: fix embarassing sentence.
2222
2223         * src/support/lyxstring.C: remove the inline added earlier since
2224         they cause a bunch of unsatisfied symbols when linking with dec
2225         cxx. Cxx likes to have the body of inlines at the place where they
2226         are declared.
2227
2228         * src/trans.C (AddDeadkey): add an 'unsigned char' cast to avoid
2229         accessing negative bounds in array. This fixes the crash when
2230         inserting accented characters.
2231         * src/trans.h (Match): ditto
2232
2233         * src/buffer.C (Dispatch): since this is a void, it should not try
2234         to return anything...
2235
2236 1999-12-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
2237
2238         * src/buffer.h: removed the two friends from Buffer. Some changes
2239         because of this. Buffer::getFileName and Buffer::setFileName
2240         renamed to Buffer::fileName() and Buffer::fileName(...).
2241
2242 1999-12-09  Lars Gullik Bjønnes <larsbj@lyx.org>
2243
2244         * buffer.[Ch], BufferView.[Ch] + other files: Moved Buffer::text
2245         and Buffer::update(short) to BufferView. This move is currently
2246         controlled by a define MOVE_TEXT, this will be removed when all
2247         shows to be ok. This move paves the way for better separation
2248         between buffer contents and buffer view. One side effect is that
2249         the BufferView needs a rebreak when swiching buffers, if we want
2250         to avoid this we can add a cache that holds pointers to LyXText's
2251         that is not currently in use. 
2252
2253         * buffer.[Ch], lyx_main.C: small changes to the "-export" patch by
2254         André Pönitz. 
2255
2256 1999-11-18  André Pönitz <poenitz@mathematik.tu-chemnitz.de>
2257
2258         * buffer.[Ch]: Dispatch() - new dispatcher on the buffer level
2259
2260         * lyx_main.C: new command line option -x (or --execute) and
2261           -e (or --export). Now direct conversion from .lyx to .tex
2262           (.dvi, .ps, ...) is possible  ('lyx file.lyx --export latex')
2263           Unfortunately, X is still needed and the GUI pops up during the
2264           process...
2265
2266 1999-12-07  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2267
2268         * src/Spacing.C: add a using directive to bring stream stuff into
2269         normal namespace.
2270         * src/paragraph.C: ditto
2271         * src/buffer.C: ditto
2272
2273         * NEWS: updated a bit the new features of 1.1.3 (took a few things
2274         from Lars' announcement).
2275
2276         * lib/examples/nl_voorbeeld_{ruw,verlyxt}.lyx: new tutorial
2277         example files from Tino Meinen.
2278         
2279 1999-12-06  Allan Rae  <rae@lyx.org>
2280
2281         * src/LaTeX.C (runBibTeX): fix typo in accessing submatch pair.
2282
2283 1999-12-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
2284
2285         * src/support/lyxstring.C: added a lot of inline for no good
2286         reason
2287         
2288         * src/lyxfont.[Ch]: removed latexWriteStartChanges, and
2289         latexWriteEndChanges, they were not used.
2290         
2291         * src/layout.h (operator<<): output operator for PageSides
2292
2293         * src/mathed/math_iter.C (my_memcpy): slightly changed.
2294
2295         * some example files: loaded in LyX 1.0.4 and saved again to update
2296         certain constructs (table format) 
2297
2298         * a lot of files: did the change to use fstream/iostream for all
2299         writing of files. Done with a close look at Andre Poenitz's patch.
2300
2301         * some files: whitespace changes.
2302         
2303 1999-12-06  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2304
2305         * src/mathed/math_iter.C (my_memcpy): new function. Since the
2306         built-in memcpy() is broken on egcs and gcc 2.95 for alpha
2307         architecture, we provide our own. It is used unconditionnally, but
2308         I do not think this is a performance problem. Thanks to Angus
2309         Leeming <a.leeming@ic.ac.uk> for the code (and again to Michal
2310         Jaegermann <michal@ellpspace.math.ualberta.ca> for finding it the
2311         first time).
2312         (GetInset): use my_memcpy.
2313         (Insert): ditto
2314         (Copy): ditto
2315
2316         * lib/chkconfig.ltx: some cleanup of the latex code. I am not sure
2317         it is easier to understand, but it uses less TeX-only constructs now.
2318
2319         * acinclude.m4 (LYX_SEARCH_PROG): make it work when the PATH
2320         elements contain spaces
2321
2322         * lib/configure: regenerated
2323         
2324         * lib/configure.m4 (SEARCH_PROG): make it work when the PATH
2325         elements contain spaces; display the list of programs that are
2326         tried.
2327
2328         * autogen.sh: make sure lib/configure is executable
2329
2330         * lib/examples/*: rename the tutorial examples to begin with the
2331         two-letters language code.
2332
2333         * src/lyxfunc.C (getStatus): do not query current font if no
2334         buffer exists.
2335
2336         * src/lyx_cb.C (RunScript): use QuoteName
2337         (MenuRunDvips): ditto
2338         (PrintApplyCB): ditto
2339
2340         * src/support/filetools.[Ch] (QuoteName): new function. Add quotes
2341         around argument, so that it works well with the current shell.
2342         Does not work properly with OS/2 shells currently.
2343
2344         * src/LaTeXLog.C (ShowLatexLog): use Buffer::getLatexName
2345         * src/LyXSendto.C (SendtoApplyCB): ditto
2346         * src/lyxfunc.C (Dispatch): ditto
2347         * src/buffer.C (runLaTeX): ditto
2348         (runLiterate): ditto
2349         (buildProgram): ditto
2350         (runChktex): ditto
2351         * src/lyx_cb.C (RunScript): ditto
2352         (MenuMakeLaTeX): ditto
2353         
2354         * src/buffer.h (getLatexName): new method 
2355
2356         * src/support/filetools.C (MakeLatexName): renamed from SpaceLess
2357
2358 1999-12-02  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2359
2360         * images/sqrt.xpm: change name of the sqrt icon to sqrt_xpm.
2361         * src/mathed/math_panel.C (mathed_get_pixmap_from_icon): ditto
2362         (create_math_panel): ditto
2363
2364         * src/lyxfunc.C (getStatus): re-activate the code which gets
2365         current font and cursor; add test for export to html.
2366
2367         * src/lyxrc.C (read): remove unreachable break statements; add a
2368         few "using".
2369
2370         * src/bmtable.C (fl_set_bmtable_data): add a const_cast.
2371         
2372 1999-12-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
2373
2374         * src/mathed/formula.C (LocalDispatch): fix small whitspace bug
2375         introduced by faulty regex.
2376         * src/buffer.C: ditto
2377         * src/lastfiles.C: ditto
2378         * src/paragraph.C: ditto
2379         * src/table.C: ditto
2380         * src/vspace.C: ditto
2381         * src/insets/figinset.C: ditto
2382         Note: most of these is absolutely harmless, except the one in
2383         src/mathed formula.C.
2384
2385 1999-11-30  Kayvan A. Sylvan  <kayvan@satyr.sylvan.com>
2386
2387         * src/ImportNoweb.C (documentclass): fixed bounds for substr
2388           operation, yielding correct results for the reLyX command.
2389
2390 1999-12-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
2391
2392         * src/support/filetools.C (ExpandPath): removed an over eager
2393         Assert.
2394         (ReplaceEnvironmentPath): ditto
2395
2396         * src/toolbar.C (BubbleTimerCB): use C++ style casts. This clearly
2397         shows that we are doing something fishy in our code...
2398         (BubblePost): ditto
2399         (ToolbarCB): ditto
2400
2401         * src/lyxrc.C (read): use a double switch trick to get more help
2402         from the compiler. (the same trick is used in layout.C)
2403         (write): new function. opens a ofstream and pass that to output
2404         (output): new function, takes a ostream and writes the lyxrc
2405         elemts to it. uses a dummy switch to make sure no elements are
2406         forgotten. 
2407
2408         * src/lyxlex.h: added a struct pushpophelper for use in functions
2409         with more than one exit point.
2410
2411         * src/lyxlex.[Ch] (GetInteger): made it const
2412         (GetFloat): ditto
2413         (GetBool): ditto
2414
2415         * src/lyxfunc.C (Dispatch): added case for LFUN_SAVEPREFERENCES
2416
2417         * src/layout.[hC] : LayoutTags splitted into several enums, new
2418         methods created, better error handling cleaner use of lyxlex. Read
2419         the diff.
2420
2421         * src/bmtable.[Ch]: change some member prototypes because of the
2422         image const changes. 
2423
2424         * commandtags.h, src/LyXAction.C (init): new function:
2425         "preferences-save", saves the lyxrc entries into .lyx/preferences.
2426         This file is not read automatically but you can add \input
2427         preferences to your lyxrc if you want to. We need to discuss how
2428         to handle this. 
2429
2430         * src/LaTeX.C (runBibTeX): use regex to match for the needed lines
2431         in .aux, also remove .bib and .bst files from dependencies when
2432         running bibtex.
2433
2434         * src/BufferView.C, src/LyXView.C: add const_cast several places
2435         because of changes to images.
2436
2437         * lib/images/*: same change as for images/*
2438         
2439         * lib/lyxrc.example: Default for accept_compound is false not no.
2440
2441         * images/*: changed to be const, however I have som misgivings
2442         about this change so it might be changed back.
2443
2444 1999-11-26  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2445
2446         * lib/configure, po/POTFILES.in: regenerated
2447
2448         * autogen.sh: autogenerate lib/configure from lib/configure.m4
2449
2450         * config/lib_configure.m4: removed
2451         
2452         * lib/configure.m4: new file (was config/lib_configure.m4)
2453
2454         * configure.in: do not test for rtti, since we do not use it.
2455         
2456 1999-11-26  Lars Gullik Bjønnes  <larsbj@lyx.org>
2457
2458         * src/support/lyxstring.C (lyxstring::Srep): Changed to use a
2459         doubling of allocated space scheme. This makes it faster for large
2460         strings end to use less memory for small strings. xtra rememoved. 
2461
2462         * src/insets/figinset.C (waitalarm): commented out.
2463         (GhostscriptMsg): use static_cast
2464         (GhostscriptMsg): use new instead of malloc to allocate memory for
2465         cmap. also delete the memory after use.
2466
2467         * src/lyx_cb.C (SetXtermCursor): made cursor_undefined a bool
2468
2469         * src/LaTeX.C (scanAux): new method. Scans the .aux file and looks
2470         for changes in bibtex database or style.
2471         (runBibTeX): remove all .bib and .bst files from dep before we
2472         begin. 
2473         (run): use scanAuc in when dep file already exist.
2474
2475         * src/DepTable.C (remove_files_with_extension): new method
2476         (exist): new method
2477
2478         * src/DepTable.[Ch]: made many of the methods const. 
2479
2480 1999-11-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2481
2482         * src/bufferparams.C: make sure that the default textclass is
2483         "article". It used to be the first one by description order, but
2484         now the first one is "docbook".
2485
2486         * src/lyx_main.C (setDebuggingLevel): change type of argument to
2487         string; call Debug::value.
2488         (easyParse): pass complete argument to setDebuggingLevel().
2489
2490         * src/debug.h (value): fix the code that parses debug levels.
2491
2492         * src/debug.h: add new debug type ACTION, reserved for LyXAction
2493         class.  
2494
2495         * src/LyXAction.C: use Debug::ACTION as debug channel.
2496
2497         * src/lyxlookup.C: make the debug statements go to Debug::KEY.
2498
2499         * NEWS: updated for the future 1.1.3 release.
2500
2501         * src/mathed/symbol_def.h: swap the definitions of \varepsilon and
2502         \epsilon. Now \epsilon shows as red text, and \varepsilon shows as
2503         it should. This is of course a controversial change (since many
2504         people will find that their lyx workscreen is suddenly full of
2505         red), but done for the sake of correctness.
2506
2507         * src/mathed/formulamacro.h, src/mathed/math_macro.[Ch],
2508           src/mathed/math_root.[Ch] (Clone): return a MathedInset*  
2509
2510         * src/insets/inseterror.h, src/insets/inseturl.h,
2511           src/insets/insetinfo.h, src/insets/figinset.h,
2512           src/mathed/formulamacro.h, src/mathed/math_macro.h
2513           (EditMessage): add a missing const and add _() to make sure that
2514         translation happens
2515
2516         * src/ImportNoweb.C, src/LyXAction.h, src/insets/figinset.C,
2517           src/insets/insetbib.C, src/support/filetools.C: add `using'
2518         directives for cxx.  
2519
2520         * src/lyxfunc.C (Dispatch): make sure nothing bad happens when
2521         doing 'Insert index of last word' at the beginning of a paragraph.
2522
2523 1999-11-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
2524
2525         * several files: white-space changes.
2526
2527         * src/mathed/formula.C: removed IsAlpha and IsDigit
2528
2529         * src/insets/insetbib.C (getKeys): use findtexfile to look for the
2530         .bib file. use a ifstream instead of FilePtr when parsing the .bib
2531         file for keys.
2532
2533         * src/insets/figinset.C (GetPSSizes): don't break when
2534         "EndComments" is seen. But break when a boundingbox is read.
2535
2536         * all classes inherited from Inset: return value of Clone
2537         changed back to Inset *.
2538
2539         * all classes inherited form MathInset: return value of Clone
2540         changed back to MathedInset *.
2541         
2542         * src/insets/figinset.C (runqueue): use a ofstream to output the
2543         gs/ps file. Might need some setpresicion or setw. However I can
2544         see no problem with the current code.
2545         (runqueue): use sleep instead of the alarm/signal code. I just
2546         can't see the difference.
2547
2548         * src/paragraph.C (LyXParagraph): reserve space in the new
2549         paragraph and resize the inserted paragraph to just fit.
2550
2551         * src/lyxfunc.h (operator|=): added operator for func_status.
2552
2553         * src/lyxfunc.C (MenuNew): use FileInfo instead of FilePtr to
2554         check for readable file.
2555
2556         * src/lyx_cb.C (MenuMakeLaTeX): use FileInfo instead of FilePtr to
2557         check for readable file.
2558         (MenuMakeLinuxDoc): ditto
2559         (MenuMakeDocBook): ditto
2560         (MenuMakeAscii): ditto
2561         (InsertAsciiFile): split the test for openable and readable
2562
2563         * src/bmtable.C (draw_bitmaptable): use
2564         fl_state[fl_get_vclass()].depth instead of DefualtScreen.
2565
2566         * src/LaTeX.C, src/support/filetools.[Ch]: moved do_popen and
2567         findtexfile from LaTeX to filetools.
2568         
2569         * src/ImportNoweb.C (documentclass): rewrote to use ifstream
2570         instead of FilePtr. Needs to be verified by a literate user.
2571
2572 1999-11-23  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2573
2574         * src/mathed/formula.[Ch] (GetCursorPos): add a missing 'const'.
2575         (EditMessage): likewise.
2576
2577         * src/paragraph.C (SimpleTeXSpecialChars): output ~ and ^
2578         respectively as \textasciitilde and \textasciicircum.
2579
2580 1999-11-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
2581
2582         * src/support/lyxstring.h: made the methods that take iterators
2583         use const_iterator.
2584
2585         * src/support/lstrings.C (countChar): use std::cound(itr, itr, val)
2586         (regexMatch): made is use the real regex class.
2587
2588         * src/support/Makefile.am: changed to use libtool
2589
2590         * src/support/.cvsignore: added *.lo, .libs and libsupport.la
2591
2592         * src/mathed/math_defs.h: made the mathaligns be in a enum instead
2593         of defines.
2594         (MathIsInset ++): changed several macros to be inline functions
2595         instead. 
2596
2597         * src/mathed/Makefile.am: changed to use libtool
2598
2599         * src/mathed/.cvsignore: added *.lo, .libs and libmathed.la
2600
2601         * src/insets/inset* : Clone changed to const and return type is
2602         the true insettype not just Inset*.
2603         
2604         * src/insets/Makefile.am: changed to use libtool
2605
2606         * src/insets/.cvsignore: added *.lo, .libs and libinsets.la
2607
2608         * src/undo.[Ch] : added empty() and changed some of the method
2609         names.
2610         
2611         * src/texrow.[Ch]: rewrote to store texrow's in a std::list.
2612
2613         * src/lyxparagraph.h: use id() and id(...) instead of getID and
2614         setID use block<> for the bullets array, added const several places.
2615
2616         * src/lyxfunc.C (getStatus): new function
2617
2618         * src/lyxfunc.[Ch] : small changes to take advantage of the new
2619         LyXAction, added const to several funtions.
2620
2621         * src/filedlg.[Ch]: rewrote to store userchache and groupchache in
2622         a std::map, and to store the dir items in a vector.
2623
2624         * src/Makefile.am (lyx_DEPENDENCIES): changed to use libtool files
2625         as dependencies.
2626
2627         * src/LyXView.[Ch] + other files : changed currentView to view.
2628         
2629         * src/LyXAction.[Ch] : ported from the old devel branch.
2630         
2631         * src/.cvsignore: added .libs and a.out
2632
2633         * configure.in : changes to use libtool. 
2634
2635         * acinclude.m4 : inserted libtool.m4
2636
2637         * .cvsignore: added libtool
2638
2639 1999-11-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2640
2641         * src/Makefile.am (lyx_DEPENDENCIES): give the explicit object
2642         file name in insets and mathed directories (otherwise the
2643         dependency is not taken in account under cygwin).
2644
2645         * src/text2.C (InsertString[AB]): make sure that we do not try to
2646         read characters past the string length.
2647
2648 1999-11-18  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2649
2650         * lib/doc/LaTeXConfig.lyx.in, 
2651           lib/chkconfig.ltx: remove the test for linuxdoc-sgml.sty.
2652
2653         * src/buffer.C (writeFile): Do not add a comment on top of .lyx
2654         file saying who created them and when this heppened; this is
2655         useless and annoys tools like cvs.
2656
2657         * lib/layouts/g-brief-{en,de}.layout,
2658           lib/templates/g-brief-{en,de}.lyx: new versions of the textclass
2659         from Thomas Hartkens <thomas@hartkens.de>.
2660
2661         * src/{insets,mathed}/Makefile.am: do not declare an empty
2662         LDFLAGS, so that it can be set at configure time (useful on Irix
2663         for -n32 flag).
2664
2665         * lib/reLyX/configure.in: make sure that the prefix is set
2666         correctly in LYX_DIR.
2667
2668 1999-11-18  André Pönitz <poenitz@mathematik.tu-chemnitz.de>
2669
2670         * src/commandtags.h: introduction of a new tag 'LFUN_SEQUENCE' to
2671         be used by 'command-sequence' this allows to bind a key to a
2672         sequence of LyX-commands
2673         (Example: 'command-sequence math-insert alpha; math-insert beta;")
2674
2675         * src/LyXAction.C: add "command-sequence"
2676
2677         * src/LyXFunction.C: handling of "command-sequence"
2678
2679         * src/LyXFunction.[hC] changed LyXFunc::Dispatch(string const
2680          &cmd, string const &arg) to LyXFunc::Dispatch(string const& s)
2681
2682         * src/lyxserver.C, src/minibuffer.C: Use this new interface
2683
2684 1999-11-17  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2685
2686         * src/buffer.C (writeFile): Do not output a comment giving user
2687         and date at the beginning of a .lyx file. This is useless and
2688         annoys cvs anyway; update version number to 1.1.
2689
2690         * src/Makefile.am (LYX_DIR): add this definition, so that a
2691         default path is hardcoded in LyX.
2692
2693         * configure.in: Use LYX_GNU_GETTEXT.
2694
2695         * acinclude.m4 (LYX_GNU_GETTEXT): new macro, essentially a copy of
2696         AM_GNU_GETTEXT with a bug fixed. 
2697
2698         * src/lyx_cb.C (RunLinuxDoc): add a cast to please dec cxx.
2699
2700         * src/chset.C: add "using std::ifstream;" to please dec cxx.
2701
2702         * src/lyx_main.C (init), INSTALL.OS2: the environment variable
2703         which is used to point to LyX data is now LYX_DIR_11x.
2704
2705         * lyx.man: convert to a unix text file; small updates.
2706
2707 1999-11-15  Lars Gullik Bjønnes  <larsbj@lyx.org>
2708
2709         * src/support/LSubstring.[Ch]: made the second arg of most of the
2710         constructors be a const reference. 
2711
2712         * src/mathed/math_parser.C (LexInitCodes): small bug introduced by
2713         me fixed.
2714
2715         * src/support/lyxstring.[Ch] (swap): added missing member function
2716         and specialization of swap(str, str); 
2717
2718         * src/menus.C (ShowBufferMenu): to use the new BufferStorage
2719
2720         * src/bufferlist.[Ch]: use the new BufferStorage class and remove all
2721         trace of the old one.
2722
2723         * src/undo.[Ch]: made the undostack use std::list to store undo's in
2724         put the member definitions in undo.C.
2725
2726         * src/lyxparagraph.h, src/paragraph.C + a lot of files: removed
2727         NEW_TEXT and have now only code that was included when this was
2728         defined. 
2729
2730         * src/intl.C (LCombo): use static_cast
2731         (LCombo2): ditto
2732         (DispatchCallback): ditto
2733
2734         * src/definitions.h: removed whole file
2735         
2736         * src/commandtags.h: comment out LFUN_INSERT_INSET_LATEX
2737
2738         * src/chset.[Ch]: a lot rewritten, does not use lyxlex for cdef
2739         parsing and stores in a std:map. a regex defines the file format.
2740         removed unneeded members.
2741
2742         * src/bufferparams.h: added several enums from definitions.h here.
2743         Removed unsused destructor. Changed some types to use proper enum
2744         types. use block to have the temp_bullets and user_defined_bullets
2745         and to make the whole class assignable.
2746
2747         * src/bufferparams.C (Copy): removed this functions, use a default
2748         assignment instead. 
2749
2750         * src/buffer.h: made isLatex, isLinuxDoc, isDocBook, isSGML and
2751         isLiterate const.
2752
2753         * src/buffer.C (readLyXformat2): commend out all that have with
2754         oldpapersize to do. also comment out all that hve to do with
2755         insetlatex and insetlatexdel. 
2756         (setOldPaperStuff): commented out
2757
2758         * src/Makefile.am (lyx_SOURCES): remove definitions.h, add undo.C
2759
2760         * src/LyXAction.C: remove use of inset-latex-insert
2761
2762         * src/mathed/math_panel.C (button_cb): use static_cast
2763
2764         * src/insets/Makefile.am (insets_o_SOURCES): removed
2765         insetlatex.[Ch] 
2766
2767         * src/support/lyxstring.C (helper): use the unsigned long
2768         specifier, UL, instead of a static_cast.
2769
2770         * src/support/Makefile.am (libsupport_a_SOURCES): added block.h
2771
2772         * src/support/block.h: new file. to be used as a c-style array in
2773         classes, so that the class can be assignable.
2774
2775 1999-11-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2776
2777         * src/lyx_gui_misc.C (askForText): when fl_show_input() returns
2778         NULL, make sure to return an empty string (it is not possible to
2779         set a string to NULL).
2780
2781 1999-11-10  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2782
2783         * src/support/LRegex.C: use regex_t instead of re_pattern_buffer.
2784
2785         * src/support/lyxstring.C (helper): fix bogus cast in assertion.
2786
2787         * src/{mathed,insets}/Makefile.am (CXXLINK): add $(LDFLAGS) to the
2788         link line, so that Irix users (for example) can set it explicitely to
2789         "-n32".
2790         
2791         * src/Makefile.am (lyx_LDADD): use LYX_LIB as a variable, so that
2792         it can be overidden at make time (static or dynamic link, for
2793         example).
2794         
2795         * src/vc-backend.C, src/LaTeXFeatures.h, 
2796           src/support/LRegex.C, src/support/LRegex.h: add a few "using" 
2797         statements to bring templates to global namespace.
2798
2799 1999-11-10  Lars Gullik Bjønnes  <larsbj@lyx.org>
2800
2801         * src/support/lyxstring.C (operator[] const): make it standard
2802         conforming. 
2803
2804         * src/minibuffer.C (Init): changed to reflect that more
2805         information is given from the lyxvc and need not be provided here.
2806
2807         * src/lyxvc.[Ch]: rewrote to use the vc-backend.
2808         
2809         * src/Makefile.am (lyx_SOURCES): add vc-backend.[Ch]
2810
2811         * src/LyXView.C (UpdateTimerCB): use static_cast
2812         (KeyPressMask_raw_callback): ditto
2813
2814         * src/BufferView.[Ch]: name change _owner -> owner_ and _buffer ->
2815         buffer_, a lot of changes because of this. currentBuffer() ->
2816         buffer(), setBuffer(...) -> buffer(...), getOwner() -> owner(),
2817         also changes to other files because of this.
2818
2819 1999-11-09  Lars Gullik Bjønnes  <larsbj@lyx.org>
2820
2821         * src/vc-backend.[Ch]: new files. The backends for vc handling,
2822         have no support for RCS and partial support for CVS, will be
2823         improved later.
2824         
2825         * src/insets/ several files: changes because of function name
2826         changes in Bufferview and LyXView.
2827         
2828         * src/mathed/math_symbols.C (math_insert_symbol): use static_cast
2829
2830         * src/support/LSubstring.[Ch]: new files. These implement a
2831         Substring that can be very convenient to use. i.e. is this
2832         possible:
2833         string a = "Mary had a little sheep";
2834         Substring(a, "sheep") = "lamb";
2835         a is now "Mary has a little lamb".
2836
2837         * src/support/LRegex.[Ch]: a regex class that can be used to pick
2838         out patterns and subpatterns of strings. It is used by LSubstring
2839         and also by vc-backend.C
2840         
2841         * src/support/lyxstring.C: went over all the assertions used and
2842         tried to correct the wrong ones and flag which of them is required
2843         by the standard. some bugs found because of this. Also removed a
2844         couple of assertions.
2845
2846         * src/support/Makefile.am (libsupport_a_SOURCES): added
2847         LSubstring.[Ch] and LRegex.[Ch]
2848
2849         * src/support/FileInfo.h: have struct stat buf as an object and
2850         not a pointer to one, some changes because of this.
2851
2852         * src/LaTeXFeatures.C (getTClassPreamble): also use the
2853         information in layout when adding the layouts preamble to the
2854         textclass preamble.
2855
2856         * src/LaTeXFeatures.h: use a vector<bool> to store the layout
2857         usage in.
2858
2859         * configure.in (CPPFLAGS): use AC_CHECK_FUNCS to check for XOpenIM
2860         because of bug in OS/2.
2861
2862 1999-11-08  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2863
2864         * lib/layouts/lyxmacros.inc (lyxcode): set the font with
2865         \verbatim@font instead of \ttfamily, so that it can be redefined.
2866
2867         * src/BackStack.h, src/DepTable.C, src/DepTable.h, src/LaTeX.C,
2868           src/LaTeX.h, src/lastfiles.C, src/lastfiles.h, src/layout.C,
2869           src/layout.h, src/text2.C: add 'using' directive to bring the
2870         STL templates we need from the std:: namespace to the global one.
2871         Needed by DEC cxx in strict ansi mode.
2872
2873         * src/support/LIstream.h,src/support/LOstream.h,
2874           src/support/lyxstring.h,src/table.h,
2875           src/lyxlookup.h: do not include <config.h> in header
2876         files. This should be done in the .C files only.
2877
2878         * development/lyx.spec.in: WHATSNEW has been renamed to NEWS
2879         (from Kayvan).
2880         
2881
2882 1999-11-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2883
2884         * config/lib_configure.m4,lib/configure,lib/lyxrc.example: update
2885         from Kayvan to fix the tth invokation.
2886
2887         * development/lyx.spec.in: updates from Kayvan to reflect the
2888         changes of file names.
2889
2890 1999-11-05  Lars Gullik Bjønnes  <larsbj@lyx.org>
2891
2892         * src/text2.C (InsertStringB): use std::copy
2893         (InsertStringA): use std::copy
2894
2895         * src/bufferlist.C: use a vector to store the buffers in. This is
2896         an internal change and should not affect any other thing.
2897         
2898         * src/BufferView.C (waitForX): use XSync instead of the lengthy
2899         stuff in waitForX.
2900
2901         * src/text.C (Fill): fix potential bug, one off bug.
2902
2903 1999-11-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
2904
2905         * src/Makefile.am (lyx_main.o): add more files it depends on.
2906
2907         * src/lyx_cb.C (addNewlineAndDepth): parameters in wrong order.
2908
2909         * src/support/lyxstring.C: use size_t for the reference count,
2910         size, reserved memory and xtra.
2911         (internal_compare): new private member function. Now the compare
2912         functions should work for std::strings that have embedded '\0'
2913         characters.
2914         (compare): all compare functions rewritten to use
2915         internal_compare.
2916         
2917 1999-11-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
2918
2919         * src/support/lyxstring.C (compare): pass c_str()
2920         (compare): pass c_str
2921         (compare): pass c_str
2922
2923 1999-11-03  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2924
2925         * src/support/DebugStream.C: <config.h> was not included correctly.
2926
2927         * lib/configure: forgot to re-generate it :( I'll make this file
2928         auto generated soon.
2929
2930 1999-11-03  Lars Gullik Bjønnes  <larsbj@lyx.org>
2931
2932         * acinclude.m4 (cross_compiling): add -fpermissive when gcc 2.95.x
2933         is used.
2934
2935         * src/support/lyxstring.C: some changes from length() to rep->sz.
2936         avoids a function call.
2937
2938         * src/support/filetools.C (SpaceLess): yet another version of the
2939         algorithm...now per Jean-Marc's suggestions.
2940
2941 1999-11-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
2942
2943         * src/layout.C (less_textclass_desc): functor for use in sorting
2944         of textclasses. 
2945         (LyXTextClass::Read): sort the textclasses after reading.
2946         
2947         * src/support/filetools.C (SpaceLess): new version of the
2948         SpaceLess functions. What problems does this one give? Please
2949         report.
2950
2951         * images/banner_bw.xbm: made the arrays unsigned char *
2952
2953 1999-11-02  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2954
2955         * src/support/lyxstring.C (find): remove bogus assertion in the
2956         two versions of find where this has not been done yet.
2957
2958         * src/support/lyxlib.h: add missing int return type to
2959         lyx::chdir(). 
2960
2961         * src/menus.C (ShowFileMenu): disable exporting to html if no
2962         html export command is present.
2963
2964         * config/lib_configure.m4: add a test for an HTML converter. The
2965         programs checked for are, in this order: tth, latex2html and
2966         hevea. 
2967
2968         * lib/configure: generated from config/lib_configure.m4.
2969
2970         * src/lyxfunc.C (Dispatch): update and improve the execution of an
2971         html converter. The parameters are now passed through $$FName and
2972         $$OutName, instead of standard input/output.
2973
2974         * src/lyxrc.{C,h}: rename \tth_command to \html_command.
2975
2976         * lib/lyxrc.example: update description of \html_command. 
2977         add "quotes" around \screen_font_xxx font setting examples to help
2978         people who use fonts with spaces in their names.
2979
2980 1999-11-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
2981
2982         * Distribution files: updates for v1.1.2
2983
2984         * src/support/lyxstring.C (find): remove bogus assert and return
2985         npos for the same condition.
2986
2987 1999-11-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
2988
2989         * added patch for OS/2 from SMiyata.
2990
2991 1999-10-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
2992
2993         * src/text2.C (CutSelection): make space_wrapped a bool
2994         (CutSelection): dont declare int i until we have to.
2995         (alphaCounter): return a char const *.
2996
2997 1999-10-28  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
2998
2999         * src/support/syscall.C (Systemcalls::kill): 
3000           src/support/filetools.C (PutEnv, PutEnvPath): 
3001           src/lyx_cb.C (addNewlineAndDepth): 
3002           src/FontInfo.C (FontInfo::resize): condition some #warning
3003         directives with WITH_WARNINGS.
3004         
3005
3006 1999-10-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
3007
3008         * src/layout.[Ch] + several files: access to class variables
3009         limited and made accessor functions instead a lot of code changed
3010         becuase of this. Also instead of returning pointers often a const
3011         reference is returned instead.
3012         
3013         * src/form1.C (create_form_Figure): added a couple fo "no-c-format"
3014
3015         * src/Makefile.am (dist-hook): added used to remove the CVS from
3016         cheaders upon creating a dist
3017         (EXTRA_DIST): added cheaders
3018
3019         * src/support/lstrings.C (tostr(char)): fix it to handle param as
3020         a character not as a small integer. 
3021
3022         * src/support/lyxstring.C (find): removed Assert and added i >=
3023         rep->sz to the first if.
3024
3025 1999-10-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
3026
3027         * src/layout.[Ch] src/BufferView.C src/LaTeXFeatures.C
3028         src/LyXView.C src/buffer.C src/bufferparams.C
3029         src/lyx_cb.C src/lyxfunc.C src/paragraph.C src/text.C 
3030         src/text2.C src/insets/insetinclude.C:
3031         lyxlayout renamed to textclasslist.
3032
3033         * src/layout.C: some lyxerr changes.
3034
3035         * src/layout.[Ch] (LyXLayout::Read): changed second paramter to
3036         LyXTextClass. rewrote LT_COPYSTYLE, rewrote LT_OBSOLETEDBY
3037         (LyXLayoutList): removed all traces of this class.
3038         (LyXTextClass::Read): rewrote LT_STYLE
3039         (LyXTextClass::hasLayout): new function
3040         (LyXTextClass::GetLayout): rewritten to return an iterator + has
3041         both const and nonconst version.
3042         (LyXTextClass::delete_layout): new function.
3043         (LyXTextClassList::Style): bug fix. do the right thing if layout
3044         is to big.
3045         (LyXTextClassList::NumberOfLayout): new acces to layoutlist.
3046         (LyXTextClassList::NameOfLayout): ditto 
3047         (LyXTextClassList::Load): ditto
3048
3049         * src/buffer.C (makeLaTeXFile): new access to layoutlist
3050
3051         * src/LaTeXFeatures.C (getTClassPreamble): new access to layoutlist
3052
3053         * src/LyXAction.C (LookupFunc): added a workaround for sun
3054         compiler, on the other hand...we don't know if the current code
3055         compiles on sun at all...
3056
3057         * src/support/filetools.C (CleanupPath): subst fix
3058
3059         * src/insets/insetbib.C (delDatabase): subst fix, this looks
3060         _really_ weird.
3061
3062         * src/support/filetools.C (PutEnvPath): subst fix, how come nobody
3063         complained about this one?
3064
3065         * src/insets/insetinclude.C (Latex): subst fix
3066
3067         * src/insets/insetbib.C (getKeys): subst fix
3068
3069         * src/LyXSendto.C (SendtoApplyCB): subst fix
3070
3071         * src/lyx_main.C (init): subst fix
3072
3073         * src/layout.C (Read): subst fix
3074
3075         * src/lyx_sendfax_main.C (button_send): subst fix
3076
3077         * src/buffer.C (RoffAsciiTable): subst fix
3078
3079         * src/lyx_cb.C (MenuFax): subst fix
3080         (PrintApplyCB): subst fix
3081
3082 1999-10-26  Juergen Vigna  <jug@sad.it>
3083
3084         * src/table.C (TexEndOfCell) + (DocBookEndOfCell): removed some #if 0
3085
3086         (Read): Cleaned up this code so now we read only format vestion >= 5
3087
3088 1999-10-26  Lars Gullik Bjønnes  <larsbj@lyx.org>
3089
3090         * src/support/filetools.C (PutEnvPath): subst fix for EMX, how
3091         come nobody has complained about this one?
3092
3093         * src/insets/insetinclude.C (Latex): subst fix
3094
3095         * src/insets/insetbib.C (getKeys): subst fix
3096
3097         * src/lyx_main.C (init): subst fix
3098
3099         * src/layout.C (Read): subst fix
3100
3101         * src/buffer.C (RoffAsciiTable): subst fix
3102
3103         * src/lyx_cb.C (MenuFax): subst fix.
3104
3105         * src/layout.[hC] + some other files: rewrote to use
3106         std::container to store textclasses and layouts in.
3107         Simplified, removed a lot of code. Make all classes
3108         assignable. Further simplifications and review of type
3109         use still to be one. 
3110
3111         * src/menus.C (ShowFileMenu/ShowFileMenu2): Use the iterators from
3112         lastfiles to create the lastfiles partr of the menu.
3113
3114         * src/lastfiles.[Ch]: rewritten to use deque to store the
3115         lastfiles in. Uses fstream for reading and writing. Simplifies
3116         code.
3117
3118         * src/support/syscall.C: remove explicit cast.
3119
3120         * src/BufferView.C (CursorToggleCB): removed code snippets that
3121         were commented out.
3122         use explicat C++ style casts instead of C style casts. also use
3123         u_vdata instea of passing pointers in longs.
3124
3125         * src/PaperLayout.C: removed code snippets that were commented out.
3126
3127         * src/lyx_gui_misc.C: removed code snippets that were commented out. 
3128
3129         * src/lyx_main.C: removed code snippets that wer commented out.
3130
3131         * src/paragraph.C: removed code snippets that were commented out.
3132
3133         * src/lyxvc.C (logClose): use static_cast
3134         (logUpdate): ditto
3135         (viewLog): remove explicit cast to void*
3136         (showLog): removed old commented code
3137
3138         * src/menus.C: use static_cast instead of C style casts. use
3139         u_vdata instead of u_ldata. remove explicit cast to (long) for
3140         pointers. Removed old code that was commented out.
3141
3142         * src/insets/inset.C: removed old commented func
3143
3144         * src/insets/insetref.C (InsetRef): removed old code that had been
3145         commented out for a long time.
3146         (Edit): ditto
3147         (escape): removed C style cast
3148
3149         * src/insets/insetlatexaccent.C (Draw): removed old commented code
3150
3151         * src/insets/insetlatex.C (Draw): removed old commented code
3152         (Read): rewritten to use string
3153
3154         * src/insets/insetlabel.C (escape): removed C style cast
3155
3156         * src/insets/insetindex.h: removed vdata and ldata from FD_index_form
3157
3158         * src/insets/insetindex.C: use static_cast and u_vdata, removed
3159         old commented code.
3160
3161         * src/insets/insetinclude.h: removed a couple of stupid bools
3162
3163         * src/insets/insetinclude.C (include_cb): use static_cast and u_data.
3164         (Clone): remove C style cast
3165         (getKeys): changed list to lst because of std::list
3166
3167         * src/insets/inseterror.C (Draw): removed som old commented code.
3168
3169         * src/insets/insetcommand.C (Draw): removed some old commented code.
3170
3171         * src/insets/insetbib.C (bibitem_cb): removed code that has been
3172         commented out forever.
3173         (bibitem_cb): use static_cast instead of C style cast
3174         use of vdata changed to u_vdata.
3175
3176         * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forward the data
3177         parameter.
3178         (CloseUrlCB): use static_cast instead of C style cast.
3179         (CloseUrlCB): added a fl_free form...it seemed to be missing.
3180
3181         * src/insets/insetinfo.C (Edit): pass object in u_vdata instead
3182         (C_InsetInfo_CloseInfoCB): forward the ob parameter
3183         (CloseInfoCB): static_cast from ob->u_vdata instead.
3184         (Edit): removed bogus arg from fl_set_object_shortcut, set to 1
3185         instead. 
3186
3187         * src/insets/inseterror.C (Edit): pass object in u_vdata instead
3188         (C_InsetError_CloseErrorCB): forward the ob parameter
3189         (CloseErrorCB): static_cast from ob->u_vdata instead.
3190
3191         * src/vspace.h: include LString.h since we use string in this class.
3192
3193         * src/vspace.C (lyx_advance): changed name from advance because of
3194         nameclash with stl. And since we cannot use namespaces yet...I
3195         used a lyx_ prefix instead. Expect this to change when we begin
3196         using namespaces.
3197
3198         * src/BufferView.[Ch] (BufferView::~BufferView): removed 
3199
3200         * src/BackStack.h: rewrote to use std::stack. made BackStackItem
3201         and removed now defunct constructor and deconstructor.
3202
3203         * src/BufferView.h: have backstack as a object not as a pointer.
3204         removed initialization from constructor. added include for BackStack 
3205
3206         * development/lyx.spec.in (%build): add CFLAGS also.
3207
3208         * src/screen.C (drawFrame): removed another warning.
3209
3210 1999-10-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3211
3212         * renamed WHATSNEW to NEWS (usual GNU style), CHANGES to
3213         OLD-CHANGES (not used anymore) and modified INSTALL, INSTALL.OS2,
3214         README and ANNOUNCE a bit for the next release. More work is
3215         needed, of course.
3216
3217         * src/paragraph.C (SimpleTeXBlanks): spaces are automatically made
3218         unbreakable if we are in freespacing mode (LyX-Code), but not in
3219         latex mode.
3220
3221 1999-10-25  Lars Gullik Bjønnes  <larsbj@lyx.org>
3222
3223         * src/BackStack.h: fixed initialization order in constructor
3224
3225         * Makefile.am (MAINTAINERCLEANFILES): removed po/POTFILES.in
3226
3227         * acinclude.m4 (VERSION): new rules for when a version is
3228         development, added also a variable for prerelease.
3229         (warnings): we set with_warnings=yes for prereleases
3230         (lyx_opt): prereleases compile with same optimization as development 
3231         (CXXFLAGS): only use pedantic if we are a development version 
3232
3233         * src/BufferView.C (restorePosition): don't do anything if the
3234         backstack is empty.
3235
3236         * src/BackStack.h: added member empty, use this to test if there
3237         is anything to pop...
3238
3239 1999-10-25  Juergen Vigna  <jug@sad.it>
3240
3241         * forms/form1.fd +
3242         * forms/layout_forms.fd +
3243         * forms/latexoptions.fd +
3244         * lyx.fd: changed for various form resize issues
3245
3246         * src/mathed/math_panel.C +
3247         * src/insets/inseterror.C +
3248         * src/insets/insetinfo.C +
3249         * src/insets/inseturl.C +
3250         * src/insets/inseturl.h +
3251         * src/LaTeXLog.C +
3252         * src/LyXSendto.C +
3253         * src/PaperLayout.C +
3254         * src/ParagraphExtra.C +
3255         * src/TableLayout.C +
3256         * src/form1.C +
3257         * src/layout_forms.C +
3258         * src/lyx.C +
3259         * src/lyx_cb.C +
3260         * src/lyx_gui.C +
3261         * src/lyxfr0.C +
3262         * src/lyxfunc.C +
3263         * src/lyxvc.C +
3264         * src/menus.C: fixed various resize issues. So now forms can be
3265         resized savely or not be resized at all.
3266         
3267         * forms/form_url.fd +
3268         * src/insets/form_url.[Ch]: added because it's cleaner and easier
3269         to modify IMO.
3270
3271         * src/insets/Makefile.am: added files form_url.[Ch]
3272         
3273 1999-10-25  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3274
3275         * INSTALL: it is now possible to compile LyX with digital C++ 6.1
3276         (and presumably 6.2).
3277
3278         * src/{BufferView,LyXView,combox,filedlg,intl,lyxserver,lyxvc,
3279         menus,minibuffer,toolbar}.{C,h}: added C_xxx wrappers around
3280         remaining static member callbacks. 
3281
3282         * src/lyxfunc.C (Dispatch): Use _() instead of N_() fot minibuffer
3283         messages. 
3284
3285         * src/support/lyxstring.h: declare struct Srep as friend of
3286         lyxstring, since DEC cxx complains otherwise.
3287
3288 1999-10-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
3289
3290 1999-10-24  Lars Gullik Bjønnes  <larsbj@lyx.org>
3291
3292         * src/LaTeX.C (run): made run_bibtex also depend on files with
3293         extension ".bst"
3294         (runBibTeX): added scans for "\\bibstyle", now also ".bst" files
3295         are put into the dependency file.
3296
3297         * src/spellchecker.C (create_ispell_pipe): removed old #warning,
3298         the code has shown itself to work
3299         (create_ispell_pipe): removed another warning, added a comment
3300         instead. 
3301
3302         * src/minibuffer.C (ExecutingCB): removed code that has been
3303         commented out a long time
3304
3305         * src/lyxfunc.C (processKeyEvent): removed some very old commented
3306         out code + a warning.
3307
3308         * src/support/lyxstring.h: comment out the three private
3309         operators, when compiling with string ansi conforming compilers
3310         they make problems.
3311
3312         * src/mathed/math_symbols.C (AddBitmap): change 6th arg to be
3313         unsigned char *.
3314         (pixmapFromBitmapData): change type of bdata to be unsigned char *
3315         (pixmapFromBitmapData): add a reinterpret_cast in the call to
3316         XCreateImage
3317
3318         * src/mathed/math_panel.h: change 6th arg to AddBitmap to be
3319         unsigned char *
3320
3321         * src/mathed/math_panel.C (create_math_panel): remove explicit
3322         casts
3323
3324         * src/bmtable.h: change last paramter to fl_set_bmtable_data to be
3325         unsigned char *.
3326
3327         * src/bmtable.C (struct BMTABLE_SPEC): make bdata unsigned char *
3328         (draw_bitmaptable): add a reinterpret_cast to sp->bdata in the call
3329         to XCreatePixmapFromBitmapData
3330         (fl_set_bmtable_data): change the last argument to be unsigned
3331         char *
3332         (fl_set_bmtable_file): change bdata to unsinged char *, change bw
3333         and bh to be unsigned int, remove explicit casts in call to
3334         XReadBitmapFileData.
3335
3336         * images/arrows.xbm: made the arrays unsigned char *
3337         * images/varsz.xbm: ditto
3338         * images/misc.xbm: ditto
3339         * images/greek.xbm: ditto
3340         * images/dots.xbm: ditto
3341         * images/brel.xbm: ditto
3342         * images/bop.xbm: ditto
3343
3344         * Makefile.am (MAINTAINERCLEANFILES): added po/POTFILES.in
3345
3346         * acinclude.m4 (LYX_GXX_STRENGHT_REDUCE): removed. 
3347         (LYX_PROG_CXX): added -pedantic to g++ compile options when
3348         with-warnings, removed the __STRING_ANSI__ hack, seems to not be
3349         needed. 
3350         (LYX_CXX_CHEADERS): added <clocale> to the test. 
3351
3352 1999-10-23  Lars Gullik Bjønnes  <larsbj@lyx.org>
3353
3354         * src/lyx_cb.C (addNewlineAndDepth): changed to use string::append.
3355
3356         * src/support/lyxstring.C (append): fixed something that must be a
3357         bug, rep->assign was used instead of rep->append.
3358
3359         * src/support/Makefile.am (libsupport_a_SOURCES): added LIstream.h
3360         and LOstream.h
3361
3362         * src/lyxfunc.C (processKeyEvent): removed faulty line that made
3363         lyx insert double chars. Fix spotted by Kayvan.
3364
3365 1999-10-23  Asger Alstrup Nielsen  <alstrup@alstrup.galaxy.dk>
3366
3367         * Fixed the tth support. I messed up with the Emacs patch apply feature
3368         and omitted the changes in lyxrc.C.
3369
3370 1999-10-22  Juergen Vigna  <jug@sad.it>
3371
3372         * src/insets/figinset.C (CallbackFig): Just changed the defines a bit.
3373
3374         * src/lyx_cb.C (MenuInsertRef) + 
3375         * src/lyx_gui.C (create_forms): Inserted fl_set_form_minsize so that
3376         the form cannot be resized under it limits (fixes a segfault)
3377         
3378         * src/lyx.C (create_form_form_ref) +
3379         * forms/lyx.fd: Changed Gravity on name input field so that it is
3380         resized correctly.
3381
3382 1999-10-22  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3383
3384         * configure.in: use LYX_CXX_STL_MODERN_STREAMS; check for headers
3385         <ostream> and <istream>.
3386         
3387         * acinclude.m4 (LYX_CXX_STL_MODERN_STREAMS): new test. Checks
3388         whether <fstream> provides the latest standard features, or if we
3389         have an oldstyle library (like in egcs).
3390         (LYX_CXX_STL_STRING): fix the test.
3391
3392         * src/support/DebugStream.{C,h}: use L{I,O}stream.h and condition the
3393         code on MODERN_STL_STREAM.
3394
3395         * src/support/lyxstring.h: use L{I,O}stream.h.
3396
3397         * src/support/L{I,O}stream.h: new files, designed to setup
3398         correctly streams for our use
3399           - includes the right header depending on STL capabilities
3400           - puts std::ostream and std::endl (for LOStream.h) or
3401           std::istream (LIStream.h) in toplevel namespace.
3402
3403 1999-10-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
3404
3405         * src/LaTeX.C (run): added a check in 0 sumchange so that if it
3406         was a bib file that had been changed we ensure that bibtex is run.
3407         (runBibTeX): enhanced to extract the names of the bib files and
3408         getting their absolute path and enter them into the dep file.
3409         (findtexfile): static func that is used to look for tex-files,
3410         checks for absolute patchs and tries also with kpsewhich.
3411         Alternative ways of finding the correct files are wanted. Will
3412         probably be moved.
3413         (do_popen): function that runs a command using popen and returns
3414         the whole output of that command in a string. Should be moved to
3415         somewhere else.
3416
3417         * src/DepTable.[Ch] (extchanged): new function that returns true if a
3418         file with extension ext has changed.
3419
3420         * src/insets/figinset.C: added ifdef guards around the fl_free
3421         code that jug commented out. Now it is commented out when
3422         compiling with XForms == 0.89.
3423
3424         * src/support/lyxstring.C: moved the definition of lyxstring::Srep
3425         to lyxstring.C, and only keep a forward declaration in
3426         lyxstring.h. Simplifies the header file a bit and should help a
3427         bit on compile time too. Also changes to Srep will not mandate a
3428         recompile of code just using string.
3429         (~lyxstring): definition moved here since it uses srep.
3430         (size): definition moved here since it uses srep.
3431
3432         * src/support/lyxstring.h: removed a couple of "inline" that should
3433         not be there.
3434
3435 1999-10-21  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3436
3437         * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forgot to pass
3438         the 'ob' argument.
3439
3440 1999-10-21  Juergen Vigna  <jug@sad.it>
3441
3442         * src/table.C (SetPWidth): Just a small fix so the alignment is not
3443         set to left if I just remove the width entry (or it is empty).
3444
3445         * src/text2.C (SetCursorIntern): Fixed a bug calculating to use wrong
3446         paragraph when having dummy paragraphs.
3447
3448 1999-10-20  Juergen Vigna  <jug@sad.it>
3449
3450         * src/insets/figinset.C: just commented some fl_free_form calls
3451         and added warnings so that this calls should be activated later
3452         again. This avoids for now a segfault, but we have a memory leak!
3453
3454         * src/lyxfunc.C (processKeyEvent) (Dispatch): changed
3455         'const char * argument' to 'string argument', this should
3456         fix some Asserts() in lyxstring.C.
3457
3458         * src/lyxfunc.h: Removed the function argAsString(const char *)
3459         as it is not used anymore.
3460
3461 1999-10-20  Lars Gullik Bjønnes  <larsbj@lyx.org>
3462
3463         * src/support/lyxstring.C (getline): reads now _all_ chars. uses
3464         get instead of >>
3465
3466         * src/Literate.h: some funcs moved from public to private to make
3467         interface clearer. Unneeded args removed.
3468
3469         * src/Literate.C (scanLiterateLogFile): rewritten to use iostream
3470         instead of lyxlex.
3471         (scanBuildLogFile): ditto
3472
3473         * src/LaTeX.C (scanLogFile): merged LaTeX Error handling into
3474         normal TeX Error. Still room for improvement.
3475
3476         * src/LaTeX.[Ch]: removed scanError. Wrong place and not needed.
3477
3478         * src/buffer.C (insertErrors): changes to make the error
3479         desctription show properly.
3480
3481         * src/LaTeX.C (deplog): removed the test for file in lyx doc dir.
3482         could never happen
3483
3484         * src/support/lyxstring.C (helper): changed to use
3485         sizeof(object->rep->ref).
3486         (operator>>): changed to use a pointer instead.
3487
3488         * src/support/lyxstring.h: changed const reference & to value_type
3489         const & lets see if that helps.
3490
3491 1999-10-19  Lars Gullik Bjønnes  <larsbj@lyx.org>
3492
3493         * Makefile.am (rpmdist): fixed to have non static package and
3494         verison.
3495
3496         * src/support/lyxstring.C: removed the compilation guards
3497
3498         * src/vspace.C (nextToken): use i + 1  instead of ++i. Maks things
3499         a bit clearer.
3500
3501         * src/support/Makefile.am (LYXSTRING): bruker USE_LYXSTRING for
3502         conditional compile of lyxstring.Ch
3503
3504         * acinclude.m4 (LYX_CXX_STL_STRING): new and improved, still a
3505         stupid check, but it is a lot better than the bastring hack. 
3506         (LYX_CXX_STL_STRING): bruker nå AM_CONDITIONAL(USE_LYXSTRING  
3507
3508         * several files: changed string::erase into string::clear. Not
3509         really needed.
3510         
3511         * src/chset.C (encodeString): use a char temporary instead
3512
3513         * src/table.C (TexEndOfCell): added tostr around
3514         column_of_cell(fcell+i)+1 and around right_column_of_cell(fcell+i)+1
3515         (TexEndOfCell): ditto
3516         (TexEndOfCell): ditto
3517         (TexEndOfCell): ditto
3518         (DocBookEndOfCell): ditto
3519         (DocBookEndOfCell): ditto
3520         (DocBookEndOfCell): ditto
3521         (DocBookEndOfCell): ditto
3522
3523         * src/paragraph.C (TeXEnvironment): added tostr around foot_count -1
3524
3525         * src/lyxfr1.C (SearchReplaceAllCB): added tostr around replace_count
3526
3527         * src/lyx_cb.C (MenuRunLaTeX): added tostr around ret
3528         (MenuBuildProg): added tostr around ret
3529         (MenuRunChktex): added tostr around ret
3530         (DocumentApplyCB): added tostr around ret
3531
3532         * src/chset.C (encodeString): added tostr around t->ic
3533
3534         * src/buffer.C (makeLaTeXFile): added tostr around secnumdepth
3535         (makeLaTeXFile): added tostr around tocdepth
3536         (makeLaTeXFile): added tostr around ftcound - 1
3537
3538         * src/insets/insetbib.C (setCounter): added tostr around counter.
3539
3540         * src/support/lyxstring.h: added an operator+=(int) to catch more
3541         mistakes. 
3542
3543         * src/support/lyxstring.C (lyxstring): We DON'T allow NULL pointers.
3544         (lyxstring): We DON'T allow NULL pointers.
3545
3546 1999-10-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3547
3548         * src/mathed/math_macro.C (MathMacroArgument::Write,
3549         MathMacroTemplate::WriteDef): add tostr() around macro arg numbers
3550         when writing them out.
3551
3552         * src/LString.C: remove, since it is not used anymore.
3553         
3554         * src/support/lyxstring.C: condition the content to
3555         USE_INCLUDED_STRING macro.
3556
3557         * src/mathed/math_symbols.C, src/support/lstrings.C,
3558         src/support/lyxstring.C: add `using' directive to specify what
3559         we need in <algorithm>. I do not think that we need to
3560         conditionalize this, but any thought is appreciated.
3561
3562         * many files: change all callback functions to "C" linkage
3563         functions to please strict C++ compilers like DEC cxx 6.1 in mode
3564         strict_ansi. Those who were static are now global. 
3565             The case of callbacks which are static class members is
3566         trickier, since we have to make C wrappers around them (see
3567         InsetError, InsetInfo and InsetUrl). The same holds for friends. I
3568         did not finish this yet, since it defeats the purpose of
3569         encapsulation, and I am not sure what the best route is.
3570
3571 1999-10-19  Juergen Vigna  <jug@sad.it>
3572
3573         * src/support/lyxstring.C (lyxstring): we permit to have a null
3574         pointer as assignment value and just don't assign it.
3575
3576         * src/vspace.C (nextToken): corrected this function substituting
3577         find_first(_not)_of with find_last_of.
3578
3579         * src/TableLayout.C (UpdateLayoutTable) (TableOptionsCB)
3580                 (TableOptCloseCB) (TableSpeCloseCB):
3581         inserted fl_set_focus call for problem with fl_hide_form() in
3582         xforms-0.89.
3583
3584 1999-10-19  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3585
3586         * src/lyx_cb.C (LayoutsCB): fix bug where int was added to a
3587         string. 
3588
3589 1999-10-18  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3590
3591         * src/lyxrc.C (Read): RC_PRINTEXSTRAOPTIONS now uses
3592         LyXLex::next() and not eatline() to get its argument.
3593
3594 1999-10-17  Lars Gullik Bjønnes  <larsbj@lyx.org>
3595
3596         * src/DepTable.[Ch]: rewritten to store the dependencies in a map
3597         instead, use fstreams for io of the depfile, removed unneeded
3598         functions and variables. 
3599
3600         * src/LaTeX.[Ch] (class TeXErrors): rewrote to store the errors in a
3601         vector instead, removed all functions and variables that is not in
3602         use.
3603
3604 1999-10-16  Lars Gullik Bjønnes  <larsbj@lyx.org>
3605
3606         * src/buffer.C (insertErrors): use new interface to TeXError
3607
3608         * Makefile.am (rpmdist): added a rpmdist target
3609
3610         * lib/reLyX/Makefile.am: added RelyxFigure.pm and Verbatim.pm as
3611         per Kayvan's instructions.
3612
3613 1999-10-15  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3614
3615         * src/Makefile.am: add a definition for localedir, so that locales
3616         are found after installation (Kayvan)
3617
3618 1999-10-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
3619
3620         * development/.cvsignore: new file.
3621
3622 1999-10-14  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3623
3624         * acinclude.m4 (LYX_CXX_CHEADERS): New macro. Checks whether the
3625         C++ compiler provides wrappers for C headers and use our alternate
3626         version otherwise.
3627
3628         * configure.in: use LYX_CXX_CHEADERS.
3629
3630         * src/cheader/: new directory, populated with cname headers from
3631         libstdc++-2.8.1. They are a bit old, but probably good enough for
3632         what we want (support compilers who lack them).
3633         
3634         * src/insets/Makefile.am, src/mathed/Makefile.am: remove src/support
3635         from includes. It turns out is was stupid.
3636  
3637 1999-10-14  Lars Gullik Bjønnes  <larsbj@lyx.org>
3638
3639         * lib/Makefile.am (install-data-local): forgot a ';'
3640         (install-data-local): forgot a '\'
3641         (libinstalldirs): needed after all. reintroduced.
3642
3643 1999-10-13  Lars Gullik Bjønnes  <larsbj@lyx.org>
3644
3645         * configure.in (AC_OUTPUT): added lyx.spec
3646
3647         * development/lyx.spec: removed file
3648
3649         * development/lyx.spec.in: new file
3650
3651         * po/*.po: merged with lyx.pot becuase of make distcheck
3652         
3653         * lib/Makefile.am (dist-hook): added dist-hook so that
3654         documentation files will be included when doing a make
3655         dist/distdir/distcheck. Requires cvs export -r HEAD lyxdoc to run.
3656         (pkgdata_SCRIPTS): added configure.cmd for now, we can use som
3657         conditional later.
3658         more: tried to make install do the right thing, exclude CVS dirs
3659         etc.
3660
3661         * src/LaTeXLog.C (ShowLatexLog): reordered som statements so that
3662         Path would fit in more nicely.
3663
3664         * all files that used to use pathstack: uses now Path instead.
3665         This change was a lot easier than expected.
3666         
3667         * src/support/path.h: new file
3668
3669         * src/support/Makefile.am (libsupport_a_SOURCES): added path.h
3670
3671         * src/Makefile.am (lyx_SOURCES): removed pathstack.[Ch]
3672
3673         * src/support/lyxstring.C (getline): Default arg was given for
3674         para 3. removed.
3675
3676         * Configure.cmd: removed file 
3677
3678 1999-10-13  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3679
3680         * src/support/DebugStream.[Ch]: remove the explicit std:: before
3681         streams classes and types, add the proper 'using' statements when
3682         MODERN_STL is defined.
3683         
3684         * src/debug.h: move the << operator definition after the inclusion
3685         of DebugStream.h
3686
3687         * src/support/filetools.C: include "LAssert.h", which is needed
3688         later. 
3689
3690         * src/insets/Makefile.am, src/mathed/Makefile.am: add src/support
3691         to includes. 
3692
3693         * src/lyxfont.h, src/commandtags.h, src/mathed/math_defs.h:
3694         include "debug.h" to define a proper ostream.
3695
3696 1999-10-12  Asger Alstrup Nielsen  <alstrup@alstrup.galaxy.dk>
3697
3698         * src/sys*: Cleaned up the Systemcall stuff a bit. Added "kill(int)"
3699           method to the SystemCall class which can kill a process, but it's
3700           not fully implemented yet.
3701
3702         * src/*.C: Changed Systemcalls::Startscript() to startscript()
3703
3704         * src/support/FileInfo.h: Better documentation  
3705
3706         * src/lyxfunc.C: Added support for buffer-export html
3707         
3708         * src/menus.C: Added Export->As HTML...
3709         
3710         * lib/bind/*.bind: Added short-cut for buffer-export html
3711
3712         * src/lyxrc.*: Added support for new \tth_command
3713         
3714         * lib/lyxrc.example: Added stuff for new \tth_command
3715
3716 1999-10-12  Lars Gullik Bjønnes  <larsbj@lyx.org>
3717
3718         * lib/Makefile.am (IMAGES): removed images/README
3719         (pkgdata_SCRIPTS): use this instead of bin_SCRIPTS to that it
3720         installes in correct place. Check permisions is installed
3721         correctly.
3722
3723         * src/LaTeX.C: some no-op changes moved declaration of some
3724         variables around.
3725
3726         * src/LaTeX.h (LATEX_H): changed include guard name
3727
3728 1999-10-12  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3729
3730         * lib/reLyX/Makefile.am: install noweb2lyx.
3731
3732         * lib/Makefile.am: install configure. 
3733
3734         * lib/reLyX/configure.in: declare a config aux dir; set package
3735         name to lyx (not sure what the best solution is); generate noweb2lyx.
3736
3737         * lib/layouts/egs.layout: fix the bibliography layout.
3738
3739 1999-10-08  Jürgen Vigna <jug@sad.it>
3740
3741         * src/support/filetools.C (FileOpenSearch): Fixed a bug where
3742         when in the PATH was something like /usr/bin;;/bin (note: the ;;)
3743         it returned without continuing to search the path.
3744         
3745 1999-10-07  Lars Gullik Bjønnes  <larsbj@lyx.org>
3746
3747         * src/insets/insetquotes.C (Draw): Simplified a gread deal. This
3748         also fixes a bug. It is not allowed to do tricks with std::strings
3749         like: string a("hei"); &a[e]; this will not give what you
3750         think... Any reason for the complexity in this func?
3751
3752 1999-10-06  Asger Alstrup Nielsen  <alstrup@diku.dk>
3753
3754         * Updated README and INSTALL a bit, mostly to check that my
3755         CVS rights are correctly set up.
3756
3757 1999-10-06  Lars Gullik Bjønnes  <larsbj@lyx.org>
3758
3759         * src/support/lyxstring.C (helper): removed bogus Assert. strlen
3760         does not allow '\0' chars but lyxstring and std::string does.
3761
3762 1999-10-05  Lars Gullik Bjønnes  <larsbj@lyx.org>
3763
3764         * autogen.sh (AUTOCONF): let the autogen script create the
3765         POTFILES.in file too. POTFILES.in should perhaps now not be
3766         included in the cvs module.
3767
3768         * some more files changed to use C++ includes instead of C ones.
3769
3770         * src/filedlg.C (Reread): fixed a bug wrt Time. It was appended
3771         not assigned.
3772         (Reread): added tostr to nlink. buggy output otherwise.
3773         (Reread): added a string() around szMode when assigning to Buffer,
3774         without this I got a log of garbled info strings.
3775
3776         * acconfig.h: commented out the PTR_AS_INT macros. They should not
3777         be needed.
3778
3779         * I have added several ostream & operator<<(ostream &, some_type)
3780         functions. This has been done to avoid casting and warnings when
3781         outputting enums to lyxerr. This as thus eliminated a lot of
3782         explicit casts and has made the code clearer. Among the enums
3783         affected: kb_action, InsetLatexAccent::ACCENT_TYPE, a couple of
3784         mathed enums, some font enum the Debug::type enum. 
3785
3786         * src/support/lyxstring.h (clear): missing method. equivalent of
3787         erase(0, npos).
3788
3789         * all files that contained "stderr": rewrote constructs that used
3790         stderr to use lyxerr instead. (except bmtable)
3791
3792         * src/support/DebugStream.h (level): and the passed t with
3793         Debug::ANY to avoid spurious bits set.
3794
3795         * src/debug.h (Debug::type value): made it accept strings of the
3796         type INFO,INIT,KEY.
3797
3798         * configure.in (Check for programs): Added a check for kpsewhich,
3799         the latex generation will use this later to better the dicovery of
3800         all used files. 
3801
3802         * src/BufferView.C (create_view): we don't need to cast this to
3803         (void*) that is done automatically.
3804         (WorkAreaButtonPress): removed some dead code.
3805
3806 1999-10-05  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3807
3808         * src/minibuffer.C (Init): make sure that the "Welcome to LyX!"
3809         is not overwritten when translated (David Sua'rez de Lis).
3810
3811         * lib/CREDITS: Added David Sua'rez de Lis
3812
3813         * lib/reLyX/configure.in: setup LYX_DIR correctly in reLyX.
3814
3815         * src/bufferparams.C (BufferParams): default input encoding is now
3816         "latin1" 
3817
3818         * acinclude.m4 (cross_compiling): comment out macro
3819         LYX_GXX_STRENGTH_REDUCE. 
3820
3821         * acconfig.h: make sure that const is not defined (to empty) when
3822         we are compiling C++. Remove commented out code using SIZEOF_xx
3823         macros.
3824         
3825         * configure.in : move the test for const and inline as late as
3826         possible so that these C tests do not interefere with C++ ones.
3827         Remove the call to LYX_GXX_STRENGTH_REDUCE, since its usefulness
3828         has not been proven. 
3829
3830 1999-10-04  Jean-Marc Lasgouttes  <Jean-Marc.Lasgouttes@inria.fr>
3831
3832         * src/table.C (getDocBookAlign): remove bad default value for
3833         isColumn parameter.
3834
3835         * src/menus.C (ShowFileMenu): add a missing tostr() for lastfiles
3836         shortcut. 
3837         (ShowFileMenu2): ditto.
3838
3839         * lib/reLyX/.cvsignore: add configure and aclocal.m4 to the list
3840         of files to ignore.
3841
3842 1999-10-04  Lars Gullik Bjønnes  <larsbj@lyx.org>
3843
3844         * Most files: finished the change from the old error code to use
3845         DebugStream for all lyxerr debugging. Only minor changes remain
3846         (e.g. the setting of debug levels using strings instead of number) 
3847
3848 1999-10-02  Lars Gullik Bjønnes  <larsbj@lyx.org>
3849
3850         * src/layout.C (Add): Changed to use compare_no_case instead of
3851         strcasecmp.
3852
3853         * src/FontInfo.C: changed loop variable type too string::size_type.
3854
3855 1999-10-01  Lars Gullik Bjønnes  <larsbj@lyx.org>
3856
3857         * src/support/Makefile.am: added -I${srcdir}/../ to INCLUDES and
3858         set ETAGS_ARGS to --c++ 
3859
3860 1999-09-30  Lars Gullik Bjønnes  <larsbj@lyx.org>
3861
3862         * src/table.C (DocBookEndOfCell): commented out two unused variables
3863
3864         * src/paragraph.C: commented out four unused variables. 
3865
3866         * src/lyx_cb.C (TocUpdateCB): moved variable i and added a new i
3867         insed a if clause with type string::size_type.
3868
3869         * src/lyxfr1.C (IsSearchStringInText): changed iSrch from int to
3870         string::size_type.
3871
3872         * src/lyxfunc.C (Dispatch): use string::size_type as loop variable.
3873
3874         * src/lyx_cb.C (ReplaceWord): use string::size_type as loop
3875         variable, also changed loop to go from 0 to lenght + 1, instead of
3876         -1 to length. This should be correct.
3877
3878         * src/LaTeX.C (scanError): use string::size_type as loop variable
3879         type.
3880
3881         * src/BufferView.C (WorkAreaButtonPress): moved #if 0 up two lines
3882         (l.896) since y_tmp and row was not used anyway.
3883
3884         * src/insets/insetref.C (escape): use string::size_type as loop
3885         variable type.
3886
3887         * src/insets/insetquotes.C (Width): use string::size_type as loop
3888         variable type.
3889         (Draw): use string::size_type as loop variable type.
3890
3891         * src/insets/insetlatexaccent.C (checkContents): use
3892         string::size_type as loop variable type.
3893
3894         * src/insets/insetlabel.C (escape): use string::size_type as loop
3895         variable type.
3896
3897         * src/insets/insetinfo.C: added an extern for current_view.
3898
3899         * src/insets/insetcommand.C (scanCommand): use string::size_type
3900         as loop variable type.
3901
3902         * most files: removed the RCS tags. With them we had to recompile
3903         a lot of files after a simple cvs commit. Also we have never used
3904         them for anything meaningful. 
3905
3906         * most files: tags-query-replace NULL 0. As adviced several plases
3907         we now use "0" instead of "NULL" in our code. 
3908
3909         * src/support/filetools.C (SpaceLess): use string::size_type as
3910         loop variable type.
3911
3912 1999-09-29  Lars Gullik Bjønnes  <larsbj@lyx.org>
3913
3914         * src/paragraph.C: fixed up some more string stuff.
3915
3916 1999-09-28  Lars Gullik Bjønnes  <larsbj@lyx.org>
3917
3918         * src/support/filetools.h: make modestr a std::string.
3919
3920         * src/filetools.C (GetEnv): made ch really const.
3921
3922         * src/lyxlib.h: removed the Maximum and Minimum inline functions,
3923         made code that used these use max/min from <algorithm> instead.
3924
3925         * changed several c library include files to their equivalent c++
3926         library include files. All is not changed yet.
3927
3928         * created a support subdir in src, put lyxstring and lstrings
3929         there + the extra files atexit, fileblock, strerror. Created
3930         Makefile.am. edited configure.in and src/Makefile.am to use this
3931         new subdir. More files moved to support.
3932
3933         * imported som of the functions from repository lyx, filetools
3934         
3935         * ran tags-query-replace on LString -> string, corrected the bogus
3936         cases. Tried to make use of lstrings.[hC], debugged a lot. There
3937         is still some errors in there. This is errors where too much or
3938         too litle get deleted from strings (string::erase, string::substr,
3939         string::replace), there can also be some off by one errors, or
3940         just plain wrong use of functions from lstrings. Viewing of quotes
3941         is wrong. 
3942
3943         * LyX is now running fairly well with string, but there are
3944         certainly some bugs yet (see above) also string is quite different
3945         from LString among others in that it does not allow null pointers
3946         passed in and will abort if it gets any.
3947         
3948         * Added the revtex4 files I forgot when setting up the repository.
3949
3950 1999-09-27  Lars Gullik Bjønnes  <larsbj@lyx.org>
3951
3952         * All over: Tried to clean everything up so that only the files
3953           that we really need are included in the cvs repository.
3954         * Switched to use automake.
3955         * Generaton of reLyX is not perfect, LYX_DIR does not get substituted.
3956         * Install has not been checked.
3957
3958 1999-09-22  Lars Gullik Bjønnes  <larsbj@lyx.org>
3959
3960         * po/pt.po: Three errors:
3961                l.533 and l.538 format specification error
3962                l. 402 duplicate entry, I just deleted it.
3963