BrLine::BrLine(BoundingPoint* p1, BoundingPoint* p2, PaintingScene* scene) : QGraphicsItem(), _internalKey(Data::MONOFIN_SURFACE_NOT_CREATED_SEGMENT), _isControlPointActivated(false), _isMouseOnLine(false), _p1(p1), _p2(p2), _scene(scene){ _colorWhenNormal = _scene->getColor(PaintingScene::LineColor, PaintingScene::NormalColor); _colorWhenHighlighted = _scene->getColor(PaintingScene::LineColor, PaintingScene::HighlightingColor); _line = new QLineF(_p1->coord(), _p2->coord()); QPointF contr((_p2->coord().x()+_p1->coord().x())/2.0, (_p2->coord().y()+_p1->coord().y())/2.0); _contr = new ControlPoint(contr, this, _scene); _scene->addControlPoint(_contr); _tangent1 = new Tangent(_line->p1(), _contr->coord(), _scene); _tangent2 = new Tangent(_line->p2(), _contr->coord(), _scene); _contr->setTangent1(_tangent1); _contr->setTangent2(_tangent2); _path = new QPainterPath(_p1->coord()); _path->cubicTo(_contr->coord(), _contr->coord(), _p2->coord()); //this->setAcceptHoverEvents(true); }
QString ContributorTab::getContributor() const { return tr("Some people have helped with their contributions:") + "<ul>" + contr("Yichi Zhang <[email protected]>", tr("Original Author, Packager")) + "</ul>" + "<ul>" + contr("robinlee.sysu <[email protected]>", tr("Packager")) + "</ul>" + "<ul>" + contr("Daijun Cao <[email protected]>", tr("Send file bug fix")) + "</ul>" + "<ul>" + contr("Cheng Wang <[email protected]>", tr("Packager")) + "</ul>" ; }
void testFilter(){ Repository r; Controller contr(r); contr.contr_addFruit("apple", "fiber", 9.6); contr.contr_addFruit("kiwi", "fiber", 2.1); string x = "fiber"; vector<Fruit> ex = contr.filterByBenefit(x); vector<Fruit> all = contr.getAll(); assert(ex.at(1) == all.at(2)); }
int main(){ Repository repo; Painting a{"Andi", "Flori", 2010}; Painting b{"Van Gogh", "The weird", 1970}; repo.addPainting(a); repo.addPainting(b); Repository special; Controller contr(repo, special); UI ui(contr); ui.run(); return 0; }
void BrLine::move(){ this->prepareGeometryChange(); //si le point de contrôle n'est pas activé, on le déplace en //même temps que la ligne en le laissant au milieu if(!_isControlPointActivated){ QPointF contr((_p2->coord().x()+_p1->coord().x())/2.0, (_p2->coord().y()+_p1->coord().y())/2.0); _contr->moveTo(contr); } _line->setPoints(_p1->coord(),_p2->coord()); _tangent1->setLine(_line->p1(), _contr->coord()); _tangent2->setLine(_line->p2(), _contr->coord()); this->updatePath(); }