]> git.lyx.org Git - lyx.git/blobdiff - src/screen.C
remove more forms.h cruft
[lyx.git] / src / screen.C
index 5ef3ad3aac364591c23dbe1fe1c0feed5030697c..2b17cb9ac9659d5aa6a8f784b5b1080c7ee8a8f5 100644 (file)
@@ -22,6 +22,7 @@
 #include "Painter.h"
 #include "WorkArea.h"
 #include "buffer.h"
+#include "BufferView.h"
 #include "font.h"
 #include "insets/insettext.h"
 #include "ColorHandler.h"
@@ -67,6 +68,12 @@ LyXScreen::LyXScreen(WorkArea & o)
 }
 
 
+LyXScreen::~LyXScreen()
+{
+       XFreeGC(fl_get_display(), gc_copy);
+}
+
 void LyXScreen::setCursorColor() 
 {
        if (!lyxColorHandler.get()) return;
@@ -110,7 +117,7 @@ void LyXScreen::DrawFromTo(LyXText * text, BufferView * bv,
        int y_text = text->first + y1;
    
        // get the first needed row 
-       Row * row = text->GetRowNearY(y_text);
+       Row * row = text->getRowNearY(y_text);
        // y_text is now the real beginning of the row
    
        int y = y_text - text->first;
@@ -120,7 +127,7 @@ void LyXScreen::DrawFromTo(LyXText * text, BufferView * bv,
                LyXText::text_status st = bv->text->status;
                do {
                        bv->text->status = st;
-                       text->GetVisibleRow(bv, y + y_offset,
+                       text->getVisibleRow(bv, y + y_offset,
                                            x_offset, row, y + text->first);
                } while (bv->text->status == LyXText::CHANGED_IN_DRAW);
                bv->text->status = st;
@@ -150,7 +157,7 @@ void LyXScreen::DrawOneRow(LyXText * text, BufferView * bv, Row * row,
                LyXText::text_status st = bv->text->status;
                do {
                        bv->text->status = st;
-                       text->GetVisibleRow(bv, y, x_offset, row,
+                       text->getVisibleRow(bv, y, x_offset, row,
                                            y + text->first);
                } while (bv->text->status == LyXText::CHANGED_IN_DRAW);
                bv->text->status = st;
@@ -446,22 +453,22 @@ void LyXScreen::ToggleSelection(LyXText * text, BufferView * bv,
                                int y_offset, int x_offset)
 {
        // only if there is a selection
-       if (!text->selection) return;
+       if (!text->selection.set()) return;
 
        int const bottom = min(
-               max(static_cast<int>(text->sel_end_cursor.y()
-                                    - text->sel_end_cursor.row()->baseline()
-                                    + text->sel_end_cursor.row()->height()),
+               max(static_cast<int>(text->selection.end.y()
+                                    - text->selection.end.row()->baseline()
+                                    + text->selection.end.row()->height()),
                    text->first),
                static_cast<int>(text->first + owner.height()));
        int const top = min(
-               max(static_cast<int>(text->sel_start_cursor.y() -
-                                    text->sel_start_cursor.row()->baseline()),
+               max(static_cast<int>(text->selection.start.y() -
+                                    text->selection.start.row()->baseline()),
                    text->first),
                static_cast<int>(text->first + owner.height()));
 
        if (kill_selection)
-               text->selection = 0;
+               text->selection.set(false);
        DrawFromTo(text, bv, top - text->first, bottom - text->first,
                   y_offset, x_offset);
        expose(0, top - text->first,