Commit Graph

33 Commits

Author SHA1 Message Date
Guillaume Munch
e449e70e38 Simplify Changers interface
In fact having an extra parameter "bool cond" is no longer useful because it can
now always be emulated with a ternary operator:
	Changers dummy = cond ? do_change() : Changer();
2016-11-21 00:08:11 +01:00
Guillaume Munch
a9eb87a89d Correct computation of math font size
Move math style to FontInfo and compute the font sizes for scriptstyle and
scriptscriptstyle according to standard proportions: 0.73 and 0.55.

This is simpler and more accurate. It also fixes the font size of
${\scriptscriptstyle {\textstyle A}}A$ which exposed the limitations of the
previous approach.
2016-11-21 00:02:35 +01:00
Richard Heck
6fe499509a Alignment 2016-07-31 02:49:38 -04:00
Guillaume Munch
e2bc7ffae3 RefChanger
RefChanger temporarily assigns a value to a non-const reference of any
kind. RefChanger provides a flexible and uniform generalisation of the various
scope guards previously derived from the old Changer class in MetricsInfo.h.

As before, a temporary assignment lasts as long as the Changer object lives. But
the new Changer is movable. In particular, contorsions are no longer needed to
change a private field. Special code can be moved into the appropriate classes,
and it is no longer necessary to create a new class for each specific use.

Syntax change:

   FontSetChanger dummy(mi.base, value);
-> Changer dummy = mi.base.changeFontSet(value);

New function for generating arbitrary Changers:

  Changer dummy = make_change(ref, val, condition);

Bugfix:

* Fix the display of \displaystyle{\substack{\frac{xyz}{}}} (missing style
  change).
