Commit Graph

985 Commits

Author SHA1 Message Date
Abdelrazak Younes
2b1740d92d revert last change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16828 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 15:09:00 +00:00
Abdelrazak Younes
6823d09f6b Replace lyxerr based warnings and errors with Alert::error() and Alert::warning().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16826 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 13:30:30 +00:00
Abdelrazak Younes
a8c862dfe9 Replace lyxerr based warnings and errors with Alert::error() and Alert::warning().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16824 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 13:09:28 +00:00
Enrico Forestieri
b9aa557b35 Fix encoding of converters path and arguments
* src/converter.C
	(Converters::convert): Convert command to be executed to the proper
	encoding. Use from_utf8 instead of from_ascii in order to avoid
	assertions when displaying an alert.

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

	* lib/scripts/fig2pstex.py
	* lib/scripts/fig2pdftex.py:
	Modified to reflect the changes above.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16803 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-22 02:58:47 +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
200db1541a Partly revert revision 16744. Georg doesn't want to mix string/docstring in there.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16745 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 13:35:01 +00:00
Abdelrazak Younes
0c496dc535 Convert internal_path() to unicode (partially). Fix bug 3114:
http://bugzilla.lyx.org/show_bug.cgi?id=3114

* os.h
  - new docstring adapted internal_path()

* qt_helpers.[Ch]:
  - new QString adapted internal_path()

All other files: use that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16744 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 12:30:07 +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
bcb1654b15 Make the output of \inputencoding commands (and the change of output
encodings) more fine grained: From paragraph level to individual character
level. The inputenc package supports that since at least 2000.

	* src/insets/insetbase.h
	(latex): Document the differences between output to a string stream
	and a file stream

	* src/buffer.h
	(writeLaTeXSource): ditto

	* src/output_latex.h
	(latexParagraphs): ditto
	(switchEncoding): new function to change the encoding of a stream
	(and output \inputencoding commands)

	* src/paragraph_pimpl.C
	(Paragraph::Pimpl::simpleTeXSpecialC): Adjust to latexWriteEndChanges
	changes

	* src/support/docstream.[Ch]
	(setEncoding, operator<<): New stream modifier that changes the
	encoding of file streams

	* src/lyxfont.[Ch]
	(LyXFont::latexWriteStartChanges): Change stream encoding if needed
	(LyXFont::latexWriteEndChanges): Change stream encoding if needed

	* src/lyxfont.h
	(public:):

	* src/paragraph.C
	(Paragraph::simpleTeXOnePar): Adjust to latexWriteStartChanges and latexWriteEndChanges changes
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):

	* src/output_latex.C
	(TeXOnePar): Remove the ugly hack to for wencoding changes and use
	switchEncoding instead. A nice side effect is that the old hack would
	not work if the main language encoding is latin1 and a character
	would be mapped to a cedilla in the "fake ucs4" encoding, because
	iconv refuses to convert such a character to latin1, although it
	exists in latin1 (it wants to attach it to a base character).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16633 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-09 19:25:40 +00:00
Georg Baum
6ca4bd03e0 Add some documentation for findtexfile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16632 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-09 19:10:29 +00:00
Jean-Marc Lasgouttes
f8f59e97fb * support/os_unix.C (canAutoOpen, autoOpenFile): on Mac OS X, use
the role kLSRolesAll for both edito and viewer, since it is what 
	the finder does.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16602 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 13:20:19 +00:00
Bo Peng
f5114ba80d src/support/unlink.C: Fix an #include error
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16541 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 22:16:04 +00:00
Georg Baum
31bc611f34 Fix bug 3067: Special column attributes can contain non-ascii characters,
so store them in a docstring.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16537 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 17:11:32 +00:00
Michael Schmitt
79957d0f70 change LYX_USER_DIR_1[234]x to LYX_USER_DIR_15x
change LYX_DIR_1[234]x to LYX_DIR_15x

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16481 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-03 18:02:26 +00:00
Georg Baum
9c162a9bc6 Implement more detailed iconv error messages for better tracking of bugs
like 3043
	* src/support/docstream.C
	(iconv_codecvt_facet::do_out): Output the to be converted string and
	the partially converted result in hex notation if an error occurs
	(iconv_codecvt_facet::do_in): ditto
	(iconv_codecvt_facet::do_iconv): remove now obsolete error message


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16469 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-02 20:57:34 +00:00
Georg Baum
bcbd895143 * src/support/unicode.C
(IconvProcessor::convert): Fix hex output of bytes on systems where
	char is signed


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16468 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-02 20:44:06 +00:00
Georg Baum
63524a4184 * src/support/unicode.C
(iconv_convert): Fix a crash: Don't try to create a vector from two
	pointers where end is before begin.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16408 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 07:35:57 +00:00
Georg Baum
979fdf7456 Fix strange bibtex problem by converting some more functions to use FileName
instead of std::string

	* src/support/lyxlib.h
	* src/support/getcwd.C
	(getcwd): return a FileName, not a std::string in filesystem encoding

	* src/support/filetools.[Ch]
	(makeAbsPath): return a FileName, not a std::string in undefined encoding

	* src/support/lyxlib.h
	* src/support/tempName.C
	(makeAbsPath): return a FileName, not a std::string in undefined encoding

	* many other files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16399 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-27 10:56:11 +00:00
Georg Baum
5843e6bd7f fix encoding of user name and email address
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16379 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-22 10:26:52 +00:00
Georg Baum
49b753f603 Fix another instance of filename encoding problems
* src/support/filetools.h
	(fileSearch): change return value type to vector<FileName>

	* src/support/filetools.C
	(dirList): Convert filenames from the file system encoding

	* src/converter.C
	(Converters::move): Adjust to dirList interface change

	* src/support/filename.[Ch]
	(FileName::fromFilesystemEncoding): New static method

	* src/client/client.C: Add comments about filename encoding


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16362 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-21 13:01:47 +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
Abdelrazak Younes
d3cad65fe2 Change the rule to generate package.C from %VAR% to @VAR@
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16355 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-21 09:48:26 +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
Georg Baum
e4c3ce4627 Convert most of the bibtex machinery to docstring.
Don't limit citation keys to ASCII anymore, since InsetBibitem can generate
non-ASCII keys.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16310 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-17 10:52:04 +00:00
Georg Baum
01c3046d5a Add some forgotten FileName conversions to enable installation in non-ascii
paths


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16308 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-17 09:46:04 +00:00
Enrico Forestieri
5b5585e723 Account for a bigger width or precision when inserting a number into
a wide stream on systems where sizeof(wchar_t) == 2.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16294 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-15 22:53:06 +00:00
Edwin Leuven
6bfb3e6dc4 georg baum:
- add encoding arg to idocfstream
- open .bib files with idocfstream
- add ascii_lowercase that takes docstring

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16281 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-15 16:09:05 +00:00
Enrico Forestieri
e7a9321e43 Provide do_put methods for inserting all remaining basic type values
into wide streams on systems where sizeof(wchar_t) == 2.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16275 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-15 00:30:46 +00:00
Enrico Forestieri
fb5b1bc6c8 Provide do_put methods for inserting "unsigned long" and "double" values
into wide streams on systems where sizeof(wchar_t) == 2.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16272 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-14 00:31:18 +00:00
Bo Peng
6d0f02557d revert r16260
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16266 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-13 16:23:29 +00:00
Bo Peng
525e28f520 Be consistent in how qt headers are included (QtCore/Q...), because QtXml etc may be used later.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16260 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-13 04:43:50 +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
55f575c4dd convert thesaurus and spellchecker to docstring
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16229 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-10 11:52:46 +00:00
Edwin Leuven
fd44f28cae * convert dir to internal path
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16187 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 22:36:31 +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
c4320d24cd Make string conversion work with non-ucs2-characters if using qt 4.2
* src/frontends/qt4/qt_helpers.[Ch]
	(toqstr): Use QString::fromUcs4 if the qt version is at
	least 4.2.
	(qstring_to_ucs4): Use QString::toUcs4 if the qt version is at
	least 4.2
	(ucs4_to_qstring): Delete to avoid confusion, since it was only
	used in one place

	* src/frontends/qt4/panelstack.C
	(PanelStack::addCategory): Use toqstr instead of ucs4_to_qstring

	* src/support/unicode.[Ch]
	(ucs2_to_ucs4): Replace with utf16_to_ucs4
	(ucs4_to_ucs2): Replace with ucs4_to_utf16


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16169 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 13:50:46 +00:00
Georg Baum
015abe1a5a Allow empty file names in constructor, since empty filenames can now be
created by the default constrcutor anyway.
This prevents an assert in findtexfiles.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16168 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 13:45:08 +00:00
Michael Schmitt
2c5a5bf52f src/support/filename.C: add assertion to ensure that no Windows-style
file name is used internally (as suggested by Georg)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16159 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-03 14:48:00 +00:00
Georg Baum
095625dc3c remove unused stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16136 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 18:19:56 +00:00
Georg Baum
5afcd541fd more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16127 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-01 20:09:08 +00:00
Enrico Forestieri
517778ab09 Better using a space instead of '\0' in the num_get facet.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16103 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 13:39:49 +00:00
Enrico Forestieri
f17d9a7b86 Document the terminating '\0' in the num_get facet.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16093 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 19:15:05 +00:00
Enrico Forestieri
04f2c93ca5 Was forgetting this
* src/support/docstring.C
	(do_get): terminate the string before using it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16086 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 00:24:18 +00:00
