summaryrefslogtreecommitdiffstats
path: root/src/designer/data/generate_ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/designer/data/generate_ui')
-rwxr-xr-xsrc/designer/data/generate_ui126
1 files changed, 0 insertions, 126 deletions
diff --git a/src/designer/data/generate_ui b/src/designer/data/generate_ui
deleted file mode 100755
index 4c723a61c..000000000
--- a/src/designer/data/generate_ui
+++ /dev/null
@@ -1,126 +0,0 @@
-#!/usr/bin/perl -w
-####################################################################################################
-#
-# Helper script for Qt 5
-#
-# Copyright (C) 2015 The Qt Company Ltd.
-# Contact: http://www.qt.io/licensing/
-#
-####################################################################################################
-
-############################################################################################
-#
-# Generates the source files ui4.cpp, ui4.h used in the uic tool, the QtUiTools library and
-# Qt Designer from the XML schema used for .ui files.
-#
-############################################################################################
-
-use strict;
-
-use File::Basename;
-use File::Spec;
-use File::Copy;
-use IO::File;
-use File::Path;
-use File::Temp;
-
-my $USAGE=<<EOF;
-Usage: generate_ui
-
-Generates the source files ui4.cpp, ui4.h used in the uic tool, the QtUiTools library and
-Qt Designer from the XML schema used for .ui files.
-
-Requires the environment variable QTDIR to point to qtbase and xalan.
-EOF
-
-my $qtDir = $ENV{'QTDIR'};
-die ('QTDIR not set') unless defined $qtDir && -d $qtDir;
-
-print 'Generating ui4.cpp/ui4.h ',$qtDir,"\n";
-
-my $uicDir = File::Spec->catfile($qtDir, 'src', 'tools', 'uic');
-my $toolsDir = File::Spec->catfile($qtDir, '..', 'qttools');
-my $designerDir = File::Spec->catfile($toolsDir, 'src', 'designer');
-my $uiLibDir = File::Spec->catfile($designerDir, 'src', 'lib', 'uilib');
-my $xmlDir = File::Spec->catfile($designerDir, 'data');
-my $qtXmlPatterns = File::Spec->catfile($qtDir, 'bin', 'xmlpatterns');
-
-print 'uic at: ',$uicDir, ' Designer at: ',$designerDir, ' uilib at: ',$uiLibDir,' XML at ',$xmlDir,"\n";
-die ('Invalid folder structure') unless -d $xmlDir && -d $uicDir && -d $uiLibDir;
-
-# Read out license delimited by '/** .. **/' from a C++ source
-sub readCppLicense
-{
- my ($fileName) = @_;
- my $license = '';
- my $file = new IO::File('<' . $fileName) or die ('Unable to open ' . $fileName . ' for reading: ' . $!);
- while (my $line = <$file>) {
- $license .= $line;
- last if index($line, '*****/') >= 0;
- }
- $file->close();
- return $license;
-}
-
-# Replace special keys in XSL files and return a handle to temporary file
-sub replaceXslKeys
-{
- my ($xslSourceFileName, $license, $uiHeaderName) = @_;
-
- my $xslSourceFile = new IO::File('<' . $xslSourceFileName) or die ('Unable to open ' . $xslSourceFileName . ' for reading: ' . $!);
- my $xsl = '';
- while (my $line = <$xslSourceFile>) {
- $xsl .= $line;
- }
- $xslSourceFile->close();
- $xsl =~ s/\@LICENSE\@/$license/g;
- $xsl =~ s/\@HEADER\@/$uiHeaderName/g if defined $uiHeaderName;
-
- my $xslHandle = File::Temp->new(DIR => dirname($xslSourceFileName), SUFFIX => '.xsl');
- print $xslHandle $xsl;
- $xslHandle->close();
- return $xslHandle;
-}
-
-# Run xalan. Note: xmlpatterns currently reports a syntax error on the sheets
-sub runXSLT
-{
- my ($source, $sheet, $target) = @_;
- my $rc = system('xalan', '-in', $source, '-xsl', $sheet, '-out', $target);
-# my $rc = system($qtXmlPatterns, '-output', $target, $sheet, $source);
- die ('Xalan failed on ' . $source . ' ' . $sheet) unless $rc == 0;
-}
-
-# Generate uilib header and source.
-
-my $uiLibImpl = File::Spec->catfile($uiLibDir, 'ui4.cpp');
-my $uiLibHeader = File::Spec->catfile($uiLibDir, 'ui4_p.h');
-my $license = readCppLicense($uiLibImpl);
-
-print "Running XSLT processor for uilib header...\n";
-
-my $ui4Xsd = File::Spec->catfile($xmlDir, 'ui4.xsd');
-my $headerXslSource = File::Spec->catfile($xmlDir, 'generate_header.xsl');
-my $headerXsl = replaceXslKeys($headerXslSource, $license);
-runXSLT($ui4Xsd, $headerXsl->filename, $uiLibHeader);
-
-print "Running XSLT processor for uilib source...\n";
-my $implXslSource = File::Spec->catfile($xmlDir, 'generate_impl.xsl');
-my $implXsl = replaceXslKeys($implXslSource, $license, 'ui4_p.h');
-runXSLT($ui4Xsd, $implXsl->filename, $uiLibImpl);
-
-# uic: Header is called 'ui4.h' instead of 'ui4_p.h'
-
-my $uicImpl = File::Spec->catfile($uicDir, 'ui4.cpp');
-my $uicHeader = File::Spec->catfile($uicDir, 'ui4.h');
-$license = readCppLicense($uicImpl);
-
-print "Running XSLT processor for uic header...\n";
-$headerXsl = replaceXslKeys($headerXslSource, $license);
-runXSLT($ui4Xsd, $headerXsl->filename, $uicHeader);
-
-print "Running XSLT processor for uic source...\n";
-$implXsl = replaceXslKeys($implXslSource, $license, 'ui4.h');
-runXSLT($ui4Xsd, $implXsl->filename, $uicImpl);
-
-system('git', 'diff');