Commit Graph

8534 Commits

Author SHA1 Message Date
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
2fe0529df8 Forgot this...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15698 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 00:21:48 +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
Bo Peng
bff0d2affb Fix remaining toolbar/session issues
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15696 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 23:14:31 +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
b084ac0a4a Prettier view->toolbars menu.
* src/lyxfunc.C: better handle LFUN_TOOLBAR_TOGGLE_STATE
	* src/frontends/LyXView.h/C: add getToolbarState
	* src/frontends/Toolbars.h/C: add getToolbarState
	* src/MenuBackend.C: change display of menu item.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15692 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 18:59:33 +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
Georg Baum
bf542320ea put UNICODE FIXMEs where they belong
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15689 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 10:16:21 +00:00
Bo Peng
305c1cb25a bookmarks: allow go to bookmark at any time (new window without buffer)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15687 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 23:20:53 +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
Michael Schmitt
822ef847ed * text.C: fix another change tracking FIXME
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15680 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 21:17:56 +00:00
Michael Schmitt
d2ac9566ff * text.C: remove FIXME for change tracking; the
code is fine as it is


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15678 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 18:53:06 +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
Michael Schmitt
b937ae39f9 * src/paragraph.h:
* src/paragraph_pimpl.C:
	* src/paragraph_pimpl.h:
	* src/paragraph.C: get rid of unused method setContentsFromPar()
	and remove another change tracking FIXME at the same time


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15676 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 17:51:41 +00:00
Georg Baum
4fb480f34f fix compile error
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15675 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 17:06:17 +00:00
Bo Peng
f49f2f6e22 New bookmarks implementation:
* src/lyxfunc.C: handle LFUN_BOOKMARK_GOTO and LFUN_BOOKMARK_CLEAR
	* src/session.h/C: store bookmarks here.
	* src/lfuns.h, src/LyXAction.C: add LFUN_BOOKMARK_CLEAR
	* src/BufferView.h/C: remove saved_positions, move LFUN_BOOKMARK_GOTO to lyxfunc.C
	* src/MenuBackend.h/C: add Bookmarks menu type
	* lib/ui/stdmenus.ui: change bookmarks menu items


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15673 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 15:55:17 +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
Abdelrazak Younes
887bae8390 Fix crash when reconfigure is called without Buffer nor BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15661 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 13:14:21 +00:00
Georg Baum
4c34726901 Fix generation of invalid LyX files
* src/lyxfont.C
	(LyXFont::lyxWriteChanges): Don't change color "inherit" to
	"default", since that cannot be read in.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15654 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-01 09:38:54 +00:00
Michael Schmitt
c07d1814ac * src/tabular.C: remove change tracking FIXMEs; the code looks OK
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15648 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 20:58:12 +00:00
Michael Schmitt
ed75dc4feb * messages.C: use lyxerr[Debug::DEBUG] rather than lyxerr
for debug message


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15646 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 20:26:25 +00:00
Enrico Forestieri
6b1631a8c5 Output a space if pendingSpace() is true and it is actually needed
* src/mathed/MathStream.C
	(isAlpha): new, test whether a lyx::char_type is an ascii letter.
	(operator<<): output a space if pendingSpace() is true and what follows
	begins with an ascii letter. Also update the number of lines written.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15645 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 20:16:47 +00:00
