mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Move some text from the readme file to relevant source files
This commit is contained in:
parent
f3924a52b3
commit
4bd5a7e883
@ -11,8 +11,6 @@ what we have with force_paint_single_char. Moreover there has been
|
||||
some code factorization in TextMetrics, where the same row-breaking
|
||||
algorithm was basically implemented 3 times.
|
||||
|
||||
Currently everything is supposed to work for both LTR and RTL text.
|
||||
|
||||
The bugs fixed and caused by this branch are tracked at ticket #9003:
|
||||
http://www.lyx.org/trac/ticket/9003
|
||||
|
||||
@ -59,26 +57,3 @@ Next steps:
|
||||
in the source.
|
||||
|
||||
* Maybe get rid of LyXRC::rtl_support, which does not have a real use case.
|
||||
|
||||
* Fix bugs uncovered by testing.
|
||||
|
||||
* Profile and see how performance can be improved.
|
||||
|
||||
|
||||
Steps for later (aka out of the scope of this branch):
|
||||
|
||||
* Re-implement row painting using row elements. This is not difficult
|
||||
in principle, but the code is intricate and needs some careful
|
||||
analysis. The first thing that needs to be done is to break row
|
||||
elements with the same criteria. Currently breakRow does not
|
||||
consider on-the-fly spell-checking, but it is not clear to me that
|
||||
it is required. Moreover, this thing would only work if we are sure
|
||||
that the Row object is up-to-date when drawing happens. This depends
|
||||
on the update machinery.
|
||||
|
||||
This would allow to get rid of the Bidi.cpp code.
|
||||
|
||||
* Change Row object to operate only on integers and not doubles. Then,
|
||||
rewrite the computation of spacing in justified paragraphs so that
|
||||
strings can be drawn without cutting at separators. This will improve
|
||||
performance.
|
||||
|
12
src/Row.h
12
src/Row.h
@ -29,6 +29,18 @@ namespace lyx {
|
||||
class DocIterator;
|
||||
class Inset;
|
||||
|
||||
/**
|
||||
* FIXME: Change Row object to operate only on integers and not doubles.
|
||||
*
|
||||
* This use of double is only useful to distribute the extra
|
||||
* horizontal space between separators in justified text. If we do
|
||||
* integer arithmetic, then it is possible to have two groups of
|
||||
* separators, with size s or s+1. Then strings can be drawn without
|
||||
* cutting at separators in justfied text, as it is done in
|
||||
* non-justified text. This will improve performance.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* An on-screen row of text. A paragraph is broken into a RowList for
|
||||
* display. Each Row contains a tokenized description of the contents
|
||||
|
@ -36,6 +36,21 @@ class TextMetrics;
|
||||
|
||||
namespace frontend { class Painter; }
|
||||
|
||||
/**
|
||||
* FIXME: Re-implement row painting using row elements.
|
||||
*
|
||||
* This is not difficult in principle, but the code is intricate and
|
||||
* needs some careful analysis. The first thing that needs to be done
|
||||
* is to break row elements with the same criteria. Currently breakRow
|
||||
* does not consider on-the-fly spell-checking, but it is not clear to
|
||||
* me that it is required. Moreover, this thing would only work if we
|
||||
* are sure that the Row object is up-to-date when drawing happens.
|
||||
* This depends on the update machinery.
|
||||
*
|
||||
* This would allow to get rid of the Bidi class.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* A class used for painting an individual row of text.
|
||||
* FIXME: get rid of that class.
|
||||
|
Loading…
Reference in New Issue
Block a user