Enrico Forestieri
1a7aec0731 Improve the num_get locale facet
* src/support/docstring.C
	(do_get): use reserve() and the += operator in order to
	avoid a possible buffer overrun.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16070 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 01:52:26 +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
Bo Peng
c8429d4bbc Detect mode_t for safe use of chmod, and for scons/msvc
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15985 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-19 13:58:39 +00:00
Abdelrazak Younes
8346fb6a47 add comment about location of the implementation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15969 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-18 20:28:18 +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
Georg Baum
34a773b8cf Split FileName into FileName and DocFileName. FileName will be used for all
file names, and DocFileName contains the special extensions for documents,
included figures etc.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15965 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-18 12:49:47 +00:00
Enrico Forestieri
fa2840e72b Add locale facet in order to input numbers from wide streams on systems
where sizeof(wchar_t) == 2

	* src/support/docstring.C:
	- New class ascii_num_get_facet for inputting numbers from idocstreams.
	- Add the ascii_num_get_facet facet to the locale initializer.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15959 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 19:27:42 +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
Georg Baum
2981181ec3 Fix crashes reported by Bennet Helm and Kornel Benko
* src/support/unicode.[Ch]
	(IconvProcessor): Rework the implementation to fix two bugs:
	- iconv_close was called even if the conversion descriptor was
	  invalid
	- The compiler generated copy constructor did simply copy the pimpl_
	  pointer. Therefore pimpl_ was deleted twice for all IconvProcessor
	  instances created by eightbit_to_ucs4() and ucs4_to_eightbit().
	  This is solved by using a scoped_ptr for pimpl_.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15937 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-15 21:40:46 +00:00