Michael Schmitt
a636a5a7f2 * rowpainter.C: when checking whether the change
bar has to be painted, also consider the imaginary
        end-of-par character


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15644 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 20:07:26 +00:00
Georg Baum
f8b9d95ee4 Support all xymatrix arguments
* src/LaTeXFeatures.C
	(LaTeXFeatures::getPackages): Add package xy

	* src/mathed/InsetMathXYMatrix.[Ch]
	(spacing_): New
	(spacing_code_): New
	(validate): New, require xy package

	* src/mathed/InsetMathXYMatrix.C
	(InsetMathXYMatrix::write): write spacing_ and spacing_code_
	(InsetMathXYMatrix::infoize): output spacing_ and spacing_code_

	* src/mathed/MathFactory.C
	(createInsetMath): handle special arguments of xymatrix

	* src/mathed/MathParser.C
	(Parser::parse1): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15643 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 19:10:30 +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
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
27ef7c726f * LyXText::singleWidth(): remove unneeded Buffer argument.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15627 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 20:10:35 +00:00
Georg Baum
e61e83ec20 Work around a possible gcc bug: Since Abde'ls recent changes gcc does not
like virtual methods in the base class anymore even if they are implemented.
	* src/frontends/Painter.h
	(rectText): remove the virtual qualifier
	(buttonText): ditto
	(underline): ditto
	(buttonFrame): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15625 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 18:56:22 +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
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
eb651c3d61 Move BufferView cached pointer out of LyXText:
* LyXText
  - bv(), bv_owner, : deleted.
  - These methods now need a (Buffer const &) argument: getFont(), applyOuterFont(), getLayoutFont(), getLabelFont(), setCharFont(), setLayout(), singleWidth(), leftMargin(), rightMargin(), computeRowMetrics(), isMainText(), spacing(), isRTL(), cursorX(), rowBreakPoint(), setRowWidth(), labelFill(), labelEnd().
  - These methods now need a (BufferView const &) argument and are propably candidates for future removal when 1.6 is opened for development: redoParagraph(), x2pos(), getRowNearY(), getColumnNearX(), checkInsetHit(), setHeightOfRow().
  - recUndo(): now need a LCursor argument.
 
* CoordCache::get(LyXText const *, pit_type):
  - now const.
  - use const_iterator instead of iterator.

* FontIterator:
  - add (Buffer const &) argument to ctor
  - buffer_: new const reference to applicable BufferView.

* InsetBase
  - xo(), yo(), covers() and neverIndent() are now const.

* InsetText::setViewCache(): deleted

All other changes are due to the LyXText and InsetBase API changes.



 
  

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15618 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 12:45:33 +00:00
Abdelrazak Younes
7a4c86b184 * Painter::isDrawingEnabled():
- make the method const
  - delete the const on return value because they are not really mandatory for POD (Plain Old Data)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15617 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 11:55:13 +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
0a48776a9a Forgot that!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15615 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 10:47:59 +00:00
Abdelrazak Younes
ed921a5955 revert changes from last commit due to a bad tree state.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15614 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 10:20:45 +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
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
ee319c6e83 * guiapi.[Ch]: deleted.
Angus L. explanation: Lars introduced it years ago when he got exited by the idea 
of dll-importing the frontend library, but the idea never came to anything 
concrete. The file can always be resurrected later on; it's meant to be a C-
language wrapper to our C++ frontend library calls.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15611 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 08:13:02 +00:00
Michael Schmitt
9ecf6723bc * src/frontends/Toolbars.h:
* src/frontends/Toolbars.C: rename change_tracking to review
        * lib/ui/default.ui: remove duplicate "review" toolbar
        * src/frontends/LyXView.C: implement context-sensitivity for 
        the review toolbar


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15610 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 22:50:24 +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
Michael Schmitt
8c20105106 change tracking:
* changes.[Ch]: introduce isSimilarTo(...);
	restore original operator==;
	When merging two adjacent changes, the changetime is not considered,
	only the equality of the change type and author is checked (in method
	isSimilarTo(...)). If two changes are in fact merged (in method merge()),
	the later change time is preserved.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15608 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 21:48:23 +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
