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