27 #include <kjs/object.h>
28 #include <QtCore/QDebug>
30 #include <QtGui/QWidget>
31 #include <QtGui/QPainter>
32 #include <QtGui/QImage>
33 #include <QtGui/QPixmap>
35 #include <QtGui/QBrush>
36 #include <QtCore/QLine>
37 #include <QtGui/QPolygon>
38 #include <QtCore/QPoint>
40 #include <QtGui/QFrame>
48 ObjectBinding *imp = extractBindingImp<ObjectBinding>(exec,arg);
52 #warning There be dragons here...
62 device = qobject_cast<QWidget*>(qobject);
67 qDebug(
"Height = %d Width = %d",
device->height(),
device->width() );
71 VariantBinding *valueImp = extractBindingImp<VariantBinding>(exec,arg);
72 if( valueImp && (valueImp->
variant().type() == QVariant::Pixmap ||
73 valueImp->
variant().type() == QVariant::Image ))
88 result = KJS::jsBoolean(
false);
102 Qt::BGMode
cppValue =
object->backgroundMode();
107 if( args.size() == 3 )
109 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
115 else if( args.size() == 6)
134 QPoint
cppValue =
object->brushOrigin();
139 if( args.size() == 3 )
141 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
146 else if( args.size() == 6 )
159 if( args.size() == 3 )
161 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
166 else if ( args.size() == 6 )
184 if ( args.size() == 4 )
192 else if ( args.size() == 1 )
194 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
195 object->drawEllipse(
arg0);
200 if ( args.size() == 2 )
202 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
203 QImage
arg1 = KJSEmbed::extractVariant<QImage>(exec,args, 1);
206 else if ( args.size() == 4 )
208 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
209 QImage
arg1 = KJSEmbed::extractVariant<QImage>(exec,args, 1);
210 QRect
arg2 = KJSEmbed::extractVariant<QRect>(exec,args, 2);
214 else if ( args.size() == 8 )
218 QImage
arg2 = KJSEmbed::extractVariant<QImage>(exec,args, 2);
229 if( args.size() == 1 )
231 QLine
arg0 = KJSEmbed::extractVariant<QLine>(exec,args, 0);
232 object->drawLine(
arg0);
234 else if ( args.size() == 2 )
236 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
237 QPoint
arg1 = KJSEmbed::extractVariant<QPoint>(exec,args, 1);
240 else if ( args.size() == 4 )
251 if( args.size() == 3 )
253 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
258 else if (args.size() == 6 )
271 if ( args.size() == 2)
273 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
274 QPixmap
arg1 = KJSEmbed::extractVariant<QPixmap>(exec,args, 1);
277 else if ( args.size() == 3 )
279 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
280 QPixmap
arg1 = KJSEmbed::extractVariant<QPixmap>(exec,args, 1);
281 QRect
arg2 = KJSEmbed::extractVariant<QRect>(exec,args, 2);
287 if( args.size() == 1 )
289 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
290 object->drawPoint(
arg0);
292 else if (args.size() == 2 )
301 QPolygon
arg0 = KJSEmbed::extractVariant<QPolygon>(exec,args, 0);
306 QPolygon
arg0 = KJSEmbed::extractVariant<QPolygon>(exec,args, 0);
312 QPolygon
arg0 = KJSEmbed::extractVariant<QPolygon>(exec,args, 0);
317 if (args.size() == 1 )
319 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
320 object->drawRect(
arg0);
322 else if ( args.size() == 4 )
333 if ( args.size() == 2 )
335 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
340 else if ( args.size() == 6 )
353 if( args.size() == 2 )
355 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
359 else if ( args.size() == 3 )
361 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
367 else if ( args.size () == 6 )
381 if( args.size() == 2 )
387 else if( args.size() == 1 )
389 QPoint
arg0 = KJSEmbed::extractVariant<QPoint>(exec,args, 0);
390 object->translate(
arg0);
395 if( args.size() == 3 )
397 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
398 QPixmap
arg1 = KJSEmbed::extractVariant<QPixmap>(exec,args, 1);
399 QPoint
arg2 = KJSEmbed::extractVariant<QPoint>(exec,args, 2);
402 else if( args.size() == 7)
408 QPixmap arg4 = KJSEmbed::extractVariant<QPixmap>(exec,args, 4);
416 if( args.size() == 4)
424 else if (args.size() == 1 )
426 QRect
arg0 = KJSEmbed::extractVariant<QRect>(exec,args, 0);
427 object->eraseRect(
arg0);
432 {
"begin", 1, KJS::DontDelete|KJS::ReadOnly, &callPainterBegin },
433 {
"end", 0, KJS::DontDelete|KJS::ReadOnly, &callPainterEnd },
434 {
"background", 0, KJS::DontDelete|KJS::ReadOnly, &callbackground},
435 {
"backgroundMode", 0, KJS::DontDelete|KJS::ReadOnly, &callbackgroundMode},
436 {
"boundingRect", 6, KJS::DontDelete|KJS::ReadOnly, &callboundingRect},
437 {
"brush", 0, KJS::DontDelete|KJS::ReadOnly, &callbrush},
438 {
"brushOrigin", 0, KJS::DontDelete|KJS::ReadOnly, &callbrushOrigin},
439 {
"drawArc", 6, KJS::DontDelete|KJS::ReadOnly, &calldrawArc},
440 {
"drawChord", 6, KJS::DontDelete|KJS::ReadOnly, &calldrawChord},
441 {
"drawConvexPolygon", 1, KJS::DontDelete|KJS::ReadOnly, &calldrawConvexPolygon},
442 {
"drawEllipse", 3, KJS::DontDelete|KJS::ReadOnly, &calldrawEllipse},
443 {
"drawImage", 7, KJS::DontDelete|KJS::ReadOnly, &calldrawImage},
444 {
"drawLine", 3, KJS::DontDelete|KJS::ReadOnly, &calldrawLine},
448 {
"drawPie", 6, KJS::DontDelete|KJS::ReadOnly, &calldrawPie},
449 {
"drawPixmap", 8, KJS::DontDelete|KJS::ReadOnly, &calldrawPixmap},
450 {
"drawPoint", 2, KJS::DontDelete|KJS::ReadOnly, &calldrawPoint},
451 {
"drawPoints", 1, KJS::DontDelete|KJS::ReadOnly, &calldrawPoints},
452 {
"drawPolygon", 2, KJS::DontDelete|KJS::ReadOnly, &calldrawPolygon},
453 {
"drawPolyline", 1, KJS::DontDelete|KJS::ReadOnly, &calldrawPolyline},
454 {
"drawRect", 4, KJS::DontDelete|KJS::ReadOnly, &calldrawRect},
456 {
"drawRoundRect", 5, KJS::DontDelete|KJS::ReadOnly, &calldrawRoundRect},
457 {
"drawText", 7, KJS::DontDelete|KJS::ReadOnly, &calldrawText},
458 {
"drawTiledPixmap", 3, KJS::DontDelete|KJS::ReadOnly, &calldrawTiledPixmap},
459 {
"eraseRect", 1, KJS::DontDelete|KJS::ReadOnly, &calleraseRect},
485 {
"translate", 1, KJS::DontDelete|KJS::ReadOnly, &calltranslate}
492 KJS::JSObject *
object;
494 if( args.size() == 1 )
503 KJS::throwError( exec, KJS::EvalError, QString(
"Cannot paint to object %1").arg(
toQString(args[0]->toString(exec))));