From 5a19d9218a5f3ed7d02b7fabd8f025922e9f7a13 Mon Sep 17 00:00:00 2001 From: deva Date: Fri, 11 Jul 2008 12:54:42 +0000 Subject: Now we have a nice little editor. --- editor/tool.cc | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'editor/tool.cc') diff --git a/editor/tool.cc b/editor/tool.cc index b9ed07d..c4686d2 100644 --- a/editor/tool.cc +++ b/editor/tool.cc @@ -32,12 +32,18 @@ #include "macrowindow.h" #include "widget.h" -Tool::Tool(QPixmap &pixmap, QString widget) +#include + +Tool::Tool(QDomNode &node) : QLabel() { - setPixmap(pixmap); - this->pixmap = pixmap; - this->widget = widget; + this->node = node; + QDomElement elem = node.toElement(); + if(elem.hasAttribute("name")) { + setText(elem.attribute("name")); + } else { + setText("Unknown"); + } show(); } @@ -46,16 +52,12 @@ void Tool::mousePressEvent(QMouseEvent *event) if(event->button() == Qt::LeftButton) { QDrag *drag = new QDrag(this); - drag->setPixmap(pixmap); + drag->setPixmap(QPixmap::grabWidget(this, 0, 0)); QMimeData *mimedata = new QMimeData(); - if(widget == "vertical") { - mimedata->setData("pracro/widget", wrapWidget(new MacroWindow( Qt::Vertical))); - } else if(widget == "horizontal") { - mimedata->setData("pracro/widget", wrapWidget(new MacroWindow( Qt::Horizontal))); - } else { - mimedata->setData("pracro/widget", wrapWidget(new Widget(widget.toAscii()))); - } + + mimedata->setData("pracro/widget", wrapWidget(new Widget(node))); + drag->setMimeData(mimedata); drag->exec(); -- cgit v1.2.3