Commit Graph

2052 Commits

Author SHA1 Message Date
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
Georg Baum
3c323c1a37 The uncontroversal part of the selection fix: Always set the X selection
after selecting something with the mouse

	* src/insets/insettabular.C
	(InsetTabular::doDispatch): Set the X selection if there is a
	selection after release of the left mouse button

	* src/mathed/InsetMathNest.C
	(InsetMathNest::doDispatch): Set the X selection after double and
	triple click of the left mouse button
	(InsetMathNest::lfunMouseRelease): Set the X selection if there is a
	selection after release of the left mouse button


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16530 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 13:31:37 +00:00
Jean-Marc Lasgouttes
bce5521446 * insetcollapsable.C (doDispatch): [LFUN_MOUSE_PRESS] reset selection
when mouse is pressed on the inset button (bug 3060).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16501 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 13:53:16 +00:00
Georg Baum
8f2243819a Let LFUN_PASTE always paste the most recent clipboard (internal or system)
* src/insets/insettabular.C
	(InsetTabular::doDispatch): Only paste the tabular clipboard if the
	system clipboard is not newer, else let the current cell paste the
	system clipboard
	(InsetTabular::getStatus): Only decide whether to enable LFUN_PASTE
	if the tabular clipboard is not empty and the system clipboard is
	not newer, else let the current cell decide.

	* src/mathed/InsetMathGrid.C
	(InsetMathGrid::doDispatch): Use the system clipboard for LFUN_PASTE
	if it is newer.

	* src/mathed/InsetMathNest.C
	(InsetMathNest::doDispatch): Use the system clipboard for LFUN_PASTE
	if it is newer.

	* src/text3.C
	(doInsertInset): Add a "0" argument to LFUN_PASTE, because we always
	want to use the internal clipboard here
	(LyXText::dispatch): ditto (when handling mouse button 2 press)
	(LyXText::dispatch): Use the system clipboard for LFUN_PASTE if it
	is newer.
	(LyXText::getStatus): Also enable LFUN_PASTE if the system clipboard
	is owned by another application


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16498 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 12:05:24 +00:00
Georg Baum
9479b1323f * src/insets/insettabular.C
(InsetTabular::getStatus): Correctly enable LFUN_PASTE when the
	special tabular clipboard is empty by removing an errornous
	fall-through to LFUN_INSET_MODIFY


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16495 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 11:05:22 +00:00
Georg Baum
129f5b6431 Get rid of InsetTabular::hasPasteBuffer. I verified that it was equivalent
to cap::tabularStackDirty().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16494 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 11:00:09 +00:00
Georg Baum
b7c5197b7e forgot the break
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16493 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 09:50:25 +00:00
Georg Baum
c9bd56ab18 * src/insets/insettabular.C
(InsetTabular::doDispatch): Don't reset the table paste buffer
	when pasting from the external clipboard or selection, since no
	paste operation should ever change any clipboard.
	At the same time make the code more readable by removing the
	fall-through.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16492 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 09:48:54 +00:00
Abdelrazak Younes
a64d5ba362 Transfer x2pos() and pos2x from LyXText to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16458 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-01 11:36:30 +00:00
Abdelrazak Younes
b2126408cf This commit do the Model/View separation of the LyXText and Paragraph classes. The separation is mostly complete for the Paragraph class but some more transfer should occur for the LyXText class.
* ParagraphMetrics.[Ch]: new files

* TextMetrics.[Ch]: new files.

* lyxtext.h/text2.C/text3.C: some code transferred to the TextMetrics class.

* paragraph.[Ch]: all screen oriented code transfered to ParagraphMetrics class.

