Commit Graph

2398 Commits

Author SHA1 Message Date
Bo Peng
c1e4304322 Embedding feature patch 5: handling of embedded files (operation without external files)
*  src/insets/InsetGraphicsParams.h|cpp:
	*  src/insets/InsetExternal.cpp: read/write buffer with embedded file
	*  src/insets/InsetGraphics.cpp: ditto
	*  src/EmbeddedFiles.h|cpp: add find() function


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20075 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 17:50:07 +00:00
Martin Vermeer
12e1d4bc8d Name change CharStyle -> Flex
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20072 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 15:29:04 +00:00
Abdelrazak Younes
67a2b3f28f Fix text frame drawing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20071 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 14:19:52 +00:00
Abdelrazak Younes
6a35e705a4 Fix cursor positioning withing collapsable insets.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20070 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 14:15:07 +00:00
Alfredo Braunstein
8158e25ab7 (InsetCollapsable::draw) restore background color (avoid psychedelic effects when selecting a note)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20069 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 13:52:43 +00:00
Abdelrazak Younes
d1813ca269 * TextMetrics::draw(): get rid of the first par ascent offset.
* BufferView::draw(): adapt to above change.

* InsetCollapsable::draw(): ditto -> get rid of textdim_ member.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20068 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 13:45:58 +00:00
Abdelrazak Younes
eed6514dd0 Move selection painting closer to row painting. Single row painting is now possible for selection.
* Row:
- setSelection(): set selection begin and end for this row.
- sel_beg, sel_end: new public members.

* BufferView::draw()
- do not trigger a full repaint for selection.
- use TextMetrics::draw() instead of hand calling TextMetrics::drawParagraph().

* InsetText::draw(): don't call TextMetrics::drawSelection().

* InsetMathMBox::drawSelection(): remove.

* TextMetrics:
- drawSelection(): simplify a bit. Now private.
- redoParagraph(): memorize Row selection status.
- x2pos(): fix crash when selecting with PageDown.
- draw(): fill-in the ParPos cache before everything else and not in drawParagraph().
- drawParagraph(): take care of row selection painting.







git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20066 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 13:04:05 +00:00
Edwin Leuven
e5c0c385ca rename method
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20043 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 18:13:19 +00:00
Edwin Leuven
39ee5b3fb2 renaming of some methods that hurt the eyes + removal of:
- column and row count, 
- tabular width and method that goes with it
- method declaration without implementation: void delete_column(col_type)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20032 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 10:52:08 +00:00
Alfredo Braunstein
a8ed1add4d rename Paragraph::isRightToLeftPar -> isRTL for the sake of consistence
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20031 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 10:27:55 +00:00
Abdelrazak Younes
2ea432bab1 * TextMetrics: getDisplayFont() and isRTLBoundary() takes pit instead of Paragraph.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20015 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 22:28:49 +00:00
Abdelrazak Younes
d35d25460b * Text: Move some more stuff from Text to TextMetrics:
- getFont() becomes TextMetrics::getDisplayFont()
- setCharFont() now needs a display font.
- setInsetFont() and setFont() now needs a BufferView, will be transferred to TextMetrics too.
- isRTL(): moved to TextMetrics
- isRTLBoundary(): ditto
- font_: ditto

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20014 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 21:48:49 +00:00
Abdelrazak Younes
bc6304d760 Don't save background color in Text. Hand it down at drawing time.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20002 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 14:34:15 +00:00
Abdelrazak Younes
e5ec07d513 * InsetText::font_: removed, this was not used anywhere.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20000 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 13:50:37 +00:00
Abdelrazak Younes
af06ed5ff1 Transfer current_font and real_current_font from Text to Cursor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19999 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 13:35:48 +00:00
Abdelrazak Younes
7150b25b7e * InsetCollapsable::metrics(): Allow a bit more inlined size.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19993 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 10:35:36 +00:00
Abdelrazak Younes
4048448236 Transfer metrics and screen related methods from Text to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19991 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 09:44:08 +00:00
Martin Vermeer
3f358459fc Final touch on minimalistic branches
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19989 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 08:38:09 +00:00
Abdelrazak Younes
452348f4ce * InsetCollapsable::metrics(): Put back the test previous to revision 14472 for openinlined_
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19985 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 23:01:21 +00:00
Martin Vermeer
8906059a0a Cleanup painting of corners
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19978 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 20:38:25 +00:00
Martin Vermeer
e0db6e2679 small cleanup collapsable; label fix branch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19976 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 17:55:21 +00:00
Martin Vermeer
ed6f900552 Use Minimalistic for branches
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19973 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 11:40:09 +00:00
Abdelrazak Younes
fb74d5a476 * InsetCollapsable::metrics(): it seems we don't need to refit anymore. Saves an InsetText::metrics() call and enable single Row painting within opened inline insets.
* TextMetrics::drawParagraph(): force full repaint on Insets that are within the current repainting row.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19968 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 09:24:20 +00:00
Alfredo Braunstein
c94eb3deeb cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19959 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 20:24:15 +00:00
Alfredo Braunstein
d44c6722f0 fix two metrics bug + remove an extra metrics call
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19954 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 17:32:27 +00:00
Abdelrazak Younes
6c111008dc Hack: full repaint of text inset in Tabular. This will do until I can optimize it. We've never done anything but full repaint anyway in tabular.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19948 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 14:02:12 +00:00
Martin Vermeer
92e8e19363 Further cleanup, decoration -> geometry, bugfix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19944 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 12:05:41 +00:00
Abdelrazak Younes
2bff0157b6 Transfer Text::drawSelection() to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19940 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 10:05:12 +00:00
Martin Vermeer
2854410d7b Cleanup: Replace decoration() calls by geometry(). (And get rid of unused call)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19937 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 07:15:32 +00:00
Abdelrazak Younes
3e77ba1eab remove unneeded drawSelection() method.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19936 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 07:10:24 +00:00
Abdelrazak Younes
44812bdec2 Transfer Text::drawSelection() from InsetText::drawSelection() to InsetText::draw(). This enables to take care of the background at one place. This will also enable to draw only the selection in the future (and not the full inset).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19934 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 22:46:22 +00:00
Abdelrazak Younes
32a0ece3de compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19927 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 22:30:14 +00:00
Abdelrazak Younes
d0b8d63d2c fix text background painting.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19925 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 22:12:13 +00:00
Bo Peng
692363bbca Embedding patch two: read/write embedded files'
*  src/insets/InsetGraphics.h
	*  src/insets/InsetExternal.cpp
	*  src/insets/InsetGraphics.cpp
	*  src/insets/InsetInclude.cpp
	*  src/insets/Inset.h
	*  src/insets/InsetInclude.h
	*  src/insets/InsetExternal.h: register embedded files
	*  src/EmbeddedFiles.h|cpp: core of embedded files
	*  src/Buffer.h|cpp: read/write embed file
	*  src/BufferParams.h|cpp: embedded flag
	*  src/Makefile.am
	*  po/POTFILES.in
	*  development/scons/scons_manifest.py: build system updates


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19924 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:46:42 +00:00
Abdelrazak Younes
9b9168c31a Fix redrawing bug for multirow inlined collapsable inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19921 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 19:27:33 +00:00
André Pönitz
ed858d73e5 use bald pointers in clone()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19920 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 18:03:17 +00:00
Abdelrazak Younes
a088c6754a Finally enable single row repainting within insets! The inset width needs to stay fixed of course.
* BufferView::draw(): makes use of PainterInfo::full_repaint
* TextMetrics::drawParagraph(): ditto.
* InsetText::drawSelection(): don't fillRectangle() if there's no selection.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19918 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 15:17:38 +00:00
Richard Heck
8a947f63da This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book.