2016-06-13 08:46:15 +01:00
Jean-Marc Lasgouttes
4cdd9732d3 Fix logic error in on-screen font shape
This made text in smallcaps+emph display as upright instead of plain
emph. There is no latex font for smallcaps + emph, but it is not a
reason for displaying it wrong.
2015-07-17 12:07:52 +02:00
Georg Baum
7cf8b9da78 Implement writing of layouts
This will be needed for layout forward compatibility, and could also be used
for a layout editor. Writing was only implemented for styles, not for complete
layout files (text class). I rarely made use of default values for missing
variables which exist in read(), so the output it a bit verbose (but more safe
against future changes). Also, some things like CopyStyle are never written for
obvious reasons.
2013-03-31 15:33:26 +02:00
Georg Baum
f67cf6f4bb Add support for stmaryrd.sty (bug #8434)
The stmaryrd package adds support for lots of math symbols, using a font
designed to accompany the computer modern fonts. The changes in detail:

- Fix generate_symbols_list.py to work with stmaryrd.sty. It loooks like it
  was automatically translated from a perl version and never used.
- Generate the new symbols in lib/symbols using generate_symbols_list.py and
  add some manual adjustments
- Generate stmary10.ttf by a simple ttf export from stmary10.sfd with fontforge
- Add license info for stmary10.ttf
- Create a test file with all symbols from stmaryrd.sty. Actually it would be
  nice to have this for the other fonts as well.
- The mechanics: lyx2lyx, tex2lyx, font machinery etc.
2012-12-15 13:10:31 +01:00
Vincent van Ravesteijn
a4e03846cd Fix doxygen output for grouped items. Without the /name tag doxygen shows the group name as the name of the first item. Moreover, the comment styles are somewhat standardized.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33236 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-27 18:10:33 +00:00
Jean-Marc Lasgouttes
0c1ff6d89e Move some functions that only required a FontInfo parameter from Font.*
to FontInfo.*

This allows tex2lyx to use the plain FontInfo object (via Layout), and to remove
several '#ifdef TEX2LYX' in the code

Reorder a bit the makefile in tex2lyx


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31772 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-27 16:16:15 +00:00
Richard Heck
8a38179d6d Initial work for the layout2css stuff. Basically, we have a routine
here, and lots of support, that writes font information to CSS format.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31754 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-26 21:35:35 +00:00
Pavel Sanda
6fde8f8067 Introduce double underline and wavy underline styles from ulem
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg150803.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29542 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-05 09:26:28 +00:00
Pavel Sanda
381b86788d Introduce strikeout text style (strike-through)
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg150743.html

Somewhat related to http://www.lyx.org/trac/ticket/4248 .


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29523 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-03 22:45:14 +00:00
André Pönitz
20d5148dca move ColorSet to a header of its own to reduce #include dependencies
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28426 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-09 23:30:24 +00:00
Vincent van Ravesteijn
438aaf2ec9 Add a new member to FontInfo denoting the color to be used when painting.
* rowpainter.cpp: now the color for painting selected text and changed text is set via FontInfo::setColor. However, this color should remain a ColorCode as this color is used in e.g. the GuiCharacter dialog and for LateX output. Therefore I use now the FontInfo::setPaintColor function.

* FontInfo.cpp/h: new members paint_color_ and setPaintColor(). The function realColor is updated to return the paintColor when it is set.

See:
http://thread.gmane.org/gmane.editors.lyx.devel/114189

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28422 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-09 20:22:48 +00:00
Vincent van Ravesteijn
814a8411eb Reverse unwanted commits.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28388 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-08 01:11:27 +00:00
Vincent van Ravesteijn
f694cf7135 * InsetMathNest.cpp: Cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28387 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-08 01:01:15 +00:00
André Pönitz
f1cba8ff64 more latin1..utf8 schanges. all of src/* should be utf8 now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27425 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 15:58:50 +00:00
Abdelrazak Younes
869a66f59f GCC Compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21242 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 20:30:41 +00:00
Abdelrazak Younes
e194158259 Remove unneeded code and comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21241 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 19:27:12 +00:00
Abdelrazak Younes
5ddc612b73 Splitup Font in saner bits:
* Font::FontBits -> FontInfo
* Font::FONT_XXX -> all enums transfered to FontEnums.h and renamed to FontXxx

I've replaced Font uses with FontInfo were the language() member was not needed, basically all draw() and metrics methods. There's one problematic cases with InsetQuotes which I solved by taking the Buffer main language.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21240 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 18:51:54 +00:00
John Levon
962a0c5585 font loader / color handler move
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4204 a592a061-630c-0410-9148-cb99ea01b6c8
2002-05-24 18:24:14 +00:00
Lars Gullik Bjønnes
482c04ecca use more specific smart_ptr headers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4183 a592a061-630c-0410-9148-cb99ea01b6c8
2002-05-22 01:16:37 +00:00
Lars Gullik Bjønnes
8283e978f8 ws cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3803 a592a061-630c-0410-9148-cb99ea01b6c8
2002-03-21 17:27:08 +00:00
Lars Gullik Bjønnes
a45afb24a4 no change logs, sorry
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3232 a592a061-630c-0410-9148-cb99ea01b6c8
2001-12-18 03:30:35 +00:00
Lars Gullik Bjønnes
45a03f4f67 use the new sstream return non-pods as const, use string instead of char * in a lot of places
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1019 a592a061-630c-0410-9148-cb99ea01b6c8
2000-09-14 17:53:12 +00:00
Lars Gullik Bjønnes
797d87b451 make doc++ able to generate the source documentation for lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@956 a592a061-630c-0410-9148-cb99ea01b6c8
2000-08-07 20:58:24 +00:00
Lars Gullik Bjønnes
76938908d7 use more explicit on constructors use the pimpl idom to reduce size with about 500k
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@641 a592a061-630c-0410-9148-cb99ea01b6c8
2000-04-08 17:02:02 +00:00
Lars Gullik Bjønnes
77e706c441 fix the smallcaps drawing, move xfont metrics functions out from LyXFont, move non-inlineable functions out of line
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@638 a592a061-630c-0410-9148-cb99ea01b6c8
2000-04-04 00:19:15 +00:00
Lars Gullik Bjønnes
1c9a8d27a2 the figinsetpatch some lyxrc changes, read the ChangeLog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@603 a592a061-630c-0410-9148-cb99ea01b6c8
2000-03-12 10:35:05 +00:00
Lars Gullik Bjønnes
9ce32d63e5 several small and larger changes, read the Changelog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@529 a592a061-630c-0410-9148-cb99ea01b6c8
2000-02-04 09:38:32 +00:00
Lars Gullik Bjønnes
a040c0bc6f white-space changes, removed definitions.h several enum changes because of this, new file undo.C rewritten some in chset.C
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@314 a592a061-630c-0410-9148-cb99ea01b6c8
1999-11-15 12:01:38 +00:00
Lars Gullik Bjønnes
0eccdd1c36 merge from the string-switch branch and ready for a prelease.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@162 a592a061-630c-0410-9148-cb99ea01b6c8
1999-10-02 16:21:10 +00:00
Lars Gullik Bjønnes
27de1486ca Initial revision
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@140 a592a061-630c-0410-9148-cb99ea01b6c8
1999-09-27 18:44:28 +00:00