969f292119 add comment about ugly construct
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15606 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 16:43:18 +00:00
Michael Schmitt
93ef470769 * rowpainter.C: remove unused variable 'inside',
a leftover from the axed nullpainter


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15605 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 16:39:51 +00:00
Georg Baum
7fd7b25a3c Fix more member variable initialization order warnings from gcc.
Does nobody care about this???



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15604 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 16:16:00 +00:00
Georg Baum
1440f02a84 Add comment explaining the encoding change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15603 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 16:08:07 +00:00
Peter Kümmel
577eaa14f8 Show Change Tracking toolbar, prepare hiding/positioning:
- src/frontends/Toolbars.h: control displaying of CT toolbar with a parameter
 - src/frontends/Toolbars.C: control displaying of CT toolbar with a parameter
 - src/frontends/LyXView.C : show CT toolbar
 - src/ToolbarBackend.C    : add CT toolbar to default.ui as REVIEW
 - lib/ui/default.ui       : add CT toolbar to default.ui
 - src/ToolbarBackend.h	   : add CT toolbar type  REVIEW



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15598 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 11:13:46 +00:00
Peter Kümmel
13aaaf3b2f fix bug: table toolbar icons in menubar, hiding will be handled by the next patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15597 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-29 10:42:21 +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
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
Bo Peng
b884dee79e src/session.h: add virtual destructor to stop compiler complaints.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15591 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-28 15:14:28 +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
f43176aebc include <cmath> in src/changes.C for std::abs(double)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15582 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 16:33:27 +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
2dae7cce1a don't trigger the copy ctor because it's private on msvc
CCMAIL:lyx-devel@lists.lyx.org



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15579 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 13:10:06 +00:00
Peter Kümmel
1b698a8218 no abs for int64 values with msvc
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15578 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 13:04:21 +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
Edwin Leuven
91d32deed9 have row on 1 line when exporting to latex
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15576 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 09:54:56 +00:00
Abdelrazak Younes
87de304f6e MSVC compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15575 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-27 09:41:32 +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
Michael Schmitt
af54be2d01 change tracking:
* src/paragraph_pimpl.C: in method erase(),
	set the character to DELETED if
	a) it was previously unchanged or
	b) it was inserted by a co-author



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15573 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 21:06:55 +00:00
Michael Schmitt
c1dbcb6f06 change tracking:
* src/paragraph_pimpl.C: only reject an inset's content
	if the inset itself is UNCHANGED


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15572 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 20:44:00 +00:00
Michael Schmitt
62b09e3dbd change tracking:
* src/paragraph_pimpl.C: do not propagate changes
        to nested insets of the change type is DELETED


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15571 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 20:19:45 +00:00
Michael Schmitt
ae1346990b change tracking:
Better change time handling. Quote from Changes.C:

  Class Change has a changetime field that specifies the exact time at which
  a specific change was made. The change time is used as a guidance for the
  user while editing his document. Presently, it is not considered for LaTeX
  export. To avoid that every keystroke results in a separate change, a
  tolerance interval of 5 minutes is used. That means if there are two adjacent
  changes that only differ in their change time with abs(ct1 - ct2) < 300 sec,
  they will be merged (and the later change time is preserved).
  Technically, the check for equality (or similarity) is made in
  operator==(...). The merging of similar changes happens in method merge().

Resolve FIXMEs for LyX & LaTeX output.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15569 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 19:00:28 +00:00
Georg Baum
0a48dce7ac Compile fix for older gcc's.
I accidentally used data() which is not yet in the standard.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15565 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 15:38:53 +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
97c3e3f33c paintText(): replace the test on BufferView::buffer() with an assertion as this should not happen anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15557 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 13:36:04 +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
Abdelrazak Younes
e0c193fa92 add some initialization and some assertion.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15554 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 08:10:22 +00:00
Abdelrazak Younes
1e3d50b669 Fix (hopefully) gcc warning about initialization order in constructor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15553 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 08:01:48 +00:00
Joost Verburg
8fa888a61a Changed default date formatting string to be compatible with both Windows/UNIX. This solves crashes on Windows systems.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15546 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-25 10:28:29 +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
Michael Schmitt
d53d4a5c35 change tracking:
* src/*.C:
	* src/insets/*.C: implement rejectChanges() in analogy to
	acceptChanges();
	
	* src/paragraph_pimpl.C: add assertions for pos, start, and 
	end parameters


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15542 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 21:38:47 +00:00
Michael Schmitt
fe2abd3846 * src/frontends/qt4/GuiWorkArea.C: fix cursor positioning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15541 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 21:12:46 +00:00
Edwin Leuven
87b93ca808 add missing lyx::
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15539 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 19:05:26 +00:00
Edwin Leuven
d539ab8282 Layout improvements
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15538 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 17:52:37 +00:00
Abdelrazak Younes
b86a8d09b3 Fix cursor size...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15537 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 16:38:17 +00:00
Abdelrazak Younes
583489bcfe compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15536 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 15:31:22 +00:00
Abdelrazak Younes
55eae1a7f8 * Gui.h: new closeAll() pure virtual method.
* qt4/Alert_pimpl.C: make sure the proper Qt attributes are set.

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

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

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

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

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



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15535 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 15:01:07 +00:00