The GUI will come next.

Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 17:59:49 +00:00
Abdelrazak Younes
235312c376 * InsetCollapsable::setStatus(): remove the Buffer::changed() signal emission. This causes a WorkArea redraw before the BufferView metrics update happens.
* WorkArea::dispatch(): replace the redraw() call with a Buffer::changed() signal emission in order to update all views of the Buffer, even though some view won't need the redraw...



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 18:13:17 +00:00
Abdelrazak Younes
86624539f4 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19853 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:08:03 +00:00
Abdelrazak Younes
55f184563e - Transfer rowpainter.cpp:paintTextInset() to TextMetrics::draw()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19842 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 22:36:20 +00:00
Martin Vermeer
def5620e58 Fix black float background
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19839 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 20:27:02 +00:00
Abdelrazak Younes
b52c339cce Bug fix: correctly redraw a Row containing and inset which Dimension slightly changed. This replace the need for the former leftEdgeFixed boolean in rowpainter.C:paintPar() before the removal of the wide() hack in revision 19834.
* Inset::dimension(): access to dim_

* TextMetrics::redoParagraph(): don't trust Inset::metrics() returned boolean as the internal dimension is changed down in the inheritance chain for InsetFoot->InsetCollapsable->InsetText.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19838 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 16:30:57 +00:00
Abdelrazak Younes
3c92c2ab13 Remove the wide() hack. This simplifies quite a few things...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19834 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 14:38:29 +00:00
Martin Vermeer
77b575e562 Move background colour into the layout files -- for all collapsables
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19813 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-26 20:32:58 +00:00
Martin Vermeer
5541f145fa Set up decoration handling for all collapsable insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19798 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 20:12:50 +00:00
Martin Vermeer
30506f8e11 Clean-up in CharStyles, externalize detection of undefined styles to
layout files



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19790 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 14:43:59 +00:00
Martin Vermeer
e4a160c6cf Make Richard happy, add inset layout parm 'Decoration'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19786 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 09:57:32 +00:00
Martin Vermeer
89287ef7ee Oops -- cut off wrong part of label
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19771 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 14:42:41 +00:00
Alfredo Braunstein
09b0a337ca move forwardIdx to CursorSlice from DocIterator, as it was the only one able to travel into an invalid cursor position
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19763 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 21:35:40 +00:00