Commit Graph

399 Commits

Author SHA1 Message Date
Peter Kümmel
60059d0c08 fix crash in preferences dialog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15732 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 13:05:07 +00:00
Georg Baum
f2025c20e9 Convert the CREDITS file to utf8 and spell Ugras' name correctly.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15731 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 12:46:00 +00:00
Georg Baum
8d9df8bce5 fix gcc warnings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15727 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 09:47:14 +00:00
Abdelrazak Younes
5c57bee5b9 * WorkArea
- hasFocus(): new pure virtual method
  - redraw(): update singlePar only if the Widget has the focusInEvent

* GuiWorkArea.h: implement hasFocus().

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15724 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 07:29:25 +00:00
Abdelrazak Younes
f8b75dc40f * QLPainter::text(): Put the debug message in Debug::PAINTING
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15723 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 07:26:45 +00:00
Edwin Leuven
555c1e1cde * update dialog when changing lyx display settings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15715 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 16:34:06 +00:00
Georg Baum
49070b4c00 Fix problem with non-ascii branch names by converting more stuff to
docstring.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15713 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 15:16:45 +00:00
José Matox
61849bf291 Add UTF-8 as an option for encoding
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15708 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 12:13:57 +00:00
Edwin Leuven
406c793cd8 * reorganisation of graphics dialog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15707 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 11:24:27 +00:00
Peter Kümmel
77ada344c4 disable scrollbar when it is not needed, especially for the empty start up window
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15700 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 09:23:52 +00:00
Asger Ottar Alstrup
89d5c4ed03 - Sort lyxlex table
- Get rid of setRenderHint for anti-aliasing, because we should respect user windows setting


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15699 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 08:17:26 +00:00
Abdelrazak Younes
352ce035b9 Fix multi-window resize bug:
Use case: Two window share the same buffer. The first window is resize. This modify the inner Buffer structure because Paragraph has a notion of line break and thus line width. When switching to the other window which does not have the same size, LyX crashes because the line break is not adapted the this BufferView width.

This commit fix the crash by resizing the BufferView on a focusInEvent(). That is not a good fix but it is a fix nevertheless. The bad side effect is that when the two BufferView shows the same portion of the Buffer, the second BufferView will show the same line breaks as the first one even though those line breaks are not adapted to the second BufferView width... such is life!



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15697 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 23:55:49 +00:00
Abdelrazak Younes
ff3c643f09 - restore a backing pixmap painting strategy: the pixmap is drawn at expose() time.
- the cursor is still a widget, the width is 2-pixel on Windows and 1-pixel on other platforms. The full screen refresh on blinking cursor bug is now gone.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15695 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 22:53:10 +00:00
Peter Kümmel
8e54e38c3b enable selection with the mouse for math and tables
Qt doc for QMouseEvent::button(): 
         Note that the returned value is always Qt::NoButton for mouse move events.
    so we must use buttons() instead because later on 
    the code checks for the left button.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15693 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 22:23:26 +00:00
Bo Peng
eaa33dca6d Session/Toolbars:
* src/LyXAction.C: LFUN_TOOLBAR_TOGGLE_STATE
	* src/session.h/C: add ToolbarSection class
	* src/lyxfunc.C: handle LFUN_TOOLBAR_TOGGLE_STATE
	* src/frontends/LyXView.h/C: toggleToolbarState(name)
	* src/frontends/Toolbars.h/C: initFlags, toogle and save toolbar, 
	    changed update logic
	* src/frontends/qt4/QLToolbar.h/C: saveInfo. Surprisingly little is 
	    asked from frontend.
	* src/frontends/qt4/GuiView.C: save toolbar when lyx exits
	* src/MenuBackend.h/C: add Toolbars submenu
	* src/lfuns.h: add LFUN_TOOLBAR_TOGGLE_STATE
	* src/ToolbarBackend.h: add AUTO flag
	* lib/ui/stdmenus.ui: add view->Toolbar menu


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15691 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 16:01:36 +00:00
Abdelrazak Younes
5cadc33792 This commit initialise correctly the tab bar in a new window.
* GuiView::init(): switch to the first avalaible buffer if any.

* GuiWorkArea::focusInEvent(): update the LyXView tab bar there.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15685 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 22:57:32 +00:00
Peter Kümmel
5c92641c4d disable scrollbar when it is not needed, especially for the empty start up window
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15677 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 17:51:56 +00:00
Peter Kümmel
1364943414 add link to Qt bug
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15665 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 14:40:02 +00:00
Peter Kümmel
a252679cca add missing header, forgotten because of the Qt precompiled headers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15641 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 14:57:25 +00:00
Peter Kümmel
bc0eb0b97f add missing header
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15640 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 14:46:38 +00:00
Peter Kümmel
7ea5cb8d15 enable movable toolbars
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15639 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 14:39:16 +00:00
Peter Kümmel
8669b0087e Add tab support
frontends/LyXView.h
	- add tab update function 
	
frontends/qt4/GuiView.h
	- add tab update function
	- add function for setting up the tabs
	- add slot for the tab clicks
	- add pimpl
	
frontends/qt4/GuiImplementation.C
	- don't set the buffer as central widget 
	  but initilize the tabs
	  
frontends/qt4/GuiView.C
	- use QTabBar for switching
	- scan the bufferlist on updates
	
frontends/LyXView.C
	- also update the tabs
	


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15637 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 14:12:46 +00:00
Peter Kümmel
b15b581f57 * frontends/Toolbars.C:
revert first patch http://www.lyx.org/trac/changeset/15597
* frontends/qt4/GuiView.C:
	don't 'break' the toolbar because it doesn't work if 
	the toolbar will be hidden





