Bo Peng [Mon, 29 May 2006 14:56:08 +0000 (14:56 +0000)]
Some MSVC2003/2005 compatibility fixes, from Bo Peng (ben.bob@gmail.com)
* src/support/lyxsum.C: fix HAVE_DECL_ISTREAMBUF_ITERATOR
* src/support/mkdir.C: add direct.h for windows
* src/support/forkedcall.C: add cerrno under windows
* src/support/tempname.C: define S_IRUSR and S_IWUSR
* src/support/package.C.in: define PATH_MAX=256
Fix hang on exit under Windows.
TODO: reorganize this code. In particular make sure that this advise from Qt documentation is respected:
Since the QApplication object does so much initialization, it must be created before any other objects related to the user interface are created.
Right now this is not the case. For example, "FontLoader::initFontPath()" is called before the QApplication creation. Moreover, I suspect that a number of global variables contains Qt object that are initialized before the passage through parse_init(). This might also explain the message displayed by Qt that caused the hanging:
QObject::killTimer: timers cannot be stopped from another thread
Georg Baum [Sat, 27 May 2006 13:39:11 +0000 (13:39 +0000)]
* src/lyxsocket.C
(LyXServerSocket::~LyXServerSocket): Don't try to unregister and
close fd_ if the socket is disabled (avoids crash on win, from Peter
KÃŒmmel)
(LyXServerSocket::~LyXServerSocket): Check the return value of close()
(LyXDataSocket::~LyXDataSocket): ditto
Georg Baum [Thu, 25 May 2006 11:57:22 +0000 (11:57 +0000)]
Change the semantics of 'none' and 'auto' viewers/editors: 'none' means now
"Don't view/edit this format", and 'auto' means "Use the default viewer/editor".
* src/format.C
(fixCommand): Change semantics: "none" is equal to "", and "auto"
is removed if canAutoOpenFile returns false.
* lib/doc/Customization.lyx: Document the autoopen feature
* lib/configure.py
(checkProg): add optional not_found argument, defaulting to 'none'
(checkViewer): new, equivalent to checkProg with not_found = 'auto'
(checkFormatEntries): call checkViewer instead of checkProg for
viewers and editors
Georg Baum [Wed, 24 May 2006 20:06:42 +0000 (20:06 +0000)]
From Joost Verburg: Put the clean_dvi.py script into the main distribution
* lib/configure.py
(checkLatex): Add DraftDVI converter on windows if dv2dt and dt2dv
are available
(checkFormatEntries): Add DraftDVI entry on windows if dv2dt and
dt2dv are available
* insettabular.C (doDispatch):
do not mark the cursor undispatched after mouse (button 3) press
(prevents the cursor from leaving the tabular when opening the
dialog).
Georg Baum [Sun, 21 May 2006 17:33:03 +0000 (17:33 +0000)]
Fix crash that occurs if the cursor is in a table cell when the document class
is changed
* src/cursor.C: remove unused 'using std::swap'
* src/BufferView.C: ditto
* src/CutAndPaste.[Ch]
(switchBetweenClasses): replace ParagraphList argument with InsetText
argument. This avoids an unnecessary swap in lyxfunc.C.
* src/CutAndPaste.C
(pasteSelectionHelper): Adjust to the changes above
(pasteSelectionHelper): Use ParagraphList::swap instead of std::swap.
This fixes the crash.
* src/lyxfunc.C
(LyXFunc::dispatch): Adjust to switchBetweenClasses changes
Georg Baum [Sat, 20 May 2006 12:03:40 +0000 (12:03 +0000)]
* src/format.[Ch]
(document_): new flag, telling whether this is a document format and
we want to show this format in the export and view menus
(documentFormat): accessor for document_
* src/lyxrc.C
(LyXRC::read): Remove compatibility code for 1.3 \format entries.
Read the new format flags (but don't require them for 1.4
compatibility)
(LyXRC::write): Write the new format flags
* src/MenuBackend.C
(expandFormats): Remove the hardcoded exception for image formats
and use Format::isDocument() instead
* lib/doc/Customization.lyx: Document auto viever/editor and the
"document format" flag
* QPrefsDialog.[Ch]: Split up of QPrefsDialog into different modules (one per .ui file)
* panelstack.C: automatic creation of parent category if not already created.
* src/frontends/qt3/qfontloader.C (initFontPath, ~FontLoader):
* src/frontends/qt4/qfontloader.C (initFontPath, ~FontLoader): add fonts in
lyxdir/fonts to system fonts in windows; remove them in destructor.
Georg Baum [Fri, 19 May 2006 07:21:43 +0000 (07:21 +0000)]
Prevent automatic opening of child docs because of natbib labels
* src/insets/insetinclude.h
(updateBibfilesCache): adjust comment
(getBibfilesCache): ditto
* src/insets/insetinclude.C
(getChildBuffer): new, return the buffer of the child if it exists
(updateBibfilesCache): update the child buffer only if already loaded
(getBibfilesCache): scan the child buffer only if already loaded
* configure.ac: removed frontends/qt4/moc compilation.
* frontends/qt4/: moc files (*_moc.cpp) are now included at the end of relevant source file (*.C)
* SConscript: adapted to "moc included in .C file" change.
* frontends/qt4/Makefile.am: adapted to "moc included in .C file" change.
* src/lyxrc.C (read): do not reset editor/viewer values of "none".
* src/format.C (fixCommand): helper function: tweak command depending
of the availability of OS viewer/editor.
(setAutoOpen): run fixCommand over all the formats.
* src/support/Makefile.am: under win32, link against shlwapi.dll.
* src/support/os_*.C (canAutoOpenFile, autoOpenFile): new
functions, used to let the OS handle viewers and editors it knows about.
* configure.ac: improve check for shlwapi.
* lib/configure.py: remove check for native windows viewers.
* Get rid of Qt3Support linking
* revert to -lz instead -lzlib1 (I think Enrico was right about libraries ordering and -lz at the end of linking command works fine under mingw).
* remove win32 target from gcc/g++ replacement hack for cygwin
Bo Peng [Wed, 10 May 2006 21:53:31 +0000 (21:53 +0000)]
Scons-build system moves to development/scons, from Bo Peng (ben.bob@gmail.com)
* remove SConstruct config/scons_utils.py config/qt4.py
* add development/scons/qt4.py SConscript SConstruct scons_utils.py
Bo Peng [Tue, 9 May 2006 20:04:27 +0000 (20:04 +0000)]
Fix scons/cygwin, add command line CC options, from Bo Peng (ben.bob@gmail.com)
* Modified files: SConstruct, src/SConscript, src/tex2lyx/SConscript, boost/libs/SConscript:
* src/lyx_main.C (init): call queryUserLyXDir just after reading
lyxrc.dist, but before reading lyxrc.defaults; add extra_prefix to
the PATH before reconfiguring.
(needsUpdate): new helper function; returns true if file does not
exist or is older than configure.py.
(queryUserLyXDir): check textclass.lst and packages.lst in
addition to lyxrc.defaults.
(reconfigureUserLyXDir): use SystemCall, since system() does not
wait on windows.
Bo Peng [Tue, 9 May 2006 13:01:45 +0000 (13:01 +0000)]
Make scons work on mingw/windows, from Bo Peng (ben.bob@gmail.com)
* SConstruct: force the use of g++ under windows, and use the right libraries
* config/qt4.py: check QtGui4 etc as well.
* src/SConscript: link to the right libraries
* src/tex2lyx/SConscript: use the right libraries
* src/frontends/qt3/SConscript: manually moc .h files under windows
Bo Peng [Mon, 8 May 2006 21:03:01 +0000 (21:03 +0000)]
Some fixes to the scons-based building sytem, from Bo Peng (ben.bob@gmail.com)
* SConstruct: add extra_inc_path1, fix mingw logged spawn, try to handle QtCore4 etc
* src/SConscript: remove lyx_base library
* src/frontends/qt4/SConscript: remove some extra files
* Move scons_utils.py and qt4.py to config directory
Michael Schmitt [Mon, 8 May 2006 20:30:52 +0000 (20:30 +0000)]
src/paragraph.h:
remove lookupChangeType;
rename setChange to setChangeType;
rename setChangeFull to setChange
src/paragraph_pimpl.h:
remove lookupChange;
rename lookupChangeFull to lookupChange;
rename setChange to setChangeType;
rename setChangeFull to setChange
src/changes.h: remove lookup;
rename lookupFull to lookup;
rename loose_contains to containsOrPrecedes;
Michael Schmitt [Mon, 8 May 2006 18:09:19 +0000 (18:09 +0000)]
fix LFUN enum values (some of them were broken by r13801)
adjust some commands according to the LyX naming conventions
(toggle-tooltip => tooltip-toggle, *-change(s) => change(s)-*)
Bo Peng [Mon, 8 May 2006 03:37:49 +0000 (03:37 +0000)]
scons build system: a few cygwin-related fixes.
* SConstruct: pass -Wl, options correctly
* scons_utils.py: find boost libraries with more complex names
* qt4.py: fix a bug regarding the use of pkg_config
* src/SConscript: build a static library for src/*
Georg Baum [Tue, 2 May 2006 13:07:38 +0000 (13:07 +0000)]
* src/frontends/qt3/moc/Makefile.am: Remove extra qt3 include path
* src/frontends/qt3/ui/moc/Makefile.am: ditto
* src/frontends/qt3/ui/*.ui: Add extra includes to the
implementation rather than the declaration
* src/lyx_main.C (readRcFile): do not report an error if file is not
found.
(init): read lyxrc.dist before lyxrc.defaults; remove code to read
lyxrc (LyX 1.1.5 compatibility code).
* src/encoding.C (read):
* src/language.C (read): set debug to the INFO channel.
Georg Baum [Mon, 1 May 2006 08:05:22 +0000 (08:05 +0000)]
Code cleanup of \bigl related stuff:
* src/cursor.C
(LCursor::plainInsert): Move special \bigl stuff from here to
MathNestInset::interpret
(LCursor::macroModeClose): try to intepret the current macro before
it is simply inserted
* src/mathed/math_nestinset.C
(MathNestInset::doDispatch): try to intepret the argument of
LFUN_SELFINSERT also if it is longer than one character
* src/mathed/math_nestinset.[Ch]
(MathNestInset::interpret): new, moved from LCursor::plainInsert
Bo Peng [Fri, 28 Apr 2006 16:13:35 +0000 (16:13 +0000)]
Add document->compressed menu item, by Bo Peng (ben.bob@gmail.com)
* src/LyXAction.C, src/lfuns.h: add LFUN_TOGGLE_COMPRESSION
* src/BufferView_pimpl.C: react to menu item
* lib/ui/stdmenus.ui: add buffer_toggle_compression
Bo Peng [Fri, 28 Apr 2006 14:29:38 +0000 (14:29 +0000)]
Fix a few issues with session/lastopenedfiles, Bo Peng (ben.bob@gmail.com)
* src/bufferlist.C: save opened file list here, do not save slave document
* src/lyxfunc.C: not here
* src/session.[nC]: change to single file addition
* src/lyx_main.C: needed change because of single file addition