void uiforms::sTest() { q.prepare("SELECT *" " FROM uiform " " WHERE(uiform_id=:uiform_id);"); q.bindValue(":uiform_id", _uiform->id()); q.exec(); if (q.first()) ; // everything's OK else if (q.lastError().type() != QSqlError::NoError) { systemError(this, q.lastError().databaseText(), __FILE__, __LINE__); return; } else return; XMainWindow * wnd = new XMainWindow(); wnd->setObjectName(q.value("uiform_name").toString()); XUiLoader loader; QByteArray ba = q.value("uiform_source").toString().toUtf8(); qDebug("about to load a uiFile with %s", ba.constData()); QBuffer uiFile(&ba); if(!uiFile.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Could not load file"), tr("There was an error loading the UI Form from the database.")); return; } QWidget *ui = loader.load(&uiFile); if (ui) { wnd->setWindowTitle(ui->windowTitle()); wnd->setCentralWidget(ui); omfgThis->handleNewWindow(wnd); } else QMessageBox::critical(this, tr("Could not load file"), tr("<p>Could not interpret the UI Form data " "as a UI definition.")); uiFile.close(); }