Commit Graph

321 Commits

Author SHA1 Message Date
Bo Peng
f189214a89 Session: restore toolbars in the right order and location
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16963 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-31 02:39:46 +00:00
Bo Peng
aaa544313d Slightly better toolbar session restoration, from Jurgen
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16950 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-30 15:30:33 +00:00
Georg Baum
feb7895965 Add machinery to output arbitrary unicode characters with LaTeX commands
read from a text file.

	* src/encoding.[Ch]

	(Encoding::latexChar): New, output a character to LaTeX
	(Encoding::validate): New, add needed preamble stuff for a character
	(Encodings::read): Read new unicodesymbols file
	(Encodings::isCombiningChar): New, is a character a combining char?

	* src/paragraph_pimpl.C
	(isEncoding): Delete, no longer needed
	(getEncoding): New, get the real encoding of a font
	(Paragraph::Pimpl::latexSurrogatePair): New, output a surrogate pair
	to LaTeX
	(Paragraph::Pimpl::simpleTeXBlanks): Use latexSurrogatePair if needed
	(Paragraph::Pimpl::simpleTeXSpecialChars): Ditto, and replace several
	hardcoded characters with a call of encoding.latexChar()
	(Paragraph::Pimpl::validate): replace several hardcoded characters
	with a call of encoding.validate()

	* src/support/debugstream.h
	(basic_debugstream::disable): New, disable the stream completely
	(basic_debugstream::enable): New, reenable the stream

	* src/lyx_main.[Ch]: Adjust to changes above

	* src/paragraph.C: Ditto

	* lib/unicodesymbols: New file with UCS4 -> LaTeX command mapping.
	It is far from complete yet, but contains most accents on latin
	characters.

	* lib/Makefile.am: add lib/unicodesymbols

	* development/scons/scons_manifest.py: ditto

	* development/tools/unicodesymbols.py: Helper script to update
	lib/unicodesymbols with new symbols


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16920 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-28 21:27:45 +00:00
Abdelrazak Younes
801f807063 Display error/warning dialogs if possible.
* ExceptionMessage: new exception based message for errors and warnings.

* package.C.in:
  - replace lyxerr based errors and warning with ExceptionMessage throwing.
  - bail_out(): erased!

* os_win32.C:
  - replace lyxerr based errors and warning with ExceptionMessage throwing.
  - bail_out(): erased!

* tex2lyx.C: catch any exception from Package class.

* lyx_main.C:  catch any exception from Package class and act accordingly.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16834 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-24 15:49:20 +00:00
Abdelrazak Younes
6d7cd27910 With this commit, errors and warnings can use message box even before LyX is properly initialized. This is especially useful for missing sysdir and/or userdir directory.
* Alert.C:
  - error(): calls error_pimpl() in any case.
  - warning(): calls warning_pimpl() in any case.

* Alert_pimpl.C:
  - error_pimpl(): construct a QApplication if LyX is not initialized yet.
  - warning_pimpl(): ditto.