git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15636 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 13:59:22 +00:00
Michael Schmitt
4292f4e9e9 remove references to Qt3/Gtk
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15630 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 21:45:37 +00:00
Abdelrazak Younes
65354d63a7 small cosmetic cleanups:
* delete some comments
* use lyxerr instead of cout in PanelStack
* move PanelStack into lyx::frontend namespace


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15623 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 14:39:05 +00:00
Abdelrazak Younes
e918c00190 small cleanup while looking for a bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15622 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 14:15:05 +00:00
Jürgen Spitzmüller
6eeb83498c * QPrefScreenFontsUi.ui: assing label to the correct (and existing) buddy.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15621 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 14:05:06 +00:00
Abdelrazak Younes
fbcc021da6 small cleanup while looking for a bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15620 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 13:49:41 +00:00
Abdelrazak Younes
992fe1dba6 * QLPainter:
- ctor and dtor moved to public:
  - QLPainter(): takes a QPaintdevice instead of a QWidget.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15619 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 13:16:18 +00:00
Abdelrazak Younes
662974406a Forgot that also!
* QLPainter::~QLPainter: add virtual

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15616 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 11:04:37 +00:00
Abdelrazak Younes
73ed0b5203 * Painter.h:
* Painter: new ctor that sets drawing_enabled_ to true.
  * setDrawingEnabled(), isDrawingEnabled(): new methods.

* QLPainter.C: only draw if drawing is enabled.

* nullpainter.h: deleted.

* rawpainter.C::paintPar(): only draw if we are inside the Paragraph.

* InsetTabular::draw(): use new Painter method instead of a NullPainter.

* InsetMathNest::drawSelection(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15613 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 10:09:59 +00:00
Bo Peng
b9c604e968 session: rename some functions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15607 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 20:01:00 +00:00
Peter Kümmel
32e777c786 remove warning, use shorter code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15595 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 17:14:51 +00:00
Michael Schmitt
5d166accfe * qt4/GuiFontMetrics.C: remove qt3 compatibility code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15594 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 16:01:12 +00:00
Abdelrazak Younes
37e8b2c0f4 Compilation fix for Mac and Linux:
* add QWidget header.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15593 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 15:28:18 +00:00
Abdelrazak Younes
3c296efd19 simplify paintText() interface.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15590 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 09:59:43 +00:00
Abdelrazak Younes
54bdecdb48 remove paperHeight() and paperWidth() in Painter and inherited classes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15589 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 09:36:22 +00:00
Abdelrazak Younes
56be946751 delete unused code and comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15588 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 09:19:37 +00:00
Abdelrazak Younes
9b89f1d4ad stop/start the blinking cursor when the WorkArea get a focusInEvent or focusOutEvent.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15586 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 23:26:52 +00:00
Abdelrazak Younes
1372f311d3 replace the map based width cache with an array based one.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15585 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 22:46:36 +00:00
Abdelrazak Younes
7f94f08bbe * GuiFontMetrics: new metrics(QString) method
* QLPainter::paintText(): use GuiFontMetrics::metrics(QString) to avoid an ucs4 to QString conversion.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15584 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 21:27:03 +00:00
Bo Peng
0fc684e6e6 class session reorganization
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15581 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 14:18:03 +00:00
Abdelrazak Younes
d916db37b0 MacOSX optimisation:
* QLPainter::paintText(): use the font width cache instead of the painter metrics.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15580 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 13:36:23 +00:00
Peter Kümmel
fe784fe9d3 when we use QDesktopWidget we should include it
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15577 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 11:47:59 +00:00
Peter Kümmel
a96cb88ccd GuiView.C: recover from silly window positions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15574 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 08:40:08 +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
Abdelrazak Younes
128a8ef3e8 This commit fixes 3 crashes when reverting a document:
1) crash in GuiWorkArea::paintEvent(), this one is solved by by encapsulating the file loading in LyXView by busy(true)/busy(false) and by disabling/enabling the work area update in GuiView::busy().

2) crash in the cursor blinking because the cursor is timed out at the moment you click on "Revert". So the blinking cursor is now disabled/enabled in GuiView::busy().

3) crash in BufferView::setBuffer() because the current buffer was already closed folling the "revert" command. 
* BufferView::loadLyXFile(): set buffer_ to 0 in case of a reload (when document is reverted)

* LyXView:
  - busy() is not const anymore (work_area_ is modified in GuiView) 
  - loadLyXFile(): encapsulate the file loading with busy(true)/busy(false)
  - setBuffer(): encapsulate the buffer-switching with busy(true)/busy(false)

* GuiView::busy()
  - disable/enable workarea updates.
  - disable/enable blinking cursor.

* WorkArea: new startBlinkingCursor() and stopBlinkingCursor() methods.

* rowpainter.C:
  - paintText(): make sure there is a Buffer from which to paint.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15556 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 13:29:10 +00:00
Peter Kümmel
b6a7dd3aa7 src/frontends/qt4/GuiWorkArea.C:
use position returned by BufferView
src/bufferview_funcs.C: 
    adjust cursor x-position by hand



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15555 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 11:01:34 +00:00
Edwin Leuven
6b20411c6a add fixme for cursor positioning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15544 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-25 09:20:07 +00:00
Abdelrazak Younes
8571d4c0b8 compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15543 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-25 07:48:48 +00:00