KoDocumentInfoDlg::KoDocumentInfoDlg(QWidget* parent, KoDocumentInfo* docInfo) : KPageDialog(parent) , d(new KoDocumentInfoDlgPrivate) { d->info = docInfo; setWindowTitle(i18n("Document Information")); // setInitialSize(QSize(500, 500)); setFaceType(KPageDialog::List); setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); button(QDialogButtonBox::Ok)->setDefault(true); d->aboutUi = new Ui::KoDocumentInfoAboutWidget(); QWidget *infodlg = new QWidget(); d->aboutUi->setupUi(infodlg); d->aboutUi->cbLanguage->addItems(KoGlobal::listOfLanguages()); d->aboutUi->cbLanguage->setCurrentIndex(-1); KPageWidgetItem *page = new KPageWidgetItem(infodlg, i18n("General")); page->setHeader(i18n("General")); // Ugly hack, the mimetype should be a parameter, instead KoDocumentBase* doc = dynamic_cast< KoDocumentBase* >(d->info->parent()); if (doc) { QMimeDatabase db; QMimeType mime = db.mimeTypeForName(doc->mimeType()); if (mime.isValid()) { page->setIcon(KisIconUtils::loadIcon(mime.iconName())); } } else { // hide all entries not used in pages for KoDocumentInfoPropsPage d->aboutUi->filePathInfoLabel->setVisible(false); d->aboutUi->filePathLabel->setVisible(false); d->aboutUi->filePathSeparatorLine->setVisible(false); d->aboutUi->lblTypeDesc->setVisible(false); d->aboutUi->lblType->setVisible(false); } addPage(page); d->pages.append(page); initAboutTab(); d->authorUi = new Ui::KoDocumentInfoAuthorWidget(); QWidget *authordlg = new QWidget(); d->authorUi->setupUi(authordlg); page = new KPageWidgetItem(authordlg, i18n("Author")); page->setHeader(i18n("Last saved by")); page->setIcon(koIcon("user-identity")); addPage(page); d->pages.append(page); initAuthorTab(); }
KoDocumentInfoDlg::KoDocumentInfoDlg(QWidget* parent, KoDocumentInfo* docInfo, KoDocumentRdf* docRdf) : KPageDialog(parent) , d(new KoDocumentInfoDlgPrivate) { d->m_info = docInfo; d->m_rdf = docRdf; setCaption(i18n("Document Information")); setInitialSize(QSize(500, 500)); setFaceType(KPageDialog::List); setButtons(KDialog::Ok | KDialog::Cancel); setDefaultButton(KDialog::Ok); d->m_aboutUi = new Ui::KoDocumentInfoAboutWidget(); QWidget *infodlg = new QWidget(); d->m_aboutUi->setupUi(infodlg); if (!KoEncryptionChecker::isEncryptionSupported()) { d->m_aboutUi->lblEncryptedDesc->setVisible(false); d->m_aboutUi->lblEncrypted->setVisible(false); d->m_aboutUi->pbEncrypt->setVisible(false); d->m_aboutUi->lblEncryptedPic->setVisible(false); } KPageWidgetItem *page = new KPageWidgetItem(infodlg, i18n("General")); page->setHeader(i18n("General")); // Ugly hack, the mimetype should be a parameter, instead KoDocument* doc = dynamic_cast< KoDocument* >(d->m_info->parent()); if (doc) { KMimeType::Ptr mime = KMimeType::mimeType(doc->mimeType()); if (! mime) mime = KMimeType::defaultMimeTypePtr(); page->setIcon(KIcon(KIconLoader::global()->loadMimeTypeIcon(mime->iconName(), KIconLoader::Desktop, 48))); } addPage(page); d->m_pages.append(page); initAboutTab(); d->m_authorUi = new Ui::KoDocumentInfoAuthorWidget(); QWidget *authordlg = new QWidget(); d->m_authorUi->setupUi(authordlg); page = new KPageWidgetItem(authordlg, i18n("Author")); page->setHeader(i18n("Author")); page->setIcon(KIcon("user-identity")); addPage(page); d->m_pages.append(page); initAuthorTab(); // Saving encryption implies saving the document, this is done after closing the dialog connect(this, SIGNAL(hidden()), this, SLOT(slotSaveEncryption())); if (d->m_rdf) { d->m_rdfEditWidget = 0; #ifdef SHOULD_BUILD_RDF d->m_rdfEditWidget = new KoDocumentRdfEditWidget(this, d->m_rdf); page = new KPageWidgetItem(d->m_rdfEditWidget->widget(), i18n("Rdf")); page->setHeader(i18n("Rdf")); page->setIcon(KIcon("text-rdf")); addPage(page); d->m_pages.append(page); #endif } }