int QtSvgDialGauge::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QWidget::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { if (_id < 1) qt_static_metacall(this, _c, _id, _a); _id -= 1; } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) { if (_id < 1) *reinterpret_cast<int*>(_a[0]) = -1; _id -= 1; } #ifndef QT_NO_PROPERTIES else if (_c == QMetaObject::ReadProperty) { void *_v = _a[0]; switch (_id) { case 0: *reinterpret_cast< QString*>(_v) = skin(); break; case 1: *reinterpret_cast< int*>(_v) = minimum(); break; case 2: *reinterpret_cast< int*>(_v) = maximum(); break; case 3: *reinterpret_cast< qreal*>(_v) = startAngle(); break; case 4: *reinterpret_cast< qreal*>(_v) = endAngle(); break; } _id -= 5; } else if (_c == QMetaObject::WriteProperty) { void *_v = _a[0]; switch (_id) { case 0: setSkin(*reinterpret_cast< QString*>(_v)); break; case 1: setMinimum(*reinterpret_cast< int*>(_v)); break; case 2: setMaximum(*reinterpret_cast< int*>(_v)); break; case 3: setStartAngle(*reinterpret_cast< qreal*>(_v)); break; case 4: setEndAngle(*reinterpret_cast< qreal*>(_v)); break; } _id -= 5; } else if (_c == QMetaObject::ResetProperty) { _id -= 5; } else if (_c == QMetaObject::QueryPropertyDesignable) { _id -= 5; } else if (_c == QMetaObject::QueryPropertyScriptable) { _id -= 5; } else if (_c == QMetaObject::QueryPropertyStored) { _id -= 5; } else if (_c == QMetaObject::QueryPropertyEditable) { _id -= 5; } else if (_c == QMetaObject::QueryPropertyUser) { _id -= 5; } else if (_c == QMetaObject::RegisterPropertyMetaType) { if (_id < 5) *reinterpret_cast<int*>(_a[0]) = -1; _id -= 5; } #endif // QT_NO_PROPERTIES return _id; }
void LCVArc::draw(LcPainter* painter, LcDrawOptions* options, const lc::geo::Area& rect) const { bool modified = false; if (this->selected()) { modified = true; painter->save(); painter->source_rgba( options->selectedColor().redF(), options->selectedColor().greenF(), options->selectedColor().blueF(), options->selectedColor().alphaF() ); } if (radius() /** painter->scale() > 5 */) { painter->arc(center().x(), center().y(), radius(), startAngle(), endAngle()); painter->stroke(); } if (modified) { painter->restore(); } }