summaryrefslogtreecommitdiffstats
path: root/scribus
diff options
context:
space:
mode:
authorjghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>2012-01-12 12:38:49 +0000
committerjghali <jghali@11d20701-8431-0410-a711-e3c959e3b870>2012-01-12 12:38:49 +0000
commit528b1a495fb3229d6d12ab15141cafe06cb21835 (patch)
treeb6b12530c6c8b5f5f94d5db8accf988aac82d870 /scribus
parentcb460dacf92e499ace7a4958aeb9c1f562c8eaf5 (diff)
downloadscribus-528b1a495fb3229d6d12ab15141cafe06cb21835.tar.gz
scribus-528b1a495fb3229d6d12ab15141cafe06cb21835.tar.xz
scribus-528b1a495fb3229d6d12ab15141cafe06cb21835.zip
#10512: No way to specify subject in PDF file
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17195 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus')
-rw-r--r--scribus/docinfo.cpp17
-rw-r--r--scribus/docinfo.h2
-rw-r--r--scribus/documentinformation.cpp10
-rw-r--r--scribus/documentinformation.h3
-rw-r--r--scribus/pdflib_core.cpp1
-rw-r--r--scribus/plugins/fileloader/scribus134format/scribus134format.cpp1
-rw-r--r--scribus/plugins/fileloader/scribus134format/scribus134format_save.cpp25
7 files changed, 43 insertions, 16 deletions
diff --git a/scribus/docinfo.cpp b/scribus/docinfo.cpp
index bfb4b0a..cc22902 100644
--- a/scribus/docinfo.cpp
+++ b/scribus/docinfo.cpp
@@ -49,21 +49,28 @@ DocInfos::DocInfos( QWidget* parent, DocumentInformation& docInfo ) : QTabWidget
layout1->addWidget( authorLabel, 1, 0 );
layout1->addWidget( authorEdit, 1, 1 );
+ subjectEdit = new QLineEdit( page1 );
+ subjectLabel = new QLabel( tr("&Subject:"), page1);
+ subjectLabel->setBuddy(subjectEdit);
+ subjectLabel->resize( subjectLabel->sizeHint() );
+ layout1->addWidget( subjectLabel, 2, 0 );
+ layout1->addWidget( subjectEdit, 2, 1 );
+
keywordsEdit = new QTextEdit( page1 );
keywordsLabel = new QLabel( tr("&Keywords:"), page1 );
keywordsLabel->setBuddy(keywordsEdit);
keywordsLabel->setAlignment(Qt::AlignTop | Qt::AlignLeft);
keywordsEdit->setMinimumSize(QSize(200, 105));
- layout1->addWidget( keywordsLabel, 2, 0 );
- layout1->addWidget( keywordsEdit, 2, 1 );
+ layout1->addWidget( keywordsLabel, 3, 0 );
+ layout1->addWidget( keywordsEdit, 3, 1 );
descriptionEdit = new QTextEdit( page1 );
descriptionLabel = new QLabel( tr("Descri&ption:"), page1 );
descriptionLabel->setBuddy(descriptionEdit);
descriptionLabel->setAlignment(Qt::AlignTop | Qt::AlignLeft);
descriptionEdit->setMinimumSize(QSize(200, 105));
- layout1->addWidget( descriptionLabel, 3, 0 );
- layout1->addWidget( descriptionEdit, 3, 1 );
+ layout1->addWidget( descriptionLabel, 4, 0 );
+ layout1->addWidget( descriptionEdit, 4, 1 );
page2 = new QWidget( this );
layout2 = new QGridLayout(page2);
@@ -190,6 +197,7 @@ DocumentInformation DocInfos::getDocInfo()
docInfo.setRelation(relationEdit->text());
docInfo.setRights(rightsEdit->text());
docInfo.setSource(sourceEdit->text());
+ docInfo.setSubject(subjectEdit->text());
docInfo.setTitle(titleEdit->text());
docInfo.setType(typeEdit->text());
return docInfo;
@@ -199,6 +207,7 @@ void DocInfos::restoreDefaults()
{
titleEdit->setText(infos.getTitle());
authorEdit->setText(infos.getAuthor());
+ subjectEdit->setText(infos.getSubject());
descriptionEdit->setPlainText(infos.getComments());
keywordsEdit->setPlainText(infos.getKeywords());
publisherEdit->setText(infos.getPublisher());
diff --git a/scribus/docinfo.h b/scribus/docinfo.h
index 7119cab..dcf0e9b 100644
--- a/scribus/docinfo.h
+++ b/scribus/docinfo.h
@@ -55,6 +55,7 @@ protected:
QLineEdit* rightsEdit;
QLineEdit* titleEdit;
QLineEdit* authorEdit;
+ QLineEdit* subjectEdit;
QTextEdit* descriptionEdit;
QTextEdit* keywordsEdit;
@@ -62,6 +63,7 @@ protected:
QLabel* authorLabel;
QLabel* titleLabel;
+ QLabel* subjectLabel;
QLabel* publisherLabel;
QLabel* dateLabel;
QLabel* typeLabel;
diff --git a/scribus/documentinformation.cpp b/scribus/documentinformation.cpp
index c22cd43..38b158b 100644
--- a/scribus/documentinformation.cpp
+++ b/scribus/documentinformation.cpp
@@ -105,6 +105,11 @@ const QString DocumentInformation::getSource()
return source;
}
+const QString DocumentInformation::getSubject()
+{
+ return subject;
+}
+
const QString DocumentInformation::getTitle()
{
return title;
@@ -181,6 +186,11 @@ void DocumentInformation::setSource(const QString &_source)
source=_source;
}
+void DocumentInformation::setSubject(const QString &_subject)
+{
+ subject=_subject;
+}
+
void DocumentInformation::setTitle(const QString &_title)
{
title=_title;
diff --git a/scribus/documentinformation.h b/scribus/documentinformation.h
index d8af8ee..4250739 100644
--- a/scribus/documentinformation.h
+++ b/scribus/documentinformation.h
@@ -43,6 +43,7 @@ class SCRIBUS_API DocumentInformation
const QString getRelation();
const QString getRights();
const QString getSource();
+ const QString getSubject();
const QString getTitle();
const QString getType();
@@ -59,6 +60,7 @@ class SCRIBUS_API DocumentInformation
void setRelation(const QString &_relation);
void setRights(const QString &_rights);
void setSource(const QString &_source);
+ void setSubject(const QString &_subject);
void setTitle(const QString &_title);
void setType(const QString &_type);
@@ -76,6 +78,7 @@ class SCRIBUS_API DocumentInformation
QString relation;
QString rights;
QString source;
+ QString subject;
QString title;
QString type;
};
diff --git a/scribus/pdflib_core.cpp b/scribus/pdflib_core.cpp
index ca1663c..ab0bb02 100644
--- a/scribus/pdflib_core.cpp
+++ b/scribus/pdflib_core.cpp
@@ -876,6 +876,7 @@ bool PDFLibCore::PDF_Begin_Doc(const QString& fn, SCFonts &AllFonts, QMap<QStrin
else
PutDoc("/Title "+EncStringUTF16("("+doc.documentInfo.getTitle()+")",2)+"\n");
PutDoc("/Author "+EncStringUTF16("("+doc.documentInfo.getAuthor()+")",2)+"\n");
+ PutDoc("/Subject "+EncStringUTF16("("+doc.documentInfo.getSubject()+")",2)+"\n");
PutDoc("/Keywords "+EncStringUTF16("("+doc.documentInfo.getKeywords()+")",2)+"\n");
PutDoc("/CreationDate "+EncString("("+Datum+")",2)+"\n");
PutDoc("/ModDate "+EncString("("+Datum+")",2)+"\n");
diff --git a/scribus/plugins/fileloader/scribus134format/scribus134format.cpp b/scribus/plugins/fileloader/scribus134format/scribus134format.cpp
index 64568bf..ad807be 100644
--- a/scribus/plugins/fileloader/scribus134format/scribus134format.cpp
+++ b/scribus/plugins/fileloader/scribus134format/scribus134format.cpp
@@ -292,6 +292,7 @@ bool Scribus134Format::loadFile(const QString & fileName, const FileFormat & /*
m_Doc->documentInfo.setComments(dc.attribute("COMMENTS"));
m_Doc->documentInfo.setKeywords(dc.attribute("KEYWORDS",""));
m_Doc->documentInfo.setTitle(dc.attribute("TITLE"));
+ m_Doc->documentInfo.setSubject(dc.attribute("SUBJECT"));
m_Doc->documentInfo.setPublisher(dc.attribute("PUBLISHER", ""));
m_Doc->documentInfo.setDate(dc.attribute("DOCDATE", ""));
m_Doc->documentInfo.setType(dc.attribute("DOCTYPE", ""));
diff --git a/scribus/plugins/fileloader/scribus134format/scribus134format_save.cpp b/scribus/plugins/fileloader/scribus134format/scribus134format_save.cpp
index 710c561..37b3175 100644
--- a/scribus/plugins/fileloader/scribus134format/scribus134format_save.cpp
+++ b/scribus/plugins/fileloader/scribus134format/scribus134format_save.cpp
@@ -107,18 +107,19 @@ bool Scribus134Format::saveFile(const QString & fileName, const FileFormat & /*
docu.writeAttribute("AUTHOR" ,m_Doc->documentInfo.getAuthor());
docu.writeAttribute("COMMENTS" ,m_Doc->documentInfo.getComments());
docu.writeAttribute("KEYWORDS" ,m_Doc->documentInfo.getKeywords());
- docu.writeAttribute("PUBLISHER",m_Doc->documentInfo.getPublisher());
- docu.writeAttribute("DOCDATE",m_Doc->documentInfo.getDate());
- docu.writeAttribute("DOCTYPE",m_Doc->documentInfo.getType());
- docu.writeAttribute("DOCFORMAT",m_Doc->documentInfo.getFormat());
- docu.writeAttribute("DOCIDENT",m_Doc->documentInfo.getIdent());
- docu.writeAttribute("DOCSOURCE",m_Doc->documentInfo.getSource());
- docu.writeAttribute("DOCLANGINFO",m_Doc->documentInfo.getLangInfo());
- docu.writeAttribute("DOCRELATION",m_Doc->documentInfo.getRelation());
- docu.writeAttribute("DOCCOVER",m_Doc->documentInfo.getCover());
- docu.writeAttribute("DOCRIGHTS",m_Doc->documentInfo.getRights());
- docu.writeAttribute("DOCCONTRIB",m_Doc->documentInfo.getContrib());
- docu.writeAttribute("TITLE",m_Doc->documentInfo.getTitle());
+ docu.writeAttribute("PUBLISHER" ,m_Doc->documentInfo.getPublisher());
+ docu.writeAttribute("DOCDATE" ,m_Doc->documentInfo.getDate());
+ docu.writeAttribute("DOCTYPE" ,m_Doc->documentInfo.getType());
+ docu.writeAttribute("DOCFORMAT" ,m_Doc->documentInfo.getFormat());
+ docu.writeAttribute("DOCIDENT" ,m_Doc->documentInfo.getIdent());
+ docu.writeAttribute("DOCSOURCE" ,m_Doc->documentInfo.getSource());
+ docu.writeAttribute("DOCLANGINFO" ,m_Doc->documentInfo.getLangInfo());
+ docu.writeAttribute("DOCRELATION" ,m_Doc->documentInfo.getRelation());
+ docu.writeAttribute("DOCCOVER" ,m_Doc->documentInfo.getCover());
+ docu.writeAttribute("DOCRIGHTS" ,m_Doc->documentInfo.getRights());
+ docu.writeAttribute("DOCCONTRIB" ,m_Doc->documentInfo.getContrib());
+ docu.writeAttribute("TITLE" ,m_Doc->documentInfo.getTitle());
+ docu.writeAttribute("SUBJECT" ,m_Doc->documentInfo.getSubject());
docu.writeAttribute("VHOCH" , m_Doc->typographicSettings.valueSuperScript);
docu.writeAttribute("VHOCHSC", m_Doc->typographicSettings.scalingSuperScript);
docu.writeAttribute("VTIEF" , m_Doc->typographicSettings.valueSubScript);