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