Peter Kümmel
7860112e71 disable chmod usage with msvc
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15917 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-14 16:11:59 +00:00
Peter Kümmel
b912982bdc chmod fixes for msvc
* development/cmake/config.h.cmake:
      there is no mode_t 
  * src/support/copy.C
      chmod is declared in io.h
      


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15913 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 23:22:31 +00:00
Georg Baum
2db7521b70 Add support for the esint package
* src/LaTeXFeatures.C
	(LaTeXFeatures::getPackages): handle esint and wasysym

	* src/mathed/MathMacroTable.[Ch]
	(requires_): New member: tell the feature this macro requires
	(MacroTable::insert): take new requires arg

	* src/mathed/MathMacroTemplate.C
	(MathMacroTemplate::asMacroData): adjust to change above

	* src/mathed/MathSupport.C
	(fontinfos): add esint10 font

	* src/mathed/InsetMathHull.C
	(InsetMathHull::doDispatch): AMS_ON -> package_on

	* src/mathed/MathMacroTable.h

	* src/mathed/MathFactory.C
	(initSymbols): read and store requires field for symbols

	* src/mathed/InsetMathSymbol.C
	(InsetMathSymbol::metrics): handle esint
	(InsetMathSymbol::takesLimits): ditto

	* src/buffer.C
	(LYX_FORMAT): update format
	(Buffer::validate): handle esint, AMS_ON -> package_on

	* src/bufferparams.C:
	(AMSTranslator): Rename to PackageTranslator
	(BufferParams::readToken): Read \use_esint
	(BufferParams::writeFile): Write \use_esint

	* src/frontends/qt4/QDocumentDialog.C: handle esint

	* src/frontends/qt4/ui/MathsUi.ui : add esint checkboxes

	* src/frontends/qt4/GuiFontLoader.C
	(symbol_fonts: Add esint10 font
	(symbolFamily): handle esint10 font
	(isChosenFont): Add comment

	* src/frontends/controllers/ControlMath.C
	(latex_varsz): Add new integral symbols

	* src/support/fontutils.C
	(win_fonts_truetype): Add esint10 font

	* src/bufferparams.h
	(enum AMS): rename to enum Package
	(use_esint): new parameter

	* src/lyxfont.[Ch]: Add esint font

	* lib/symbols: Add new integral symbols

	* lib/lyx2lyx/LyX.py
	(format_relation): Update format

	* lib/lyx2lyx/lyx_1_5.py: handle new format

	* lib/chkconfig.ltx: Test esint package

	* lib/images/math/oiintop.xpm
	* lib/images/math/sqintop.xpm
	* lib/images/math/sqint.xpm
	* lib/images/math/ointctrclockwiseop.xpm
	* lib/images/math/ointctrclockwise.xpm
	* lib/images/math/iiintop.xpm
	* lib/images/math/iintop.xpm
	* lib/images/math/sqiint.xpm
	* lib/images/math/iiint.xpm
	* lib/images/math/ointclockwiseop.xpm
	* lib/images/math/oiint.xpm
	* lib/images/math/dotsintop.xpm
	* lib/images/math/sqiintop.xpm
	* lib/images/math/ointclockwise.xpm
	* lib/images/math/iiiintop.xpm
	* lib/images/math/dotsint.xpm
	* lib/images/math/iiiint.xpm
	* lib/images/math/iint.xpm: new icons

	* lib/doc/LaTeXConfig.lyx.in: Add docs for esint package

	* lib/doc/UserGuide.lyx: Add short documentation of integral symbols

	* lib/Makefile.am: Add new files

	* development/scons/scons_manifest.py: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15907 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 17:35:18 +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
Georg Baum
a116e04b8b Use wctype character classification functions if possible
* src/buffer.C
	(Buffer::insertStringAsLines): Uncomment isPrintable test

	* src/support/lstrings.C
	(compare_no_case): Use char_type and not int for the docstring version
	(ascii_tolower): Convert to a template
	(compare_ascii_no_case): Do not use a template anymore, because we
	need int for the string version and char_type for the docstring
	version as intermediate type
	(lowercase): Use towlower if possible
	(uppercase): Use towupper if possible

	* src/support/textutils.h
	(isLetterChar): Use iswalpha if possible
	(isPrintable): Use iswprint if possible
	(isPrintableNonspace): Use iswprint and iswspace if possible
	(isDigit): Use iswdigit if possible

	* src/paragraph.C
	(Paragraph::asString): remove obsolete FIXME
	(Paragraph::transformChar): add FIXME

	* configure.ac: Add definition of LIBC_WCTYPE_USES_UCS4 to config.h

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

	* development/scons/SConstruct: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15893 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 09:53:25 +00:00
Georg Baum
29012f2596 Fix output of labels and references that contain characters with an UCS4
codepoint > 255.
I decided that this is no file format change: We already had the change to
format 249 that allowed unicode in .lyx files. The output to .tex of
non-ascii characters is now different than before (even for those that were
supported previously, e.g. german umlauts in latin1), but this is only
relevant if people referenced a label in ERT. Since we cannot detect this
anyway we don't need a file format change.

	* src/support/lstrings.C
	(escape): Extend the escaping algorithm from 8 bit to 24 bit.

	* src/support/lstrings.h
	(escape): Update comment

	* lib/lyx2lyx/lyx_1_4.py
	(lyx_support_escape): Update comment


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15883 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-12 13:42:20 +00:00
Georg Baum
7e7d28a0ca Make it possible to uses non-ascii labelstring, endlabelstring and
labelstring_appendix in layout files

	* src/text2.C
	(LyXText::setLayout): Translate labelwidthstring for paragraph
	(LyXText::getStringToIndex): labelwidthstring is now a docstring

	* src/buffer.[Ch]
	(Buffer::translateLabel): New method for translating a label if it
	is not already translated by the user in the layout file

	* src/lyxtext.h
	(setParagraph): labelwidthstring is now a docstring

	* src/support/lstrings.[Ch]
	(bool isAscii): New utility function: Determine whether a docstring
	contains only pure ascii

	* src/text3.C
	(LyXText::dispatch): setParagraph() now takes a docstring

	* src/lyxlayout.C
	(LyXLayout::read): Don't use from_ascii when reading labelstring_,
	endlabelstring_ and labelstring_appendix_

	* src/buffer_funcs.C
	(setLabel): labelwidthstring is now a docstring
	(setLabel): Use Buffer::translateLabel instead of Buffer::B_ to
	translate labels
	(expandLabel): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15855 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 12:00:34 +00:00
Enrico Forestieri
1c5ef229e2 Add locale facet in order to output numbers to wide streams on systems
where sizeof(wchar_t) == 2

	* src/support/docstring.C:
	- New class num_put_failure for warning about non-ascii characters.
	- New class ascii_num_put_facet for outputting numbers to odocstreams.
	- Add the ascii_num_put_facet facet to the locale initializer.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15849 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 00:04:28 +00:00
Joost Verburg
b398d3b02b start lyx namespace after header files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15709 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 12:36:51 +00:00
Georg Baum
864ed2c8f9 * src/support/docstream.C
(iconv_codecvt_facet::do_max_length): Update to current UTF8
	specification and return 4 for UTF8.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15642 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 18:54:30 +00:00
Georg Baum
4d814f3e73 Remove unused variable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15624 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 18:32:55 +00:00
Abdelrazak Younes
2d5ecd2bb8 remove the constness of the two code strings because this does not pass boost_concept_check with gcc-3.3.4-11:
g++ -/usr/include/g++/bits/boost_concept_check.h: In member function `
   lyx::IconvProcessor& lyx::IconvProcessor::operator=(const
   lyx::IconvProcessor&)':
/usr/include/g++/bits/boost_concept_check.h:203:   instantiated from `void __gnu_cxx::_SGIAssignableConcept<_Tp>::__constraints() [with _Tp = lyx::IconvProcessor]'
/usr/include/g++/bits/stl_map.h:94:   instantiated from `std::map<std::string, lyx::IconvProcessor, std::less<std::string>, std::allocator<std::pair<const std::string, lyx::IconvProcessor> > >'
unicode.C:281:   instantiated from here
/usr/include/g++/bits/boost_concept_check.h:203: error: non-static const member
   `const std::string lyx::IconvProcessor::tocode_', can't use default
   assignment operator
/usr/include/g++/bits/boost_concept_check.h:203: error: non-static const member
   `const std::string lyx::IconvProcessor::fromcode_', can't use default
   assignment operator


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15612 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 09:36:33 +00:00
Abdelrazak Younes
826c31a80d * unicode.[Ch]: new IconvProcessor class that enable to split iconv_convert() initialization and conversion parts.
* docstring.C: utf8_to_ucs4() makes use of IconvProcessor instead of iconv_convert.

The IconvProcessor interface will permit to switch to another processor than iconv.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15609 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 21:59:59 +00:00
Abdelrazak Younes
451b12d00d * LyXLex::Pimpl::buff is now a string.
* unicode.[Ch]:
 - new non template iconv_convert()
 - iconv_convert() template use above function.

* docstring.C:
 - utf8_to_ucs4(): new function, use the new iconv_convert() function above.
 - from_utf8(): use utf8_to_ucs4() function above.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15592 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 15:16:30 +00:00
Georg Baum
fa1856440c Restore inputenc support
* src/encoding.h
	(encoding_table): remove, this is no longer needed with unicode
	(iconvName_): new member: name of the encoding in iconv syntax

	* src/exporter.C
	(Exporter::Export): Use return value of Buffer::makeLaTeXFile

	* src/buffer.[Ch]
	(Buffer::makeLaTeXFile): return whether the file has been created
	successfully

	* src/buffer.C
	(Buffer::makeLaTeXFile): Use a docstream that converts to the correct
	encoding
	Display an error dialog is something went wrong

	* src/bufferparams.C
	(BufferParams::writeLaTeX): Undo the utf8 inputenc hack

	* src/frontends/qt4/QDocumentDialog.C: Add some FIXMEs

	* src/support/unicode.[Ch]
	(eightbit_to_ucs4): New conversion function
	(ucs4_to_eightbit): New conversion function

	* src/support/docstream.[Ch]
	(utf8_codecvt_facet_exception): Move to header and rename to
	iconv_codecvt_facet_exception
	(odocfstream): Take the encoding as argument

	* src/support/docstream.C
	(utf8_codecvt_facet): Generalize to other encodings than utf8 and
	rename to iconv_codecvt_facet

	* src/encoding.C: Remove obsolete tables

	* src/output_latex.C
	(TeXOnePar): Convert the paragraph to different encoding if needed

	* lib/encodings: Remove obsolete tables


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15564 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 15:01:45 +00:00
Asger Ottar Alstrup
7c595cb763 - We guess Lars smoked something (we didn't see him, but
that's the only explanation)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15492 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 19:09:09 +00:00
Lars Gullik Bjønnes
3674a8c003 LFUN_UNICODE_INSERT - unicode-insert
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15490 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 18:47:19 +00:00
Lars Gullik Bjønnes
8f261b1529 The Gtk removal from trunk.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15488 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 18:05:16 +00:00
Asger Ottar Alstrup
5c85bf0c64 - 5% speed-up by reserving space in the vector we build for drawing
- Simplify isPrintableNonspace


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15475 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 13:51:37 +00:00
André Pönitz
de6418f377 use more unicode in math
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15462 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 10:15:23 +00:00
Abdelrazak Younes
3a0cbc2be7 put back the :: global namespace identifiers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15431 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 08:30:58 +00:00
Abdelrazak Younes
87e34d9784 MSVC linking error fix:
support.lib(tempname.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) int __cdecl lyx::_open(char const *,int,int)" (__imp_?_open@lyx@@YAHPBDHH@Z) referenced in function "int __cdecl lyx::`anonymous namespace'::make_tempfile(char *)" (?make_tempfile@?A0xcf85a5f4@lyx@@YAHPAD@Z)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15427 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 07:55:42 +00:00
Abdelrazak Younes
5c0438b85c MSVC compilation fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15425 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 07:26:07 +00:00
André Pönitz
6c300f72a2 move everything into namespace lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15422 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 00:16:43 +00:00
Georg Baum
ffe7cb1b78 Use the new InsetCommandParams interface (inset part), from Ugras and me
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15413 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 16:12:49 +00:00
Asger Ottar Alstrup
2a887391ff - Fix crash on closing a document where for instance the PDF is still open (temp directory can not be removed when another program has an open file there)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15391 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 08:42:16 +00:00
Asger Ottar Alstrup
9e8d9ad176 - Fix a few unicode bugs
- Fix LaTeX export of User guide (the utf8 conversion buffer was too small)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15390 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 08:06:14 +00:00
Lars Gullik Bjønnes
0d449056ef Output docbook as utf8. Probably quite a bit more work needed, but then help form a docbook person is needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15387 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 21:00:33 +00:00
Georg Baum
8b67659646 Use UTF8 for LaTeX export.
Known problems:
- No space is output after a \hfill. I probably broke this with the
  InsetCommand patch. I'll have a look later.
- Although the encoding is now UTF8 the arguments of the inputenc package
  are still the old ones, so LaTeX will not run.
- Labels and references with non-ASCII characters are broken. This needs to
  be fixed in lyx::support::escape(), but this is a file format change.
- Something seems to be wrong with index entries, but this is probably also
  due to the InsetCommand changes.

Have fun!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15378 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 16:51:30 +00:00
Abdelrazak Younes
39acc2260d add some sanity checks.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15362 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-18 12:06:04 +00:00
Abdelrazak Younes
5ac136d708 MacOSX compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15354 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-17 11:58:21 +00:00
Georg Baum
255501fa77 Add missing convert<> specialization for unsigned long.
This is needed on OS X.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15323 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-13 15:35:18 +00:00
Georg Baum
b0297263df Work around a gcc bug on systems where wchar_t is not used as lyx::char_type
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15312 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-12 19:18:17 +00:00
Georg Baum
34b7650cbb Introduce wide streams. This fixes the remaining problems of plain text
export (e.g. the ToC) and the navigate menu.

	* src/insets/insetbase.h
	(InsetBase::plaintext): output to a docstream
	(InsetBase::textString): ditto

	* src/mathed/TextPainter.h
	(TextPainter::show): ditto

	* src/support/docstream.[Ch] New file and string streams for
	docstring. The file streams convert to UTF8 on the fly.

	* many more files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15301 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 19:40:50 +00:00
Georg Baum
e1d0ce0a6e qt3 compiles again
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15299 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 18:32:32 +00:00
Abdelrazak Younes
f5f4b31f4a This commit is converting everything related to browsing to unicode (qt4 only).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15293 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-09 16:33:20 +00:00
Abdelrazak Younes
e7c4a0554c more unicode work.
* lstrings.[Ch]: new docstring trim() function

* qt4/validators.C: PathValidator::validate() and printable_list() converted to unicode.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15281 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-09 09:15:37 +00:00
Georg Baum
5eec8f015e Fix debug output (detected by a MSVC warning)
* src/support/unicode.C
	(iconv_convert): Use boost::uint32_t for storing a buffer character,
	since the previously stored unsigned char is too small. I did not
	use lyx::char_type on purpose because that might not be interpreted
	as number, but as wide character if lyx::char_type == wchar_t.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15278 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 10:31:34 +00:00
Georg Baum
3836ff77f0 Oops, I forgot to return a reference in operator+=. This patch fixes that.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15276 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 09:59:17 +00:00
Georg Baum
ead66c0679 Add operator += for ASCII C strings and single ASCII chars
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15274 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 09:44:26 +00:00
Enrico Forestieri
99fc6935a5 Replace the magic value 1000 with a const variable
* src/support/unicode.C
	(iconv_convert): replace 1000 by const outsize.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15264 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-07 00:35:01 +00:00
Georg Baum
fd6fa1e2af Fix crash on systems where sizeof(wchar_t) == 2 and gcc is used by adding
a working ctype<lyx::char_type> locale facet.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15223 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 19:27:17 +00:00
Abdelrazak Younes
f78e126d1e APPLE compilation fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15218 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 15:51:16 +00:00
Enrico Forestieri
69d72462b6 Avoid compile errors due to the min/max macros on mingw, too
* src/support/fontutils.C:
	Undefine the min and max macros if they are defined


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15210 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 12:37:18 +00:00
Enrico Forestieri
42b65db612 Avoid a compilation error on cygwin
* src/support/fontutils.C:
	Undefine the min and max macros after inclusion of windows.h on cygwin.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15203 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 00:58:53 +00:00
Enrico Forestieri
5070d2f660 Fix build on cygwin when using --without-x
* src/frontends/qt4/GuiView.C
	(setGeometry): replace test for Q_OS_WIN32 with Q_WS_WIN

	* src/support/fontutils.C:
	If X_DISPLAY_MISSING is defined, compile the code for Win32
	on cygwin, too.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15201 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-02 18:21:48 +00:00
Abdelrazak Younes
6a947f349b This commit moves system font initialization and restoration to new support/fontutils.[Ch].
These font related functions were identical for qt3 and qt4. They are not Qt dependent at all and could also apply to an eventual Win32 or MacOSX gtk port.

Jen-Marc says: It would be nice to convince fontconfig to do the same for linux.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15196 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-02 10:48:03 +00:00
Lars Gullik Bjønnes
dfd9c61b31 propdel svn:executable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15056 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-19 07:09:36 +00:00
Georg Baum
9080c44458 Use wchar_t as lyx::char_type if it is 32 bit wide.
No scons and cmake support! scons and cmake need to find out the size of
wchar_t and define this macro in config.h (example for 32bit wchar_t):

* The size of a `wchar_t', as computed by sizeof. */
#define SIZEOF_WCHAR_T 4

	* configure.ac: Test size of wchar_t

	* src/support/types.h: don't include docstring.h anymore.
	Use wchar_t as lyx::char_type if it is 32 bit wide.

	* src/support/docstring.h: Use lyx::char_type for defining docstring

	* src/metricsinfo.h: include support/docstring.h instead of
	support/types.h
	* src/lyxlex.h: ditto
	* src/frontends/font_metrics.h: ditto
	* src/frontends/qt4/qt_helpers.h: ditto
	* src/frontends/Painter.h: ditto
	* src/errorlist.h: ditto
	* src/support/lstrings.h: ditto
	* src/lyxfunc.h: ditto
	* src/LaTeX.h: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14991 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-13 21:13:49 +00:00
Georg Baum
59fdb31af3 s/boost::uint32_t/lyx::char_type/g except in the definition of lyx::docstring
and lyx::char_type


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14990 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-13 17:11:39 +00:00
Georg Baum
61102f1028 Compile fix for the case when USE_BOOST_FORMAT is 0
* src/support/lstrings.C
	(bformat): Add missing lyx::from_ascii()

	* src/support/convert.C
	(docstring convert<docstring>(unsigned int)): Add specialization
	(docstring convert<docstring>(long)): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14983 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-13 11:18:13 +00:00
Georg Baum
d17a57a6f3 Fix converters in our scripts directory
* src/graphics/GraphicsConverter.C
	(build_script): quote filenames in the python script properly
	(build_script):
	(build_script):

	* src/support/filetools.[Ch]
	(quoteName): Add quote_style argument and quoting of python filenames
	(libScriptSearch): Add quote_style argument

	* src/support/filetools.C
	(quote_style): New enum to specify the quoting style


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14978 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-11 16:07:49 +00:00
Abdelrazak Younes
a6444784dc A bunch of conversion to docstring.
- bformat(): contributed by Georg Beaum
- Alert::XXX
- error(): in SpellBase, ispell, psell, aspell, buffer, etc.
- message(), message signal
- displayMessage(), setMessage,
- ErrorItems
- prettyName()
- makeDisplayPath()

and maybe some more...


- etc... 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14970 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-11 08:54:10 +00:00
Georg Baum
189d298d96 Add operator+ for ASCII characters and ASCII C strings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14969 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-11 07:13:56 +00:00
Lars Gullik Bjønnes
bb61b2655f More unicode work. Fixup some usages.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14968 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 18:34:24 +00:00
Lars Gullik Bjønnes
2a06b31354 Some further work and simplification. Now the conversion engine is only restarted on error.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14967 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 16:59:36 +00:00
Lars Gullik Bjønnes
8fd2299744 Cleanup and speedup some of the conversion functions a bit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14966 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 11:39:57 +00:00
Abdelrazak Younes
cfb1d179e6 win32 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14962 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 10:32:41 +00:00
Lars Gullik Bjønnes
0dc81f2463 Change MenuBackend and the other menuclasses to store a docstring. Do the required updates to lstrings/convert.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14955 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 22:27:22 +00:00
Lars Gullik Bjønnes
43b77ba2d7 Change _() to return a docstring. Fixup callers with the help of lyx::to_utf8.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14952 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 15:27:44 +00:00
Bo Peng
f478418d3f Minor os_cygwin.C change, from Enrico
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14945 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-08 15:07:22 +00:00
Georg Baum
c7be292968 s/errno.h/cerrno/
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14932 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-07 15:23:16 +00:00
Georg Baum
71577b7c31 Fix compile error
* src/support/fs_extras.C: include errno.h



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14931 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-07 13:08:33 +00:00
Peter Kümmel
dc5a9f7d2c update to boost 1.34 cvs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14911 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-06 09:47:45 +00:00
Lars Gullik Bjønnes
d64a07a784 Update in-tree boost to latest from boost 1.34 cvs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14895 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-05 07:18:36 +00:00
Georg Baum
15be4fb8ef Fix byte order problems
* src/support/unicode.C
	(bytes_to_ucs4): make it work on big endian machines
	(bytes_to_ucs2): make it work on little endian machines
	(ucs2_to_ucs4): ditto
	(utf8_to_ucs4): Invoke iconv with explicit BE suffix
	(ucs2_to_ucs4): ditto
	(ucs4_to_ucs2): ditto
	(ucs4_to_utf8): ditto

	* configure.ac: Check for byte order

	* development/scons/SConstruct: Ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14890 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-04 14:43:25 +00:00
Abdelrazak Younes
a6e0f26fe2 * MSVC compilation fix: replace subst template with subst_char and sub_string
* add lowercase() and uppercase() functions for unicode char_type.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14881 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 14:09:24 +00:00
Abdelrazak Younes
9e18b8e975 All methods: use char_type as argument instead of char.
isLetterChar(): verify also that this is a one-byte char (<256).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14877 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 12:12:53 +00:00
Georg Baum
e33bac93cd Fix clipboard/selection encoding
* src/frontends/qt[34]/qt_helpers.[Ch]
	(toqstr): add variant for docstring
	(qstring_to_ucs4): Use docstring and port from qt4 to qt3

	* Many other files: Many std::string -> lyx::docstring conversions

	* src/support/lstrings.[Ch]
	(subst): Add variant for docstring and char_type
	(externalLineEnding): std::string -> lyx::docstring
	(internalLineEnding): std::string -> lyx::docstring


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14871 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 07:02:38 +00:00
Georg Baum
6afe0b915c Fix some conversion problems spotted by MSVC warnings
* src/insets/insetquotes.[Ch]
	(InsetQuotes::InsetQuotes): char -> lyx::char_type

	* src/support/lstrings.h
	(contains): new variant for docstrings

	* src/frontends/controllers/ControlSpellchecker.C
	(isLetter): Add missing conversion to utf8
	(nextWord): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14867 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-02 10:18:20 +00:00
Abdelrazak Younes
14c30e2b84 iconv_convert(): return empty vector in case of empty input
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14866 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-02 08:01:50 +00:00
Georg Baum
1fc0c01877 convert lfun arguments to docstring
* src/support/docstring.[Ch]
	(from_ascii): new conversion function
	(from_utf8): new conversion function
	(to_utf8): new conversion function
	(operator==) new, compare docstring and ASCII C string
	(operator!=) new, compare docstring and ASCII C string

	* src/support/Makefile.am: add new file docstring.C

	* development/scons/scons_manifest.py: ditto

	* src/funcrequest.[Ch]
	(argument): change name to argument_ and type to docstring,
	add an accessor
	(FuncRequest): Add two new constructors taking a docstring argument

	* all other files: adjust to the FuncRequest changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14861 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-01 15:41:38 +00:00
Abdelrazak Younes
02f51e1820 Patch from Enrico:
In src/support/os_cygwin.C path styles are converted (when needed) from
one style to another. I discovered a couple of cases in which an
unnecessary conversion takes place.

The default output path style in external_path is windows because this
function is also used when adding fonts though a native Windows API call.
However, this call is not made in an X11 build, so it is not necessary
that the output path style is windows.

Log:
Small fixes for cygwin.

	* os_cygwin.C (is_windows_path): avoid unnecessary conversion
	when path is relative
	(convert_path_list): avoid unnecessary conversion when path
	list is empty
	(external_path): for an X11 build it is not necessary that
	the output path style is windows


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14859 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-01 13:37:52 +00:00
Abdelrazak Younes
d64b3a4a0a simple one line optimisation in iconv_convert().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14854 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-31 08:49:12 +00:00
Bo Peng
e530d2ddd2 Scons: add support for msvc qt3
* src/support/package.C.in: use PATH_MAX instead of MAX_PATH
	* INSTALL.scons: add instruction for building qt3 2ith msvc
	* development/scons/SConstruct: use the right lib (qt-mt3) and manifest file


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14709 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-16 21:34:24 +00:00
Georg Baum
161db0a9ee * src/support/docstring.h: Add char_traits template functions for
gcc 3.3.x and older. They were first supplied with the libstdc++ of
	gcc 3.4.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14685 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-15 12:31:35 +00:00
Abdelrazak Younes
0ca50d9637 deleted "#include <boost/cstdint.hpp>" as it is already in unicode.h.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14674 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-14 16:30:47 +00:00
Abdelrazak Younes
bd61a7a387 Windows compilation fixes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14671 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-14 14:19:52 +00:00
Abdelrazak Younes
615ef2527a add docstring.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14665 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-14 09:00:53 +00:00
Lars Gullik Bjønnes
c46b7d8955 Merge the unicode branch into trunk.
- src/support/unicode.[Ch]: new files with functions for converting
  to and fro ucs4, ucs2 and utf8.
- src/support/docstring.h: specialization of basic_string that
  holds a uint32_t internally.
- Several functions changed to use char_type instead of char or unsigned char.
- Qt3 and Qt4 sends ucs2 on to core
- Gtk sends ucs4 on to core
- Read and write utf-8 .lyx files.
- font_metrics and painter updated to handle ucs4 chars as input.
- Quite a bit of ugly compability code, conversion string->docstring, etc.
- Have fun...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14661 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-13 22:54:59 +00:00
Bo Peng
a871153a72 Remove the hide console trick in support/os_win32.C since wrapper hidecmd.c can completely hide the console.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14498 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-25 19:38:56 +00:00
Georg Baum
025a200c03 Fix bug 2524
* src/support/tests/test_convert: Change shell from bash to sh
	* src/support/tests/test_filetools: ditto
	* src/support/tests/test_lstrings: ditto
	* src/frontends/controllers/tests/test_biblio: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14468 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-16 10:04:26 +00:00
Georg Baum
82a4214f7b make FileName::isZipped more efficient by caching previous results
* src/insets/insetgraphics.C
	(copyToDirIfNeeded): replace file_in and zipped arguments with a
	FileName argument
	(InsetGraphics::prepareFile): adjust call of copyToDirIfNeeded

	* src/support/filename.C
	(FileName::FileName): set zipped_valid_
	(FileName::set): ditto
	(FileName::erase): ditto
	(isZipped): use zipped_

	* src/support/filename.[Ch]
	(zipped_): new cache for isZipped()
	(zipped_valid_): new, tell whether zipped_ is valid


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14376 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-08 14:16:56 +00:00
Michael Schmitt
4eccc22119 remove xforms relicts
* src/frontends/qt3/QPrefs.C:
        * src/frontends/controllers/BCView.tmpl:
        * src/support/package.h: fix/remove comment

        * po/pocheck.pl: no longer check for xforms shortcuts
        * development/Win32/lyx.vcproj: ignore ControlPreamble.[Ch]


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14372 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-08 09:40:15 +00:00
Bo Peng
f3900a9e45 Stop using 'sh uname' etc for cygdrive, from Enrico Forestieri <forenr@tlc.unipr.it>
* src/support/os_win32.C: Query the registry about cygwin, instead of 
	  calling uname


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14276 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-30 14:28:36 +00:00
Georg Baum
4ae87a3bb8 Call python with the -tt switch to make mixed tab/space indentation an error
* src/support/os.[Ch]
	(python): new function, return the python command

	* lib/lyx2lyx/lyx_1_5.py
	(revert_font_settings): replace tabs with spaces

The rest is simply s/python/python -tt/ and
s/"python"/lyx::support::os::python()/ where appropriate.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14270 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-30 13:54:01 +00:00
Jean-Marc Lasgouttes
44a5cfc89c Renaming:
cygwin_path_fix		->	windows_style_tex_paths
	cygwin_path_fix_needed	->	tex_expects_windows_paths
	check_cygwin_path	->	check_windows_style_tex_paths
	use_cygwin_paths	->	use_windows_paths
	RC_CYGWIN_PATH_FIX	->	RC_TEX_EXPECTS_WINDOWS_PATHS

	* src/frontends/qt4/ui/QPrefCygwinPathUi.ui
	* src/frontends/qt3/ui/QPrefCygwinPathModule.ui
	  Updated checkbutton label and description

	* src/frontends/qt4/QPrefsDialog.C
	  (PrefCygwinPath): cygwin_path_fix -> windows_style_tex_paths
	  (QPrefsDialog): Enable checkbutton for native WIN32 builds

	* src/frontends/xforms/forms/form_preferences.fd
	  Updated label and name of checkbutton

	* src/frontends/xforms/FormPreferences.C
	  (apply): cygwin_path_fix -> windows_style_tex_paths
	           check_cygwin_path -> check_windows_style_tex_paths
	  (build): Enable checkbutton for native WIN32 builds
	  (update): Ditto
	  (feedback): Updated description

	* src/frontends/qt3/QPrefs.C
	* src/frontends/qt3/QPrefsDialog.C
	* src/frontends/qt3/QPrefsDialog.h
	  Renaming as above, enabled checkbutton for native WIN32 builds

	* src/support/os_unix.C
	* src/support/os.h
	* src/support/os_win32.C
	  Renaming cygwin_path_fix -> windows_style_tex_paths
	* src/support/os_cygwin.C
	  Ditto
	  (external_path, external_path_list): always return windows
	  style paths, not depending on the checkbutton status

	* src/lyxrc.C
	* src/lyxrc.h
	* src/lyxfunc.C
	* src/lyx_main.C
	  Renaming

	* lib/configure.py
	  Renaming, more meaningful diagnostics




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14242 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-27 10:51:24 +00:00
Bo Peng
5ea7194a60 Generate python code in GraphicsConverter.C, replace convertDefault.sh by convertDefault.py
* src/graphics/GraphicsConverter.C: generate python instead of shell scripts
	* src/converter.C: use convertDefault.py
	* lib/scripts/convertDefault.sh: translated to convertDefault.py


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14223 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-26 14:17:12 +00:00
Abdelrazak Younes
d8ae51dbe1 This is the merging of the GUI API cleanup branch that was developed in svn+ssh://svn.lyx.org/lyx/lyx-devel/branches/personal/younes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14152 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-20 08:39:16 +00:00
Georg Baum
d8d9db0879 * src/support/lyxalgo.h
(count): Compile fix (add forgotten typename)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14116 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-15 08:06:00 +00:00
Jean-Marc Lasgouttes
5d38575647 * src/support/os_unix.C (canAutoOpenFile, autoOpenFile): add support for Mac
OS X.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13961 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-29 16:41:51 +00:00
Bo Peng
a21c78f25b 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



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13951 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-29 14:56:08 +00:00
Georg Baum
9e8e666c8a * src/support/os.h
(canAutoOpenFile): correct comment
	(autoOpenFile): ditto

	* src/support/os_win32.C
	(canAutoOpenFile): Remove unneeded test for dot
	(autoOpenFile): whitespace

	* src/support/os_cygwin.C
	(canAutoOpenFile): Remove unneeded test for dot
	(autoOpenFile): whitespace


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13866 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-18 19:09:53 +00:00
Jean-Marc Lasgouttes
b6e30400f5 New auto-open feature from Bo Peng (with help from Jean-Marc and Enrico)
* src/lyx_main.C (init): call Formats::setAutoOpen.
	
	* 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.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13855 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-17 22:13:33 +00:00
Georg Baum
479abc6efd Remove remaining OS/2 bits:
* src/lyx_cb.C
	(newFile): Remove OS/2 code

	* src/lyxserver.C
	(LyXComm::startPipe): ditto
	(LyXComm::endPipe): ditto
	(LyXComm::send): ditto

	* src/support/rename.C
	(lyx::support::rename): ditto

	* src/support/filetools.C
	(fileOpenSearch): ditto
	(createTmpDir): ditto
	(createLyXTmpDir): ditto
	(makeAbsPath): ditto

	* src/support/getcwd.C
	(l_getcwd): ditto

	* src/support/forkedcall.C
	(Forkedcall::generateChild): ditto

	* src/support/chdir.C
	(lyx::support::chdir): ditto

	* src/support/os.C: ditto
	* configure.ac: ditto
	* development/scons/scons_utils.py: ditto
	* development/Win32/config.h: ditto

	* lyx.man: Remove OS/2 related stuff
	* lib/doc/Customization.lyx: ditto
	* lib/doc/fr_Customization.lyx: ditto
	* lib/doc/it_Customization.lyx: ditto

	* src/support/os2_defines.h: Remove
	* src/support/os2_errortable.h: ditto
	* src/support/os_os2.C: ditto
	* INSTALL.OS2: ditto
	* README.OS2: ditto
	* development/OS2/quick_fix.patch: ditto
	* development/OS2/gnugettext.diff: ditto
	* development/OS2: ditto

	* src/support/Makefile.am: Remove deleted files
	* development/Makefile.am: Remove deleted OS2 directory


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13848 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-14 17:00:53 +00:00
Lars Gullik Bjønnes
5e3b997b85 Remove the now superseeded SConscript files, and some small missing parts to SConstruct
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13825 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-10 18:05:12 +00:00
Bo Peng
26666044d8 Scons: various fixes from Enrico (aspell, aikasurus etc), and correct handling of version.C.in
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13822 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-10 05:34:20 +00:00
Bo Peng
7168ce58b5 scons-based build system, by Bo Peng (ben.bob@gmail.com)
* SConstruct: main SConstruct file
	* scons_utils.py: utility functions
	* qt4.py: qt4 support is not yet official, and I have to patch this file
	* src/SConscript
	* src/insets/SConscript
	* src/graphics/SConscript
	* src/mathed/SConscript
	* src/frontends/qt3/SConscript
	* src/frontends/qt4/SConscript
	* src/frontends/SConscript
	* src/frontends/controllers/SConscript
	* src/support/SConscript
	* src/client/SConscript
	* src/tex2lyx/SConscript
	* boost/libs/SConscript
	* boost/libs/signals/src/SConscript
	* boost/libs/filesystem/src/SConscript
	* boost/libs/iostreams/src/SConscript
	* boost/libs/regex/src/SConscript


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13807 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-07 22:44:54 +00:00
Jean-Marc Lasgouttes
18d72887a6 * src/support/package.C.in (get_build_dirs): Look at Makefile
instead of lyxrc.defaults. Simplify the check for
          chkconfig.ltx.

	* configure.ac: do not run lib/configure.py

	* lib/doc/Makefile.am: LaTeXConfig.lyx is not generated anymore.

	* lib/configure.py (removeExtraFiles): remove.

	* lib/Makefile.am: no files are generated in there.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13763 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-27 16:44:43 +00:00
Jean-Marc Lasgouttes
57d0c03bf5 * src/support/package.C.in (relative_locale_dir): fix for Windows and OSX.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13761 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-27 12:57:30 +00:00
Georg Baum
d732249e2b Fix bug 2285 (tex2lyx is not found by lib/configure when compiling with
--with-version-suffix):

	* src/lyx_cb.C
	(reconfigure): get the configure command from package()

	* src/lyx_main.C
	(showFileError): ditto

	* src/support/package.[Ch]
	(configure_command): new, return the configure command

	* src/support/package.C.in
	(with_version_suffix): new, return the version suffix argument
	of the configure command

	* src/support/Makefile.am
	(package.C.in): substitute %PROGRAM_SUFFIX% in package.C.in

	* config/lyxinclude.m4: substitute program_suffix


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13710 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-22 11:58:02 +00:00
Bo Peng
5cf8376ef7 Replace gzstream by boost::iostreams::gzip_(de)compressor: by Bo Peng (ben.bob@gmail.com)
* src/buffer.C, use filtering_ostream
	* src/lyxlex_pimpl.h, .C, use filtering_istreambuf
	* src/Makefile.am,  src/support/Makefile.am, src/tex2lyx/Makefile.am, use BOOST_IOSTREAMS
	* remove src/support/gzstream.h, .C
	* add needed boost files boost/boost/iostreams/device/file_descriptor.hpp,
     device/mapped_file.hpp, detail/system_failure.hpp, 
		 detail/config/windows_posix.hpp


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13706 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-21 06:42:17 +00:00
Georg Baum
2bbe7e5b89 Make MathBigInset working
* src/cursor.C
        (LCursor::plainInsert): combine the previous math atom with the new
        one to a MathBigInset if possible

        * src/mathed/math_biginset.[Ch]
        (MathBigInset::name): implement
        (MathBigInset::isBigInsetDelim): new, test whether a given token is
        a valid MathBigInset delimiter

        * src/mathed/math_biginset.C
        (MathBigInset::size): handle Big, Bigg and Biggg
        (MathBigInset::increase): ditto
        (MathBigInset::draw): fix deco drawing
        (MathBigInset::write): append space if necessary

        * src/mathed/math_factory.C
        (createMathInset): handle l->inset == "big"

        * src/mathed/math_parser.C
        (Token::asInput): return a token as input, stolen from tex2lyx
        (void Parser::parse1): Create a MathBigInset when needed

	* src/mathed/math_support.C:
	(deco_table): add lbrace and rbrace

        * src/mathed/math_nestinset.C
        (MathNestInset::interpret): combine the previous math atom with the
        new character to a MathBigInset if possible

        * src/ParagraphParameters.C
        (findToken): move from here

        * src/support/lstrings.[Ch]
        (findToken): to here

        * lib/symbols: add MathBigInset symbols


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13700 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-20 09:55:45 +00:00
Georg Baum
a355878e2c From Enrico Forestieri:
* src/support/os_win32.C
	(init, latex_path, cygwin_path_fix): Add support for cygwin tetex.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13683 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-15 14:46:12 +00:00
Lars Gullik Bjønnes
618ca28af6 * support/types.h: introduce the char_type type
* paragraph.h: make value_type point at char_type
* other files: change some bald 'char' to 'char_type'


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13609 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-09 02:30:40 +00:00
Lars Gullik Bjønnes
cf4293824f * Change several freestanding and class methods with first letter
capitalized to have first letter lowercased.
* Adjust all affected files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13605 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-09 00:26:19 +00:00
Lars Gullik Bjønnes
8c93f63b48 * filetools.[Ch]: Make functions that start with a capital
letter start with a lower letter.
	* All other .C and .h in the cs: adjust for above change


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13603 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-08 22:31:11 +00:00
André Pönitz
1f5c5a06ee support/textutils.h:
support/filetools.h: rename IsDirWriteable IsFileReadable IsLyXFilename
IsSGMLFilename IsLineSeparatorChar IsLetterChar IsPrintable
IsPrintableNonspace IsDigit to lower case initial

lyxvc.C:
LaTeXFeatures.C:
lyx_cb.C:
insets/insetbibtex.C:
insets/insetexternal.C:
insets/insetgraphics.C:
insets/ExternalSupport.C:
insets/insetinclude.C:
BufferView_pimpl.C:
graphics/GraphicsCacheItem.C:
text2.C:
converter.C:
buffer.C:
lyxfunc.C:
frontends/gtk/ghelpers.C:
frontends/controllers/ControlGraphics.C:
frontends/controllers/ControlInclude.C:
frontends/controllers/ControlSpellchecker.C:
support/filetools.C:
support/filetools.h: adjust


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13595 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-08 09:09:57 +00:00
Lars Gullik Bjønnes
917e9bd0ce whitespace cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13563 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 23:39:11 +00:00
Lars Gullik Bjønnes
372397acb4 comment out the usage checking macros
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13562 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 23:03:58 +00:00
Georg Baum
0dcc1e0cce Fix mess up of internal/external paths (from Enrico Forestieri)
* src/frontends/qt2/QPrefs.C:
	(internal_path_list, external_path_list): Handle the PATH prefix
	style according to the user-prefs style.
	(QPrefs::apply, QPrefs::update_contents): fix inverted logic of
	rc.cygwin_path_fix

	* src/support/os.h: New declarations to deal with PATH lists.
	* src/support/os_cygwin.C: Major rewrite to account for path style
	problems.
	* src/support/os_unix.C:
	* src/support/os_win32.C: Stub functions for PATH lists.
	* src/support/environment.C: fix bug 2344: Wrong path_prefix handling
	in cygwin
	* src/support/filetools.C (ChangeExtension): fix for the path
	style to be written in .tex files (cygwin related).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13558 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 19:26:08 +00:00
Georg Baum
ec845858ed fix bug 1235
* src/support/filetools.C
	(readBB_from_PSFile): sanitize return value


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13549 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 08:19:48 +00:00
Michael Schmitt
2243967c46 2006-04-01 Michael Gerz <michael.gerz@teststep.org>
* lib/ui/stdmenus.ui:
        * lib/ui/stdtoolbars.ui:
        * src/converter.C
        * src/lyx_main.C
        * src/support/package.C.in: tiny changes to text messages



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13545 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-01 13:23:24 +00:00
Michael Schmitt
845bc7272f 2006-04-01 Michael Gerz <michael.gerz@teststep.org>
* filename.C (mangledFilename): truncate filename to 100
        characters for MiKTeX's pdflatex


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13543 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-01 13:04:23 +00:00
Georg Baum
768d523494 Fix bug 2186 (from Bo Peng):
* src/insets/insetbibtex.C
	(InsetBibtex::latex): mangle filename of bst file for "non-nice"
	.tex files

	* src/insets/insetgraphics.C
	(RemoveExtension): move ...
	* src/support/filetools.[Ch]
	(removeExtension): ... here


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13540 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-01 10:49:58 +00:00
Jean-Marc Lasgouttes
c87d9df68e add missing files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13503 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-28 09:15:28 +00:00
Georg Baum
05ea233390 Fix latex_path on cygwin:
* src/support/os.h
        * src/support/os_unix.C
        * src/support/os_win32.C
        * src/support/os_cygwin.C
        (latex_path): new function, handle the OS-specific part of
        lyx::support::latex_path

        * src/support/filetools.C
        (latex_path): use lyx::os::support::latex_path (bug 2409)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13474 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-24 12:48:37 +00:00
Lars Gullik Bjønnes
9d6cad3fe6 * output_latex.h:
* buffer.h:
        * CutAndPaste.h:
        * pariterator.h:
        * paragraph_funcs.h:
        * output_linuxdoc.h:
        * output_docbook.h:
        * insets/insettext.h: get forward declaration of ParagraphList

        * output_plaintext.C:
        * bufferlist.C:
        * undo.C:
        * lyxtext.h:
        * undo.h:
        * buffer_funcs.C:
        * insets/insetbibitem.C: get proper ParagraphList decls

        * output_linuxdoc.C (linuxdocParagraphs):
        * output_latex.C (TeXOnePar):
        * insets/insettext.C (appendParagraphs):
        * insets/insetcharstyle.C (docbook): use std::distance

        * CutAndPaste.C (pasteSelectionHelper, copySelectionHelper):
        * paragraph_funcs.C (breakParagraph,
        breakParagraphConservative, mergeParagraph):
        * text.C (acceptChange, rejectChange):
        * text2.C (deleteEmptyParagraphMechanism): use boost::next

        * output_docbook.C (several places): use boost::next and
        std::distance

        * ParagraphList_fwd.h: modify to provid a forward declaratoin
        of the new ParagraphList.

        * RandomAccessList.h: New container for Paragraphs from
        Abdelrazak Younes

        * ParagraphList.h: new file, setup user of RandomAccessList

        * paragraph.C: remove ParagraphList constructor from this file



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13467 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-23 20:11:06 +00:00
Georg Baum
fb7b7b1c59 truncate too long filenames for pdflatex
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13384 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-15 21:00:15 +00:00
Georg Baum
9c5fcfa383 fix nullstream also in pch files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13311 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-07 10:02:07 +00:00
Georg Baum
a6d1f8c80f fix compilation with boost 1.33.0
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13310 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-07 08:29:12 +00:00
Lars Gullik Bjønnes
aa9da47369 Use the correct nullstream.hpp.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13301 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-05 20:49:09 +00:00
Lars Gullik Bjønnes
c0ce7ff659 Modify NormalizePath to work with boost 1.33.1, add regressions test
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13297 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-05 18:11:11 +00:00
Jean-Marc Lasgouttes
0328dd98ca fix behaviour of --with-version-suffix (bug 2237)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13219 a592a061-630c-0410-9148-cb99ea01b6c8
2006-02-12 20:29:52 +00:00
Lars Gullik Bjønnes
4a7ab830bc Delete all .cvsignore files from trunk
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13208 a592a061-630c-0410-9148-cb99ea01b6c8
2006-02-10 22:09:45 +00:00
Angus Leeming
d9f29afe1c Trivial fixes to some warnings thrown up by MSVS.Net 2003.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10585 a592a061-630c-0410-9148-cb99ea01b6c8
2005-11-02 20:11:36 +00:00
Jean-Marc Lasgouttes
a7714398d9 fix PACKAGE handling for MacOS and Windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10550 a592a061-630c-0410-9148-cb99ea01b6c8
2005-10-13 14:45:12 +00:00
Angus Leeming
71f93a0674 Sync with LyX 1.3.x.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10536 a592a061-630c-0410-9148-cb99ea01b6c8
2005-10-10 21:54:38 +00:00
Angus Leeming
e4c676a490 Make things compile on MSVC:
There's no <windef.h>, so just use <windows.h>
s/PATH_MAX/MAX_PATH/


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10508 a592a061-630c-0410-9148-cb99ea01b6c8
2005-10-02 21:49:52 +00:00
Angus Leeming
8f9344cb9f Rearrange preprocessor guards and improve commentary.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10503 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-30 21:19:31 +00:00
Angus Leeming
73e1a6a470 Support for Win98 and earlier.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10501 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-30 12:24:50 +00:00
Angus Leeming
6ce7fa27f1 Portable hard-coded paths on Windows.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10496 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-29 13:26:41 +00:00
Angus Leeming
c8c45171e8 Add os_cygwin.C to the distribution.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10438 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-10 15:48:17 +00:00
Jean-Marc Lasgouttes
742ff585a2 fix crash when ${HOME} is empty
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10419 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-07 09:44:58 +00:00
Angus Leeming
923623a5ce Remove spurious unicode char in comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10393 a592a061-630c-0410-9148-cb99ea01b6c8
2005-08-09 16:56:36 +00:00
André Pönitz
7856f2c683 3 more percents...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10323 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-18 12:57:08 +00:00
Angus Leeming
7704aa9055 Help Lars spell his name.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10311 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-18 08:04:50 +00:00
Michael Schmitt
eb07dfa12b change environment variable to LYX_USERDIR_14x
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10266 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-17 01:59:18 +00:00
André Pönitz
4b7d477809 implement undo for textclass switches in order to avoid a crash
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10190 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-14 22:09:22 +00:00
Angus Leeming
6e7b2e9016 Forward port the name-mangling code from 1.3.x.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10182 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-14 12:53:12 +00:00
Lars Gullik Bjønnes
a78c91bdbb make sure to dist pch.h and mark PCH_FILE as a built file
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10173 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-12 23:42:23 +00:00
Georg Baum
1828d1b3f5 use the lyxdot replacement mechanism also in insetexternal
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10162 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-10 09:31:27 +00:00
Georg Baum
b33b8ff56e compile fix for the latex_path patch from yesterday
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10160 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-09 08:13:54 +00:00
Georg Baum
69241a6168 forward port latex_path quoting fix from 1.3
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10157 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-08 15:43:46 +00:00
Jürgen Spitzmüller
dd1d850e93 localize date/time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10129 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-05 09:01:52 +00:00
Georg Baum
e1daab958f mangle spaces in filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10101 a592a061-630c-0410-9148-cb99ea01b6c8
2005-06-24 14:20:51 +00:00
Georg Baum
ddedf9f5ef make quoted filenames work when " is active
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10095 a592a061-630c-0410-9148-cb99ea01b6c8
2005-06-21 09:01:41 +00:00
Lars Gullik Bjønnes
e5ae321dab the AM_* flags patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9963 a592a061-630c-0410-9148-cb99ea01b6c8
2005-05-20 16:56:28 +00:00