* BufferView:
 - text_metrics_: new TextMetrics cache private member.
 - textMetrics(): new access method.
 - parMetrics(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16433 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-29 23:54:48 +00:00
Jean-Marc Lasgouttes
7459f3ad6a * insetcollapsable.C (hasFixedWidth): new virtual method, returns
false by default.
	(metrics): do not set to openinlined if
	hasFixedWidth is true.

	* insetbox.C (hasFixedWidth): returns true if the box has a fixed
	width. 
	(metrics): use hasFixedWidth.
	



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16426 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-29 11:52:01 +00:00
Georg Baum
5e5dc39d2c fix typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16414 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 12:05:40 +00:00
Georg Baum
4de1cc0339 remove obsolete comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16413 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 12:01:27 +00:00
Bo Peng
36b485d842 Fix a crash caused by cur.text() != this for collapsable insets
* src/insets/insetcollapsable.C: test if inset is open before editing


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16406 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 03:00:48 +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
6c4aa88c2e remove unused stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16395 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-27 08:40:40 +00:00
Georg Baum
07e76f0911 get rid of more utf8 conversions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16376 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-22 09:23:10 +00:00
Edwin Leuven
5ad83ced7c avoids updates on
1. mouse click (without selection)
 2. mouse movements (when selection doesn't change) 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16373 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-21 21:27:04 +00:00
Jean-Marc Lasgouttes
9c513e90d1 * insetcollapsable.C (doDispatch): fix crash in previous patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16344 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-20 13:25:46 +00:00
Georg Baum
0d089d48ca fix formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16340 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-19 18:04:42 +00:00
Jean-Marc Lasgouttes
6853846d98 * insetcollapsable.C (doDispatch): do nothing on mouse release if
there is a selection.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16337 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-19 15:42:10 +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
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
Jürgen Spitzmüller
50eba7d4f2 * insettabular.C (doDispatch): call mouseSetCursor on mouse
click to ensure dEPM is triggered.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16245 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-11 17:10:11 +00:00
Abdelrazak Younes
a68da74622 unneeded header
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16200 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-07 12:06:10 +00:00
Bo Peng
af75e269c7 Add a copy constructor of InsetCollapsable to fix the follow bug:
mouse_hover_ is copied with copied collapsable insets. Should be false for
newly copied insets.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16182 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 05:36:59 +00:00
Bo Peng
b02d655347 fix a compiler warning regarding unused variable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16179 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 02:18:29 +00:00
Georg Baum
9eab5fa88a more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16173 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 15:46:57 +00:00
Georg Baum
3314702bf1 more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16171 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 14:45:17 +00:00
Bo Peng
7c184e5426 Button face-lift: use mouse hover-buttons.
* src/insets/insetbase.h: add setMouseHover function
	* src/insets/insetcommand.h/C: handle setMouseHover
	* src/insets/insetcollapsable.h/C: handle setMouseHover
	* src/LColor.h/C: redefine some colors
	* src/insets/render_base.h: add state_
	* src/insets/render_button.C: draw differently according to state_
	* src/frontends/Painter.h/C: hover-stype button
	* src/frontends/qt4/GuiWorkArea.C: enable mouse tracking
	* src/BufferView.C: track mouse_motion without button events


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16162 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 04:31:18 +00:00
Georg Baum
ed99f752f9 more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16133 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 16:07:15 +00:00
Georg Baum
c0a7417f20 fix display of hungarian umlaut
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16128 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-01 21:13:47 +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
Abdelrazak Younes
e24bf64c68 * dimension.h: new operator!=() and operator=()
* InsetBase and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim) now returns a bool (true if metrics changed).

* MathData and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim): ditto.

* RenderBase and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim): ditto.

* lyxtext.h/text.C:
  - LyXText::metrics(MetricsInfo & mi, Dimension & dim): ditto.
  - LyXText::redoParagraph(): take into account potential change in inset metrics.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16091 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 15:15:49 +00:00
