Alfredo Braunstein wrote:
> Is there any good reason why all those bidi/rtl methods are inlined in
Here is a patch.
Regards, Alfredo
Index: ChangeLog
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/ChangeLog,v
retrieving revision 1.1133
diff -u -p -u -r1.1133 ChangeLog
--- ChangeLog 2003/03/18 20:53:59 1.1133
+++ ChangeLog 2003/03/18 22:57:37
@@ -1,3 +1,8 @@
+2003-03-18 Alfredo Braunstein <[EMAIL PROTECTED]>
+
+ * lyxtext.h:
+ * text.C: Take the bidi methods out of line
+
2003-03-18 John Levon <[EMAIL PROTECTED]>
* BufferView_pimpl.C (scrollDocView): add updateLayoutChoice(),
Index: lyxtext.h
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/lyxtext.h,v
retrieving revision 1.146
diff -u -p -u -r1.146 lyxtext.h
--- lyxtext.h 2003/03/18 16:47:18 1.146
+++ lyxtext.h 2003/03/18 22:57:38
@@ -489,38 +489,15 @@ public:
int workWidth(Inset * inset) const;
///
void computeBidiTables(Buffer const *, Row * row) const;
-
/// Maps positions in the visual string to positions in logical string.
- inline
- lyx::pos_type log2vis(lyx::pos_type pos) const {
- if (bidi_start == -1)
- return pos;
- else
- return log2vis_list[pos-bidi_start];
- }
-
+ lyx::pos_type log2vis(lyx::pos_type pos) const;
/// Maps positions in the logical string to positions in visual string.
- inline
- lyx::pos_type vis2log(lyx::pos_type pos) const {
- if (bidi_start == -1)
- return pos;
- else
- return vis2log_list[pos-bidi_start];
- }
+ lyx::pos_type vis2log(lyx::pos_type pos) const;
///
- inline
- lyx::pos_type bidi_level(lyx::pos_type pos) const {
- if (bidi_start == -1)
- return 0;
- else
- return bidi_levels[pos-bidi_start];
- }
+ lyx::pos_type bidi_level(lyx::pos_type pos) const;
///
- inline
- bool bidi_InRange(lyx::pos_type pos) const {
- return bidi_start == -1 ||
- (bidi_start <= pos && pos <= bidi_end);
- }
+ bool bidi_InRange(lyx::pos_type pos) const;
+
private:
///
Row * firstrow;
Index: text.C
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/text.C,v
retrieving revision 1.319
diff -u -p -u -r1.319 text.C
--- text.C 2003/03/18 17:12:49 1.319
+++ text.C 2003/03/18 22:57:42
@@ -2838,3 +2838,34 @@ int LyXText::getDepth() const
{
return cursor.par()->getDepth();
}
+
+
+lyx::pos_type LyXText::log2vis(lyx::pos_type pos) const
+{
+ if (bidi_start == -1)
+ return pos;
+ else
+ return log2vis_list[pos-bidi_start];
+}
+
+lyx::pos_type LyXText::vis2log(lyx::pos_type pos) const
+{
+ if (bidi_start == -1)
+ return pos;
+ else
+ return vis2log_list[pos-bidi_start];
+}
+
+lyx::pos_type LyXText::bidi_level(lyx::pos_type pos) const
+{
+ if (bidi_start == -1)
+ return 0;
+ else
+ return bidi_levels[pos-bidi_start];
+}
+
+bool LyXText::bidi_InRange(lyx::pos_type pos) const
+{
+ return bidi_start == -1 ||
+ (bidi_start <= pos && pos <= bidi_end);
+}