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