Author: uwestoehr
Date: Sun Sep 5 16:46:58 2010
New Revision: 35283
URL: http://www.lyx.org/trac/changeset/35283
Log:
painter: make it possible to draw lines with custom line thicknesses
Modified:
lyx-devel/trunk/src/frontends/Painter.h
lyx-devel/trunk/src/frontends/qt4/GuiPainter.cpp
lyx-devel/trunk/src/frontends/qt4/GuiPainter.h
Modified: lyx-devel/trunk/src/frontends/Painter.h
==============================================================================
--- lyx-devel/trunk/src/frontends/Painter.h Sun Sep 5 11:08:49 2010
(r35282)
+++ lyx-devel/trunk/src/frontends/Painter.h Sun Sep 5 16:46:58 2010
(r35283)
@@ -55,12 +55,8 @@
class Painter {
public:
Painter() : drawing_enabled_(true) {}
- /// possible line widths
- enum line_width {
- line_thin, //< thin line
- line_medium, //< medium line
- line_thick //< thick line
- };
+
+ float line_width;
/// possible line styles
enum line_style {
@@ -80,7 +76,7 @@
/// draw a line from point to point
virtual void line(int x1, int y1, int x2, int y2, Color,
- line_style = line_solid, line_width = line_thin) = 0;
+ line_style = line_solid, float line_width = 0.5) = 0;
/**
* lines - draw a set of lines
@@ -89,11 +85,11 @@
* @param np size of the points array
*/
virtual void lines(int const * xp, int const * yp, int np, Color,
- line_style = line_solid, line_width = line_thin) = 0;
+ line_style = line_solid, float line_width = 0.5) = 0;
/// draw a rectangle
virtual void rectangle(int x, int y, int w, int h, Color,
- line_style = line_solid, line_width = line_thin) = 0;
+ line_style = line_solid, float line_width = 0.5) = 0;
/// draw a filled rectangle
virtual void fillRectangle(int x, int y, int w, int h, Color) = 0;
Modified: lyx-devel/trunk/src/frontends/qt4/GuiPainter.cpp
==============================================================================
--- lyx-devel/trunk/src/frontends/qt4/GuiPainter.cpp Sun Sep 5 11:08:49
2010 (r35282)
+++ lyx-devel/trunk/src/frontends/qt4/GuiPainter.cpp Sun Sep 5 16:46:58
2010 (r35283)
@@ -52,7 +52,7 @@
// new QPainter has default QPen:
current_color_ = guiApp->colorCache().get(Color_black);
current_ls_ = line_solid;
- current_lw_ = line_thin;
+ current_lw_ = 0.5;
}
@@ -64,7 +64,7 @@
void GuiPainter::setQPainterPen(QColor const& col,
- Painter::line_style ls, Painter::line_width lw)
+ Painter::line_style ls, float lw)
{
if (col == current_color_&& ls == current_ls_&& lw == current_lw_)
return;
@@ -81,11 +81,7 @@
case line_onoffdash: pen.setStyle(Qt::DotLine); break;
}
- switch (lw) {
- case line_thin: pen.setWidth(0); break;
- case line_medium: pen.setWidth(1); break;
- case line_thick: pen.setWidth(3); break;
- }
+ pen.setWidth(lw);
setPen(pen);
}
@@ -175,7 +171,7 @@
void GuiPainter::line(int x1, int y1, int x2, int y2,
Color col,
line_style ls,
- line_width lw)
+ float lw)
{
if (!isDrawingEnabled())
return;
@@ -192,7 +188,7 @@
void GuiPainter::lines(int const * xp, int const * yp, int np,
Color col,
line_style ls,
- line_width lw)
+ float lw)
{
if (!isDrawingEnabled())
return;
@@ -220,7 +216,7 @@
void GuiPainter::rectangle(int x, int y, int w, int h,
Color col,
line_style ls,
- line_width lw)
+ float lw)
{
if (!isDrawingEnabled())
return;
Modified: lyx-devel/trunk/src/frontends/qt4/GuiPainter.h
==============================================================================
--- lyx-devel/trunk/src/frontends/qt4/GuiPainter.h Sun Sep 5 11:08:49
2010 (r35282)
+++ lyx-devel/trunk/src/frontends/qt4/GuiPainter.h Sun Sep 5 16:46:58
2010 (r35283)
@@ -42,7 +42,7 @@
int x2, int y2,
Color,
line_style = line_solid,
- line_width = line_thin);
+ float line_width = 0.5);
/**
* lines - draw a set of lines
@@ -56,7 +56,7 @@
int np,
Color,
line_style = line_solid,
- line_width = line_thin);
+ float line_width = 0.5);
/// draw a rectangle
virtual void rectangle(
@@ -64,7 +64,7 @@
int w, int h,
Color,
line_style = line_solid,
- line_width = line_thin);
+ float line_width = 0.5);
/// draw a filled rectangle
virtual void fillRectangle(
@@ -150,11 +150,11 @@
/// set pen parameters
void setQPainterPen(QColor const& col,
- line_style ls = line_solid, line_width lw = line_thin);
+ line_style ls = line_solid, float lw = 0.5);
QColor current_color_;
Painter::line_style current_ls_;
- Painter::line_width current_lw_;
+ float current_lw_;
///
bool const use_pixmap_cache_;
///