2000-05-09 Dekel Tsur * src/Bullet.[Ch]: Fixed a small bug. 2000-05-21 Dekel Tsur * src/paragraph.C (String): Several fixes/improvements * src/insets/insetbib.[Ch] (InsetCitation::Ascii) New method 2000-05-22 Lars Gullik Bjønnes * src/paragraph.C (String): give more correct output. 2000-05-20 Dekel Tsur * src/lyxfont.C (stateText) Do not output the language if it is eqaul to the language of the document. * src/paragraph.C (TeXOnePar): Do not put language switch commands between two paragraphs with the same language. * src/paragraph.C (getParLanguage) Return a correct answer for an empty dummy paragraph. * src/menus.C (ShowTocMenu): Do not draw lines between LOF/LOT/LOA menus. * src/menus.C (ShowLayoutMenu) Add "Start of Appendix" item to the layout menu. * src/lyx_gui.C (init): Try to use helvetica (or fixed) fonts for the menus/popup, if requested fonts are unavailable. 2000-05-22 Juergen Vigna * src/insets/insettabular.C (LocalDispatch): added some more cursor movement support (Up/Down/Tab/Shift-Tab). (LocalDispatch): added also preliminari cursor-selection. * src/LyXAction.C (init): added SHIFT-Tab as tab-backward. * src/paragraph.C (PasteParagraph): Hopefully now right! 2000-05-22 Garst R. Reese * layouts/hollywood.layout, broadway.layout : move Dialogue to top of list, change all references to Environment to Command * tex/hollywood.cls : rewrite environments as commands, add \uppercase to interiorshot and exteriorshot to force uppecase. * tex/broadway.cls : rewrite environments as commands. Tweak whitespace. 2000-05-22 Jean-Marc Lasgouttes * src/menus.C (Add_to_toc_menu): fix the code which limits the size of items: use a constant intead of the hardcoded 40, and more importantly do not remove the %m and %x tags added at the end. (Add_to_refs_menu): use vector::size_type instead of unsigned int as basic types for the variables. _Please_ do not assume that size_t is equal to unsigned int. On an alpha, this is unsigned long, which is _not_ the same. * src/language.C (initL): remove language "hungarian", since it seems that "magyar" is better. 2000-05-22 Juergen Vigna * src/CutAndPaste.C: hopefully fixed memory the problem defenitively! * src/tabular.C (OldFormatRead): added \end_deeper to the end LyXTable end markers! * src/paragraph.C (PasteParagraph): Possibly a memory leak as next was deleted but not set to 0. 2000-05-21 Lars Gullik Bjønnes * src/language.C (initL): change the initialization of languages so that compiles goes _fast_. * src/menus.C (Add_to_toc_menu): limit the line length in TOC to 40 chars. * src/lyxfunc.C (processKeyEvent): initalize keysym_return to 0. 2000-05-21 Lars Gullik Bjønnes * release 1.1.5pre3 2000-05-20 Lars Gullik Bjønnes * src/WorkArea.C (request_clipboard_cb): give "C" linkage. 2000-05-19 Dekel Tsur * src/commandtags.h * src/LyXAction.C * src/lyxfunc.C (Dispatch): Added LFUN_LOFVIEW, LFUN_LOTVIEW and LFUN_LOAVIEW * src/insets/insetlo*.[Ch]: Made editable 2000-05-20 Lars Gullik Bjønnes * src/text2.C (SetSelection): call BufferView::stuffClipboard with the current selection. * src/BufferView_pimpl.C (stuffClipboard): new method * src/BufferView.C (stuffClipboard): new method * src/paragraph.C (String): new method * src/LColor.C (getFromLyXName): return LColor::inherit instead of LColor::ignore when lyxname is not found. * src/BufferView.C (pasteSelection): new method * src/BufferView_pimpl.C (pasteSelection): new method * src/lyxfunc.C (Dispatch): use the new clipboard functions. * src/WorkArea.C (request_clipboard_cb): new static function (getClipboard): new method (putClipboard): new method 2000-05-19 Lars Gullik Bjønnes * LyX 1.1.5pre2 released 2000-05-19 Lars Gullik Bjønnes * src/vspace.C (operator=): removed (operator=): removed * src/lyx_gui_misc.C (askForText): manually set the type in make_pair * src/layout.C (NumberOfClass): manually set the type in make_pair (NumberOfLayout): ditto * src/language.C: use the Language constructor for ignore_lang * src/language.h: add constructors to struct Language * src/BufferView_pimpl.C (scrollDown): change to pair * src/text2.C (SetCursorIntern): comment out #warning * src/mathed/math_symbols.C (pixmapFromBitmapData): add const_cast * src/mathed/math_iter.h: initialize sx and sw to 0 2000-05-10 Dekel Tsur * forms/lyx.fd: Redesign of form_ref * src/LaTeXFeatures.[Ch] * src/buffer.C * src/lyx_cb.C * src/menus.C * src/insets/insetref.[Ch]: Added support for varioref and prettyref. * src/buffer.h * src/lyxparagraph.h: Added new classes: LyXParagraph::inset_iterator and Buffer::inset_iterator. * src/menus.C: Added new menus: TOC and Refs. * src/insets/insetlabel.C (Edit) Made InsetLabel editable. * src/buffer.C (getTocList): New method. * src/BufferView2.C (ChangeRefs): New method. * src/buffer.C (getLabelList): New method. It replaces the old getReferenceList. The return type is vector instead of string. * src/insets/insetinclude.C (getLabelList): New method. Replaces the old getLabel() and GetNumberOfLabels() methods. * src/insets/insetlabel.C (getLabelList): ditto * src/mathed/formula.C (getLabelList): ditto * src/paragraph.C (String): New method. * src/lyx_cb.C (TocSelectCB,TocUpdateCB): Rewritten. Uses the new getTocList() method. TocSelectCB() now calls to TocUpdateCB() before moving the cursor, which automatically updates the contents of the browser. (RefUpdateCB): Use the new getLabelList method. * src/lyxfunc.C (Dispatch): Give an error if the label is not found. * src/BufferView2.C (gotoLabel) Use the new getLabelList method. * src/spellchecker.C: Added using std::reverse; 2000-05-19 Juergen Vigna * src/tabular.C (Validate): fixed/added validating of LaTeXFeatures. * src/insets/insettext.C (computeTextRows): small fix for display of 1 character after a newline. * src/tabular.C (OldFormatRead): fixed the OldFormatRead with regard to cont-rows! 2000-05-18 Juergen Vigna * src/insets/insettabular.C (TabularFeatures): fixed update of display when changing width of column. * src/tabular.C (set_row_column_number_info): setting of autobreak rows if necessary. 2000-05-17 Jean-Marc Lasgouttes * src/lyxvc.C (toggleReadOnly): use VCS::status() instead of stat() * src/vc-backend.*: renamed stat() to status() and vcstat to vcstatus. It happens that Tru64 Unix 5.0 has stat() as a macro and compilation broke. The new name seems more relevant, anyway. 2000-05-17 Juergen Vigna * src/BufferView2.C (removeAutoInsets): fixed use of AutoDeleteInsets which was wrong if the removing caused removing of rows! * src/lyxlex_pimpl.C (next, nextToken): insert support for pushToken. (pushToken): new function. * src/text2.C (CutSelection): fix problem discovered with purify 2000-05-17 Jean-Marc Lasgouttes * src/debug.C (showTags): enlarge the first column, now that we have 6-digits debug codes. * lib/layouts/hollywood.layout: * lib/tex/hollywood.cls: * lib/tex/brodway.cls: * lib/layouts/brodway.layout: more commands and fewer environments. Preambles moved in the .cls files. Broadway now has more options on scene numbering and less whitespace (from Garst) * src/insets/insetbib.C (getKeys): make sure that we are in the document directory, in case the bib file is there. * src/insets/insetbib.C (Latex): revert bogus change. 2000-05-16 Juergen Vigna * src/insets/insettabular.C (UnlockInsetInInset): Changes to update the TabularLayout on cursor move. * src/TabularLayout.C (TabularOptionsCB): Wrong call to MenuLayoutTable * src/insets/insettabular.C (Clone): Clone the LyXTabular for undo-handling. (getCellXPos): (draw): fixed cursor position and drawing so that the cursor is visible when before the tabular-inset. * src/insets/insettext.C (init): drawLockedFrame was not initialized when creating from old insettext. * src/tabular.C (Clone): added Clone of text-inset for undo-handling. 2000-05-15 Jean-Marc Lasgouttes * lib/tex/hollywood.cls: better algorithm for page breaks (Garst) * lib/tex/brodway.cls: ditto * lib/layouts/brodway.layout: change alignment of parenthical layout (Garst) 2000-05-12 Jean-Marc Lasgouttes * config/lyxinclude.m4 (LYX_PATH_XFORMS): make it clear that only versions 0.88 and 0.89 are supported. 2000-05-15 Juergen Vigna * src/insets/insetcollapsable.C (draw): enhancements in drawing and width calculating. * src/insets/insettext.C (computeTextRows): redone completely this function in a much cleaner way, because of problems when having a fixed maxWidth. (draw): added a frame border when the inset is locked. (SetDrawLockedFrame): this sets if we draw the border or not. (SetFrameColor): this sets the frame color (default=insetframe). * src/insets/lyxinset.h: added x() and y() functions which return the top_x and top_baseline values. Added a GetFirstLockingInsetOfType function which is needed to see if we have a locking inset of some type in this inset (needed for now in insettabular). * src/vspace.C (inPixels): the same function also without a BufferView parameter as so it is easier to use it in some ocasions. * src/lyxfunc.C: changed all places where insertInset was used so that now if it couldn't be inserted it is deleted! * src/TabularLayout.C: * src/TableLayout.C: added support for new tabular-inset! * src/BufferView2.C (insertInset): this now returns a bool if the inset was really inserted!!! * src/tabular.C (GetLastCellInRow): (GetFirstCellInRow): new helper functions. (Latex): implemented for new tabular class. (TeXCellPostamble): (TeXCellPreamble): (TeXBottomHLine): (TeXTopHLine): new Latex() helper functions. 2000-05-12 Juergen Vigna * src/mathed/formulamacro.C (Read): * src/mathed/formula.C (Read): read also the \end_inset here! 2000-05-10 Dekel Tsur * src/mathed/math_write.C (MathParInset::Write): Fixed a bug: crush when saving formulae with unbalanced parenthesis. 20000-05-11 Dekel Tsur * src/layout.C: Add new keyword "endlabelstring" to layout file * src/text.C (GetVisibleRow): Draw endlabel string. * lib/layouts/broadway.layout * lib/layouts/hollywood.layout: Added endlabel for the Parenthetical layout. * lib/layouts/heb-article.layout: Do not use slanted font shape for Theorem like environments. * src/buffer.C (makeLaTeXFile): Always add "american" to the UsedLanguages list if document language is RTL. 2000-05-11 Jean-Marc Lasgouttes * add addendum to README.OS2 and small patch (from SMiyata) 2000-05-10 Jean-Marc Lasgouttes * many files: correct the calls to ChangeExtension(). * src/support/filetools.C (ChangeExtension): remove the no_path argument, which does not belong there. Use OnlyFileName() instead. * src/insets/insetbib.C (Latex): use absolute paths for bibtex files when LaTeXing a non-nice latex file. * src/lyxlookup.C (isDeadEvent): use a switch statement instead of a chain of "if". Return false when deadkeys are not handled. * src/lyx_main.C (LyX): adapted the code for default bindings. * src/kbmap.C (defaultKeyBindings): new method. Performs the default bindings for basic functionality (except deadkeys). (deadKeyBindings): new method. Performs the bindings of deadkeys. * src/lyxrc.C (defaultKeyBindings): moved to lyx_main.C several methods: handle override_x_deadkeys. * src/lyxrc.h: remove the "bindings" map, which did not make much sense anyway. New variable override_x_deadkeys, defaulting to "true". 2000-05-09 Jean-Marc Lasgouttes * src/lyxfont.C (stateText): use a saner method to determine whether the font is "default". Seems to fix the crash with DEC cxx. * src/Bullet.[Ch] (Bullet): remove const on parameters. 2000-05-08 Juergen Vigna * src/insets/insettabular.C (InsetButtonRelease): Now opens the TabularLayoutMenu with mouse-button-3 (LocalDispatch): added LFUN_MENU_LAYOUT to open the Tabular-Layout. * src/TabularLayout.C: added this file for having a Layout for tabular-insets. 2000-05-05 Juergen Vigna * src/insets/insettabular.C (UpdateLocal): resetCursorPos when recalculating inset-widths. (TabularFeatures): activated this function so that I can change tabular-features via menu. * src/menus.C (ShowEditMenu): inserted support for insettabular so that I can test some functions with the Table menu. 2000-05-05 Lars Gullik Bjønnes * src/lyxfont.C (stateText): guard against stupid c++libs. * src/tabular.C: add using std::vector some whitespace changes, + removed som autogenerated code. * src/buffer.C (parseSingleLyXformat2Token): stupid bug. 2000-05-05 Juergen Vigna * src/tabular.[Ch]: now using std:vector instead of arrays for all the row, columns and cellstructures. 2000-05-05 Lars Gullik Bjønnes * lib/lyxrc.example: remove obsolete entries. * src/buffer.C (parseSingleLyXformat2Token): patch from dekel, fix reading of protected_separator for free_spacing. 2000-05-05 Jean-Marc Lasgouttes * src/text.C (draw): do not display an exclamation mark in the margin for margin notes. This is confusing, ugly and uninformative. * src/LaTeXFeatures.C (getPackages): load amssymb also when 'Use AMS math' is checked. * src/buffer.C (makeLaTeXFile): do not depend on the textclass name to see whether including the amsmath package is needed. 2000-05-05 Dekel Tsur * src/paragraph.C (validate): Compute UsedLanguages correctly (don't insert the american language if it doesn't appear in the document) * src/paragraph.C (TeXOnePar,SimpleTeXOnePar,SimpleTeXSpecialChars) The argument of \thanks{} command is considered moving argument * src/paragraph.C (SimpleTeXOnePar): Put \protect before \\ if in moving argument. 2000-05-04 Dekel Tsur * src/text.C (GetVisibleRow): Improved drawing of vertical lines for appendix/minipage/depth. The lines can be now both in the footnote frame, and outside the frame. * src/text.C (SingleWidth,draw): Correct rendering of Hebrew vowels points ("nikud") 2000-05-05 Juergen Vigna * src/table.[Ch]: removed the inset and buffer stuff as this is now neede only in tabular.[Ch]. 2000-05-05 Lars Gullik Bjønnes * src/insets/insetspecialchar.C (Read): allow command == '~' for PROTECTED_SEPARATOR (Write): write '~' for PROTECTED_SEPARATOR 2000-05-04 Lars Gullik Bjønnes * src/lyxparagraph.h: add a friend struct matchIT after the struct InsetTable. * src/mathed/formula.C (drawStr): rename size to siz. * src/insets/figinset.C (RestoreForm): rename pflags to piflags, possibly fix a bug by not changing the pflags = flags to piflags = flags. 2000-05-05 Juergen Vigna * src/insets/insetbib.C: moved using directive * src/ImportNoweb.C: small fix for being able to compile (missing include cstdlib) 2000-05-04 Lars Gullik Bjønnes * config/lyxinclude.m4 (LYX_CXX_STL_STRING): change the test not to use clear, since we don't depend on this in the code. Add test for string::compare 2000-05-04 Jean-Marc Lasgouttes * (various *.C files): add using std::foo directives to please dec cxx. * replace calls to string::clear() to string::erase() (Angus) * src/cheaders/cmath: modified to provide std::abs. 2000-05-04 Juergen Vigna * src/insets/insettext.C: Prepared all for inserting of multiple paragraphs. Still display stuff to do (alignment and other things), but I would like to use LyXText to do this when we cleaned out the table-support stuff. * src/insets/insettabular.C: Changed lot of stuff and added lots of functionality still a lot to do. * src/tabular.C: Various functions changed name and moved to be const functions. Added new Read and Write functions and changed lots of things so it works good with tabular-insets (also removed some stuff which is not needed anymore * hacks *). * src/lyxcursor.h: added operators == and != which just look if par and pos are (not) equal. * src/buffer.C (latexParagraphs): inserted this function to latex all paragraphs form par to endpar as then I can use this too for text-insets. * src/text2.C (SetLayout): Changed this to use a cursor this is needed so that I can call this to from text insets with their own cursor. * src/buffer.C (makeLaTeXFile): added the output of one \n after the output off all paragraphs (because of the fix below)! * src/paragraph.C (TeXOnePar): removed output of \n when we are in the very last paragraph (this could be also the last paragraph of an inset!) * src/texrow.h: added rows() call which returns the count-variable. 2000-05-03 Jose Abilio Oliveira Matos * lib/lyxrc.example: fix examples for exporting SGML to HTML. * lib/configure.m4: better autodetection of DocBook tools. 2000-04-28 Lars Gullik Bjønnes * src/lyx_main.C (easyParse): use lyxerr instead of cerr. * src/lyx_cb.C: add using std::reverse; * src/LaTeX.C (run): on error always run deleteFilesOnError before returning. * src/LaTeX.[Ch] (deleteFilesOnError): new method. unlinks some selected files. Should fix repeated errors from generated files. 2000-04-27 Dekel Tsur * src/lyx_cb.C (TocUpdateCB): Reverse strings for Hebrew paragraphs * src/spellchecker.C (RunSpellChecker): Reverse Hebrew strings in the spellchecker popup. * lib/lyxrc.example: Removed the \number_inset section 2000-04-28 Jean-Marc Lasgouttes * src/insets/figinset.C (various): Use IsFileReadable() to make sure that the file actually exist. Relying on ghostscripts errors is a bad idea since they can lead to X server crashes. 2000-04-27 Claus Hentschel * intl/loadmsgcat.c (_nl_load_domain): pass O_BINARY as flag to open under CYGWIN * lib/lyxrc.example: smallish typo in description of \view_dvi_paper_option 2000-04-26 André Pönitz * src/lyxfunc.h: * src/lyxfunc.C: doImportHelper to factor out common code of the various import methods. New functions doImportASCIIasLines, doImportASCIIasParagraphs, doImportLaTeX, doImportNoWeb, doImportLinuxDoc for the format specific parts. * buffer.h: * buffer.C: Dispatch returns now a bool to indicate success * lyx_gui.h: * lyx_gui.C: Add getLyXView() for member access * lyx_main.C: Change logic for batch commands: First try Buffer::Dispatch (possibly without GUI), if that fails, use LyXFunc::Dispatch * lyx_main.C: Add support for --import command line switch. Now 'lyx --import ascii file.txt' opens the GUI with file.txt loaded. Available Formats: Everything accepted by 'buffer-import ' 2000-04-27 Lars Gullik Bjønnes * src/lyx_gui.C (create_forms): small oneliner from Garst to have unnumbered parts. * src/lyx_cb.C (ScreenApplyCB): clear the textcache so that the documents will be reformatted upon reentry. 2000-04-27 Juergen Vigna * src/CutAndPaste.C (pasteSelection): last paragraph was not returned correctly only last pos this was a bug. 2000-04-26 Lars Gullik Bjønnes * release of lyx-1.1.5pre1 2000-04-26 Jean-Marc Lasgouttes * src/insets/insettabular.[Ch]: fix the Clone() declaration. * src/menus.C: revert the change of naming (Figure->Graphic...) from 2000-04-11. It was incomplete and bad. * src/LColor.[Ch]: add LColor::depthbar. * src/text.C (GetVisibleRow): use it. * README: update the languages list. 2000-04-25 Dekel Tsur * src/text.C (GetVisibleRow): show the depth of paragraphs using vertical bars. 2000-04-26 Lars Gullik Bjønnes * README: remove sections that were just wrong. * src/text2.C (GetRowNearY): remove currentrow code * src/text.C (GetRow): remove currentrow code * src/screen.C (Update): rewritten a bit. (SmallUpdate): removed func * src/lyxtext.h (text_status): removed NEED_LITTLE_REFRESH, never used. (FullRebreak): return bool (currentrow): remove var (currentrow_y): ditto * src/lyxscreen.h (Draw): change arg to unsigned long (FitCursor): return bool (FitManualCursor): ditto (Smallpdate): remove func (first): change to unsigned long (DrawOneRow): change second arg to long (from long &) (screen_refresh_y): remove var (scree_refresh_row): ditto * src/lyxrow.h: change baseline to usigned int from unsigned short, this brings some implicit/unsigned issues out in the open. * src/lyxfunc.C (moveCursorUpdate): update(0) == update(-2) change accordingly. (Dispatch): don't call updateScrollbar after fitCursor. Use update instead of smallUpdate. * src/lyxcursor.h: change y to unsigned long * src/buffer.h: don't call updateScrollbar after fitcursor * src/buffer.C (parseSingleLyXformat2Token): move variables to where they are used. Removed "\\direction", this was not present in 1.1.4 and is already obsolete. Commented out some code that I believe to never be called. (runLiterate): don't call updateScrollbar after fitCursor (runLaTeX): ditto (buildProgram): ditto (runChktex): ditto * src/WorkArea.h (workWidth): change return val to unsigned (width): ditto (height): ditto (redraw): remove the button redraws (setScrollbarValue): change for scrollbar (getScrollbarValue): change for scrollbar (getScrollbarBounds): change for scrollbar * src/WorkArea.C (C_WorkArea_up_cb): removed func (C_WorkArea_down_cb): removed func (WorkArea): use fl_add_scrollbar instead of two buttons and a slider. (resize): change for scrollbar (setScrollbar): ditto (setScrollbarBounds): ditto (setScrollbarIncrements): ditto (up_cb): removed func (down_cb): removed func (scroll_cb): change for scrollbar (work_area_handler): ditto * src/BufferView_pimpl.C (fitCursor): only call updateScrollbar when FitCursor did something. (updateScrollbar): some unsigned changes (downCB): removed func (scrollUpOnePage): removed func (scrollDownOnePage): remvoed func (workAreaMotionNotify): don't call screen->FitCursor but use fitCursor instead. and bool return val (workAreaButtonPress): ditto (workAreaButtonRelease): some unsigned changes (checkInsetHit): ditto (workAreaExpose): ditto (update): parts rewritten, comments about the signed char arg added (smallUpdate): removed func (cursorPrevious): call needed updateScrollbar (cursorNext): ditto * src/BufferView2.C (allFloats): don't call updateScrollbar after fitCursor. * src/BufferView.[Ch] (upCB): removed func (downCB): removed func (smallUpdate): removed func 2000-04-25 Lars Gullik Bjønnes * src/lyxtext.h src/text.C src/text2.C: removed support for the currentrow, currentrow_y optimization. This did not help a lot and if we want to do this kind of optimization we should rather use cursor.row instead of the currentrow. * src/buffer.C (parseSingleLyXformat2Token): fixed mistake in buffer spacing and klyx spacing support. 2000-04-25 Dekel Tsur * src/spellchecker.C (RunSpellChecker): Speedup spellchecking by a factor of 50! 2000-04-26 Juergen Vigna * src/insets/figinset.C: fixes to Lars sstream changes! 2000-04-23 Dekel Tsur * A lot of files: Added Ascii(ostream &) methods to all inset classes. Used when exporting to ASCII. * src/buffer.C (writeFileAscii,RoffAsciiTable) * src/paragraph.C (RoffContTableRows): Use the Ascii() methods instead of Latex() * src/text2.C (ToggleFree): Disabled implicit word selection when there is a change in the language * src/insets/insetspecialchar.C (Linuxdoc,DocBook): Fixed a bug: no output was generated for end-of-sentence inset. * src/insets/lyxinset.h * src/buffer.C * src/lyxfunc.C * src/paragraph.C: Removed the insetnumber code * src/text.C (SelectWordWhenUnderCursor): Cleaned the code. 2000-04-22 Lars Gullik Bjønnes * src/buffer.C (parseSingleLyXformat2Token): remove no_isolatin1, no_babel and no_epsfig completely from the file. (parseSingleLyXformat2Token): add handling for per-paragraph spacing as written by klyx. * src/insets/figinset.C: applied patch by Andre. Made it work with ostringstream too. 2000-04-20 Juergen Vigna * src/insets/insettext.C (cutSelection): (copySelection): Fixed with selection from right to left. (draw): now the rows are not recalculated at every draw. (computeTextRows): for now reset the inset-owner here (this is important for an undo or copy where the inset-owner is not set automatically!) * src/BufferView_pimpl.C (workAreaMotionNotify): when passing the motion to the_locking_inset screen->first was forgotten, this was not important till we got multiline insets. 2000-04-19 Jean-Marc Lasgouttes * src/mathed/formulamacro.C (Latex): remove CHECK comment, since code seems to be alright (it is code changed by Dekel, and the intent is indeed that all macros should be defined \protect'ed) * NEWS: a bit of reorganisation of the new user-visible features. 2000-04-19 Juergen Vigna * src/insets/insettext.C (init): using a LyXCursor now for cursor position. Set the inset_owner of the used paragraph so that it knows that it is inside an inset. Fixed cursor handling with mouse and cursor keys. Fixed wrong timed inset redraws and lots of other changes and cleanups to make TextInsets work better. * src/insets/insettext.h: Using a LyXCursor now. Added a clear() call. Changed parameters of various functions and added LockInsetInInset(). * src/insets/insettext.C: * src/insets/insetcollapsable.h: * src/insets/insetcollapsable.C: * src/insets/insetfoot.h: * src/insets/insetfoot.C: * src/insets/insetert.h: * src/insets/insetert.C: cleaned up the code so that it works now correctly with insettext. * src/insets/inset.C: * src/insets/lyxinset.h: inserted inset_owner and some more changes so that insets in insets are supported right. * src/table.h: * src/table.C: lots of changes for use with inset tabular (and cleanup) * src/paragraph.C: some small fixes * src/debug.h: inserted INSETS debug info * src/lyxfunc.C (Dispatch): added code for InsetTabular and some inset fixes (f.ex. calling LFUN_DOWN if exiting inset with LFUN_DOWN). * src/commandtags.h: * src/LyXAction.C: insert code for InsetTabular. * src/BufferView_pimpl.C (workAreaMotionNotify): do return always if not Button1MotionMask. (workAreaButtonRelease): send always a InsetButtonRelease event to the_locking_inset. (checkInsetHit): some setCursor fixes (always with insets). * src/BufferView2.C (lockInset): returns a bool now and extended for locking insets inside insets. (showLockedInsetCursor): it is important to have the cursor always before the locked inset. (fitLockedInsetCursor): forgot adding of InsetInInsetY()-offset. * src/BufferView.h: made lockInset return a bool. * src/lyxtext.h: inserted function SetCursor(LyXCursor, ...). * src/text2.C (SetCursor): This now has a version with a LyXCursor that is used also internally but can be called as public to have back a cursor pos which is not set internally. (SetCursorIntern): Changed to use above function. * src/CutAndPaste.C (DeleteBuffer): forgot to inizialize textclass 2000-04-19 Lars Gullik Bjønnes * ANNOUNCE: * INSTALL: * UPGRADING: * NEWS: updated for prerelease of 1.1.5. Please comment and send patches for things that should be in or should be changed. * src/* [insetfiles]: change "usigned char fragile" to bool fragile. There was only one point that could that be questioned and that is commented in formulamacro.C. Grep for "CHECK". * src/CutAndPaste.C (getBufferTextClass): unused func, removed. (DeleteBuffer): take it out of CutAndPaste and make it static. 2000-04-17 Lars Gullik Bjønnes * src/paragraph.C (TeXOnePar): use the new method in Spacing to output the spacing envir commands. Also the new commands used in the LaTeX output makes the result better. * src/Spacing.C (writeEnvirBegin): new method (writeEnvirEnd): new method 2000-04-18 Juergen Vigna * src/CutAndPaste.C: made textclass a static member of the class as otherwise it is not accesed right!!! 2000-04-17 Dekel Tsur * forms/layout_forms.fd * src/layout_forms.h * src/layout_forms.C (create_form_form_character) * src/lyx_cb.C (UserFreeFont) * src/lyx_gui.C (create_forms): Added GUI support for multi-lingual documents (in the layout->character popup). 2000-04-17 Jean-Marc Lasgouttes * src/spellchecker.C (create_ispell_pipe): fix a bug where \spell_command was in fact not honored (from Kevin Atkinson). * src/lyx_gui.C (~LyXGUI): make sure lyxViews is deleted when quitting (Angus) * src/lyx_gui.h: make lyxViews private (Angus) 2000-04-15 Dekel Tsur * src/mathed/math_write.C (MathMatrixInset::Write) Put \protect before \begin{array} and \end{array} if fragile (MathParInset::Write): Put \protect before \\ if fragile 2000-04-15 Lars Gullik Bjønnes * src/lyx_gui.C (LyXGUI): initialize the LyXColorHandler. The initialization if the LyXColorHandler must be done after the connections to the XServer has been established. * src/insets/figinset.C (runqueue): change the grabing a bit. Also get the background pixel from the lyxColorhandler so that the figures are rendered with the correct background color. (NextToken): removed functions. (GetPSSizes): use ifs >> string instead of NextToken. * src/Painter.[Ch]: the color cache moved out of this file. * src/ColorHandler.[Ch]: new files. Holds the gc cache for color and lines. 2000-04-14 Lars Gullik Bjønnes * src/WorkArea.C (work_area_handler): call BufferView::enterView and Buffer::leaveView when FL_ENTER and FL_LEAVE. * src/BufferView.C (enterView): new func (leaveView): new func * src/BufferView_pimpl.C (enterView): new func, sets xterm cursor when approp. (leaveView): new func, undefines xterm cursor when approp. * src/bufferview_funcs.C: moved SetXCursor to BufferView_pimp.C (AllowInput): delete the Workarea cursor handling from this func. * src/Painter.C (underline): draw a slimer underline in most cases. * src/lyx_main.C (error_handler): use extern "C" 2000-04-12 Lars Gullik Bjønnes * src/insets/figinset.C (DocBook): small patch from Jose (jamatos) sent directly to me. * src/text2.C (DeleteEmptyParagraphMechanism): small patch posted to the list by Dekel. * src/lyxfunc.C (Dispatch): make PARAGRAPH_SPACING compile with strstream too. * src/bufferview_funcs.[Ch]: two new files, moved several of the methods from lyx_cb.here. * src/lyx_cb.C: in addition to the above; removed input_prohibited it was not used. 2000-04-11 Lars Gullik Bjønnes * src/lyx_cb.[Ch]: made several functions take a BufferView* arg instead of using current_view directly. * src/lyxfunc.C (Dispatch): the paragraph-spacing implementation * src/LyXAction.C (init): add the paragraph-spacing command. * src/commandtags.h: add enum for LFUN_PARAGRAPH_SPACING * src/buffer.C (parseSingleLyXformat2Token): read the paragraph spacing * src/lyx_cb.C (CurrentState): output a string when the spacing is different from the documents. * src/text.C (SetHeightOfRow): take paragraph spacing into account, paragraph spacing takes precedence over buffer spacing (GetVisibleRow): ditto * src/paragraph.C (writeFile): output the spacing parameter too. (validate): set the correct features if spacing is used in the paragraph. (Clear): set spacing to default (MakeSameLayout): spacing too (HasSameLayout): spacing too (SetLayout): spacing too (TeXOnePar): output the spacing commands * src/lyxparagraph.h: added a spacing variable for use with per-paragraph spacing. * src/Spacing.h: add a Default spacing and a method to check if the current spacing is default. also added an operator== * src/text2.C (DeleteEmptyParagraphMechanism): added a RedoParagraphs. 2000-04-11 Jean-Marc Lasgouttes * src/lyxserver.C (callback): fix dispatch of functions * src/insets/insetlatexaccent.C (checkContents): turn bogus printf() into lyxerr call. * src/tex-strings.C (tex_fonts): add "pslatex" to the choice of fonts. * src/menus.C (ShowInsertMenu): rename "Figure" to "Graphic", "Table" to "Table Box", "Float" to "Floating Material"; deletes the "Float" from each of the subitems. (ShowHelpMenu): add entry for "FAQ" and "TOC". * src/support/DebugStream.h: add an #ifdef to work around a gcc 2.8.x compiler error. Yes, I know, gcc 2.8.1 is bad, but I documented the change so that the workaround can be nuked later. * src/lyx_gui_misc.C (getScreenDPI): new function. Code moved from LyX::init(). * src/lyxlex_pimpl.C (next): do not re-declare the default value of arguments. * src/buffer.C (getLatexName): ditto (setReadonly): ditto 2000-04-11 Lars Gullik Bjønnes * src/LaTeXFeatures.h: add a const reference to BufferParams, to avoid some uses of current_view. Added also a bufferParams() method to get at this. * src/lyxtext.h: changed params->buffer and paramters->bparams. 2000-04-10 Lars Gullik Bjønnes * src/lyxparagraph.[Ch]: removed operator<(LyXParagraph::InsetTable..., added a struct matchIT with operators used by lower_bound and upper_bound in InsetTable's Make struct InsetTable private again. Used matchpos. 2000-04-08 Dekel Tsur * src/lyx_cb.C (DocumentApplyCB): When changing the language of the document, the language of existing text is changed (unless the document is multi-lingual) * src/buffer.C (ChangeLanguage,isMultiLingual) New methods. * src/paragraph.C (ChangeLanguage,isMultiLingual) New methods. * A lot of files: A rewrite of the Right-to-Left support. 2000-04-10 Juergen Vigna * src/BufferView2.C (showLockedInsetCursor): small bugfix for misplaced cursor when inset in inset is locked. * src/insets/insettext.C (LocalDispatch): small fix so that a BREAKLINE is not inserted if we don't permit it with autBreakRows. * src/insets/insetfoot.C (GetDrawFont): implemented this as the footnote font should be decreased in size twice when displaying. * src/insets/insettext.C (GetDrawFont): inserted this function as the drawing-font may differ from the real paragraph font. * src/lyxfunc.C (processKeyEvent): fixed Esc-handling when unlocking insets (inset in inset!). * src/insets/insetfoot.C (InsertInsetAllowed): implemented the below function here because we don't want footnotes inside footnotes. * src/insets/insettext.C (InsetText): forgot to set autoBreakRows for Cloned insets. (init): now set the inset_owner in paragraph.C (LocalDispatch): added some resetPos() in the right position (cutSelection): (copySelection): (pasteSelection): changed to use the new CutAndPaste-Class. * src/insets/lyxinset.h: inserted new function InsertInsetAllowed which tells if it is allowed to insert another inset inside this one. * src/lyx_cb.C (DocumentApplyCB): Using CutAndPaste-Class for SwitchLayoutsBetweenClasses. * src/text2.C (InsertInset): checking of the new paragraph-function InsertInsetAllowed. (DeleteSimpleCutBuffer): removed (for now only with #ifdef) as this is not needed anymore here! (CutSelection): (CopySelection): (PasteSelection): redone (also with #ifdef) so that now this uses the CutAndPaste-Class. (SwitchLayoutsBetweenClasses): removed here and implemented in the CutAndPaste-Class. * src/CutAndPaste.[Ch]: added this for clean handling of CutAndPaste from/to text/insets. * src/paragraph.C (LyXParagraph): inserted new inset_owner pointer so that the paragraph knows if it is inside an (text)-inset. (InsertFromMinibuffer): changed return-value to bool as now it may happen that an inset is not inserted in the paragraph. (InsertInsetAllowed): this checks if it is allowed to insert an inset in this paragraph. (PasteParagraph): (BreakParagraphConservative): (BreakParagraph) : small change for the above change of the return value of InsertFromMinibuffer. * src/lyxparagraph.h: added inset_owner and the functions to handle this (SetInsetOwner(), InInset() and InsertInsetAllowed()). 2000-04-10 Lars Gullik Bjønnes * src/BufferView.[Ch], src/BufferView_pimpl.[Ch]: move more functions from BufferView to BufferView::Pimpl to ease maintence. * src/text2.C (DeleteEmptyParagraphMechanism): update the cursor correctly. Also use SetCursorIntern instead of SetCursor. * src/insets/insetinfo.C (draw): draw InsetInfo notes with the correct color. 2000-04-08 Lars Gullik Bjønnes * src/WorkArea.C (belowMouse): manually implement below mouse. * src/*: Add "explicit" on several constructors, I added probably some unneeded ones. A couple of changes to code because of this. * src/BufferView.[Ch]: Used the "pimpl" idiom to hide more of the implementation and private parts from the users of BufferView. Not quite finished. * src/lyxlex.[Ch]: Used the "pimpl" idiom to hide more of the implementation and private parts from the users of LyXLex. Not quite finished. * src/BufferView_pimpl.[Ch]: new files * src/lyxlex_pimpl.[Ch]: new files * src/LyXView.[Ch]: some inline functions move out-of-line 2000-04-04 Jean-Marc Lasgouttes * src/lyxparagraph.h: make struct InsetTable public. * src/support/lyxstring.h: change lyxstring::difference_type to be ptrdiff_t. Add std:: modifiers to streams. * src/font.C: include the header, for islower() and isupper(). 2000-04-03 Lars Gullik Bjønnes * src/font.[Ch]: new files. Contains the metric functions for fonts, takes a LyXFont as parameter. Better separation of concepts. * src/lyxfont.[Ch]: move the metric functions to font.[Ch] several changes because of this. * src/PainterBase.[Ch] (width): remove, use the ones in font.C instead * src/*: compile with -Winline and move functions that don't inline out of line. * src/lyx_cb.C (stringOnlyContains): use string::find_first_not_of instead of strspn. 2000-04-02 Lars Gullik Bjønnes * src/paragraph.C (GetLabelstring): renamed from GetLabestring. (various files changed because of this) * src/Painter.C (text): fixed the drawing of smallcaps. * src/lyxfont.[Ch] (drawText): removed unused member func. (drawString): ditto * src/*.C: added needed "using" statements and "std::" qualifiers. 2000-03-31 Lars Gullik Bjønnes * src/*.h: removed all use of "using" from header files use qualifier std:: instead. 2000-04-03 Jean-Marc Lasgouttes * src/text.C (Backspace): some additional cleanups (we already know whether cursor.pos is 0 or not). * lib/reLyX/Makefile.am (DESTDIR): add an empty value (since automake does not provide one). * src/bmtable.h: replace C++ comments with C comments. 2000-04-02 Dekel Tsur * src/screen.C (ShowCursor): Change the shape of the cursor if the current language is not equal to the language of the document. (If the cursor change its shape unexpectedly, then you've found a bug) * src/insets/insettext.C (LocalDispatch, UpdateLocal) Fixed some bugs [I hope...] * src/insets/insetnumber.[Ch]: New files. * src/LyXAction.C (init) * src/lyxfunc.C (dispatch): Add command number-inset-insert * lyxrc.example * src/lyxrc.C: Renamed command \auto_mathmode to \number_inset * src/lyxparagraph.h * src/paragraph.C: Changed insetlist to Vector. (the vector is kept sorted). * src/text.C (GetVisibleRow): Draw selection correctly when there is both LTR and RTL text. * src/paragraph.C (Clone): Use the assignment operator for cloning, which is much faster. * src/text.C (GetVisibleRow and other): Do not draw the last space in a row if the direction of the last letter is not equal to the direction of the paragraph. * src/lyxfont.C (latexWriteStartChanges): Check that font language is not equal to basefont language. (latexWriteEndChanges): ditto * src/lyx_cb.C (StyleReset): Don't change the language while using the font-default command. * src/paragraph.C (GetFirstFontSettings): Handle correctly an empty paragraph before a footnote. * src/insets/insetcommand.C (draw): Increase x correctly. * src/screen.C (ShowCursor): Change cursor shape if current language != document language. * src/lyxfunc.C (dispatch): Added calls to owner->view()->setState() 2000-03-31 Juergen Vigna * src/paragraph.C (GetInset): commented out text[pos] = ' ' (Clone): changed mode how the paragraph-data is copied to the new clone-paragraph. * src/lyxfunc.C (Dispatch): fixed small problem when calling GetInset(pos) with no inset anymore there (in inset UNDO) * src/insets/insetcommand.C (draw): small fix as here x is incremented not as much as width() returns (2 before, 2 behind = 4) 2000-03-30 Juergen Vigna * src/insets/insettext.C (InsetText): small fix in initialize widthOffset (should not be done in the init() function) 2000-03-29 Amir Karger * lib/examples/it_ItemizeBullets.lyx: translation by Stefano Mastella * Implemented \textasciitilde and fixed a tiny bug in reLyX 2000-03-29 Juergen Vigna * src/insets/insetcollapsable.C (Clone): same as in InsetFoot * src/insets/insetfoot.C (Clone): small change as for the below new init function in the text-inset * src/insets/insettext.C (init): new function as I've seen that clone did not copy the Paragraph-Data! (LocalDispatch): Added code so that now we have some sort of Undo functionality (well actually we HAVE Undo ;) * src/text.C (Backspace): Small fix for the a | a Backspace problem 2000-03-24 Dekel Tsur * src/paragraph.C (AutoDeleteInsets) Fixed a bug (wrong positions were erased) 2000-03-22 Lars Gullik Bjønnes * src/main.C: added a runtime check that verifies that the xforms header used when building LyX and the library used when running LyX match. Exit with a message if they don't match. This is a version number check only. * src/buffer.C (save): Don't allocate memory on the heap for struct utimbuf times. * *: some using changes, use iosfwd instead of the real headers. * src/lyxfont.C use char const * instead of string for the static strings. Rewrite some functions to use sstream. 2000-03-28 Jean-Marc Lasgouttes * src/text.C (Backspace): hopefully fix the dreaded backaspace bug. 2000-03-27 Jean-Marc Lasgouttes * lib/layouts/svjog.layout: new file, for Springer-Verlag Journal of Geodesy (from Martin Vermeer) * lib/layouts/svjour.inc: include file for the Springer svjour class. It can be used to support journals other than JoG. * lib/Makefile.am: use $(DESTDIR) make variable (from Arkadiusz Miskiewicz ) * lib/reLyX/Makefile.am: ditto. 2000-03-27 Juergen Vigna * src/insets/insettext.C: added Cut/Copy/Paste inside insets, also some modifications with operations on selected text. * src/BufferView.C (checkInsetHit): Now hopefully fixed all the problems with clicking on insets (last famous words ;) * src/insets/insetcommand.C (draw): (width): Changed to have a bit of space before and after the inset so that the blinking cursor can be seen (otherwise it was hidden) 2000-03-22 Jean-Marc Lasgouttes * config/gettext.m4 (AM_WITH_NLS): fix a gettext bug where -lintl would not be added to the link list when an installed gettext (not part of libc) is found. 2000-03-24 Juergen Vigna * src/insets/insetcollapsable.C (Edit): * src/mathed/formula.C (InsetButtonRelease): (InsetButtonPress): fixed for new handling of ButtonPress/Release handling. * src/BufferView.C (workAreaButtonPress): (workAreaButtonRelease): (checkInsetHit): Finally fixed the clicking on insets be handled correctly! * src/insets/insetert.C (Edit): inserted this call so that ERT insets work always with LaTeX-font 2000-03-21 Kayvan A. Sylvan * src/lyx_main.C (easyParse): Removed misplaced gui=false which caused lyx to startup with no GUI in place, causing in a crash upon startup when called with arguments. 2000-03-21 Jean-Marc Lasgouttes * src/FontLoader.C: better initialization of dummyXFontStruct. 2000-03-20 José Abílio Matos * src/lyxrc.[Ch] Removed \sgml_extra_options, added 6 other flags for linuxdoc and docbook import and export format options. * lib/lyxrc.example Example of default values for the previous flags. * src/lyx_cb.C Use those flags instead of the hardwired values for linuxdoc and docbook export. * src/lyxfunc.[Ch] Added HTML export for linuxdoc and docbook, added linuxdoc import. * src/menus.C Added menus entries for the new import/exports formats. 2000-03-09 André Pönitz * src/lyxrc.*: Added support for running without Gui (\use_gui false) * src/FontLoader.C: sensible defaults if no fonts are needed * src/lyx_cb.C: New function ShowMessage (writes either to the minibuffer or cout in case of no gui New function AskOverwrite for common stuff Consequently various changes to call these functions * src/lyx_main.C: allow gui = false and handle lyxrc \use_gui false wild guess at sensible screen resolution when having no gui * src/lyxfont.C: no gui, no fonts... set some defaults 2000-03-20 Jean-Marc Lasgouttes * src/LColor.C: made the command inset background a bit lighter. 2000-03-20 Hartmut Goebel * lib/layouts/stdstruct.inc: split into stdtitle.inc and stdstruct.inc. Koma-Script added some title elements which otherwise have been listed below "bibliography". This split allows adding title elements to where they belong. * lib/layouts/scrclass.inc: changed to include stdtitle.inc, then define the additional tilte elements and then include stdstruct.inc. * many other layout files: changed to include stdtitle.inc just before stdstruct.inc. 2000-03-18 Dekel Tsur * src/buffer.C: (save) Added the option to store all backup files in a single directory * src/lyxrc.[Ch]: Added variable \backupdir_path * lib/lyxrc.example: Added descriptions of recently added variables * src/insets/insetbib.[Ch]: Fixed few bugs (crash when editing a bibtex inset, not closing the bibtex popup when deleting the inset) 2000-03-17 Jean-Marc Lasgouttes * src/lyx_cb.C: add a couple using directives. 2000-03-17 José Abílio Matos * src/lyx_cb.C (RunLinuxDoc) Removed the flag==-1 option for linuxdoc import based on the filename. * src/bufferlist.C () Removed the call to RunLinuxDoc where a linuxdoc file would be imported at start, if the filename where of a sgml file. * src/support/filetools.C (IsSGMLfilename) Removed, no longer needed. * src/support/filetools.h (IsSGMLfilename) Removed, no longer needed. 2000-03-16 Dekel Tsur * src/lyxfont.h Replaced the member variable bits.direction by the member variable lang. Made many changes in other files. This allows having a multi-lingual document * src/lyxfunc.C, src/lyx_cb.C Added a new command "language " that change the current language to . Removed the command "font-rtl" * src/buffer.C Changed LYX_FORMAT to 2.16 (as I changed the file format for Hebrew documents) * src/lyxrc.C, src/lyxfunc.C Added a new lyxrc command "auto_mathmode" When auto_mathmode is "true", pressing a digit key in normal mode will cause entering into mathmode. If auto_mathmode is "rtl" then this behavior will be active only when writing right-to-left text. * src/text2.C (InsertStringA) The string is inserted using the current font. * src/paragraph.C (GetEndLabel) Gives a correct result for footnote paragraphs. * src/paragraph.C (PreviousBeforeFootnote) Fixed a small bug 2000-03-16 Lars Gullik Bjønnes * src/text.C (Backspace): move RemoveParagraph and RemoveRow in front of PasteParagraph. Never insert a ' '. This should at least fix some cause for the segfaults that we have been experiencing, it also fixes backspace behaviour slightly. (Phu!) * src/support/lstrings.C (compare_no_case): some change to make it compile with gcc 2.95.2 and stdlibc++-v3 * src/text2.C (MeltFootnoteEnvironment): change type o first_footnote_par_is_not_empty to bool. * src/lyxparagraph.h: make text private. Changes in other files because of this. (fitToSize): new function (setContentsFromPar): new function (clearContents): new function (SetChar): new function * src/paragraph.C (readSimpleWholeFile): deleted. * src/lyx_cb.C (InsertAsciiFile): don't use a LyXParagraph to hold the file, just use a simple string instead. Also read the file in a more maintainable manner. * src/text2.C (InsertStringA): deleted. (InsertStringB): deleted. 2000-03-15 Lars Gullik Bjønnes * src/text2.C (DeleteEmptyParagraphMechanism): don't run, RedoParagraphs from the doublespace handling part, just set status to NEED_MORE_REFRESH. Also don't update cursor position (should be done, but perhaps not like this.) 2000-03-14 Jean-Marc Lasgouttes * src/text2.C (InsertStringA): don't forget to insert a META_INSET character when inserting an inset. 2000-03-12 Lars Gullik Bjønnes * src/bufferparams.C (readLanguage): now takes "default" into consideration. * src/lyx_main.C (LyX): remove the setup of lyxrc. (new) also initialize the toplevel_keymap with the default bindings from lyxrc. * src/buffer.C (Buffer): remove lyxrc from the parameters. * all files using lyxrc: have lyxrc as a real variable and not a pointer. remove all extern LyXRC * lyxrc. The equiv to this is done in lyxrc.h. * src/lyxrc.C: remove double call to defaultKeyBindings * src/toolbar.[Ch]: Let the ToolbarDefaults handle the reading of toolbar defauls using lyxlex. Remove enums, structs, functions related to this. * src/lyxrc.h: use ToolbarDefaults instead of Toolbar for storing toolbar defaults. Also store default keybindings in a map. * src/ToolbarDefaults.[Ch]: New file. This class is used for storing the toolbar defaults without any xforms dependencies. * src/insets/figinset.C: patch posted to list by Andre Poenitz applied. Changed to use iterators. 2000-03-11 Kayvan A. Sylvan * development/lyx.spec.in: Fix to ``unset LINGUAS'' line for systems that don't have LINGUAS set to begin with. 2000-03-10 Lars Gullik Bjønnes * src/text2.C (DeleteEmptyParagraphMechanism): small fix posted to the list by Dekel Tsur. 2000-03-10 Jean-Marc Lasgouttes * src/insets/insetgraphics.C (GraphicxCB): declare with "C" linkage. * src/insets/form_graphics.C: ditto. * src/insets/inseturl.C (Latex): the free_spc argument is not used. 2000-03-10 Lars Gullik Bjønnes * src/bufferparams.C (readLanguage): use the new language map * src/intl.C (InitKeyMapper): use the new language map * src/lyx_gui.C (create_forms): use the new language map * src/language.[Ch]: New files. Used for holding the information about each language. Now! Use this new language map enhance it and make it really usable for our needs. 2000-03-09 Dekel Tsur * screen.C (ShowCursor): Removed duplicate code. (ShowManualCursor): Support for 3 cursor shapes: Bar (default), L (LTR text in RTL document), and reversed-L (RTL text in LTR document) * src/text.C (NextBreakPoint,Fill): Moved declaration of left_margin * src/lyxtext.h * src/text.C Added TransformChar method. Used for rendering Arabic text correctly (change the glyphs of the letter according to the position in the word) * src/buffer.C * src/paragraph.C * src/lyxrc.h * src/lyxrc.C Added lyxrc command {language_command_begin, language_command_end,language_command_ltr,language_command_rtl, language_package} which allows the use of either arabtex or Omega for Arabic * src/lyx_gui.C (init) * src/lyxrc.h * src/lyxrc.C Added lyxrc command screen_font_encoding_menu. Allows to use encoding for menu fonts which is different than the encoding for screen fonts * src/buffer.C (makeLaTeXFile): If params.language = "default", do not load the babel package. To write an English document with Hebrew/Arabic, change the document language to "english". * src/text2.C (SetCounter): Fixed appendix labels for Hebrew document (alphaCounter): changed to return char (loweralphaCounter, hebrewCounter, romanCounter): New functions * lib/lyxrc.example Added examples for Hebrew/Arabic * src/layout.h * src/layout.C Added layout command endlabeltype * src/paragraph.C Added GetEndLabel(),LastPhysicalPar() const * src/text.C (GetVisibleRow): Draw a box at the end of proof layout 2000-03-10 Lars Gullik Bjønnes * src/mathed/math_delim.C (search_deco): return a math_deco_struct* instead of index. 2000-03-09 Lars Gullik Bjønnes * All files with a USE_OSTREAM_ONLY within: removed all code that was unused when USE_OSTREAM_ONLY is defined. * src/support/lyxalgo.h (sorted): rewrote to use plain '<' instead of any less. Removed header and using. * src/text.C (GetVisibleRow): draw the string "Page Break (top/bottom)" on screen when drawing a pagebreak line. 2000-03-09 Jean-Marc Lasgouttes * lib/doc/LaTeXConfig.lyx.in: add description of textclass llncs. * src/mathed/math_macro.C (draw): do some cast magic. (Metrics): ditto. * src/mathed/math_defs.h: change byte* argument to byte const*. * src/mathed/formulamacro.[Ch]: add free_spc to Latex() method. * src/insets/insetfoot.[Ch]: Clone() always returns an Inset* (well I know it is right to return InsetFoot* too, but cxx does not like it...). * src/insets/insetcollapsable.[Ch] (Clone): make const. * development/lyx.spec.in: unset LINGUAS to avoid i18n problems. * src/mathed/math_delim.C: change == to proper assignment. 2000-03-09 Juergen Vigna * src/insets/insettext.C (setPos): fixed various cursor positioning problems (via mouse and cursor-keys) (LocalDispatch): added posibility to add a Ctrl-Enter inside a text inset (still a small display problem but it works ;) * src/insets/insetcollapsable.C (draw): added button_top_y and button_bottom_y to have correct values for clicking on the inset. * src/support/lyxalgo.h: commented out 'using std::less' 2000-03-08 Juergen Vigna * src/insets/insetcollapsable.C (InsetButtonRelease): Now a Button-Release event closes as it is alos the Release-Event which opens it. * src/lyxfunc.C (Dispatch): forgot a break in the LFUN_INSET_ERT 2000-03-07 Kayvan A. Sylvan * lib/layouts/literate-scrap.inc: Fixed initial comment. Now we can add multiple spaces in Scrap (literate programming) styles... which, by the way, is how I got hooked on LyX to begin with. * src/mathed/formula.C (Write): Added dummy variable to an inset::Latex() call. (Latex): Add free_spacing boolean to inset::Latex() * src/mathed/formula.h (Latex): Added free_spacing boolean arg. * src/insets/lyxinset.h: Changed definition of the inset::Latex() virtual function to include the free_spacing boolean from the containing paragraph's style. * src/insets/inseturl.C, src/insets/inseturl.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insettext.C, src/insets/insettext.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetspecialchar.C, src/insets/insetspecialchar.h (Latex): Added free_spacing boolean and made sure that if in a free_spacing paragraph, that we output normal space if there is a protected space. * src/insets/insetref.C, src/insets/insetref.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetquotes.C, src/insets/insetquotes.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetparent.C, src/insets/insetparent.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetlatexaccent.C, src/insets/insetlatexaccent.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetlatex.C, src/insets/insetlatex.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetlabel.C, src/insets/insetlabel.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetinfo.C, src/insets/insetinfo.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetinclude.C, src/insets/insetinclude.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetgraphics.C, src/insets/insetgraphics.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/inseterror.C, src/insets/inseterror.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetcommand.C, src/insets/insetcommand.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/insetbib.C, src/insets/insetbib.h (Latex): Added free_spacing boolean arg to match inset.h * src/insets/figinset.C, src/insets/figinset.h (Latex): Added free_spacing boolean arg to match inset.h * src/text2.C (DeleteEmptyParagraphMechanism): Fix this to ignore free_spacing paragraphs. The user's spaces are left alone. * src/text.C (InsertChar): Fixed the free_spacing layout attribute behavior. Now, if free_spacing is set, you can add multiple spaces in a paragraph with impunity (and they get output verbatim). (SelectSelectedWord): Added dummy argument to inset::Latex() call. * src/paragraph.C (TeXOnePar): Added dummy args to inset::Latex(...) calls. * src/lyxfunc.C (Dispatch): Hard-spaces input in free_spacing paragraph layouts now only input a simple space instead. Special character insets don't make any sense in free-spacing paragraphs. * src/buffer.C (parseSingleLyXformat2Token): Code to convert hard-spaces in the *input* file to simple spaces if the layout is free-spacing. This converts old files which had to have hard-spaces in free-spacing layouts where a simple space was preferrable. (writeFileAscii): Added free_spacing check to pass to the newly reworked inset::Latex(...) methods. The inset::Latex() code ensures that hard-spaces in free-spacing paragraphs get output as spaces (rather than "~"). 2000-03-09 Lars Gullik Bjønnes * src/mathed/math_delim.C (draw): draw the empty placeholder delims with a onoffdash line. (struct math_deco_compare): struct that holds the "functors" used for the sort and the binary search in math_deco_table. (class init_deco_table): class used for initial sort of the math_deco_table. (search_deco): use lower_bound to do a binary search in the math_deco_table. 2000-03-08 Lars Gullik Bjønnes * src/lyxrc.C: a small secret thingie... * src/lyxlex.C (printTable): changed to take a ostream as paramter and to not flush the stream as often as it used to. * src/support/lyxalgo.h: new file (sorted): template function used for checking if a sequence is sorted or not. Two versions with and without user supplied compare. Uses same compare as std::sort. * src/lyxlex.C (LyXLex): check if the table is sorted, if not sort it and give warning on lyxerr. (pushTable): ditto (struct compare_tags): struct with function operators used for checking if sorted, sorting and lower_bound. (search_kw): use lower_bound instead of manually implemented binary search. 2000-03-08 Jean-Marc Lasgouttes * src/insets/insetcollapsable.h: fix Clone() declaration. * src/insets/insetfoot.h: ditto. * src/insets/lyxinset.h: remove an extra comma at the end of enum. 2000-03-08 Juergen Vigna * src/insets/lyxinset.h: added owner call which tells us if this inset is inside another inset. Changed also the return-type of Editable to an enum so it tells clearer what the return-value is. * src/insets/insettext.C (computeTextRows): fixed computing of textinsets which split automatically on more rows. * src/insets/insetert.[Ch]: changed this to be of BaseType InsetCollapsable. * src/insets/insetfoot.[Ch]: added footnote inset * src/insets/insetcollapsable.[Ch]: added this BaseClass for collapsable insets (like footnote, ert, ...) 2000-03-08 Lars Gullik Bjønnes * src/lyxdraw.h: remvoe file * src/lyxdraw.C: remove file * src/insets/insettext.C: added . 2000-03-07 Lars Gullik Bjønnes * src/mathed/math_panel.C (delim_cb): case MM_OK use string stream (matrix_cb): case MM_OK use string stream * src/mathed/formula.C (LocalDispatch): case LFUN_SETXY use string stream. * src/mathed/math_macro.C (draw): use string stream (Metrics): use string stream * src/paragraph.C (TeXFootnote): for case LyXParagraph::FIG, write directly to the ostream. * src/vspace.C (asString): use string stream. (asString): use string stream (asLatexString): use string stream * src/lyx_cb.C (UpdateLayoutDocument): use string stream for setting Spacing::Other. * src/LaTeXFeatures.C (getPackages): use string stream instead of sprintf when creating the stretch vale. * src/text2.C (alphaCounter): changed to return a string and to not use a static variable internally. Also fixed a one-off bug. (SetCounter): changed the drawing of the labels to use string streams instead of sprintf. * src/support/lyxmanip.h: rewrite the newlineanDepth ostream manipulator to use a scheme that does not require library support. This is also the way it is done in the new GNU libstdc++. Should work with DEC cxx now. 2000-03-06 Lars Gullik Bjønnes * src/mathed/math_inset.h (Write(ostream & os): add a space at the end. This fixes a bug. * src/mathed (all files concerned with file writing): apply the USE_OSTREAM_ONLY changes to mathed too. * src/support/DebugStream.h: make the constructor explicit. * src/lyxfont.C (latexWriteStartChanges): small bug related to count and ostream squashed. 2000-03-06 Jean-Marc Lasgouttes * src/support/Makefile.am (libsupport_la_SOURCES): add lyxmanip.h. * src/buffer.C (makeLaTeXFile): add a .c_str(), since ostringstream uses STL strings, and we might not. * src/insets/insetspecialchar.C: add using directive. * src/insets/insettext.C: ditto. 2000-03-06 Lars Gullik Bjønnes * lib/layouts/seminar.layout: feeble attempt at a layout for seminar.cls, far from completet and could really use some looking at from people used to write layout files. * src/support/lyxmanip.h (newlineAndDepth): ostream manipulator to use instead of the AddNewlineAndDepth funtion in lyx_cb.C. This is a lot nicer and works nicely with ostreams. * src/mathed/formula.C (draw): a slightly different solution that the one posted to the list, but I think this one works too. (font size wrong in headers.) * src/insets/insettext.C (computeTextRows): some fiddling on Jürgens turf, added some comments that he should read. * src/lyxrc.C: remove all traces of RC_NOMENUACCELERATORS, never used and it gave compiler warnings. RC_SHOW_BANNER + "\\show_banner" added, also to reading and writing of lyxrc. * src/lyx_gui.C (create_forms): do the right thing when show_banner is true/false. * src/lyx_cb.C (TimerCB): no need to close or do anything if show_banner is false. * most file writing files: Now use iostreams to do almost all of the writing. Also instead of passing string &, we now use stringstreams. mathed output is still not adapted to iostreams. This change can be turned off by commenting out all the occurences of the "#define USE_OSTREAM_ONLY 1" lines. * src/WorkArea.C (createPixmap): don't output debug messages. (WorkArea): don't output debug messages. * lib/lyxrc.example: added a comment about the new variable \show_banner * development/Code_rules/Rules: Added some more commente about how to build class interfaces and on how better encapsulation can be achieved. 2000-03-03 Juergen Vigna * src/insets/insetert.C (InsetERT): Now ERT-insets break row automatically with the width of the LyX-Window * src/insets/insettext.C (computeTextRows): fixed update bug in displaying text-insets (scrollvalues where not initialized!) 2000-03-02 Lars Gullik Bjønnes * src/mathed/math_utils.C (MathedLookupBOP): using only res->id == id in the check of the result from lower_bound is not enough since lower_bound can return last too, and then res->id will not be a valid construct. * all insets and some code that use them: I have conditionalized removed the Latex(string & out, ...) this means that only the Latex(ostream &, ...) will be used. This is a work in progress to move towards using streams for all output of files. * src/text.C (GetColumnNearX): initialize LyXParagraph::size_type c to 0. 2000-03-02 Jean-Marc Lasgouttes * src/mathed/math_utils.C (MathedLookupBOP): fix the search routine (this fixes bug where greek letters were surrounded by too much white space). * src/support/filetools.C (findtexfile): change a bit the search algorithm, to fix bug introduced in 1.1.4. Note that --format is no longer passed to kpsewhich, we may have to change that later. * config/lyxinclude.m4 (LYX_PROG_CXX): better version-dependent warning options to avoid problems with X header files (from Angus Leeming). * acinclude.m4: regenerated. 2000-03-02 Juergen Vigna * src/insets/insettext.C (WriteParagraphData): Using the par->writeFile() function for writing paragraph-data. (Read): Using buffer->parseSingleLyXformat2Token()-function for parsing paragraph data! * src/buffer.C (readLyXformat2): removed all parse data and using the new parseSingleLyXformat2Token()-function. (parseSingleLyXformat2Token): added this function to parse (read) lyx-file-format (this is called also from text-insets now!) 2000-03-01 Lars Gullik Bjønnes * src/paragraph.C (BeginningOfMainBody): initialize previous_char and temp. * src/lyxfunc.C (Dispatch(LFUN_MENUSEARCH)): Do the Search dialog directly instead of going through a func. One very bad thing: a static LyXFindReplace, but I don't know where to place it. * src/lyxfr1.C (GetCurrentSelectionAsString): rewritten to use a string instead of char[]. Also changed to static. (GetSelectionOrWordAtCursor): changed to static inline (SetSelectionOverLenChars): ditto. * src/lyxfr0.[Ch] src/lyxfr1.[Ch]: rewrite to get rid of current_view and global variables. both classes has changed names and LyXFindReplace is not inherited from SearchForm. * src/lyx_gui_misc.C (CloseAllBufferRelatedPopups): remove the fl_form_search form. * src/lyx_gui.C (create_forms): removed the fl_form_search form. 2000-03-01 Jean-Marc Lasgouttes * lib/bind/*.bind: make sure 'buffer-previous' function is not bound (from Kayvan). * src/insets/Makefile.am (libinsets_la_SOURCES): add BoundingBox.h. * lib/layouts/stdletter.inc: fix line spacing in Send_To_Address. 2000-03-01 Lars Gullik Bjønnes * some things that I should comment but the local pub says head to swirly... * comment out all code that belongs to the Roff code for Ascii export of tables. (this is unused) * src/LyXView.C: use correct type for global variable current_layout. (LyXTextClass::size_type) * some code to get the new insetgraphics closer to working I'd be grateful for any help. * src/BufferView2.C (insertInset): use the return type of NumberOfLayout properly. (also changes in other files) * src/insets/insetspecialchar.[Ch]: add the PROTECTED SEPARATOR to this as a test. I want to know what breaks because of this. * src/BufferView.[Ch] (tripleClick): name change from trippleClick. 2000-02-29 Lars Gullik Bjønnes * lib/layouts/stdlists.inc: changed the lyxlist latex definition to use a \makebox in the label, this allows proper justification with out using protected spaces or multiple hfills. Now it is "label" for left justified, "\hfill label\hfill" for center, and "\hfill label" for right justified. UserGuide.lyx sec. 3.3.6.5 should be changed accordingly. 2000-02-28 Jean-Marc Lasgouttes * src/lyxtext.h: change SetLayout() to take a LyXTextClass::size_type instead of a char (when there is more than 127 layouts in a class); also change type of copylayouttype. * src/text2.C (SetLayout): ditto. * src/LyXView.C (updateLayoutChoice): ditto. * src/LaTeX.C (scanLogFile): errors where the line number was not given just after the '!'-line were ignored (from Dekel Tsur). * lib/lyxrc.example: fix description of \date_insert_format * lib/layouts/llncs.layout: new layout, contributed by Martin Vermeer. 2000-02-25 Lars Gullik Bjønnes * config/lyxinclude.m4 (LYX_PROG_CXX): remove case support for gcc 2.7.* and add case support for gcc 2.96*. Gcc 2.96 only exists in cvs at gcc.gnu.org (currently it fails with ICE on insetbib.C, insetindex.C, insetloa.C, insettext.C, filetools.C, BufferView.C, BufferView2.C, LyXView.C, buffer.C, lyx_cb.C, lyxfunc.C, paragraph.C, text.C, text2.C) 2000-02-25 Jean-Marc Lasgouttes * src/insets/insettext.C (LocalDispatch): remove extra break statement. * src/insets/insetert.[Ch] (Clone): change return value to Inset* * src/insets/insettext.[Ch] (Clone): change return value to Inset* * src/mathed/formulamacro.[Ch] (draw): add missing const qualifier * src/insets/insettext.[Ch] (GetCursorPos): ditto * src/insets/insetbib.h: move InsetBibkey::Holder and InsetCitation::Holder in public space. 2000-02-25 Lars Gullik Bjønnes * src/insets/insettext.h: small change to get the new files from Juergen to compile (use "string", not "class string"). * src/insets/insettext.[Ch], src/insets/insertert.[Ch]: use string const & as parameter to LocalDispatch, use LyXFont const & as paramter to some other func. This also had impacto on lyxinsets.h and the two mathed insets. 2000-02-24 Juergen Vigna * src/buffer.C: * src/commandtags.h: * src/LyXAction.C: * src/lyxfunc.C: added code for LFUN_INSET_ERT and LFUN_INSET_TEXT * src/BufferView.h * src/BufferView.C * src/BufferView2.C: added/updated code for various inset-functions * src/insets/insetert.[Ch]: added implementation of InsetERT * src/insets/insettext.[Ch]: added implementation of InsetText * src/insets/inset.C (Edit): added "unsigned int button" parameter (draw): added preliminary code for inset scrolling not finshed yet * src/insets/inset.C (LocalDispatch): changed arg parameter to string as it is in lyxfunc.C now * src/insets/lyxinset.h: Added functions for text-insets 2000-02-22 Lars Gullik Bjønnes * src/lyx_cb.C src/UpdateInset.[Ch]: move the updateinsetlist into BufferView and reimplement the list as a queue put inside its own class. * src/bufferlist.[Ch] (updateInset): remove func, not needed. * several files: use the new interface to the "updateinsetlist" * src/WorkArea.C (work_area_handler): call BufferView::doubleClick on doubleclick. (work_area_handler): call BufferView::trippleClick on trippleclick. * src/BufferView.C (doubleClick): new function, selects word on doubleclick. (trippleClick): new function, selects line on trippleclick. 2000-02-22 Allan Rae * lib/bind/xemacs.bind: buffer-previous not supported 2000-02-21 Jean-Marc Lasgouttes * src/insets/insettoc.[Ch] (LinuxDoc, DocBook): mark the methods as const. 2000-02-20 Lars Gullik Bjønnes * src/bufferlist.C: get rid of current_view from this file * src/spellchecker.C: get rid of current_view from this file * src/vspace.C: get rid of current_view from this file (inPixels): added BufferView parameter for this func (asLatexCommand): added a BufferParams for this func * src/text.C src/text2.C: get rid of current_view from these files. * src/lyxfont.C (getFontDirection): move this function here from text.C * src/bufferparams.C (getDocumentDirection): move this function here from text.C * src/paragraph.C (getParDirection): move this function here from text.C (getLetterDirection): ditto 2000-02-18 Lars Gullik Bjønnes * WorkArea, Painter, LyXScreen: Fixed the crash that occured on resize due to wrong pixmap beeing used. Also took the opurtunity to make the LyXScreen stateless on regard to WorkArea and some general cleanup in the same files. 2000-02-17 Lars Gullik Bjønnes * src/Makefile.am: add missing direction.h * src/PainterBase.h: made the width functions const. * lib/kbd/iso8859-1.cdef: fix a couple of entries and define some missing ones. * src/insets/insetcommand.C (draw): draw Editable as buttons. * src/insets/insetlatexaccent.C (draw): make the accents draw better, at present this will only work well with iso8859-1. * several files: remove the old drawing code, now we use the new painter only. * several files: remove support for mono_video, reverse_video and fast selection. 2000-02-17 Juergen Vigna * src/mathed/math_cursor.[Ch] (SelGetArea): Changed form int * to int ** as we have to return the pointer, otherwise we have only NULL pointers in the returning function. 2000-02-16 Jean-Marc Lasgouttes * src/LaTeX.C (operator()): quote file name when running latex. 2000-02-15 Lars Gullik Bjønnes * src/toolbar.C (set): use fl_set_object_helper for the tooltop (bubble tip), this removes our special handling of this. * Remove all code that is unused now that we have the new workarea. (Code that are not active when NEW_WA is defined.) * Make the uses of XSync not conditionalized on define USE_XSYNC. 2000-02-15 Jean-Marc Lasgouttes * src/lyxfunc.C (Dispatch): fix LFUN_LAYOUT when giving a nonexisting layout; correctly redirect obsoleted layouts. * lib/lyxrc.example: document \view_dvi_paper_option * src/lyxrc.[Ch]: add support for the \view_dvi_paper_option variable. * src/lyx_cb.C (RunScript): handle $$FName for command names. (PreviewDVI): handle the view_dvi_paper_option variable. [Both from Roland Krause] 2000-02-14 Lars Gullik Bjønnes * src/Painter.C (text(int,int,char,LyXFont)): call text(int, int, char const *, int, LyXFont) (text(int, int, string, LyXFont)): ditto * src/text.C (InsertCharInTable): attempt to fix the double-space feature in tables too. (BackspaceInTable): ditto. (GetVisibleRow): make bottom pagebreak line be a onoff line. 2000-02-11 Lars Gullik Bjønnes * src/text2.C (owner): only complain if owner_ is set and bv != 0 * src/BufferView.C (resizeCurrentBuffer): set the owner of the newly found text in textcache to this. (buffer): set the owner of the text put into the textcache to 0 * src/insets/figinset.C (draw): fixed the drawing of figures with the new Painter. * src/text.C src/mathed/math_cursor.C: nailed and fixed the drawing of mathframe, hfills, protected space, table lines. I have now no outstanding drawing problems with the new Painter code. 2000-02-11 Jean-Marc Lasgouttes * src/PainterBase.C (ellipse, circle): do not specify the default arguments. * src/LColor.h: add using directive. * src/Painter.[Ch]: change return type of methods from Painter& to PainterBase&. Add a using directive. * src/WorkArea.C: wrap xforms callbacks in C functions C_WorkArea_xxx. * lib/layouts/foils.layout: font fix and simplifications from Carl Ollivier-Gooch. 2000-02-10 Lars Gullik Bjønnes * a lot of files: The Painter, LColor and WorkArea from the old devel branch has been ported to lyx-devel. Some new files and a lot of #ifdeffed code. The new workarea is enabled by default, but if you want to test the new Painter and LColor you have to compile with USE_PAINTER defined (do this in config.h f.ex.) There are still some rought edges, and I'd like some help to clear those out. It looks stable (loads and displays the Userguide very well). 2000-02-10 Jean-Marc Lasgouttes * src/buffer.C (pop_tag): revert to the previous implementation (use a global variable for both loops). * lib/kbd/iso8859-1.cdef: fix definition for \"{e}. * src/lyxrc.C (LyXRC): change slightly default date format. * src/paragraph.C (TeXOnePar): Generate a correct latex file when there is an English text with a footnote that starts with a Hebrew paragraph, or vice versa. (TeXFootnote): ditto. * src/text.C (LeftMargin): allow for negative values for parindent. Thanks to Philip Lehman for testing this out. * src/lyx_gui.C (create_forms): add iso88595 as a possible choice for input encoding (cyrillic) 2000-02-08 Jean-Marc Lasgouttes * src/lyx_gui.C (create_forms): make combo box taller (from Dekel Tsur). * src/toolbar.C (set): ditto * src/insets/insetbib.C (create_form_citation_form): ditto * lib/CREDITS: added Dekel Tsur. * lib/kbd/hebrew.kmap, lib/kbd/null.kmap, lib/layouts/heb-article.layout, lib/layouts/heb-letter.layout: new hebrew supports files from Dekel Tsur. * lib/kbd/iso8859-8.cdef: new file, from Tzafrir Cohen * src/lyxrc.C: put \date_insert_format at the right place. * src/buffer.C (makeLaTeXFile): fix the handling of BufferParams::sides when writing out latex files. * src/BufferView2.C: add a "using" directive. * src/support/lyxsum.C (sum): when we use lyxstring, ostringstream::str needs an additional .c_str(). 2000-02-07 Lars Gullik Bjønnes * src/support/filetools.C (ChangeExtension): patch from Etienne applied. * src/TextCache.C (show): remove const_cast and make second parameter non-const LyXText *. * src/TextCache.h: use non const LyXText in show. * src/paragraph.C (SimpleTeXSpecialChars): patch to make urls work with hebrew. 2000-02-04 Lars Gullik Bjønnes * src/support/lyxsum.C: rework to be more flexible. * several places: don't check if a pointer is 0 if you are going to delete it. * src/text.C: remove some dead code. * src/insets/figinset.C: remove some dead code * src/buffer.C: move the BufferView funcs to BufferView2.C remove all support for insetlatexdel remove support for oldpapersize stuff made some member funcs const * src/kbmap.C: use a std::list to store the bindings in. * src/BufferView2.C: new file * src/kbsequence.[Ch]: new files * src/LyXAction.C + others: remove all trace of buffer-previous * src/Bullet.[Ch]: moved ITEMIZE_DEFAULTS inside Bullet.C so that we only have one copy in the binary of this table. * hebrew patch: moved some functions from LyXText to more appropriate places. (LyXParagraph, BufferParams, LyXFont) * several files: remove support for XForms older than 0.88 whitespace changes. remove some #if 0 #endif code * src/TextCache.[Ch]: new file. Holds the textcache. * src/BufferView.C: changes to use the new TextCache interface. (waitForX): remove the now unused code. * src/BackStack.h: remove some commented code * lib/bind/emacs.bind: remove binding for buffer-previous 2000-02-03 Lars Gullik Bjønnes * applied the hebrew patch. * src/lyxrow.h: make sure that all Row variables are initialized. * src/text2.C (TextHandleUndo): comment out a delete, this might introduce a memory leak, but should also help us to not try to read freed memory. We need to look at this one. * src/paragraph.C (SimpleDocBookOneTablePar): initialize column to 0 (LyXParagraph): initalize footnotekind. * src/lyxrc.C (output): added case RC_DATE_INSERT_FORMAT. Jug forgot this when applying the patch. Please heed the warnings. * src/BufferView.C (buffer): a fix for the buffer-reload problem (aka. reformat problem) * src/bufferlist.C (exists): made const, and use const_iterator (isLoaded): new func. (release): use std::find to find the correct buffer. * src/bufferlist.h: made getState a const func. made empty a const func. made exists a const func. new func: isLoaded 2000-02-01 Juergen Vigna * src/lyxfunc.C lyxrc.C: changed from insert-date to date-insert * po/it.po: updated a bit the italian po file and also changed the 'file nuovo' for newfile to 'filenuovo' without a space, this did annoy me a lot :) * src/lyxrc.C (LyXRC): added support for a default insert_date_format for the new insert_date command. * src/lyxfunc.C (Dispatch): added support for a insert_date function from jdblair, to insert a date into the current text conforming to a strftime format (for now only considering the locale-set and not the document-language). 2000-01-28 Jean-Marc Lasgouttes * src/lyxfont.C (textWidth): hopefully better fix for the Array Bounds Read error seen by purify. The problem was that islower is a macros which takes an unsigned char and uses it as an index for in array of characters properties (and is thus subject to the above error). (drawText): ditto. * src/lyx_cb.C (UpdateLayoutDocument): use a switch to set correctly the paper sides radio buttons. (UpdateDocumentButtons): ditto. 2000-01-27 Lars Gullik Bjønnes * src/kbmap.C (getsym + others): change to return unsigned int, returning a long can give problems on 64 bit systems. (I assume that int is 32bit on 64bit systems) 2000-01-27 Jean-Marc Lasgouttes * src/lyxfunc.C (processKeyEvent): fix a the buffer returned by LyXLookupString to be zero-terminated. Really fixes problems seen by purify, I think. 2000-01-27 Lars Gullik Bjønnes * src/lyxfunc.C (processKeyEvent): "fix" so that we never try to write a (char*)0 to the lyxerr stream. * src/lastfiles.C: move algorithm before the using statemets. 2000-01-26 Jean-Marc Lasgouttes * src/lastfiles.C: move using directives in global scope (egcs 1.x complains otherwise). * src/table.C: ditto * lib/reLyX/reLyX.in: use variable @LYX_DIR@ as built-in data directory. * lib/reLyX/configure.in (LYX_DIR): re-introduce this variable that I removed earlier... It is really needed. * lib/examples/multicol.lyx: new file, splitted from Extended.lyx. 2000-01-25 Jean-Marc Lasgouttes * INSTALL: update xforms home page URL. * lib/configure.m4: fix a bug with unreadable layout files. * src/table.C (calculate_width_of_column): add "using std::max" directive. 2000-01-25 Lars Gullik Bjønnes * several files: marked several lines with "DEL LINE", this is lines that can be deleted without changing anything. if () // DEL LINE /* this line is _never_ needed. Delete checks this anyway */ delete * src/insets/insetlatexaccent.C: Changed some debugs to Debug::KEY * src/DepTable.C (update): add a "+" at the end when the checksum is different. (debugging string only) * src/paragraph.C (ReturnNextInsetPointer): fix bug that caused the next inset to not be displayed. This should also fix the list of labels in the "Insert Crossreference" dialog. 2000-01-24 Lars Gullik Bjønnes * src/support/LSubstring.C (LSubstring): set pos to string::npos when regex was not found. * src/support/lstrings.C (lowercase): use handcoded transform always. (uppercase): ditto * src/text.C (Delete): fixed the crash. cursor.par->prev and old_cursor.par->prev could be 0. * several files: changed post inc/dec to pre inc/dec * src/lastfiles.C (writeFile): use ostream_iterator and copy to write the lastfiles to file. * src/BufferView.C (buffer): only show TextCache info when debugging (buffer): ditto (resizeCurrentBuffer): ditto (workAreaExpose): ditto * lib/kbd/iso8859-7.cdef: changed to new quoting scheme * lib/kbd/iso8859-2.cdef: changed to new quoting scheme * src/insets/insetlatexaccent.C (Draw): make the display of UMLAUT a bit better by removing the special case for \i and \j. 2000-01-24 Jean-Marc Lasgouttes * src/lyx_main.C (easyParse): remove test for bad comand line options, since this broke all xforms-related parsing. * src/kbmap.C (getsym): set return type to unsigned long, as declared in header. On an alpha, long is _not_ the same as int. * src/support/LOstream.h: add a "using std::flush;" * src/insets/figinset.C: ditto. 2000-01-21 Lars Gullik Bjønnes * src/bufferlist.C (write): use blinding fast file copy instead of "a char at a time", now we are doing it the C++ way. * src/insets/figinset.C: get rid of struct pidwaitpit, use a std::list instead. (addpidwait): reflect move to std::list (sigchldchecker): ditto * src/bmtable.c (fl_set_bmtable_file): have arguments in the X r5 version also. * src/paragraph.C (FirstPhysicalPar): remove assert and comment that obviously was wrong... * src/lyxfont.C (textWidth): have c as char c[2] instead of char c, this avoids warnings with purify and islower. * src/insets/figinset.C: rename struct queue to struct queue_element and rewrite to use a std::queue. gsqueue is now a std::queue (runqueue): reflect move to std::queue (addwait): ditto * src/support/lstrings.h (tostr): specialize for bool, otherwise we would get "1" "0" instead of "true" "false. Also make the tostr functions inline. 2000-01-21 Juergen Vigna * src/buffer.C (writeFileAscii): Disabled code for special groff handling of tabulars till I fix this in table.C 2000-01-21 Jean-Marc Lasgouttes * src/support/mkdir.C (mkdir): change second argument of mkdir to unsigned long int. * src/support/lyxlib.h: ditto. 2000-01-20 Lars Gullik Bjønnes * src/insets/insetlatexaccent.C (Draw): make accents on top of 'i' and 'j' look better. This might fix the "macron" bug that has been observed. * src/support/lstrings.[Ch] (tostr): reimplement all the tostr functions as one template function. Delete the old versions. * src/support/lyxsum.C: move using std::ifstream inside MODERN_STL_STREAMS * src/support/Makefile.am (libsupport_la_SOURCES): added mkdir.C and putenv.C * src/mathed/formulamacro.C: delete #include "bufferlist.h" never used * src/mathed/formula.C: delete #include "bufferlist.h" never used * src/insets/figinset.C (InitFigures): use new instead of malloc to allocate memory for figures and bitmaps. (DoneFigures): use delete[] instead of free to deallocate memory for figures and bitmaps. (runqueue): use new to allocate (getfigdata): use new/delete[] instead of malloc/free (RegisterFigure): ditto * some files: moved some declarations closer to first use, small whitespace changes use preincrement instead of postincrement where it does not make a difference. * src/kbmap.[Ch]: delete code according to define NO_HASH, it is a step on the way to use stl::containers for key maps. * src/bufferlist.h: add a typedef for const_iterator and const versions of begin and end. * src/bufferlist.[Ch]: change name of member variable _state to state_. (avoid reserved names) (makePup): removed (getFileNames): returns the filenames of the buffers in a vector. * configure.in (ALL_LINGUAS): added ro * src/support/putenv.C: new file * src/support/mkdir.C: new file 2000-01-20 Allan Rae * lib/layouts/IEEEtran.layout: Added several theorem environments * lib/templates/IEEEtran.lyx: Example theorem environments and a couple of minor additions. * lib/doc/LaTeXConfig.lyx.in: Use URL insets for ftp sites (except for those in footnotes of course) 2000-01-19 Lars Gullik Bjønnes * src/lyxlookup.C (CloseLyXLookup): set xic=0; after destruction. * src/mathed/math_utils.C (MathedLookupBOP): rewrite to use std::sort and std::lower_bound instead of qsort and handwritten binarysearch. (struct compara): struct that holds the functors used by std::sort and std::lower_bound in MathedLookupBOP. 2000-01-19 Jean-Marc Lasgouttes * src/support/LAssert.h: do not do partial specialization. We do not really need it. * src/support/lyxlib.h: note that lyx::getUserName() and lyx::date() are not in use right now. Should these be suppressed? * src/buffer.C (makeLaTeXFile): we do not need the user name here. (makeLinuxDocFile): do not put date and user name in linuxdoc headers. * src/support/lyxlib.h (kill): change first argument to long int, since that's what solaris uses. * src/support/kill.C (kill): fix declaration to match prototype. * config/lyxinclude.m4 (LYX_CXX_NAMESPACES): fix the macro to actually check whether namespaces are supported. This is not what it used to do. * src/support/lyxsum.C: add a using directive. 2000-01-17 Lars Gullik Bjønnes * src/support/kill.C: if we have namespace support we don't have to include lyxlib.h. * src/support/lyxlib.h: use namespace lyx if supported. 2000-01-14 Lars Gullik Bjønnes * src/support/date.C: new file * src/support/chdir.C: new file * src/support/getUserName.C: new file * src/support/getcwd.C: new file * src/support/abort.C: new file * src/support/kill.C: new file * src/support/lyxlib.h: moved all the functions in this file insede struct lyx. Added also kill and abort to this struct. This is a way to avoid the "kill is not defined in ", we make C++ wrappers for functions that are not ANSI C or ANSI C++. * src/support/lyxsum.C (sum): use #ifdef MODERN_STL_STREAMS instead of #if __GLIBCPP__. Since lyxsum is now put inside struct lyx it has been renamed to sum. 2000-01-14 Jean-Marc Lasgouttes * src/text.C: add using directives for std::min and std::max. 2000-01-13 Jean-Marc Lasgouttes * src/texrow.C (getIdFromRow): actually return something useful in id and pos. Hopefully fixes the bug with positionning of errorbox insets. * src/lyx_main.C (easyParse): output an error and exit if an incorrect command line option has been given. * src/spellchecker.C (ispell_check_word): document a memory leak. * src/bufferlist.C (write): fix mismatched allocation/deletion, where a "struct utimbuf" is allocated with "new" and deleted with "delete[]". 2000-01-13 Lars Gullik Bjønnes * src/text2.C (CutSelection): don't delete double spaces. (PasteSelection): ditto (CopySelection): ditto * src/text.C (Backspace): don't delete double spaces. * src/lyxlex.C (next): fix a bug that were only present with conformant std::istream::get to read comment lines, use std::istream::getline instead. This seems to fix the problem. 2000-01-12 Lars Gullik Bjønnes * src/text2.C (DeleteEmptyParagraphMechanism): fix for the "not allowed to insert space before space" editing problem. Please read commends at the beginning of the function. Comments about usage are very welcome. * src/text.C (InsertChar): fix for the "not allowed to insert space before space" editing problem. * src/text2.C (DeleteEmptyParagraphMechanism): when IsEmptyTableRow can only return false this last "else if" will always be a no-op. Commented out. * src/text.C (RedoParagraph): As far as I can understand tmp cursor is not really needed. * src/lyxtext.[Ch] (IsEmptyTableCell): commented out. As used at present it could only return false anyway. (several functions): Did something not so smart...added a const specifier on a lot of methods. * src/paragraph.C (BreakParagraph): removed the tmp->text.reserve and add a tmp->text.resize. The LyXParagraph constructor does the resize for us. (BreakParagraphConservative): ditto * src/support/path.h (Path): add a define so that the wrong usage "Path("/tmp") will be flagged as a compilation error: "`unnamed_Path' undeclared (first use this function)" 2000-01-12 Jean-Marc Lasgouttes * config/lyxinclude.m4 (LYX_FUNC_PUTENV_ARGTYPE): fix the macro, which was bogus for several reasons. * src/LaTeX.C (scanAux): fix the regular expression used to scan .aux files. (runBibTeX): ditto. * autogen.sh: do not use "type -path" (what's that anyway?). * src/support/filetools.C (findtexfile): remove extraneous space which caused a kpsewhich warning (at least with kpathsea version 3.0). 2000-01-11 Lars Gullik Bjønnes * src/mathed/Makefile.am (noinst_LTLIBRARIES): use .la * src/insets/Makefile.am (noinst_LTLIBRARIES): use .la * src/Makefile.am (lyx_DEPENDENCIES): switch back to .la libs 2000-01-11 Jean-Marc Lasgouttes * src/paragraph.C (BreakParagraph): do not reserve space on text if we don't need to (otherwise, if pos_end < pos, we end up reserving huge amounts of memory due to bad unsigned karma). (BreakParagraphConservative): ditto, although I have not seen evidence the bug can happen here. * src/lyxparagraph.h: add a using std::list. 2000-01-11 Juergen Vigna * src/menus.C (MenuDocu): output an Alert if the documentation-file could not be found. 2000-01-11 Lars Gullik Bjønnes * src/vc-backend.C (doVCCommand): change to be static and take one more parameter: the path to chdir too be fore executing the command. (retrive): new function equiv to "co -r" * src/bufferlist.C (loadLyXFile): implement the missing parts if file_not_found_hook is true. * src/lyxvc.C (file_not_found_hook): implement file_not_found_hook. * src/support/filetools.C (IsFileWriteable): use FileInfo to check if a file is readwrite,readonly...anything else. 2000-01-10 Lars Gullik Bjønnes * src/lyx_cb.C (MakeLaTeXOutput): name change from MakeDVIOutput (CreatePostscript): name change from MenuRunDVIPS (or something) (PreviewPostscript): name change from MenuPreviewPS (PreviewDVI): name change from MenuPreviewDVI * lib/lyxrc.example: added \pdflatex_command, \pdf_mode, \view_pdf_command., \pdf_to_ps_command * lib/configure.m4: added search for PDF viewer, and search for PDF to PS converter. (lyxrc.defaults output): add \pdflatex_command, \view_pdf_command and \pdf_to_ps_command. * src/lyx_cb.C (MenuPreviewDVI): renamed from MenuPreview. * src/bufferlist.C (write): we don't use blocksize for anything so I removed it. 2000-01-10 Jean-Marc Lasgouttes * src/support/block.h: disable operator T* (), since it causes problems with both compilers I tried. See comments in the file. * lib/reLyX/configure.in: do not define LYX_DIR. support flag --with-lyxname. * lib/reLyX/reLyX.in: change LYX_DIR to pkgdatadir; change env. variable LYX_DIR_10x to LYX_DIR_11x. * src/Makefile.am: replace variable LYX_DIR with pkgdatadir. * INSTALL: document --with-lyxname. * NEWS: ditto. * configure.in: new configure flag --with-lyxname which allows to choose the name under which lyx is installed. Default is "lyx", of course. It used to be possible to do this with --program-suffix, but the later has in fact a different meaning for autoconf. * src/support/lstrings.h (lstrchr): reformat a bit. * src/lyxlex.h: include LIstream.h, for Sun CC this time. * src/mathed/math_defs.h: ditto. 2000-01-09 Lars Gullik Bjønnes * src/lyxrc.[Ch]: New tag and variable "\make_backup". Defaults to true, decides if we create a backup file or not when saving. New tag and variable \pdf_mode, defaults to false. New tag and variable \pdflatex_command, defaults to pdflatex. New tag and variable \view_pdf_command, defaults to xpdf. New tag and variable \pdf_to_ps_command, defaults to pdf2ps. 2000-01-08 Lars Gullik Bjønnes * src/bufferlist.C (close): don't call insetUnlock if the buffer does not have a BufferView. (unlockInset): ditto + don't access the_locking_inset if the buffer does not have a BufferView. * src/LyXView.C (KeyPressMask_raw_callback): add a XSync in certain circumstances so that we don't continue a keyboard operation long after the key was released. Try f.ex. to load a large document, press PageDown for some seconds and then release it. Before this change the document would contine to scroll for some time, with this change it stops imidiatly. * src/support/block.h: don't allocate more space than needed. As long as we don't try to write to the arr[x] in a array_type arr[x] it is perfectly ok. (if you write to it you might segfault). added operator value_type*() so that is possible to pass the array to functions expecting a C-pointer. * lib/Makefile.am (dist-hook): don't fail completely if unable to cvs. * intl/*: updated to gettext 0.10.35, tried to add our own required modifications. Please verify. * po/*: updated to gettext 0.10.35, tried to add our own required modifications. Please verify. * src/support/lstrings.C (tostr): go at fixing the problem with cxx and stringstream. When stringstream is used return oss.str().c_str() so that problems with lyxstring and basic_string are avoided. Note that the best solution would be for cxx to use basic_string all the way, but it is not conformant yet. (it seems) * src/lyx_cb.C + other files: moved several global functions to class BufferView, some have been moved to BufferView.[Ch] others are still located in lyx_cb.C. Code changes because of this. (part of "get rid of current_view project".) * src/buffer.C + other files: moved several Buffer functions to class BufferView, the functions are still present in buffer.C. Code changes because of this. * config/lcmessage.m4: updated to most recent. used when creating acinclude.m4. * config/progtest.m4: updated to most recent. used when creating acinclude.m4. * config/gettext.m4: updated to most recent. applied patch for tmplinguas. * config/gettext.m4.patch: new file that shows what changes we have done to the local copy of gettext.m4. * config/libtool.m4: new file, used in creation of acinclude.m4 * config/lyxinclude.m4: new file, this is the lyx created m4 macros, used in making acinclude.m4. * autogen.sh: GNU m4 discovered as a separate task not as part of the lib/configure creation. Generate acinlucde from files in config. Actually cat lyxinclude.m4, libtool.m4 and gettext.m4 together. This makes it easier to upgrade .m4 files that really are external. * src/Spacing.h: moved using std::istringstream to right after . This should fix the problem seen with some compilers. 2000-01-06 Lars Gullik Bjønnes * src/lyx_cb.C: began some work to remove the dependency a lot of functions have on BufferView::text, even if not really needed. (GetCurrentTextClass): removed this func, it only hid the current_view. * src/Makefile.am (lyx_DEPENDENCIES): use support/libsupport.la I forgot this in last commit. * src/Bullet.C (bulletEntry): use static char const *[] for the tables, becuase of this the return arg had to change to string. (bulletSize): ditto (~Bullet): removed unneeded destructor * src/BufferView.C (beforeChange): moved from lyx_cb.C (insetSleep): moved from Buffer (insetWakeup): moved from Buffer (insetUnlock): moved from Buffer * buffer.[Ch], BufferView.[Ch] + others: moved the_locking_inset from Buffer to BufferView. * acinclude.m4: include libtool.m4 from libtool 1.3.4. * config/ltmain.sh: updated to version 1.3.4 of libtool * config/ltconfig: updated to version 1.3.4 of libtool 2000-01-06 Jean-Marc Lasgouttes * src/buffer.C (pop_tag): fix a dubious for() loop initialization. Did I get that right? * src/lyxlex.h: add a "using" directive or two. * src/Spacing.h: ditto. * src/insets/figinset.C: ditto. * src/support/filetools.C: ditto. * src/support/lstrings.C: ditto. * src/BufferView.C: ditto. * src/bufferlist.C: ditto. * src/lyx_cb.C: ditto. * src/lyxlex.C: ditto. * NEWS: add some changes for 1.1.4. 2000-01-06 Lars Gullik Bjønnes * src/BufferView.C: first go at a TextCache to speed up switching between documents. 2000-01-05 Jean-Marc Lasgouttes * lib/examples/ItemizeBullets.lyx: update from Tino Meinen. * lib/examples/nl_voorbeeld_ruw.lyx: ditto. * lib/examples/nl_voorbeeld_verlyxt.lyx: ditto. * lib/examples/nl_opsommingstekens.lyx: new translation from Tino Meinen. * src/mathed/math_defs.h (MathedRowSt): make sure that all members of the struct are correctly initialized to 0 (detected by purify) * src/lyxrc.C (LyXRC): ditto for print_adapt_output. * src/insets/figinset.C (InsetFig): ditto for pswid and pshgh. * src/insets/figinset.C (sigchldchecker): use "delete" to free a pidwait, since it was allocated with "new". This was potentially very bad. Thanks to Michael Schmitt for running purify for us. 2000-01-04 Jean-Marc Lasgouttes * src/lyx_gui_misc.C: add a 'using std::make_pair;' statement. * src/lyx_gui_misc.h: add a 'using std::pair;' statement. 1999-12-30 Allan Rae * lib/templates/IEEEtran.lyx: minor change * src/lyxvc.C (registrer, checkIn), src/lyx_cb.C (MenuInsertLabel), src/mathed/formula.C (LocalDispatch): askForText changes * src/lyx_gui_misc.[Ch] (askForText): now returns a bool also so we know when a user has cancelled input. Fixes annoying problems with inserting labels and version control. 1999-12-29 Lars Gullik Bjønnes * src/support/lstrings.C (tostr): rewritten to use strstream and stringstream 1999-12-28 Lars Gullik Bjønnes * src/support/filetools.C (IsFileWriteable): use fstream to check (IsDirWriteable): use fileinfo to check * src/support/filetools.h (FilePtr): whole class deleted * src/insets/figinset.C (GetPSSizes): rewritten to use ifstream. * src/lyxparagraph.h (readSimpleWholeFile): make arg istream * src/lyx_cb.C (InsertAsciiFile): use ifstream instead of FilePtr * src/bufferlist.C (write): use ifstream and ofstream instead of FILE* * src/Spacing.h: use istrstream instead of sscanf * src/mathed/math_defs.h: change first arg to istream from FILE* * src/buffer.C (insertLyXFile): use ifstream instead of FilePtr * src/mathed/math_parser.C: have yyis to be an istream (LexGetArg): use istream (yyis) (yylex): ditto (mathed_parse): ditto (mathed_parser_file): first arg istream instead of FILE*, set yyis * src/mathed/formula.C (Read): rewritten to use istream * src/mathed/formulamacro.C (Read): rewritten to use istream * src/lyxlex.h (~LyXLex): deleted desturctor (getStream): new function, returns an istream (getFile): deleted funtion (IsOK): return is.good(); * src/lyxlex.C (LyXLex): delete file and owns_file (setFile): open an filebuf and assign that to a istream instead of using FILE* (setStream): new function, takes an istream as arg. (setFile): deleted function (EatLine): rewritten us use istream instead of FILE* (next): ditto (nextToken): ditto * src/table.C (LyXTable): use istream instead of FILE* (Read): rewritten to take an istream instead of FILE* 1999-12-28 Jean-Marc Lasgouttes * src/buffer.C (Dispatch): remove an extraneous break statement. * src/support/filetools.C (QuoteName): change to do simple 'quoting'. More work is necessary. Also changed to do nothing under emx (needs fix too). (Putenv): Cast the argument of putenv() with PUTENV_TYPE_ARG. * acinclude.m4 (STL_STRING_FWD_H_LOCATION): add the comment for config.h.in to the AC_DEFINE_UNQUOTED() call. (LYX_FUNC_PUTENV_ARGTYPE): new macro. Checks whether putenv() needs char * as argument (because Solaris 7 declares it like that). * acconfig.h: remove placeholder for STL_STRING_FWD_H_LOCATION; remove definition of BZERO. 1999-12-24 Lars Gullik Bjønnes * src/support/LRegex.C: include if HAVE_REGEX_H is defined, "lyxregex.h" if not. * src/support/Makefile.am (noinst_LTLIBRARIES): changed from pkglib_ to noinst_ (REGEX): new variable that is set to regex.c lyxregex.h when AM_CONDITIONAL USE_REGEX is set. (libsupport_la_SOURCES): add $(REGEX) * src/mathed/Makefile.am (noinst_LTLIBRARIES): changed from pkglib_ to noinst_ * src/insets/Makefile.am (noinst_LTLIBRARIES): changed from pkglib_ to noinst_ * configure.in: add call to LYX_REGEX * acinclude.m4 (LYX_REGEX): checks if we need to use the included regex or not. Uses a a AM_CONDITIONAL to decide what to compile. 1999-12-22 Jean-Marc Lasgouttes * lib/bind/fi_menus.bind: new file, from pauli.virtanen@saunalahti.fi. * src/buffer.C (getBibkeyList): pass the parameter delim to InsetInclude::getKeys and InsetBibtex::getKeys. * src/insets/insetinclude.[Ch] (getKeys): add parameter delim, which is passed to Buffer::getBibkeyList * src/insets/insetbib.[Ch] (getKeys): add parameter delim, and use it instead of the hardcoded comma. * src/insets/insetbib.C (getKeys): make sure that there are not leading blanks in bibtex keys. Normal latex does not care, but harvard.sty seems to dislike blanks at the beginning of citation keys. In particular, the retturn value of the function is * INSTALL: make it clear that libstdc++ is needed and that gcc 2.7.x probably does not work. * src/support/filetools.C (findtexfile): make debug message go to the LATEX channel * src/insets/insetbib.C (getKeys): ditto * src/debug.C (showTags): make sure that the output is correctly aligned. * configure.in: add a comment for TWO_COLOR_ICON define. * acconfig.h: remove all the entries that already defined in configure.in or acinclude.m4. * src/buffer.C (makeLaTeXFile): headers of latex file also changed to avoid user name, date and copyright. 1999-12-21 Juergen Vigna * src/table.C (Read): Now read bogus row format informations if the format is < 5 so that afterwards the table can be read by lyx but without any format-info. Fixed the crash we experienced when not doing this. 1999-12-21 Lars Gullik Bjønnes * src/text2.C (RedoHeightOfParagraph): rename arg cursor -> cur (RedoDrawingOfParagraph): ditto (RedoParagraphs): ditto (RemoveTableRow): ditto * src/text.C (Fill): rename arg paperwidth -> paper_width * src/buffer.C (insertLyXFile): rename var filename -> fname (writeFile): rename arg filename -> fname (writeFileAscii): ditto (makeLaTeXFile): ditto (makeLinuxDocFile): ditto (makeDocBookFile): ditto * src/LaTeX.C (runMakeIndex): change arg name from file -> f (runBibTeX): ditto * src/Makefile.am (lyx_SOURCES): add bmtable.c and remove bmtable.C * src/bmtable.h: add extern "C" on this file when __cplusplus is defined. * src/bmtable.c: new file, a C'ified copy of bmtable.C, this is compiled by a C compiler not C++. * src/layout.h (LyXTextClass): added typedef for const_iterator (LyXTextClassList): added typedef for const_iterator + member functions begin and end. * src/LyXView.C (UpdateDocumentClassChoice): rewritten to use iterators to fill the choice_class. (updateLayoutChoice): rewritten to use iterators to fill the layoutlist in the toolbar. * src/BufferView.h (BufferView::work_area_width): removed unused variable. * src/lyx_gui_misc.C (WarnReadonly): added string parameter 'file' * src/buffer.C (sgmlOpenTag): drop the use of the static space array (sgmlCloseTag): ditto * src/support/lstrings.h: return type of countChar changed to unsigned char. * src/support/lstrings.C (countChar): use HAVE_STD_COUNT to choose what version of this func to use. Also made to return unsigned int. * configure.in: call LYX_STD_COUNT * acinclude.m4 (LYX_STD_COUNT): new function checks for a standard conforming std::count. 1999-12-20 Jean-Marc Lasgouttes * src/mathed/math_draw.C (Draw, Metrics): fix a bug where a prime and a subscript would give bad display (patch from Dekel Tsur ). * src/insets/insetlatexaccent.h: make sure ACCENT_TYPES is public. * src/spellchecker.C (create_ispell_pipe): use a const_cast to please sun CC. * src/chset.h: add a few 'using' directives * src/lyxfunc.C (Dispatch): check that LFUN_UNKNOWN_ACTION is not triggered when no buffer is active * src/layout.C: removed `break' after `return' in switch(), since it is unreachable. * src/lyx_main.C (init): make sure LyX can be ran in place even when libtool has done its magic with shared libraries. Fix the test for the case when the system directory has not been found. * src/lyx_cb.C (MenuMakeLaTeX): make sure to keep the full path name for the latex file. (MenuMakeHTML): ditto * src/buffer.h: add an optional boolean argument, which is passed to ChangeExtension. 1999-12-20 Allan Rae * lib/templates/IEEEtran.lyx: small correction and update. * configure.in: Attempted to use LYX_PATH_HEADER * src/stl_string_fwd.h: Don't need HAVE_STL_STRING_FWD_H anymore * acconfig.h, acinclude.m4 (LYX_STL_STRING_FWD): totally revised after input from JMarc. Now use preprocessor to find the header. Also stopped making HAVE_STL_STRING_FWD_H and extended the comments. (LYX_PATH_HEADER): My, so far, failed attempt to generalize LYX_STL_STRING_FWD. See comments in file. 1999-12-19 Asger Alstrup Nielsen * The global MiniBuffer * minibuffer variable is dead. * The global FD_form_main * fd_form_main variable is dead. 1999-12-17 Jean-Marc Lasgouttes * src/toolbar.C (set): condition #warning on WITH_WARNINGS * src/table.h: add the LOstream.h header * src/debug.h: ditto * src/LyXAction.h: change the explaination of the ReadOnly attribute: is indicates that the function _can_ be used. * src/LyXAction.C (init): find-replace _can_ be used in read-only mode. 1999-12-16 Jean-Marc Lasgouttes * src/lyxfont.C (ascent): Make sure that char is _always_ used as unsigned. (descent): ditto (lbearing): ditto (rbearing): ditto * src/paragraph.C (GetWord): assert on pos>=0 (GetChar): ditto * src/support/lyxstring.C: condition the use of an invariant on ENABLE_ASSERTIONS * src/support/lyxstring.h: ditto * src/Bullet.[Ch]: replace DEBUG_AS_DEFAULT by ENABLE_ASSERTIONS. Use LAssert.h instead of plain assert(). * src/support/lstrings.h: add LAssert.h, in case it is needed. * src/lyxfunc.C: do not include LAssert.h, it is not used. * src/support/filetools.C: ditto * src/support/LAssert.h: make Assert a no-op if ENABLE_ASSERTIONS is not defined. * INSTALL: document the new configure flags * configure.in: suppress --with-debug; add --enable-assertions * acinclude.m4: various changes in alignment of help strings. 1999-12-16 Lars Gullik Bjønnes * src/kbmap.C: commented out the use of the hash map in kb_map, beginning of movement to a stl::container. * several files: removed code that was not in effect when MOVE_TEXT was defined. * lib/kbd/iso8859-1.cdef: removed bogus backslashes. Backslashes for escaping should not be used. We can discuss if the string should be enclosed in f.ex. [] instead of "". * src/trans_mgr.C (insert): use the new returned value from encodeString to get deadkeys and keymaps done correctly. * src/chset.C (encodeString): changed to return a pair, to tell what to use if we know the string. * src/lyxscreen.h (fillArc): new function. * src/FontInfo.C (resize): rewritten to use more std::string like structore, especially string::replace. * src/insets/insetlatexaccent.C (Draw): use fillArc for the approp. accents. * configure.in (chmod +x some scripts): remove config/gcc-hack 1999-12-15 Jean-Marc Lasgouttes * src/buffer.C (writeFile): change once again the top comment in a .lyx file to point to www.lyx.org and to use LYX_DOCVERSION instead of an hardcoded version number. (makeDocBookFile): ditto * src/version.h: add new define LYX_DOCVERSION * po/de.po: update from Pit Sütterlin * lib/bind/de_menus.bind: ditto. * src/lyxfunc.C (Dispatch): call MenuExport() * src/buffer.C (Dispatch): ditto * src/lyx_cb.C (MenuMakeHTML): new function, moved from LyXFunc::Dispatch(). (MenuExport): new function, moved from LyXFunc::Dispatch(). * src/trans_mgr.C (insert): small cleanup * src/chset.C (loadFile): ditto * lib/kbd/iso8859-1.cdef: add missing backslashes 1999-12-15 Lars Gullik Bjønnes * src/insets/insetlatexaccent.C (Lbearing): new function, used to help with placing the manually drawn accents better. (Rbearing): ditto (Draw): x2 and hg changed to float to minimize rounding errors and help place the accents better. * src/lyxfont.C (ascent): fixed faulty static_cast, casting from unsigned short to char is just wrong...cast the char to unsigned char instead so that the two values can compare sanely. This should also make the display of insetlatexaccents better and perhaps also some other insets. (descent): ditto (lbearing): new function (rbearing): ditto 1999-12-15 Allan Rae * src/stl_string_fwd.h, src/Makefile.am (lyx_SOURCES): added new header that provides a wrapper around the very annoying SGI STL header of the same name. * src/support/lyxstring.C, src/LString.h: removed old SGI-STL-compatability attempts. * configure.in: Use LYX_STL_STRING_FWD. * acinclude.m4 (LYX_STL_STRING_FWD), acconfig.h: Test if stl_string_fwd.h is around and try to determine it's location. Major improvement over previous SGI STL 3.2 compatability. Three small problems remain with this function due to my zero knowledge of autoconf. JMarc and lgb see the comments in the code. 1999-12-14 Jean-Marc Lasgouttes * src/broken_const.h, config/hack-gcc, config/README: removed * configure.in: remove --with-gcc-hack option; do not call LYX_CXX_STL_STACK * INSTALL: remove documentation of --with-broken-const and --with-gcc-hack * acconfig.h: remove all trace of BROKEN_CONST define * src/buffer.C (makeDocBookFile): update version number in output file. (SimpleDocBookOnePar): fix an assert when trying to a character access beyond string length [Patch from Jose'] 1999-12-13 Jean-Marc Lasgouttes * po/de.po: fix the Export menu * lyx.man: update the description of -dbg * src/lyx_main.C (setDebuggingLevel): call Debug::showLevel() (commandLineHelp): updated (easyParse): show list of available debug levels if -dbg is passed without argument. * src/Makefile.am: add debug.C * src/debug.h: moved some code to debug.C * src/debug.C: new file. Contains code to set and show debug level. * src/layout.C: remove 'break' after 'continue' in switch statements, since these cannot be reached. 1999-12-13 Allan Rae * src/mathed/math_hash.C (math_hash): renamed from hash(), name clash. (in_word_set): hash() -> math_hash() * src/LString.h: Used USING_EXCEPTIONS in SGI STL-3.2 support * acconfig.h: Added a test for whether we are using exceptions in the current compilation run. If so USING_EXCEPTIONS is defined. * config.in: Check for existance of stl_string_fwd.h * src/LString.h: If compiling --with-included-string and SGI's STL version 3.2 is present (see above test) we need to block their forward declaration of string and supply a __get_c_string(). However, it turns out this is only necessary if compiling with exceptions enabled so I've a bit more to add yet. * src/insets/figinset.[Ch], src/insets/insetinclude.C, src/insets/insetloa.C, src/layout.h, src/lyxparagraph.h, src/support/LRegex.h, src/undo.h: Shuffle the order of the included files a little to ensure that LString.h gets included before anything that includes stl_string_fwd.h * src/support/lyxstring.C: We need to #include LString.h instead of lyxstring.h to get the necessary definition of __get_c_string. (__get_c_string): New function. This is defined static just like SGI's although why they need to do this I'm not sure. Perhaps it should be in lstrings.C instead. * lib/templates/IEEEtran.lyx: New template file. 1999-12-12 Lars Gullik Bjønnes * Makefile.in.in (MKINSTALLDIRS): use $(srcdir)/@MKINSTALLDIRS@ * intl/Makefile.in (MKINSTALLDIRS): ditto * src/LyXAction.C (init): changed to hold the LFUN data in a automatic array in stead of in callso to newFunc, this speeds up compilation a lot. Also all the memory used by the array is returned when the init is completed. * a lot of files: compiled with -Wold-style-cast, changed most of the reported offenders to C++ style casts. Did not change the offenders in C files. * src/trans.h (Match): change argument type to unsigned int. * src/support/DebugStream.C: fix some types on the streambufs so that it works on a conforming implementation. 1999-12-10 Jean-Marc Lasgouttes * lib/examples/example_{raw,lyxified}.lyx: fix embarassing sentence. * src/support/lyxstring.C: remove the inline added earlier since they cause a bunch of unsatisfied symbols when linking with dec cxx. Cxx likes to have the body of inlines at the place where they are declared. * src/trans.C (AddDeadkey): add an 'unsigned char' cast to avoid accessing negative bounds in array. This fixes the crash when inserting accented characters. * src/trans.h (Match): ditto * src/buffer.C (Dispatch): since this is a void, it should not try to return anything... 1999-12-10 Lars Gullik Bjønnes * src/buffer.h: removed the two friends from Buffer. Some changes because of this. Buffer::getFileName and Buffer::setFileName renamed to Buffer::fileName() and Buffer::fileName(...). 1999-12-09 Lars Gullik Bjønnes * buffer.[Ch], BufferView.[Ch] + other files: Moved Buffer::text and Buffer::update(short) to BufferView. This move is currently controlled by a define MOVE_TEXT, this will be removed when all shows to be ok. This move paves the way for better separation between buffer contents and buffer view. One side effect is that the BufferView needs a rebreak when swiching buffers, if we want to avoid this we can add a cache that holds pointers to LyXText's that is not currently in use. * buffer.[Ch], lyx_main.C: small changes to the "-export" patch by André Pönitz. 1999-11-18 André Pönitz * buffer.[Ch]: Dispatch() - new dispatcher on the buffer level * lyx_main.C: new command line option -x (or --execute) and -e (or --export). Now direct conversion from .lyx to .tex (.dvi, .ps, ...) is possible ('lyx file.lyx --export latex') Unfortunately, X is still needed and the GUI pops up during the process... 1999-12-07 Jean-Marc Lasgouttes * src/Spacing.C: add a using directive to bring stream stuff into normal namespace. * src/paragraph.C: ditto * src/buffer.C: ditto * NEWS: updated a bit the new features of 1.1.3 (took a few things from Lars' announcement). * lib/examples/nl_voorbeeld_{ruw,verlyxt}.lyx: new tutorial example files from Tino Meinen. 1999-12-06 Allan Rae * src/LaTeX.C (runBibTeX): fix typo in accessing submatch pair. 1999-12-07 Lars Gullik Bjønnes * src/support/lyxstring.C: added a lot of inline for no good reason * src/lyxfont.[Ch]: removed latexWriteStartChanges, and latexWriteEndChanges, they were not used. * src/layout.h (operator<<): output operator for PageSides * src/mathed/math_iter.C (my_memcpy): slightly changed. * some example files: loaded in LyX 1.0.4 and saved again to update certain constructs (table format) * a lot of files: did the change to use fstream/iostream for all writing of files. Done with a close look at Andre Poenitz's patch. * some files: whitespace changes. 1999-12-06 Jean-Marc Lasgouttes * src/mathed/math_iter.C (my_memcpy): new function. Since the built-in memcpy() is broken on egcs and gcc 2.95 for alpha architecture, we provide our own. It is used unconditionnally, but I do not think this is a performance problem. Thanks to Angus Leeming for the code (and again to Michal Jaegermann for finding it the first time). (GetInset): use my_memcpy. (Insert): ditto (Copy): ditto * lib/chkconfig.ltx: some cleanup of the latex code. I am not sure it is easier to understand, but it uses less TeX-only constructs now. * acinclude.m4 (LYX_SEARCH_PROG): make it work when the PATH elements contain spaces * lib/configure: regenerated * lib/configure.m4 (SEARCH_PROG): make it work when the PATH elements contain spaces; display the list of programs that are tried. * autogen.sh: make sure lib/configure is executable * lib/examples/*: rename the tutorial examples to begin with the two-letters language code. * src/lyxfunc.C (getStatus): do not query current font if no buffer exists. * src/lyx_cb.C (RunScript): use QuoteName (MenuRunDvips): ditto (PrintApplyCB): ditto * src/support/filetools.[Ch] (QuoteName): new function. Add quotes around argument, so that it works well with the current shell. Does not work properly with OS/2 shells currently. * src/LaTeXLog.C (ShowLatexLog): use Buffer::getLatexName * src/LyXSendto.C (SendtoApplyCB): ditto * src/lyxfunc.C (Dispatch): ditto * src/buffer.C (runLaTeX): ditto (runLiterate): ditto (buildProgram): ditto (runChktex): ditto * src/lyx_cb.C (RunScript): ditto (MenuMakeLaTeX): ditto * src/buffer.h (getLatexName): new method * src/support/filetools.C (MakeLatexName): renamed from SpaceLess 1999-12-02 Jean-Marc Lasgouttes * images/sqrt.xpm: change name of the sqrt icon to sqrt_xpm. * src/mathed/math_panel.C (mathed_get_pixmap_from_icon): ditto (create_math_panel): ditto * src/lyxfunc.C (getStatus): re-activate the code which gets current font and cursor; add test for export to html. * src/lyxrc.C (read): remove unreachable break statements; add a few "using". * src/bmtable.C (fl_set_bmtable_data): add a const_cast. 1999-12-01 Lars Gullik Bjønnes * src/mathed/formula.C (LocalDispatch): fix small whitspace bug introduced by faulty regex. * src/buffer.C: ditto * src/lastfiles.C: ditto * src/paragraph.C: ditto * src/table.C: ditto * src/vspace.C: ditto * src/insets/figinset.C: ditto Note: most of these is absolutely harmless, except the one in src/mathed formula.C. 1999-11-30 Kayvan A. Sylvan * src/ImportNoweb.C (documentclass): fixed bounds for substr operation, yielding correct results for the reLyX command. 1999-12-01 Lars Gullik Bjønnes * src/support/filetools.C (ExpandPath): removed an over eager Assert. (ReplaceEnvironmentPath): ditto * src/toolbar.C (BubbleTimerCB): use C++ style casts. This clearly shows that we are doing something fishy in our code... (BubblePost): ditto (ToolbarCB): ditto * src/lyxrc.C (read): use a double switch trick to get more help from the compiler. (the same trick is used in layout.C) (write): new function. opens a ofstream and pass that to output (output): new function, takes a ostream and writes the lyxrc elemts to it. uses a dummy switch to make sure no elements are forgotten. * src/lyxlex.h: added a struct pushpophelper for use in functions with more than one exit point. * src/lyxlex.[Ch] (GetInteger): made it const (GetFloat): ditto (GetBool): ditto * src/lyxfunc.C (Dispatch): added case for LFUN_SAVEPREFERENCES * src/layout.[hC] : LayoutTags splitted into several enums, new methods created, better error handling cleaner use of lyxlex. Read the diff. * src/bmtable.[Ch]: change some member prototypes because of the image const changes. * commandtags.h, src/LyXAction.C (init): new function: "preferences-save", saves the lyxrc entries into .lyx/preferences. This file is not read automatically but you can add \input preferences to your lyxrc if you want to. We need to discuss how to handle this. * src/LaTeX.C (runBibTeX): use regex to match for the needed lines in .aux, also remove .bib and .bst files from dependencies when running bibtex. * src/BufferView.C, src/LyXView.C: add const_cast several places because of changes to images. * lib/images/*: same change as for images/* * lib/lyxrc.example: Default for accept_compound is false not no. * images/*: changed to be const, however I have som misgivings about this change so it might be changed back. 1999-11-26 Jean-Marc Lasgouttes * lib/configure, po/POTFILES.in: regenerated * autogen.sh: autogenerate lib/configure from lib/configure.m4 * config/lib_configure.m4: removed * lib/configure.m4: new file (was config/lib_configure.m4) * configure.in: do not test for rtti, since we do not use it. 1999-11-26 Lars Gullik Bjønnes * src/support/lyxstring.C (lyxstring::Srep): Changed to use a doubling of allocated space scheme. This makes it faster for large strings end to use less memory for small strings. xtra rememoved. * src/insets/figinset.C (waitalarm): commented out. (GhostscriptMsg): use static_cast (GhostscriptMsg): use new instead of malloc to allocate memory for cmap. also delete the memory after use. * src/lyx_cb.C (SetXtermCursor): made cursor_undefined a bool * src/LaTeX.C (scanAux): new method. Scans the .aux file and looks for changes in bibtex database or style. (runBibTeX): remove all .bib and .bst files from dep before we begin. (run): use scanAuc in when dep file already exist. * src/DepTable.C (remove_files_with_extension): new method (exist): new method * src/DepTable.[Ch]: made many of the methods const. 1999-11-25 Jean-Marc Lasgouttes * src/bufferparams.C: make sure that the default textclass is "article". It used to be the first one by description order, but now the first one is "docbook". * src/lyx_main.C (setDebuggingLevel): change type of argument to string; call Debug::value. (easyParse): pass complete argument to setDebuggingLevel(). * src/debug.h (value): fix the code that parses debug levels. * src/debug.h: add new debug type ACTION, reserved for LyXAction class. * src/LyXAction.C: use Debug::ACTION as debug channel. * src/lyxlookup.C: make the debug statements go to Debug::KEY. * NEWS: updated for the future 1.1.3 release. * src/mathed/symbol_def.h: swap the definitions of \varepsilon and \epsilon. Now \epsilon shows as red text, and \varepsilon shows as it should. This is of course a controversial change (since many people will find that their lyx workscreen is suddenly full of red), but done for the sake of correctness. * src/mathed/formulamacro.h, src/mathed/math_macro.[Ch], src/mathed/math_root.[Ch] (Clone): return a MathedInset* * src/insets/inseterror.h, src/insets/inseturl.h, src/insets/insetinfo.h, src/insets/figinset.h, src/mathed/formulamacro.h, src/mathed/math_macro.h (EditMessage): add a missing const and add _() to make sure that translation happens * src/ImportNoweb.C, src/LyXAction.h, src/insets/figinset.C, src/insets/insetbib.C, src/support/filetools.C: add `using' directives for cxx. * src/lyxfunc.C (Dispatch): make sure nothing bad happens when doing 'Insert index of last word' at the beginning of a paragraph. 1999-11-24 Lars Gullik Bjønnes * several files: white-space changes. * src/mathed/formula.C: removed IsAlpha and IsDigit * src/insets/insetbib.C (getKeys): use findtexfile to look for the .bib file. use a ifstream instead of FilePtr when parsing the .bib file for keys. * src/insets/figinset.C (GetPSSizes): don't break when "EndComments" is seen. But break when a boundingbox is read. * all classes inherited from Inset: return value of Clone changed back to Inset *. * all classes inherited form MathInset: return value of Clone changed back to MathedInset *. * src/insets/figinset.C (runqueue): use a ofstream to output the gs/ps file. Might need some setpresicion or setw. However I can see no problem with the current code. (runqueue): use sleep instead of the alarm/signal code. I just can't see the difference. * src/paragraph.C (LyXParagraph): reserve space in the new paragraph and resize the inserted paragraph to just fit. * src/lyxfunc.h (operator|=): added operator for func_status. * src/lyxfunc.C (MenuNew): use FileInfo instead of FilePtr to check for readable file. * src/lyx_cb.C (MenuMakeLaTeX): use FileInfo instead of FilePtr to check for readable file. (MenuMakeLinuxDoc): ditto (MenuMakeDocBook): ditto (MenuMakeAscii): ditto (InsertAsciiFile): split the test for openable and readable * src/bmtable.C (draw_bitmaptable): use fl_state[fl_get_vclass()].depth instead of DefualtScreen. * src/LaTeX.C, src/support/filetools.[Ch]: moved do_popen and findtexfile from LaTeX to filetools. * src/ImportNoweb.C (documentclass): rewrote to use ifstream instead of FilePtr. Needs to be verified by a literate user. 1999-11-23 Jean-Marc Lasgouttes * src/mathed/formula.[Ch] (GetCursorPos): add a missing 'const'. (EditMessage): likewise. * src/paragraph.C (SimpleTeXSpecialChars): output ~ and ^ respectively as \textasciitilde and \textasciicircum. 1999-11-22 Lars Gullik Bjønnes * src/support/lyxstring.h: made the methods that take iterators use const_iterator. * src/support/lstrings.C (countChar): use std::cound(itr, itr, val) (regexMatch): made is use the real regex class. * src/support/Makefile.am: changed to use libtool * src/support/.cvsignore: added *.lo, .libs and libsupport.la * src/mathed/math_defs.h: made the mathaligns be in a enum instead of defines. (MathIsInset ++): changed several macros to be inline functions instead. * src/mathed/Makefile.am: changed to use libtool * src/mathed/.cvsignore: added *.lo, .libs and libmathed.la * src/insets/inset* : Clone changed to const and return type is the true insettype not just Inset*. * src/insets/Makefile.am: changed to use libtool * src/insets/.cvsignore: added *.lo, .libs and libinsets.la * src/undo.[Ch] : added empty() and changed some of the method names. * src/texrow.[Ch]: rewrote to store texrow's in a std::list. * src/lyxparagraph.h: use id() and id(...) instead of getID and setID use block<> for the bullets array, added const several places. * src/lyxfunc.C (getStatus): new function * src/lyxfunc.[Ch] : small changes to take advantage of the new LyXAction, added const to several funtions. * src/filedlg.[Ch]: rewrote to store userchache and groupchache in a std::map, and to store the dir items in a vector. * src/Makefile.am (lyx_DEPENDENCIES): changed to use libtool files as dependencies. * src/LyXView.[Ch] + other files : changed currentView to view. * src/LyXAction.[Ch] : ported from the old devel branch. * src/.cvsignore: added .libs and a.out * configure.in : changes to use libtool. * acinclude.m4 : inserted libtool.m4 * .cvsignore: added libtool 1999-11-19 Jean-Marc Lasgouttes * src/Makefile.am (lyx_DEPENDENCIES): give the explicit object file name in insets and mathed directories (otherwise the dependency is not taken in account under cygwin). * src/text2.C (InsertString[AB]): make sure that we do not try to read characters past the string length. 1999-11-18 Jean-Marc Lasgouttes * lib/doc/LaTeXConfig.lyx.in, lib/chkconfig.ltx: remove the test for linuxdoc-sgml.sty. * src/buffer.C (writeFile): Do not add a comment on top of .lyx file saying who created them and when this heppened; this is useless and annoys tools like cvs. * lib/layouts/g-brief-{en,de}.layout, lib/templates/g-brief-{en,de}.lyx: new versions of the textclass from Thomas Hartkens . * src/{insets,mathed}/Makefile.am: do not declare an empty LDFLAGS, so that it can be set at configure time (useful on Irix for -n32 flag). * lib/reLyX/configure.in: make sure that the prefix is set correctly in LYX_DIR. 1999-11-18 André Pönitz * src/commandtags.h: introduction of a new tag 'LFUN_SEQUENCE' to be used by 'command-sequence' this allows to bind a key to a sequence of LyX-commands (Example: 'command-sequence math-insert alpha; math-insert beta;") * src/LyXAction.C: add "command-sequence" * src/LyXFunction.C: handling of "command-sequence" * src/LyXFunction.[hC] changed LyXFunc::Dispatch(string const &cmd, string const &arg) to LyXFunc::Dispatch(string const& s) * src/lyxserver.C, src/minibuffer.C: Use this new interface 1999-11-17 Jean-Marc Lasgouttes * src/buffer.C (writeFile): Do not output a comment giving user and date at the beginning of a .lyx file. This is useless and annoys cvs anyway; update version number to 1.1. * src/Makefile.am (LYX_DIR): add this definition, so that a default path is hardcoded in LyX. * configure.in: Use LYX_GNU_GETTEXT. * acinclude.m4 (LYX_GNU_GETTEXT): new macro, essentially a copy of AM_GNU_GETTEXT with a bug fixed. * src/lyx_cb.C (RunLinuxDoc): add a cast to please dec cxx. * src/chset.C: add "using std::ifstream;" to please dec cxx. * src/lyx_main.C (init), INSTALL.OS2: the environment variable which is used to point to LyX data is now LYX_DIR_11x. * lyx.man: convert to a unix text file; small updates. 1999-11-15 Lars Gullik Bjønnes * src/support/LSubstring.[Ch]: made the second arg of most of the constructors be a const reference. * src/mathed/math_parser.C (LexInitCodes): small bug introduced by me fixed. * src/support/lyxstring.[Ch] (swap): added missing member function and specialization of swap(str, str); * src/menus.C (ShowBufferMenu): to use the new BufferStorage * src/bufferlist.[Ch]: use the new BufferStorage class and remove all trace of the old one. * src/undo.[Ch]: made the undostack use std::list to store undo's in put the member definitions in undo.C. * src/lyxparagraph.h, src/paragraph.C + a lot of files: removed NEW_TEXT and have now only code that was included when this was defined. * src/intl.C (LCombo): use static_cast (LCombo2): ditto (DispatchCallback): ditto * src/definitions.h: removed whole file * src/commandtags.h: comment out LFUN_INSERT_INSET_LATEX * src/chset.[Ch]: a lot rewritten, does not use lyxlex for cdef parsing and stores in a std:map. a regex defines the file format. removed unneeded members. * src/bufferparams.h: added several enums from definitions.h here. Removed unsused destructor. Changed some types to use proper enum types. use block to have the temp_bullets and user_defined_bullets and to make the whole class assignable. * src/bufferparams.C (Copy): removed this functions, use a default assignment instead. * src/buffer.h: made isLatex, isLinuxDoc, isDocBook, isSGML and isLiterate const. * src/buffer.C (readLyXformat2): commend out all that have with oldpapersize to do. also comment out all that hve to do with insetlatex and insetlatexdel. (setOldPaperStuff): commented out * src/Makefile.am (lyx_SOURCES): remove definitions.h, add undo.C * src/LyXAction.C: remove use of inset-latex-insert * src/mathed/math_panel.C (button_cb): use static_cast * src/insets/Makefile.am (insets_o_SOURCES): removed insetlatex.[Ch] * src/support/lyxstring.C (helper): use the unsigned long specifier, UL, instead of a static_cast. * src/support/Makefile.am (libsupport_a_SOURCES): added block.h * src/support/block.h: new file. to be used as a c-style array in classes, so that the class can be assignable. 1999-11-15 Jean-Marc Lasgouttes * src/lyx_gui_misc.C (askForText): when fl_show_input() returns NULL, make sure to return an empty string (it is not possible to set a string to NULL). 1999-11-10 Jean-Marc Lasgouttes * src/support/LRegex.C: use regex_t instead of re_pattern_buffer. * src/support/lyxstring.C (helper): fix bogus cast in assertion. * src/{mathed,insets}/Makefile.am (CXXLINK): add $(LDFLAGS) to the link line, so that Irix users (for example) can set it explicitely to "-n32". * src/Makefile.am (lyx_LDADD): use LYX_LIB as a variable, so that it can be overidden at make time (static or dynamic link, for example). * src/vc-backend.C, src/LaTeXFeatures.h, src/support/LRegex.C, src/support/LRegex.h: add a few "using" statements to bring templates to global namespace. 1999-11-10 Lars Gullik Bjønnes * src/support/lyxstring.C (operator[] const): make it standard conforming. * src/minibuffer.C (Init): changed to reflect that more information is given from the lyxvc and need not be provided here. * src/lyxvc.[Ch]: rewrote to use the vc-backend. * src/Makefile.am (lyx_SOURCES): add vc-backend.[Ch] * src/LyXView.C (UpdateTimerCB): use static_cast (KeyPressMask_raw_callback): ditto * src/BufferView.[Ch]: name change _owner -> owner_ and _buffer -> buffer_, a lot of changes because of this. currentBuffer() -> buffer(), setBuffer(...) -> buffer(...), getOwner() -> owner(), also changes to other files because of this. 1999-11-09 Lars Gullik Bjønnes * src/vc-backend.[Ch]: new files. The backends for vc handling, have no support for RCS and partial support for CVS, will be improved later. * src/insets/ several files: changes because of function name changes in Bufferview and LyXView. * src/mathed/math_symbols.C (math_insert_symbol): use static_cast * src/support/LSubstring.[Ch]: new files. These implement a Substring that can be very convenient to use. i.e. is this possible: string a = "Mary had a little sheep"; Substring(a, "sheep") = "lamb"; a is now "Mary has a little lamb". * src/support/LRegex.[Ch]: a regex class that can be used to pick out patterns and subpatterns of strings. It is used by LSubstring and also by vc-backend.C * src/support/lyxstring.C: went over all the assertions used and tried to correct the wrong ones and flag which of them is required by the standard. some bugs found because of this. Also removed a couple of assertions. * src/support/Makefile.am (libsupport_a_SOURCES): added LSubstring.[Ch] and LRegex.[Ch] * src/support/FileInfo.h: have struct stat buf as an object and not a pointer to one, some changes because of this. * src/LaTeXFeatures.C (getTClassPreamble): also use the information in layout when adding the layouts preamble to the textclass preamble. * src/LaTeXFeatures.h: use a vector to store the layout usage in. * configure.in (CPPFLAGS): use AC_CHECK_FUNCS to check for XOpenIM because of bug in OS/2. 1999-11-08 Jean-Marc Lasgouttes * lib/layouts/lyxmacros.inc (lyxcode): set the font with \verbatim@font instead of \ttfamily, so that it can be redefined. * src/BackStack.h, src/DepTable.C, src/DepTable.h, src/LaTeX.C, src/LaTeX.h, src/lastfiles.C, src/lastfiles.h, src/layout.C, src/layout.h, src/text2.C: add 'using' directive to bring the STL templates we need from the std:: namespace to the global one. Needed by DEC cxx in strict ansi mode. * src/support/LIstream.h,src/support/LOstream.h, src/support/lyxstring.h,src/table.h, src/lyxlookup.h: do not include in header files. This should be done in the .C files only. * development/lyx.spec.in: WHATSNEW has been renamed to NEWS (from Kayvan). 1999-11-05 Jean-Marc Lasgouttes * config/lib_configure.m4,lib/configure,lib/lyxrc.example: update from Kayvan to fix the tth invokation. * development/lyx.spec.in: updates from Kayvan to reflect the changes of file names. 1999-11-05 Lars Gullik Bjønnes * src/text2.C (InsertStringB): use std::copy (InsertStringA): use std::copy * src/bufferlist.C: use a vector to store the buffers in. This is an internal change and should not affect any other thing. * src/BufferView.C (waitForX): use XSync instead of the lengthy stuff in waitForX. * src/text.C (Fill): fix potential bug, one off bug. 1999-11-04 Lars Gullik Bjønnes * src/Makefile.am (lyx_main.o): add more files it depends on. * src/lyx_cb.C (addNewlineAndDepth): parameters in wrong order. * src/support/lyxstring.C: use size_t for the reference count, size, reserved memory and xtra. (internal_compare): new private member function. Now the compare functions should work for std::strings that have embedded '\0' characters. (compare): all compare functions rewritten to use internal_compare. 1999-11-03 Lars Gullik Bjønnes * src/support/lyxstring.C (compare): pass c_str() (compare): pass c_str (compare): pass c_str 1999-11-03 Jean-Marc Lasgouttes * src/support/DebugStream.C: was not included correctly. * lib/configure: forgot to re-generate it :( I'll make this file auto generated soon. 1999-11-03 Lars Gullik Bjønnes * acinclude.m4 (cross_compiling): add -fpermissive when gcc 2.95.x is used. * src/support/lyxstring.C: some changes from length() to rep->sz. avoids a function call. * src/support/filetools.C (SpaceLess): yet another version of the algorithm...now per Jean-Marc's suggestions. 1999-11-02 Lars Gullik Bjønnes * src/layout.C (less_textclass_desc): functor for use in sorting of textclasses. (LyXTextClass::Read): sort the textclasses after reading. * src/support/filetools.C (SpaceLess): new version of the SpaceLess functions. What problems does this one give? Please report. * images/banner_bw.xbm: made the arrays unsigned char * 1999-11-02 Jean-Marc Lasgouttes * src/support/lyxstring.C (find): remove bogus assertion in the two versions of find where this has not been done yet. * src/support/lyxlib.h: add missing int return type to lyx::chdir(). * src/menus.C (ShowFileMenu): disable exporting to html if no html export command is present. * config/lib_configure.m4: add a test for an HTML converter. The programs checked for are, in this order: tth, latex2html and hevea. * lib/configure: generated from config/lib_configure.m4. * src/lyxfunc.C (Dispatch): update and improve the execution of an html converter. The parameters are now passed through $$FName and $$OutName, instead of standard input/output. * src/lyxrc.{C,h}: rename \tth_command to \html_command. * lib/lyxrc.example: update description of \html_command. add "quotes" around \screen_font_xxx font setting examples to help people who use fonts with spaces in their names. 1999-11-02 Lars Gullik Bjønnes * Distribution files: updates for v1.1.2 * src/support/lyxstring.C (find): remove bogus assert and return npos for the same condition. 1999-11-01 Lars Gullik Bjønnes * added patch for OS/2 from SMiyata. 1999-10-29 Lars Gullik Bjønnes * src/text2.C (CutSelection): make space_wrapped a bool (CutSelection): dont declare int i until we have to. (alphaCounter): return a char const *. 1999-10-28 Jean-Marc Lasgouttes * src/support/syscall.C (Systemcalls::kill): src/support/filetools.C (PutEnv, PutEnvPath): src/lyx_cb.C (addNewlineAndDepth): src/FontInfo.C (FontInfo::resize): condition some #warning directives with WITH_WARNINGS. 1999-10-28 Lars Gullik Bjønnes * src/layout.[Ch] + several files: access to class variables limited and made accessor functions instead a lot of code changed becuase of this. Also instead of returning pointers often a const reference is returned instead. * src/form1.C (create_form_Figure): added a couple fo "no-c-format" * src/Makefile.am (dist-hook): added used to remove the CVS from cheaders upon creating a dist (EXTRA_DIST): added cheaders * src/support/lstrings.C (tostr(char)): fix it to handle param as a character not as a small integer. * src/support/lyxstring.C (find): removed Assert and added i >= rep->sz to the first if. 1999-10-27 Lars Gullik Bjønnes * src/layout.[Ch] src/BufferView.C src/LaTeXFeatures.C src/LyXView.C src/buffer.C src/bufferparams.C src/lyx_cb.C src/lyxfunc.C src/paragraph.C src/text.C src/text2.C src/insets/insetinclude.C: lyxlayout renamed to textclasslist. * src/layout.C: some lyxerr changes. * src/layout.[Ch] (LyXLayout::Read): changed second paramter to LyXTextClass. rewrote LT_COPYSTYLE, rewrote LT_OBSOLETEDBY (LyXLayoutList): removed all traces of this class. (LyXTextClass::Read): rewrote LT_STYLE (LyXTextClass::hasLayout): new function (LyXTextClass::GetLayout): rewritten to return an iterator + has both const and nonconst version. (LyXTextClass::delete_layout): new function. (LyXTextClassList::Style): bug fix. do the right thing if layout is to big. (LyXTextClassList::NumberOfLayout): new acces to layoutlist. (LyXTextClassList::NameOfLayout): ditto (LyXTextClassList::Load): ditto * src/buffer.C (makeLaTeXFile): new access to layoutlist * src/LaTeXFeatures.C (getTClassPreamble): new access to layoutlist * src/LyXAction.C (LookupFunc): added a workaround for sun compiler, on the other hand...we don't know if the current code compiles on sun at all... * src/support/filetools.C (CleanupPath): subst fix * src/insets/insetbib.C (delDatabase): subst fix, this looks _really_ weird. * src/support/filetools.C (PutEnvPath): subst fix, how come nobody complained about this one? * src/insets/insetinclude.C (Latex): subst fix * src/insets/insetbib.C (getKeys): subst fix * src/LyXSendto.C (SendtoApplyCB): subst fix * src/lyx_main.C (init): subst fix * src/layout.C (Read): subst fix * src/lyx_sendfax_main.C (button_send): subst fix * src/buffer.C (RoffAsciiTable): subst fix * src/lyx_cb.C (MenuFax): subst fix (PrintApplyCB): subst fix 1999-10-26 Juergen Vigna * src/table.C (TexEndOfCell) + (DocBookEndOfCell): removed some #if 0 (Read): Cleaned up this code so now we read only format vestion >= 5 1999-10-26 Lars Gullik Bjønnes * src/support/filetools.C (PutEnvPath): subst fix for EMX, how come nobody has complained about this one? * src/insets/insetinclude.C (Latex): subst fix * src/insets/insetbib.C (getKeys): subst fix * src/lyx_main.C (init): subst fix * src/layout.C (Read): subst fix * src/buffer.C (RoffAsciiTable): subst fix * src/lyx_cb.C (MenuFax): subst fix. * src/layout.[hC] + some other files: rewrote to use std::container to store textclasses and layouts in. Simplified, removed a lot of code. Make all classes assignable. Further simplifications and review of type use still to be one. * src/menus.C (ShowFileMenu/ShowFileMenu2): Use the iterators from lastfiles to create the lastfiles partr of the menu. * src/lastfiles.[Ch]: rewritten to use deque to store the lastfiles in. Uses fstream for reading and writing. Simplifies code. * src/support/syscall.C: remove explicit cast. * src/BufferView.C (CursorToggleCB): removed code snippets that were commented out. use explicat C++ style casts instead of C style casts. also use u_vdata instea of passing pointers in longs. * src/PaperLayout.C: removed code snippets that were commented out. * src/lyx_gui_misc.C: removed code snippets that were commented out. * src/lyx_main.C: removed code snippets that wer commented out. * src/paragraph.C: removed code snippets that were commented out. * src/lyxvc.C (logClose): use static_cast (logUpdate): ditto (viewLog): remove explicit cast to void* (showLog): removed old commented code * src/menus.C: use static_cast instead of C style casts. use u_vdata instead of u_ldata. remove explicit cast to (long) for pointers. Removed old code that was commented out. * src/insets/inset.C: removed old commented func * src/insets/insetref.C (InsetRef): removed old code that had been commented out for a long time. (Edit): ditto (escape): removed C style cast * src/insets/insetlatexaccent.C (Draw): removed old commented code * src/insets/insetlatex.C (Draw): removed old commented code (Read): rewritten to use string * src/insets/insetlabel.C (escape): removed C style cast * src/insets/insetindex.h: removed vdata and ldata from FD_index_form * src/insets/insetindex.C: use static_cast and u_vdata, removed old commented code. * src/insets/insetinclude.h: removed a couple of stupid bools * src/insets/insetinclude.C (include_cb): use static_cast and u_data. (Clone): remove C style cast (getKeys): changed list to lst because of std::list * src/insets/inseterror.C (Draw): removed som old commented code. * src/insets/insetcommand.C (Draw): removed some old commented code. * src/insets/insetbib.C (bibitem_cb): removed code that has been commented out forever. (bibitem_cb): use static_cast instead of C style cast use of vdata changed to u_vdata. * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forward the data parameter. (CloseUrlCB): use static_cast instead of C style cast. (CloseUrlCB): added a fl_free form...it seemed to be missing. * src/insets/insetinfo.C (Edit): pass object in u_vdata instead (C_InsetInfo_CloseInfoCB): forward the ob parameter (CloseInfoCB): static_cast from ob->u_vdata instead. (Edit): removed bogus arg from fl_set_object_shortcut, set to 1 instead. * src/insets/inseterror.C (Edit): pass object in u_vdata instead (C_InsetError_CloseErrorCB): forward the ob parameter (CloseErrorCB): static_cast from ob->u_vdata instead. * src/vspace.h: include LString.h since we use string in this class. * src/vspace.C (lyx_advance): changed name from advance because of nameclash with stl. And since we cannot use namespaces yet...I used a lyx_ prefix instead. Expect this to change when we begin using namespaces. * src/BufferView.[Ch] (BufferView::~BufferView): removed * src/BackStack.h: rewrote to use std::stack. made BackStackItem and removed now defunct constructor and deconstructor. * src/BufferView.h: have backstack as a object not as a pointer. removed initialization from constructor. added include for BackStack * development/lyx.spec.in (%build): add CFLAGS also. * src/screen.C (drawFrame): removed another warning. 1999-10-25 Jean-Marc Lasgouttes * renamed WHATSNEW to NEWS (usual GNU style), CHANGES to OLD-CHANGES (not used anymore) and modified INSTALL, INSTALL.OS2, README and ANNOUNCE a bit for the next release. More work is needed, of course. * src/paragraph.C (SimpleTeXBlanks): spaces are automatically made unbreakable if we are in freespacing mode (LyX-Code), but not in latex mode. 1999-10-25 Lars Gullik Bjønnes * src/BackStack.h: fixed initialization order in constructor * Makefile.am (MAINTAINERCLEANFILES): removed po/POTFILES.in * acinclude.m4 (VERSION): new rules for when a version is development, added also a variable for prerelease. (warnings): we set with_warnings=yes for prereleases (lyx_opt): prereleases compile with same optimization as development (CXXFLAGS): only use pedantic if we are a development version * src/BufferView.C (restorePosition): don't do anything if the backstack is empty. * src/BackStack.h: added member empty, use this to test if there is anything to pop... 1999-10-25 Juergen Vigna * forms/form1.fd + * forms/layout_forms.fd + * forms/latexoptions.fd + * lyx.fd: changed for various form resize issues * src/mathed/math_panel.C + * src/insets/inseterror.C + * src/insets/insetinfo.C + * src/insets/inseturl.C + * src/insets/inseturl.h + * src/LaTeXLog.C + * src/LyXSendto.C + * src/PaperLayout.C + * src/ParagraphExtra.C + * src/TableLayout.C + * src/form1.C + * src/layout_forms.C + * src/lyx.C + * src/lyx_cb.C + * src/lyx_gui.C + * src/lyxfr0.C + * src/lyxfunc.C + * src/lyxvc.C + * src/menus.C: fixed various resize issues. So now forms can be resized savely or not be resized at all. * forms/form_url.fd + * src/insets/form_url.[Ch]: added because it's cleaner and easier to modify IMO. * src/insets/Makefile.am: added files form_url.[Ch] 1999-10-25 Jean-Marc Lasgouttes * INSTALL: it is now possible to compile LyX with digital C++ 6.1 (and presumably 6.2). * src/{BufferView,LyXView,combox,filedlg,intl,lyxserver,lyxvc, menus,minibuffer,toolbar}.{C,h}: added C_xxx wrappers around remaining static member callbacks. * src/lyxfunc.C (Dispatch): Use _() instead of N_() fot minibuffer messages. * src/support/lyxstring.h: declare struct Srep as friend of lyxstring, since DEC cxx complains otherwise. 1999-10-24 Lars Gullik Bjønnes 1999-10-24 Lars Gullik Bjønnes * src/LaTeX.C (run): made run_bibtex also depend on files with extension ".bst" (runBibTeX): added scans for "\\bibstyle", now also ".bst" files are put into the dependency file. * src/spellchecker.C (create_ispell_pipe): removed old #warning, the code has shown itself to work (create_ispell_pipe): removed another warning, added a comment instead. * src/minibuffer.C (ExecutingCB): removed code that has been commented out a long time * src/lyxfunc.C (processKeyEvent): removed some very old commented out code + a warning. * src/support/lyxstring.h: comment out the three private operators, when compiling with string ansi conforming compilers they make problems. * src/mathed/math_symbols.C (AddBitmap): change 6th arg to be unsigned char *. (pixmapFromBitmapData): change type of bdata to be unsigned char * (pixmapFromBitmapData): add a reinterpret_cast in the call to XCreateImage * src/mathed/math_panel.h: change 6th arg to AddBitmap to be unsigned char * * src/mathed/math_panel.C (create_math_panel): remove explicit casts * src/bmtable.h: change last paramter to fl_set_bmtable_data to be unsigned char *. * src/bmtable.C (struct BMTABLE_SPEC): make bdata unsigned char * (draw_bitmaptable): add a reinterpret_cast to sp->bdata in the call to XCreatePixmapFromBitmapData (fl_set_bmtable_data): change the last argument to be unsigned char * (fl_set_bmtable_file): change bdata to unsinged char *, change bw and bh to be unsigned int, remove explicit casts in call to XReadBitmapFileData. * images/arrows.xbm: made the arrays unsigned char * * images/varsz.xbm: ditto * images/misc.xbm: ditto * images/greek.xbm: ditto * images/dots.xbm: ditto * images/brel.xbm: ditto * images/bop.xbm: ditto * Makefile.am (MAINTAINERCLEANFILES): added po/POTFILES.in * acinclude.m4 (LYX_GXX_STRENGHT_REDUCE): removed. (LYX_PROG_CXX): added -pedantic to g++ compile options when with-warnings, removed the __STRING_ANSI__ hack, seems to not be needed. (LYX_CXX_CHEADERS): added to the test. 1999-10-23 Lars Gullik Bjønnes * src/lyx_cb.C (addNewlineAndDepth): changed to use string::append. * src/support/lyxstring.C (append): fixed something that must be a bug, rep->assign was used instead of rep->append. * src/support/Makefile.am (libsupport_a_SOURCES): added LIstream.h and LOstream.h * src/lyxfunc.C (processKeyEvent): removed faulty line that made lyx insert double chars. Fix spotted by Kayvan. 1999-10-23 Asger Alstrup Nielsen * Fixed the tth support. I messed up with the Emacs patch apply feature and omitted the changes in lyxrc.C. 1999-10-22 Juergen Vigna * src/insets/figinset.C (CallbackFig): Just changed the defines a bit. * src/lyx_cb.C (MenuInsertRef) + * src/lyx_gui.C (create_forms): Inserted fl_set_form_minsize so that the form cannot be resized under it limits (fixes a segfault) * src/lyx.C (create_form_form_ref) + * forms/lyx.fd: Changed Gravity on name input field so that it is resized correctly. 1999-10-22 Jean-Marc Lasgouttes * configure.in: use LYX_CXX_STL_MODERN_STREAMS; check for headers and . * acinclude.m4 (LYX_CXX_STL_MODERN_STREAMS): new test. Checks whether provides the latest standard features, or if we have an oldstyle library (like in egcs). (LYX_CXX_STL_STRING): fix the test. * src/support/DebugStream.{C,h}: use L{I,O}stream.h and condition the code on MODERN_STL_STREAM. * src/support/lyxstring.h: use L{I,O}stream.h. * src/support/L{I,O}stream.h: new files, designed to setup correctly streams for our use - includes the right header depending on STL capabilities - puts std::ostream and std::endl (for LOStream.h) or std::istream (LIStream.h) in toplevel namespace. 1999-10-22 Lars Gullik Bjønnes * src/LaTeX.C (run): added a check in 0 sumchange so that if it was a bib file that had been changed we ensure that bibtex is run. (runBibTeX): enhanced to extract the names of the bib files and getting their absolute path and enter them into the dep file. (findtexfile): static func that is used to look for tex-files, checks for absolute patchs and tries also with kpsewhich. Alternative ways of finding the correct files are wanted. Will probably be moved. (do_popen): function that runs a command using popen and returns the whole output of that command in a string. Should be moved to somewhere else. * src/DepTable.[Ch] (extchanged): new function that returns true if a file with extension ext has changed. * src/insets/figinset.C: added ifdef guards around the fl_free code that jug commented out. Now it is commented out when compiling with XForms == 0.89. * src/support/lyxstring.C: moved the definition of lyxstring::Srep to lyxstring.C, and only keep a forward declaration in lyxstring.h. Simplifies the header file a bit and should help a bit on compile time too. Also changes to Srep will not mandate a recompile of code just using string. (~lyxstring): definition moved here since it uses srep. (size): definition moved here since it uses srep. * src/support/lyxstring.h: removed a couple of "inline" that should not be there. 1999-10-21 Jean-Marc Lasgouttes * src/insets/inseturl.C (C_InsetUrl_CloseUrlCB): forgot to pass the 'ob' argument. 1999-10-21 Juergen Vigna * src/table.C (SetPWidth): Just a small fix so the alignment is not set to left if I just remove the width entry (or it is empty). * src/text2.C (SetCursorIntern): Fixed a bug calculating to use wrong paragraph when having dummy paragraphs. 1999-10-20 Juergen Vigna * src/insets/figinset.C: just commented some fl_free_form calls and added warnings so that this calls should be activated later again. This avoids for now a segfault, but we have a memory leak! * src/lyxfunc.C (processKeyEvent) (Dispatch): changed 'const char * argument' to 'string argument', this should fix some Asserts() in lyxstring.C. * src/lyxfunc.h: Removed the function argAsString(const char *) as it is not used anymore. 1999-10-20 Lars Gullik Bjønnes * src/support/lyxstring.C (getline): reads now _all_ chars. uses get instead of >> * src/Literate.h: some funcs moved from public to private to make interface clearer. Unneeded args removed. * src/Literate.C (scanLiterateLogFile): rewritten to use iostream instead of lyxlex. (scanBuildLogFile): ditto * src/LaTeX.C (scanLogFile): merged LaTeX Error handling into normal TeX Error. Still room for improvement. * src/LaTeX.[Ch]: removed scanError. Wrong place and not needed. * src/buffer.C (insertErrors): changes to make the error desctription show properly. * src/LaTeX.C (deplog): removed the test for file in lyx doc dir. could never happen * src/support/lyxstring.C (helper): changed to use sizeof(object->rep->ref). (operator>>): changed to use a pointer instead. * src/support/lyxstring.h: changed const reference & to value_type const & lets see if that helps. 1999-10-19 Lars Gullik Bjønnes * Makefile.am (rpmdist): fixed to have non static package and verison. * src/support/lyxstring.C: removed the compilation guards * src/vspace.C (nextToken): use i + 1 instead of ++i. Maks things a bit clearer. * src/support/Makefile.am (LYXSTRING): bruker USE_LYXSTRING for conditional compile of lyxstring.Ch * acinclude.m4 (LYX_CXX_STL_STRING): new and improved, still a stupid check, but it is a lot better than the bastring hack. (LYX_CXX_STL_STRING): bruker nå AM_CONDITIONAL(USE_LYXSTRING * several files: changed string::erase into string::clear. Not really needed. * src/chset.C (encodeString): use a char temporary instead * src/table.C (TexEndOfCell): added tostr around column_of_cell(fcell+i)+1 and around right_column_of_cell(fcell+i)+1 (TexEndOfCell): ditto (TexEndOfCell): ditto (TexEndOfCell): ditto (DocBookEndOfCell): ditto (DocBookEndOfCell): ditto (DocBookEndOfCell): ditto (DocBookEndOfCell): ditto * src/paragraph.C (TeXEnvironment): added tostr around foot_count -1 * src/lyxfr1.C (SearchReplaceAllCB): added tostr around replace_count * src/lyx_cb.C (MenuRunLaTeX): added tostr around ret (MenuBuildProg): added tostr around ret (MenuRunChktex): added tostr around ret (DocumentApplyCB): added tostr around ret * src/chset.C (encodeString): added tostr around t->ic * src/buffer.C (makeLaTeXFile): added tostr around secnumdepth (makeLaTeXFile): added tostr around tocdepth (makeLaTeXFile): added tostr around ftcound - 1 * src/insets/insetbib.C (setCounter): added tostr around counter. * src/support/lyxstring.h: added an operator+=(int) to catch more mistakes. * src/support/lyxstring.C (lyxstring): We DON'T allow NULL pointers. (lyxstring): We DON'T allow NULL pointers. 1999-10-19 Jean-Marc Lasgouttes * src/mathed/math_macro.C (MathMacroArgument::Write, MathMacroTemplate::WriteDef): add tostr() around macro arg numbers when writing them out. * src/LString.C: remove, since it is not used anymore. * src/support/lyxstring.C: condition the content to USE_INCLUDED_STRING macro. * src/mathed/math_symbols.C, src/support/lstrings.C, src/support/lyxstring.C: add `using' directive to specify what we need in . I do not think that we need to conditionalize this, but any thought is appreciated. * many files: change all callback functions to "C" linkage functions to please strict C++ compilers like DEC cxx 6.1 in mode strict_ansi. Those who were static are now global. The case of callbacks which are static class members is trickier, since we have to make C wrappers around them (see InsetError, InsetInfo and InsetUrl). The same holds for friends. I did not finish this yet, since it defeats the purpose of encapsulation, and I am not sure what the best route is. 1999-10-19 Juergen Vigna * src/support/lyxstring.C (lyxstring): we permit to have a null pointer as assignment value and just don't assign it. * src/vspace.C (nextToken): corrected this function substituting find_first(_not)_of with find_last_of. * src/TableLayout.C (UpdateLayoutTable) (TableOptionsCB) (TableOptCloseCB) (TableSpeCloseCB): inserted fl_set_focus call for problem with fl_hide_form() in xforms-0.89. 1999-10-19 Jean-Marc Lasgouttes * src/lyx_cb.C (LayoutsCB): fix bug where int was added to a string. 1999-10-18 Jean-Marc Lasgouttes * src/lyxrc.C (Read): RC_PRINTEXSTRAOPTIONS now uses LyXLex::next() and not eatline() to get its argument. 1999-10-17 Lars Gullik Bjønnes * src/DepTable.[Ch]: rewritten to store the dependencies in a map instead, use fstreams for io of the depfile, removed unneeded functions and variables. * src/LaTeX.[Ch] (class TeXErrors): rewrote to store the errors in a vector instead, removed all functions and variables that is not in use. 1999-10-16 Lars Gullik Bjønnes * src/buffer.C (insertErrors): use new interface to TeXError * Makefile.am (rpmdist): added a rpmdist target * lib/reLyX/Makefile.am: added RelyxFigure.pm and Verbatim.pm as per Kayvan's instructions. 1999-10-15 Jean-Marc Lasgouttes * src/Makefile.am: add a definition for localedir, so that locales are found after installation (Kayvan) 1999-10-14 Lars Gullik Bjønnes * development/.cvsignore: new file. 1999-10-14 Jean-Marc Lasgouttes * acinclude.m4 (LYX_CXX_CHEADERS): New macro. Checks whether the C++ compiler provides wrappers for C headers and use our alternate version otherwise. * configure.in: use LYX_CXX_CHEADERS. * src/cheader/: new directory, populated with cname headers from libstdc++-2.8.1. They are a bit old, but probably good enough for what we want (support compilers who lack them). * src/insets/Makefile.am, src/mathed/Makefile.am: remove src/support from includes. It turns out is was stupid. 1999-10-14 Lars Gullik Bjønnes * lib/Makefile.am (install-data-local): forgot a ';' (install-data-local): forgot a '\' (libinstalldirs): needed after all. reintroduced. 1999-10-13 Lars Gullik Bjønnes * configure.in (AC_OUTPUT): added lyx.spec * development/lyx.spec: removed file * development/lyx.spec.in: new file * po/*.po: merged with lyx.pot becuase of make distcheck * lib/Makefile.am (dist-hook): added dist-hook so that documentation files will be included when doing a make dist/distdir/distcheck. Requires cvs export -r HEAD lyxdoc to run. (pkgdata_SCRIPTS): added configure.cmd for now, we can use som conditional later. more: tried to make install do the right thing, exclude CVS dirs etc. * src/LaTeXLog.C (ShowLatexLog): reordered som statements so that Path would fit in more nicely. * all files that used to use pathstack: uses now Path instead. This change was a lot easier than expected. * src/support/path.h: new file * src/support/Makefile.am (libsupport_a_SOURCES): added path.h * src/Makefile.am (lyx_SOURCES): removed pathstack.[Ch] * src/support/lyxstring.C (getline): Default arg was given for para 3. removed. * Configure.cmd: removed file 1999-10-13 Jean-Marc Lasgouttes * src/support/DebugStream.[Ch]: remove the explicit std:: before streams classes and types, add the proper 'using' statements when MODERN_STL is defined. * src/debug.h: move the << operator definition after the inclusion of DebugStream.h * src/support/filetools.C: include "LAssert.h", which is needed later. * src/insets/Makefile.am, src/mathed/Makefile.am: add src/support to includes. * src/lyxfont.h, src/commandtags.h, src/mathed/math_defs.h: include "debug.h" to define a proper ostream. 1999-10-12 Asger Alstrup Nielsen * src/sys*: Cleaned up the Systemcall stuff a bit. Added "kill(int)" method to the SystemCall class which can kill a process, but it's not fully implemented yet. * src/*.C: Changed Systemcalls::Startscript() to startscript() * src/support/FileInfo.h: Better documentation * src/lyxfunc.C: Added support for buffer-export html * src/menus.C: Added Export->As HTML... * lib/bind/*.bind: Added short-cut for buffer-export html * src/lyxrc.*: Added support for new \tth_command * lib/lyxrc.example: Added stuff for new \tth_command 1999-10-12 Lars Gullik Bjønnes * lib/Makefile.am (IMAGES): removed images/README (pkgdata_SCRIPTS): use this instead of bin_SCRIPTS to that it installes in correct place. Check permisions is installed correctly. * src/LaTeX.C: some no-op changes moved declaration of some variables around. * src/LaTeX.h (LATEX_H): changed include guard name 1999-10-12 Jean-Marc Lasgouttes * lib/reLyX/Makefile.am: install noweb2lyx. * lib/Makefile.am: install configure. * lib/reLyX/configure.in: declare a config aux dir; set package name to lyx (not sure what the best solution is); generate noweb2lyx. * lib/layouts/egs.layout: fix the bibliography layout. 1999-10-08 Jürgen Vigna * src/support/filetools.C (FileOpenSearch): Fixed a bug where when in the PATH was something like /usr/bin;;/bin (note: the ;;) it returned without continuing to search the path. 1999-10-07 Lars Gullik Bjønnes * src/insets/insetquotes.C (Draw): Simplified a gread deal. This also fixes a bug. It is not allowed to do tricks with std::strings like: string a("hei"); &a[e]; this will not give what you think... Any reason for the complexity in this func? 1999-10-06 Asger Alstrup Nielsen * Updated README and INSTALL a bit, mostly to check that my CVS rights are correctly set up. 1999-10-06 Lars Gullik Bjønnes * src/support/lyxstring.C (helper): removed bogus Assert. strlen does not allow '\0' chars but lyxstring and std::string does. 1999-10-05 Lars Gullik Bjønnes * autogen.sh (AUTOCONF): let the autogen script create the POTFILES.in file too. POTFILES.in should perhaps now not be included in the cvs module. * some more files changed to use C++ includes instead of C ones. * src/filedlg.C (Reread): fixed a bug wrt Time. It was appended not assigned. (Reread): added tostr to nlink. buggy output otherwise. (Reread): added a string() around szMode when assigning to Buffer, without this I got a log of garbled info strings. * acconfig.h: commented out the PTR_AS_INT macros. They should not be needed. * I have added several ostream & operator<<(ostream &, some_type) functions. This has been done to avoid casting and warnings when outputting enums to lyxerr. This as thus eliminated a lot of explicit casts and has made the code clearer. Among the enums affected: kb_action, InsetLatexAccent::ACCENT_TYPE, a couple of mathed enums, some font enum the Debug::type enum. * src/support/lyxstring.h (clear): missing method. equivalent of erase(0, npos). * all files that contained "stderr": rewrote constructs that used stderr to use lyxerr instead. (except bmtable) * src/support/DebugStream.h (level): and the passed t with Debug::ANY to avoid spurious bits set. * src/debug.h (Debug::type value): made it accept strings of the type INFO,INIT,KEY. * configure.in (Check for programs): Added a check for kpsewhich, the latex generation will use this later to better the dicovery of all used files. * src/BufferView.C (create_view): we don't need to cast this to (void*) that is done automatically. (WorkAreaButtonPress): removed some dead code. 1999-10-05 Jean-Marc Lasgouttes * src/minibuffer.C (Init): make sure that the "Welcome to LyX!" is not overwritten when translated (David Sua'rez de Lis). * lib/CREDITS: Added David Sua'rez de Lis * lib/reLyX/configure.in: setup LYX_DIR correctly in reLyX. * src/bufferparams.C (BufferParams): default input encoding is now "latin1" * acinclude.m4 (cross_compiling): comment out macro LYX_GXX_STRENGTH_REDUCE. * acconfig.h: make sure that const is not defined (to empty) when we are compiling C++. Remove commented out code using SIZEOF_xx macros. * configure.in : move the test for const and inline as late as possible so that these C tests do not interefere with C++ ones. Remove the call to LYX_GXX_STRENGTH_REDUCE, since its usefulness has not been proven. 1999-10-04 Jean-Marc Lasgouttes * src/table.C (getDocBookAlign): remove bad default value for isColumn parameter. * src/menus.C (ShowFileMenu): add a missing tostr() for lastfiles shortcut. (ShowFileMenu2): ditto. * lib/reLyX/.cvsignore: add configure and aclocal.m4 to the list of files to ignore. 1999-10-04 Lars Gullik Bjønnes * Most files: finished the change from the old error code to use DebugStream for all lyxerr debugging. Only minor changes remain (e.g. the setting of debug levels using strings instead of number) 1999-10-02 Lars Gullik Bjønnes * src/layout.C (Add): Changed to use compare_no_case instead of strcasecmp. * src/FontInfo.C: changed loop variable type too string::size_type. 1999-10-01 Lars Gullik Bjønnes * src/support/Makefile.am: added -I${srcdir}/../ to INCLUDES and set ETAGS_ARGS to --c++ 1999-09-30 Lars Gullik Bjønnes * src/table.C (DocBookEndOfCell): commented out two unused variables * src/paragraph.C: commented out four unused variables. * src/lyx_cb.C (TocUpdateCB): moved variable i and added a new i insed a if clause with type string::size_type. * src/lyxfr1.C (IsSearchStringInText): changed iSrch from int to string::size_type. * src/lyxfunc.C (Dispatch): use string::size_type as loop variable. * src/lyx_cb.C (ReplaceWord): use string::size_type as loop variable, also changed loop to go from 0 to lenght + 1, instead of -1 to length. This should be correct. * src/LaTeX.C (scanError): use string::size_type as loop variable type. * src/BufferView.C (WorkAreaButtonPress): moved #if 0 up two lines (l.896) since y_tmp and row was not used anyway. * src/insets/insetref.C (escape): use string::size_type as loop variable type. * src/insets/insetquotes.C (Width): use string::size_type as loop variable type. (Draw): use string::size_type as loop variable type. * src/insets/insetlatexaccent.C (checkContents): use string::size_type as loop variable type. * src/insets/insetlabel.C (escape): use string::size_type as loop variable type. * src/insets/insetinfo.C: added an extern for current_view. * src/insets/insetcommand.C (scanCommand): use string::size_type as loop variable type. * most files: removed the RCS tags. With them we had to recompile a lot of files after a simple cvs commit. Also we have never used them for anything meaningful. * most files: tags-query-replace NULL 0. As adviced several plases we now use "0" instead of "NULL" in our code. * src/support/filetools.C (SpaceLess): use string::size_type as loop variable type. 1999-09-29 Lars Gullik Bjønnes * src/paragraph.C: fixed up some more string stuff. 1999-09-28 Lars Gullik Bjønnes * src/support/filetools.h: make modestr a std::string. * src/filetools.C (GetEnv): made ch really const. * src/lyxlib.h: removed the Maximum and Minimum inline functions, made code that used these use max/min from instead. * changed several c library include files to their equivalent c++ library include files. All is not changed yet. * created a support subdir in src, put lyxstring and lstrings there + the extra files atexit, fileblock, strerror. Created Makefile.am. edited configure.in and src/Makefile.am to use this new subdir. More files moved to support. * imported som of the functions from repository lyx, filetools * ran tags-query-replace on LString -> string, corrected the bogus cases. Tried to make use of lstrings.[hC], debugged a lot. There is still some errors in there. This is errors where too much or too litle get deleted from strings (string::erase, string::substr, string::replace), there can also be some off by one errors, or just plain wrong use of functions from lstrings. Viewing of quotes is wrong. * LyX is now running fairly well with string, but there are certainly some bugs yet (see above) also string is quite different from LString among others in that it does not allow null pointers passed in and will abort if it gets any. * Added the revtex4 files I forgot when setting up the repository. 1999-09-27 Lars Gullik Bjønnes * All over: Tried to clean everything up so that only the files that we really need are included in the cvs repository. * Switched to use automake. * Generaton of reLyX is not perfect, LYX_DIR does not get substituted. * Install has not been checked. 1999-09-22 Lars Gullik Bjønnes * po/pt.po: Three errors: l.533 and l.538 format specification error l. 402 duplicate entry, I just deleted it.