Commit Graph

30 Commits

Author SHA1 Message Date
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
Abdelrazak Younes
28ad960255 This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods.
* lyxfunc.h:
  - theLyXFunc(): new function in the global namespace.
  - lyx::dispatch():  new function in the lyx namespace.
  - lyx::getStatus():  new function in the lyx namespace.

* bufferlist.h:
  - theBufferList(): new function in the global namespace.

* Clipboard.h:
  - theClipboard(): new function in the global namespace.

* Selection.h:
  - theSelection(): new function in the global namespace.

* FontLoader.h:
  - theFontLoader(): new function in the global namespace.

* FontMetrics.h:
  - theFontMetrics(LyXFont const &): new function in the global namespace.

* Application.C: implements the functions defined above.

* LyXView.h:
  - getLyXFunc(): deleted.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15298 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 17:24:46 +00:00
Abdelrazak Younes
00edcc582f This commit is a big rework of the FontLoader/FontMetrics interaction. Only Qt4 for now, I would be grateful is somebody steps up for qt3 and gtk.
Basically, I replaced all methods in the font_metrics namespace by a proper virtual interface FontMetrics. The FontLoader is _the_ container for FontMetrics.

This patch should also bring some optimizations in a number of place in the code. This is because we do not need any more to search for the LyXFont at each font_metrics call. In effect, the speed advantage is not as sensible and this is a bit deceiving considering that this was my primary motivation behind the patch. But I like the patch anyway as it cleans up the relation and interfacing between fonts, metrics and frontends.

* frontends/FontMetrics.h: new virtual interface. Renamed from font_metrics.h

* qt4/GuiFontMetrics: corresponding qt4 implememtation. Renamed from qfont_metrics.C. The smallCaps particular case treatment has been transfered here as well as the width cache for MacOSX and Windows.

* qt4/QLPainter.C: the smallCapsText has been reworked to return the width of the drawn text.C

all other files: replace font_metric helper function call with corresponding FontMetrics method calls.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15265 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-07 16:15:06 +00:00
Jürgen Spitzmüller
172ab6c70f Fix the fix for bug 2869.
* src/insets/insetvspace.C (doDispatch): open dialog on 
	mouse release (not press).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15216 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 14:50:41 +00:00
Jürgen Spitzmüller
db9235f095 Fix bug 2869.
* src/insets/insetvspace.C (doDispatch): set cursor properly on mouse 
	(button 3) press.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15207 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 10:08:15 +00:00
Abdelrazak Younes
0da12b129a delete unneeded BufferView.h declaration.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15159 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-26 21:11: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
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
Michael Schmitt
609889cb35 drop linuxdoc support (part 2)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14817 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-23 10:47:11 +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
Lars Gullik Bjønnes
3b9338a3a8 Whitespace cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13565 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-05 23:56:29 +00:00
Michael Schmitt
da452bbe93 fix cursor positioning in front of vspace inset
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10562 a592a061-630c-0410-9148-cb99ea01b6c8
2005-10-19 20:01:49 +00:00
Georg Baum
087c1bf17d fix bug 2022
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10439 a592a061-630c-0410-9148-cb99ea01b6c8
2005-09-12 14:57:50 +00:00
Jean-Marc Lasgouttes
0f51d7cabf better (and localizable) display of vertical spaces
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9968 a592a061-630c-0410-9148-cb99ea01b6c8
2005-05-24 10:23:30 +00:00
Lars Gullik Bjønnes
686f1e276f InsetOld -> InsetBase renaming
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9310 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-25 19:13:07 +00:00
Lars Gullik Bjønnes
183239b7de rename priv_dispatch to doDispatch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9301 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-24 21:58:42 +00:00
Lars Gullik Bjønnes
59413be9a0 clone NVI, other small stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9295 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-23 23:04:52 +00:00
Lars Gullik Bjønnes
7c15014ec2 change "support/std_sstream.h" to <sstream>
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8849 a592a061-630c-0410-9148-cb99ea01b6c8
2004-07-24 10:55:30 +00:00
André Pönitz
5198e1d9a3 The Buffer::LyXText -> Buffer::InsetText patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8498 a592a061-630c-0410-9148-cb99ea01b6c8
2004-03-18 12:53:43 +00:00
André Pönitz
357a3741c0 * insettabular.[Ch]: remove remains of the 'update' mechanism,
simplify cursor moving function,
	  re-enable horizontal scrolling for large tables

	* insetbase.C:
	* insetbase.[Ch]: remove explicit 'DispatchResult' return type and
	  implicitly assume 'DispatchResult(true, true) with exception of
	  InsetBase::priv_dispatch which does the equivalent of
	  'retrun DispatchResult(false)'

	* inset*.[Ch] (priv_dispatch): adjust


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8435 a592a061-630c-0410-9148-cb99ea01b6c8
2004-02-16 11:58:51 +00:00
André Pönitz
99aacdad5c more IU
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8376 a592a061-630c-0410-9148-cb99ea01b6c8
2004-01-30 11:41:12 +00:00
André Pönitz
ccc5d55764 Part of IU.
####################################################################

          1.4.0cvs is now NOT fit for any serious use

####################################################################


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8363 a592a061-630c-0410-9148-cb99ea01b6c8
2004-01-20 14:25:24 +00:00
André Pönitz
70d0ba9001 the monster patch
mathed is completely broken, but it's difficult to imprevo with such a
big patch in the tree.

If things don't improve until tomorrow evening, I'll revert this.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8357 a592a061-630c-0410-9148-cb99ea01b6c8
2004-01-15 17:34:44 +00:00
Angus Leeming
fd355bbb2f Remove a whole heap of redundant functions from classes derived from
InsetCommand.
Clean-up many Mailer::string2params functions.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8233 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-11 15:23:15 +00:00
Angus Leeming
51fa9803d3 Ensure that InsetVSpace works with the new, simpler lyxlex syntax.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8182 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-02 12:27:07 +00:00
André Pönitz
a5e85854f8 * lyxlex.[Ch]: make interface more similar to std::stream
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8179 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-02 10:19:51 +00:00
Angus Leeming
0aea5bd320 Handle 'end_inset' gracefully.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8173 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-01 21:19:16 +00:00
Jürgen Spitzmüller
b06de5044f The VSpace fixes (removal of VSPACE::NONE) from Michael and myself
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8168 a592a061-630c-0410-9148-cb99ea01b6c8
2003-12-01 14:16:27 +00:00
Angus Leeming
48f7421140 The VSpace inset is now fully functional AFAICT.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8151 a592a061-630c-0410-9148-cb99ea01b6c8
2003-11-28 17:38:39 +00:00
André Pönitz
7de76711b1 move space above/below from Paragraph into a separate vspace inset.
Gui interaction mailer stuff by Angus...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8149 a592a061-630c-0410-9148-cb99ea01b6c8
2003-11-28 15:53:34 +00:00