mirror of
https://github.com/fralx/LimeReport.git
synced 2024-12-26 09:28:11 +03:00
39 lines
1.6 KiB
C++
39 lines
1.6 KiB
C++
|
#include "lrcontentpropitem.h"
|
||
|
#include "lrtextitem.h"
|
||
|
#include "editors/lrbuttonlineeditor.h"
|
||
|
#include "items/lrtextitemeditor.h"
|
||
|
#include <QApplication>
|
||
|
|
||
|
namespace{
|
||
|
LimeReport::ObjectPropItem * createContentPropItem(
|
||
|
QObject *object, LimeReport::ObjectPropItem::ObjectsList* objects, const QString& name, const QString& displayName, const QVariant& data, LimeReport::ObjectPropItem* parent, bool readonly)
|
||
|
{
|
||
|
return new LimeReport::ContentPropItem(object, objects, name, displayName, data, parent, readonly);
|
||
|
}
|
||
|
bool registredContentProp = LimeReport::ObjectPropFactory::instance().registerCreator(LimeReport::APropIdent("content","LimeReport::TextItem"),QObject::tr("content"),createContentPropItem);
|
||
|
} // namespace
|
||
|
|
||
|
namespace LimeReport {
|
||
|
|
||
|
QWidget *ContentPropItem::createProperyEditor(QWidget *parent) const
|
||
|
{
|
||
|
return new ContentEditor(object(), object()->objectName()+"."+displayName(), parent);
|
||
|
}
|
||
|
|
||
|
void ContentEditor::editButtonClicked()
|
||
|
{
|
||
|
QDialog* dialog = new QDialog(QApplication::activeWindow());
|
||
|
dialog->setLayout(new QVBoxLayout());
|
||
|
dialog->layout()->setContentsMargins(1,1,1,1);
|
||
|
dialog->setAttribute(Qt::WA_DeleteOnClose);
|
||
|
//dialog->setGeometry(QStyle::alignedRect(Qt::LeftToRight, Qt::AlignCenter, dialog->size(), QApplication::desktop()->availableGeometry()));
|
||
|
dialog->setWindowTitle(propertyName());
|
||
|
QWidget* editor = dynamic_cast<BaseDesignIntf*>(m_object)->defaultEditor();
|
||
|
dialog->layout()->addWidget(editor);
|
||
|
connect(editor,SIGNAL(destroyed()),dialog,SLOT(close()));
|
||
|
connect(editor,SIGNAL(destroyed()),this,SIGNAL(editingFinished()));
|
||
|
dialog->exec();
|
||
|
}
|
||
|
|
||
|
} //namespace LimeReport
|