summaryrefslogtreecommitdiffstats
path: root/src/tools/uic3
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-03-26 13:09:26 (GMT)
committerFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-03-26 13:09:26 (GMT)
commitc7d39e1335775979d43833d0b7f6c32cef898424 (patch)
treef19716b0a3b29ebf91457586d5323fd6c77f1a23 /src/tools/uic3
parent4fb6cae4dd0c6a90008780df606abb8a9e73cb2c (diff)
downloadQt-c7d39e1335775979d43833d0b7f6c32cef898424.zip
Qt-c7d39e1335775979d43833d0b7f6c32cef898424.tar.gz
Qt-c7d39e1335775979d43833d0b7f6c32cef898424.tar.bz2
uic3: -extract: Write XPM-images correctly.
Add magic header '/* XPM */' and turn off wrapping of lines that broke image readers. Add a command line option to activate line-wrapping in case someone exclusively wants to use the extracted images for embedding in code. Also do line-wrapping in case images are embedded into the ui-file. Note: The current versions of MSVC do not seem to have a limitation of line lengths any more. Task-number: QTBUG-9207 Reviewed-by: Jarek Kobus <jkobus@trolltech.com>
Diffstat (limited to 'src/tools/uic3')
-rw-r--r--src/tools/uic3/converter.cpp1
-rw-r--r--src/tools/uic3/form.cpp1
-rw-r--r--src/tools/uic3/main.cpp3
-rw-r--r--src/tools/uic3/ui3reader.h3
4 files changed, 7 insertions, 1 deletions
diff --git a/src/tools/uic3/converter.cpp b/src/tools/uic3/converter.cpp
index e1b4b38..2ee939d 100644
--- a/src/tools/uic3/converter.cpp
+++ b/src/tools/uic3/converter.cpp
@@ -518,6 +518,7 @@ DomUI *Ui3Reader::generateUi4(const QDomElement &widget)
if (m_extractImages) {
Option opt;
opt.extractImages = m_extractImages;
+ opt.limitXPM_LineLength = (m_options & LimitXPM_LineLength) ? 1 : 0;
opt.qrcOutputFile = m_qrcOutputFile;
CPP::ExtractImages(opt).acceptUI(ui);
diff --git a/src/tools/uic3/form.cpp b/src/tools/uic3/form.cpp
index df1314f..9df644a 100644
--- a/src/tools/uic3/form.cpp
+++ b/src/tools/uic3/form.cpp
@@ -256,6 +256,7 @@ void Ui3Reader::createFormDecl(const QDomElement &e)
d.option().headerProtection = false;
d.option().copyrightHeader = false;
d.option().extractImages = m_extractImages;
+ d.option().limitXPM_LineLength = (m_options & LimitXPM_LineLength) ? 1 : 0;
d.option().qrcOutputFile = m_qrcOutputFile;
d.option().implicitIncludes = (m_options & ImplicitIncludes) ? 1 : 0;
if (trmacro.size())
diff --git a/src/tools/uic3/main.cpp b/src/tools/uic3/main.cpp
index 1ebb76a..d7657b1 100644
--- a/src/tools/uic3/main.cpp
+++ b/src/tools/uic3/main.cpp
@@ -149,6 +149,8 @@ int runUic3(int argc, char * argv[])
readerOptions &= ~Ui3Reader::CustomWidgetForwardDeclarations;
} else if (opt == "layout-names") {
readerOptions |= Ui3Reader::PreserveLayoutNames;
+ } else if (opt == "limit-xpm-linelength") {
+ readerOptions |= Ui3Reader::LimitXPM_LineLength;
} else if (opt == "nounload") {
// skip
} else if (opt == "convert") {
@@ -251,6 +253,7 @@ int runUic3(int argc, char * argv[])
"Options:\n"
"\t-o file Write output to file rather than stdout\n"
"\t-extract qrcFile Create resource file and extract embedded images into \"image\" dir\n"
+ "\t-limit-xpm-linelength Limit the line length of XPM files for -extract.\n"
"\t-pch file Add #include \"file\" as the first statement in implementation\n"
"\t-nofwd Omit forward declarations of custom classes\n"
"\t-layout-names Preserve layout names of Qt Designer 3\n"
diff --git a/src/tools/uic3/ui3reader.h b/src/tools/uic3/ui3reader.h
index 144ef05..abe323e 100644
--- a/src/tools/uic3/ui3reader.h
+++ b/src/tools/uic3/ui3reader.h
@@ -68,7 +68,8 @@ typedef QList<QPair<int, Color> > ColorGroup;
class Ui3Reader
{
public:
- enum Options { CustomWidgetForwardDeclarations = 0x1, ImplicitIncludes = 0x2, PreserveLayoutNames = 0x4 };
+ enum Options { CustomWidgetForwardDeclarations = 0x1, ImplicitIncludes = 0x2,
+ PreserveLayoutNames = 0x4, LimitXPM_LineLength = 0x8 };
explicit Ui3Reader(QTextStream &stream, unsigned options);
~Ui3Reader();