* lyx_main.C:
  - parse_sysdir(): replace lyxerr with Alert::error().
  - parse_userdir(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16823 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 12:38:20 +00:00
Jean-Marc Lasgouttes
9a600f0e30 * lyx_main.C (readUIFile): when reading an include file which name
ends in .ui, try the .inc version too (support for user ui files)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16762 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-19 14:30:30 +00:00
Georg Baum
77b9dbd557 Fix several filename and environment variable encoding problems
* src/LaTeX.C
	(LaTeX::deplog): Assume that filenames in log files are stored in
	the file system encoding

	* src/frontends/qt4/qt_helpers.[Ch]
	(internal_path): delete

	* src/frontends/qt4/QGraphics.C: Adjust to change above

	* src/frontends/qt4/QPrefsDialog.C: ditto

	* src/frontends/qt4/QExternal.C: ditto

	* src/frontends/qt4/QInclude.C: ditto

	* src/support/os.h: Document the encoding of filename arguments

	* src/support/os_win32.h: ditto

	* src/support/filetools.C
	(findtexfile): Convert filename from file system encoding

	* src/support/os_win32.C: Convert filenames from utf8 to file system
	encoding and vice versa where needed

	* src/support/os_cygwin.C: ditto

	* src/support/getcwd.C
	(getcwd): Use internal_path() with correct encoding

	* src/support/docstring.[Ch]
	(from_filesystem8bit): new conversion function

	* src/support/environment.C
	(getEnv): convert environment variable from local 8bit encoding to utf8
	(setEnv): convert environment variable from utf8 to local 8bit encoding

	* src/support/environment.h: document encoding of function arguments


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16753 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 20:47:27 +00:00
Abdelrazak Younes
3d2184730a * mover.h
- SpecialisedMover(): add virtual destructor (fix bug 2916)
  - Movers: rename iterator to const_iterator.
  - theMovers(), theSystemMovers(), getMover(), setMover(): new extern definitions.

* mover.C: 
  - SpecialisedMover::operator(): get rid of bogus MSVC warning.
  - delete global variable movers and system_movers.

* lyx_main.C:
  - LyX::Singletons: new movers_ ans system_movers members.
  - implement Movers access functions.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16743 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 08:42:53 +00:00
Abdelrazak Younes
74f3ca3246 Transfer the global converters and system_converters variables to LyX::Singletons class.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16725 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-17 13:18:16 +00:00
Abdelrazak Younes
f2c60a584a it seems that queryUserLyXDir needs to have access to the translation...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16674 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-14 11:31:30 +00:00
Abdelrazak Younes
197ca2420b * messages.h:
- getMessages(), getGuiMessages(): new global function definitions

* lyx_main.C: implementation of getMessages() and getGuiMessages().

* LyX class:
  - getMessages(), getGuiMessages(), setGuiLanguage(): new interface for Messages access.

* LyX::Singletons class:
  - messages_: new container for Messages objects.

* Buffer::Impl::messages is now a pointer to the singleton defined in lyx_main.C.

* gettext.C: _() uses the global getGuiMessages() instead of the local static Messages object.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16673 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-14 10:37:14 +00:00
Enrico Forestieri
fc3a2761de Log:
Move OS dependent code where it belongs.

	* src/lyx_cb.C:
	Remove unused include

	* src/support/os.h
	* src/support/os_unix.C
	* src/support/os_win32.C
	* src/support/os_cygwin.C:
	Move here the code from fontutils.[Ch]

	* src/support/os_cygwin.C
	(external_path, external_path_list): don't differentiate anymore
	on Qt/X11 or Qt/Win builds.

	* src/support/environment.C
	(setEnvPath): get rid of the #ifdef for cygwin.

	* src/lyx_main.C
	(LyX::exec): addFontResources and restoreFontResources are now
	in the os namespace.

	* src/support/Makefile.am
	* src/client/Makefile.am
	* src/tex2lyx/Makefile.am
	* development/scons/scons_manifest.py:
	Updated

	* src/support/fontutils.[Ch]:
	Removed



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16655 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-11 21:22:18 +00:00
Georg Baum
a1389d411c Fix two filename bugs (from Enrico and me)
* src/support/filetools.[Ch]
	(fileOpenSearch): comment out since it is unused
	(fileSearch): Use addExtension instead of changeExtension, since we
	are always called without extesnion, or with the correct one.
	(addExtension): new function

	* src/lyx_main.C
	(LyX::init): tell fileSearch that we are also interested in the name
	if the file does not exist


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16361 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-21 12:04:01 +00:00
Enrico Forestieri
6b5289825e Don't use a global variable for avoiding removal of the system temp dir
* src/support/package.h
	(Package::system_temp_dir): new, return the system temp dir.

	* src/support/package.C.in
	(Package::Package): record the system temp dir.

	* src/lyx_main.C
	(LyX::prepareExit): don't remove the temporary directory if it
	is the same as the system temp dir, meaning that the lyx_tmpdir
	has not yet been created.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16318 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-17 21:52:40 +00:00
Abdelrazak Younes
2049cc5afc remove unneeded local variable.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16279 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-15 15:05:46 +00:00
Enrico Forestieri
cd5b51f4a3 Remove the tmp dir only if it has been created and create the lyxsocket
in the right place.

	* src/lyx_main.C
	(LyX::exec): create the lyxsocket in the temporary directory.
	(LyX::prepareExit): remove the temporary directory only if it
	has been created.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16262 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-13 05:29:19 +00:00
Georg Baum
fe5c73915e Make libQtCore a support library like boost and implement encoding conversion
from/to the local 8bit encoding with it.
Only the autotools build system is updated, scons and cmake users need to
add qt4 cpp flags when compiling libsupport, and link libsupport against
libQtCore.

	* src/frontends/qt4/qt_helpers.[Ch]
	(toqstr, qchar_to_ucs4, ucs4_to_qchar, ucs4_to_qstring,
	 qstring_to_ucs4, fromqstr): Move these qstring conversion functions
	from here ...

	* src/support/qstring_helpers.[Ch] ... to these new files

	* src/support/docstring.[Ch]
	(from_local8bit): new conversion function from local 8bit encoding
	to ucs4
	(to_local8bit): new conversion function from ucs4 to local 8bit
	encoding to ucs4
	(to_local8bit_failure): exception that is thrown by to_local8bit if
	the argument cannot be converted to the local encoding

	* src/support/filename.C
	(FileName::toFilesystemEncoding): implement with the help of QFile

	* src/support/Makefile.am: Add new files, qt4 cpp flags and link
	against libQtCore

	* src/client/client.C: Convert commandline input from local encoding
	to ucs4. Convert stuff that is sent to to the server to utf8,
	because LyX interprets it as utf8 on the other end of the pipe.

	* src/lyx_main.C
	(LyX::exec): convert commandline input from local encoding to utf8
	(LyX::init): ditto
	(LyX::easyParse): ditto

	* development/scons/scons_manifest.py: Add new files

	* config/qt4.m4: Define new variables QT4_CORE_INCLUDES,
	QT4_CORE_LDFLAGS and QT4_CORE_LIB


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16257 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-12 20:19:46 +00:00
Georg Baum
79749a9599 * src/lyx_main.C
(LyX::init): Remove obsolete test for arguments starting with '-'.
	The frontend did already parse these arguments before LyX::init is
	called, and therefore any remaining ones are reported as error
	earlier in LyX::init, so the removed code does never trigger.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16206 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-07 21:27:32 +00:00
Georg Baum
95579c2a71 more unicode filenames (+ fix one possible initialization order bug in
needsUpdate() in src/lyx_main.C).
toFilesystemEncoding() is now used in all places where it is needed if I did
not forget anything.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16184 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 12:57:01 +00:00
Georg Baum
02c64e55c7 remove unneeded includes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16176 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 17:41:03 +00:00
Abdelrazak Younes
7ce57b1b20 Cleanup loading of files and gui session restoring.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16174 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 16:54:32 +00:00
Michael Schmitt
75d0226ce8 * src/lyxfunc.C:
* src/frontends/qt4/GuiView.C:
	* src/lyx_main.C: fix various typos in comments


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16141 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 21:27:31 +00:00
Peter Kümmel
7b2cce9d5d Clean up quit code.
We still need a solution for the Mac.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16135 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 17:39:31 +00:00
Georg Baum
ed99f752f9 more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16133 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 16:07:15 +00:00
Peter Kümmel
67f2a91dcc FIXME: remove global variable theApp
This pointer was one reason for the Mac crashes because it not always had 
the same value as the application_ smart pointer



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16119 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-30 00:04:51 +00:00
Peter Kümmel
9feb262948 Fix crash on Mac
Part 3: comment about further investigations 
    


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16115 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 21:57:46 +00:00
Peter Kümmel
5eccf6ebc0 Fix crash on Mac
Part 1: don't dereference untested pointers



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16108 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 21:27:54 +00:00
Enrico Forestieri
12f83da64f Avoid an infinite loop when using the -geometry option on *nix
* src/lyx_main.C
	(easyParse): decrement the loop variable only when remove > 0


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16107 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 19:44:13 +00:00
Peter Kümmel
9dfe4a10d3 also support the geometry option on Windows + Qt/Windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16105 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 16:45:38 +00:00
Peter Kümmel
dfb079e778 add tool bar popup with three icon sizes: small, normal, big
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16100 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 10:04:35 +00:00
Georg Baum
89721c3b4c Do not delete /tmp.
Somebody should find a real fix.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16094 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 20:04:16 +00:00
Peter Kümmel
c7a3620eeb fix wrong toolbar icon size, default value is
in lyx_main.C. Size will be stored in the session
file.

*      src/lyx_main.C              : default value
*      src/frontends/Application.h : restore also icon size
*      src/frontends/LyXView.h     :        "
*      src/frontends/qt4/GuiView.h :        "
*      src/frontends/qt4/GuiView.C :        "
*      src/frontends/Application.C :        "



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16085 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 23:35:43 +00:00
Georg Baum
8e6e970d7b Next step of true unicode filenames: Use support::FileName instead of
std::string at many places (not all yet).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16069 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 21:30:39 +00:00
Abdelrazak Younes
0dae88fca6 * BufferList: new begin() and end() methods.
* LyX::exec(): in non-GUI mode, execute batch commands on all buffers.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16068 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 16:39:39 +00:00
Abdelrazak Younes
0ca269ef39 * BufferList::last(): new method returning last loaded Buffer if any.
* LyX::exec(): fix batch export in non GUI mode.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16066 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 15:47:45 +00:00
Abdelrazak Younes
e6a6548712 * lyx_main.[Ch]
- execBatchCommands(): split in loadFiles() and execBatchCommands().
  - exec(): enable batch command to be processed from GUI.

* Application:
  - start(): deleted.

* GuiApplication:
  - execBatchCommands(): new method

* GuiWorkArea::update(): call viewport()->repaint() instead of viewport()->update(), this enable to update the screen immediately when asked by a batch command.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16051 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 02:18:32 +00:00
Abdelrazak Younes
2fc592cf73 * LyX::exec():
In use_gui mode, call execBatchCommand() after createApplication(). This enable to let the frontend parse the command line.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16027 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-24 11:18:56 +00:00
Abdelrazak Younes
3e40bf3dbf Fix MacOS crash on startus
* LyX::execBatchCommands(): allow any extra argument unknown to the core to be passed out to the frontend.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16014 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-23 15:18:09 +00:00
Peter Kümmel
d32701179e check if theApp is valid
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15973 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-19 11:10:04 +00:00
Abdelrazak Younes
7aa50e8f2b * lyx_main.[Ch]
- merge exec() and priv_exec()
  - LyX constructor is now public.
  - there is no global singleton_ object anymore, only a pointer.
  - IconvProcessor(): new utf8 to ucs4 convertor.

* main.C: instantiate a LyX object and exec() it. No more use of static methods.

* docstring.C: use utf8ToUcs4() instead of a static variable.

* unicode.h: declare extern utf8ToUcs4().



  

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15967 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-18 17:47:12 +00:00
Abdelrazak Younes
3bc4d28449 Revert change in rev. 15955 because as Georg says:
This fix will create extra translator work, and nobody will remmeber that
bformat should be used instead of your solution once the real problem is
fixed. If you use from_ascii instead of from_utf8 everything is OK. utf8
can be wrong as encoding for files anyway, so for now we require that files
are pure ascii.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15957 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 17:28:14 +00:00
Abdelrazak Younes
4f5432f427 * docstring.C: add a FIXME in utf8_to_ucs4() WRT static IconvProcessor and Mac
* lyx_main.C:
  - LyX::prepareExit(): avoid utf8_to_ucs4() conversion at this late stage because this can cause problem on Mac.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15955 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 16:58:32 +00:00
Abdelrazak Younes
146631a5c7 Fix Mac crash on exit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15954 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 15:24:26 +00:00
Georg Baum
5ed606f9c5 Add a cache for converted image files. This needs to be enabled in the
preferences file with \use_converter_cache true. It is disabled by default,
and no GUI support for changing the preferences is yet implemented.

	* src/insets/insetgraphics.C
	(InsetGraphics::prepareFile): Use image file cache

	* src/insets/ExternalSupport.C
	(updateExternal): Use image file cache

	* src/exporter.C
	(Exporter::Export): Do not use image file cache

	* src/graphics/GraphicsCacheItem.C

	(CacheItem::Impl::imageConverted): Add the converted file to the
	image file cache
	(CacheItem::Impl::convertToDisplayFo): Use image file cache

	* src/converter.C
	(Converters::convert): Use image file cache if the caller allowed that

	* src/converter.h
	(Converters::convert): Adjust arguments

	* src/Makefile.am: Add new files

	* src/support/lyxlib.h
	(chmod): new function
	(copy): add mode argument

	* src/support/copy.C
	(chmod): new function
	(copy): implement mode argument

	* src/support/mkdir.C
	(lyx::support::mkdir): Add warning if permissions are ignored

	* src/lyxrc.[Ch]: Add new settings \converter_cache_maxage and
	\use_converter_cache

	* src/ConverterCache.[Ch]: New image file cache

	* src/importer.C
	(Importer::Import): Do nut use the image file cache

	* src/lyx_main.C
	(LyX::init): Initialize the image file cache

	* src/mover.[Ch]
	(Mover::do_copy): Add mode argument
	(SpecialisedMover::do_copy): ditto

	* configure.ac: Check for chmod

	* development/cmake/ConfigureChecks.cmake: ditto

	* development/cmake/config.h.cmake: ditto

	* development/scons/SConstruct: ditto

	* development/scons/scons_manifest.py: Add new files


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15897 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 10:27:57 +00:00
Michael Schmitt
3815df7705 * lyx_main.C: remove duplicate function assertion_failed
* boost.C: fix namespace problem regarding assertion_failed


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15844 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-10 21:38:07 +00:00
Bo Peng
b9c604e968 session: rename some functions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15607 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 20:01:00 +00:00
Bo Peng
0fc684e6e6 class session reorganization
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15581 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 14:18:03 +00:00
Abdelrazak Younes
55eae1a7f8 * Gui.h: new closeAll() pure virtual method.
* qt4/Alert_pimpl.C: make sure the proper Qt attributes are set.

* GuiApplication::quitLyx(): add the "force" argument to the funcRequest.

* GuiImplementation:
  - GuiImplementation(): remove the signal connection. This was triggered after the LastWindowClosed signal so was not useful.
  - cleanupViews(): renamed to unregisterView() and handle the WorkAreas as well.
  - closeAll(): new method (from LyXView).

* GuiView.C
  - clean up the includes order.
  - closeEvent(): make sure that theBufferList().quitWriteAll() is called if last window closed.

* lyx_main.C / LyX::quit():
  - remove noAsk argument
  - delete bufferList::quitWriteAll() call (this is handled in the frontend).
  - delete Session stuff (ditto)

* LyXFunc::dispatch()
  - LFUN_LYX_EXIT: close all window before exiting from user command (as opposed to last window closed).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15535 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 15:01:07 +00:00
Joost Verburg
6700802966 read lyxrc.dist a second time to be able to override viewer auto-detection
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15515 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-23 18:01:31 +00:00
Abdelrazak Younes
f4857dab04 new LFUN_WINDOW_CLOSE
* LyXFunc:
  - dispatch(): transfer assertion on lyx_view_ to each LFUN on a case by case basis.
  - dispatch(): new LFUN_WINDOW_CLOSE
  - getStatus(): special treatment for LFUN_LYX_QUIT

* LyX:
  - views_, addLyXView(): deleted
  - quit(): call saveGeometry() on each LyXView before exiting.

* GuiApplication:
  - is now a QObject.
  - quitLyX(): new Qt slot for lastWindowClosed signal.

* Gui.h:
  - destroyView(), destroyWorkArea(): deleted
  - viewIds(): new method

* GuiImplementation:
  - implement above changes.
  - GuiImplementation is now a QObject
  - cleanupViews(): new private slot.
  - buildViewIds(): new helper method
  - views_ and work_areas_ are now maps of raw pointers instead of schared_ptr.

* LyXView
  - now stores its id.
  - dispatch(): special treatment for LFUN_WINDOW_CLOSE.
  - workAreaIds(): new method.
  - close(): new pure virtual method.
  - saveGeometry(): new pure virtual method.

* GuiView:
  - implements above changes.
  - GuiView(): set WA_DeleteOnClose and Qt::WA_QuitOnClose to let Qt manage the destruction on close().
  - closeEvent(): session stuff transfered to saveGeometry()

* WorkArea
  - now store its id.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15514 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-23 16:29:24 +00:00