Jürgen Spitzmüller
288fbc7a6b * src/insets/insettabular.C (doDispatch): do not reset cursor/selection
if we have selected some cells (bug 2715).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16075 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 14:51:09 +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
Michael Schmitt
f96236b5f5 * src/insets/insetpagebreak.C:
* src/insets/insetpagebreak.h: fix localization


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16039 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 16:52:09 +00:00
Georg Baum
82b0e98d54 missing bits of the new insets for \clearpage and \cleardoublepage
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16038 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 15:57:27 +00:00
Bo Peng
7b031e5d86 Add inset clearpage and cleardoublepage, from Urgas
* src/insets/insetert.C
	* src/text3.C
	* src/lfuns.h
	* src/factory.C
	* src/tex2lyx/text.C
	* src/text.C
	* src/LyXAction.C: add and handle LFUN_CLEARPAGE_INSET and LFUN_CLEARDOUBLEPAGE_INSET
	* src/insets/insetpagebreak.h/C: extend InsetPageBreak
	* lib/lyx2lyx/lyx_1_5.py: file format change
	* lib/ui/stdmenus.ui: add menu items


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16037 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 15:09:01 +00:00
Michael Schmitt
0777d41fef * insets/inset.h:
* rowpainter.C: visualize deleted/inserted end-of-par characters (change tracking)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16017 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-23 18:59:05 +00:00
Michael Schmitt
653c52e2d2 * insets/insetbase.h:
* buffer.C:
	* LaTeX.C:
	* frontends/qt4/ui/QPrefFileformatsUi.ui:
	* MenuBackend.C: fix typo: "can not" => "cannot"


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15981 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-19 12:43:22 +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
Abdelrazak Younes
c66d2f1ee5 Optimize drawing.
* BufferView:
  - update(): returns a pair of bools in order to inform for singlePar cases.
  - workAreaDispatch(): ditto and simplify the logic by using cursor update flags.

* text.C
  - breakParagraph(): change the cursor update flag as needed.
  - insertChar(): ditto.
  - erase(): ditto
  - redoParagraph(): now returns true if there is a height change.

* text3.C: dispatch():
  - initialize the cursor flag at the beginning
  - LFUN_MOUSE_PRESS: no need to update.
  - LFUN_MOUSE_RELEASE: ditto.
  - add some FIXMEs and comments.

* LyXFunc::dispatch(): simplify the BufferView update.

* insets/insetcollapsable.C: clarify and simplify the logic in doDispatch().

* WorkArea::dispatch(): redraw only if needed.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15958 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 17:42:52 +00:00
Georg Baum
0735a7bcdc add clarifying comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15929 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-14 20:33:13 +00:00
Peter Kümmel
646c312740 don't pass temporary string objects as parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15928 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-14 19:54:56 +00:00
Georg Baum
2734cc1548 Extend the navigate menu to child docs
* src/buffer_funcs.h
	(updateLabels): Add bool childonly argument

	* src/insets/insetbase.h
	(addToToc): New virtual method

	* src/insets/insetinclude.[Ch]
	(addToToc): New virtual method
	(updateLabels): New method

	* src/TocBackend.h: reorganize classes so that we can forward
	declare TocList

	* src/insets/insetfloat.[Ch]
	* src/insets/insetwrap.[Ch]
	(addToToc): Adjust to type changes in TocBackend.h

	* src/frontends/qt4/TocModel.[Ch]: ditto

	* src/frontends/controllers/ControlToc.[Ch]: ditto

	* src/TocBackend.C: ditto
	(TocBackend::update) Remove test for float and wrap inset,
	call virtual method instead

	* src/BufferView.C
	(BufferView::dispatch): make LFUN_PARAGRAPH_GOTO work even if the
	target paragraph is in a different buffer

	* src/MenuBackend.C: Adjust to type changes in TocBackend.h
	(expandToc): Add an entry for the master doc in child docs

	* src/buffer_funcs.C
	(setLabel): Add text class parameter
	(updateLabels): handle included docs if requested by the caller


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15904 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 16:53:49 +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
de38acaef0 unicode: ditch another utf8 roundtrip + some obsolete FIXMEs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15866 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 21:09:51 +00:00
Georg Baum
a956cc56e6 unicode: ditch another utf8 roundtrip
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15865 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 20:59:04 +00:00
Georg Baum
f6730f66b0 Unicode: remove more utf8 roundtrips and faulty conversions to docstring
without from_utf8


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15864 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 20:55:40 +00:00