void grid_box_rep::display (renderer ren) { int i; if (first_time || ren->pixel!=ren_pixel) { point p1= f [point (x1, y1)]; point p2= f [point (x2, y2)]; point l1= point (min (p1[0], p2[0]), min (p1[1], p2[1])); point l2= point (max (p1[0], p2[0]), max (p1[1], p2[1])); point e1= l1, e2= point (l1[0], l2[1]); point e3= l2, e4= point (l2[0], l1[1]); point e1t= f (e1), e2t= f (e2); point e3t= f (e3), e4t= f (e4); double L1t, L2t, L3t, L4t; L1t= norm (e2t - e1t); L2t= norm (e3t - e2t); L3t= norm (e4t - e3t); L4t= norm (e1t - e4t); ASSERT (!fnull (L1t, 1e-6) && !fnull (L2t, 1e-6) && !fnull (L3t, 1e-6) && !fnull (L4t, 1e-6), "one side of the grid has length zero"); array<grid_curve> grads= g->get_curves (l1, l2); for (i=0; i<N(grads); i++) { curve c= f (grads[i]->c); bs << curve_box (decorate (ip), c, pencil (named_color (grads[i]->col), ren->pixel), array<bool> (0), 0, brush (false), array<box> (0)); } first_time= false; ren_pixel= ren->pixel; } for (i=0; i<N(bs); i++) bs[i]->display (ren); }
QPixmap qt_glue_widget_rep::render () { QSize s = QSize (w/PIXEL, h/PIXEL); QPixmap pxm(s); //cout << "glue (" << s.width() << "," << s.height() << ")\n"; pxm.fill (Qt::transparent); QPaintDevice *pd = static_cast<QPaintDevice*>(&pxm); if (pd && !pxm.isNull()) { qt_renderer_rep *ren = the_qt_renderer(); ren->begin (pd); rectangle r = rectangle (0, 0, s.width(), s.height()); ren->set_origin(0,0); ren->encode (r->x1, r->y1); ren->encode (r->x2, r->y2); ren->set_clipping (r->x1, r->y2, r->x2, r->y1); if (col == "") { // do nothing } else { if (is_atomic (col)) { color c= named_color (col->label); ren->set_background (c); ren->set_color (c); ren->fill (r->x1, r->y2, r->x2, r->y1); } else { ren->set_shrinking_factor (5); int old_a; tree old_bg= ren->get_background_pattern (old_a); ren->set_background_pattern (col); ren->clear_pattern (5*r->x1, 5*r->y2, 5*r->x2, 5*r->y1); ren->set_background_pattern (old_bg, old_a); ren->set_shrinking_factor (1); } } ren->end(); } return pxm; }
void glue_widget_rep::handle_repaint (repaint_event ev) { renderer ren= win->get_renderer (); if (col == "") layout_default (ren, ev->x1, ev->y1, ev->x2, ev->y2); else { if (is_atomic (col)) { color c= named_color (col->label); ren->set_background (c); ren->set_color (c); ren->fill (ev->x1, ev->y1, ev->x2, ev->y2); } else { ren->set_shrinking_factor (5); int old_a; tree old_bg= ren->get_background_pattern (old_a); ren->set_background_pattern (col); ren->clear_pattern (5*ev->x1, 5*ev->y1, 5*ev->x2, 5*ev->y2); ren->set_background_pattern (old_bg, old_a); ren->set_shrinking_factor (1); } } }
inline color get_color (string var) { tree t= env [var]; return named_color (as_string (t), alpha); }
void MapColorTest::constructorTest() { MapColor default_color; QVERIFY(default_color.isBlack()); QVERIFY(default_color.getCmyk().isBlack()); QVERIFY(default_color.getRgb().isBlack()); QCOMPARE(static_cast<const QColor&>(default_color), QColor(Qt::black)); QCOMPARE(default_color.getSpotColorMethod(), MapColor::UndefinedMethod); QCOMPARE(default_color.getCmykColorMethod(), MapColor::CustomColor); QCOMPARE(default_color.getRgbColorMethod(), MapColor::CmykColor); QCOMPARE(default_color.getPriority(), (int)MapColor::Undefined); MapColor priority_9_color(9); QVERIFY(priority_9_color.isBlack()); QVERIFY(priority_9_color.getCmyk().isBlack()); QVERIFY(priority_9_color.getRgb().isBlack()); QCOMPARE(static_cast<const QColor&>(priority_9_color), QColor(Qt::black)); QCOMPARE(priority_9_color.getSpotColorMethod(), MapColor::UndefinedMethod); QCOMPARE(priority_9_color.getCmykColorMethod(), MapColor::CustomColor); QCOMPARE(priority_9_color.getRgbColorMethod(), MapColor::CmykColor); QCOMPARE(priority_9_color.getPriority(), 9); MapColor named_color(QString::fromLatin1("Name of the color"), 7); QVERIFY(named_color.isBlack()); QVERIFY(named_color.getCmyk().isBlack()); QVERIFY(named_color.getRgb().isBlack()); QCOMPARE(static_cast<const QColor&>(named_color), QColor(Qt::black)); QCOMPARE(named_color.getSpotColorMethod(), MapColor::UndefinedMethod); QCOMPARE(named_color.getCmykColorMethod(), MapColor::CustomColor); QCOMPARE(named_color.getRgbColorMethod(), MapColor::CmykColor); QCOMPARE(named_color.getPriority(), 7); QCOMPARE(named_color.getName(), QString::fromLatin1("Name of the color")); MapColor* duplicate_color = named_color.duplicate(); QVERIFY(duplicate_color != NULL); QVERIFY(duplicate_color->isBlack()); QVERIFY(duplicate_color->getCmyk().isBlack()); QVERIFY(duplicate_color->getRgb().isBlack()); QCOMPARE(static_cast<const QColor&>(*duplicate_color), QColor(Qt::black)); QCOMPARE(duplicate_color->getSpotColorMethod(), MapColor::UndefinedMethod); QCOMPARE(duplicate_color->getCmykColorMethod(), MapColor::CustomColor); QCOMPARE(duplicate_color->getRgbColorMethod(), MapColor::CmykColor); QCOMPARE(duplicate_color->getPriority(), 7); QCOMPARE(duplicate_color->getName(), QString::fromLatin1("Name of the color")); QVERIFY(duplicate_color->equals(named_color, true)); delete duplicate_color; // Test default copy constructor. MapColor copy_constructed_color(named_color); duplicate_color = ©_constructed_color; QVERIFY(duplicate_color != NULL); QVERIFY(duplicate_color->isBlack()); QVERIFY(duplicate_color->getCmyk().isBlack()); QVERIFY(duplicate_color->getRgb().isBlack()); QCOMPARE(static_cast<const QColor&>(*duplicate_color), QColor(Qt::black)); QCOMPARE(duplicate_color->getSpotColorMethod(), MapColor::UndefinedMethod); QCOMPARE(duplicate_color->getCmykColorMethod(), MapColor::CustomColor); QCOMPARE(duplicate_color->getRgbColorMethod(), MapColor::CmykColor); QCOMPARE(duplicate_color->getPriority(), 7); QCOMPARE(duplicate_color->getName(), QString::fromLatin1("Name of the color")); QVERIFY(duplicate_color->equals(named_color, true)); duplicate_color = NULL; }