Commit Graph

746 Commits

Author SHA1 Message Date
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