Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Screenshot

Usage

A panel to show the pdf licence of the installed application.

These panels can prompt the user to acknowledge a license agreement. They block unless the user selects the 'agree' option. To specify the license agreement text you have to use the PdfLicencePanel.licence resource.

You can use multiple instances of HTMLLicencePanel this way:

<resources>
    <res id="PDFLicencePanel.licence" src="iz/apache-license.pdf"/>
</resources>
<panels> 
    <panel classname="PDFLicencePanel" id="licence" />
</panels>
 
	<jar src="deps/batik-awt-util.jar" />
	<jar src="deps/batik-dom.jar" />
	<jar src="deps/batik-svg-dom.jar" />
	<jar src="deps/batik-svggen.jar" />
	<jar src="deps/batik-util.jar" />
	<jar src="deps/batik-xml.jar" />
	<jar src="deps/commons-logging.jar" />
	<jar src="deps/fontbox.jar" />
	<jar src="deps/icepdf-core.jar" />
	<jar src="deps/icepdf-viewer.jar" />
	<jar src="deps/jai-codec.jar" />
	<jar src="deps/jai-core.jar" />
	<jar src="deps/jempbox.jar" />
	<jar src="deps/pdfbox.jar" />
 

Since 5.0.7:
For the console installation mode, the info text can be preformatted for displaying using the following features: 

  • Word wrap
    If there are long lines in the text containing more characters than the real terminal width, the text is not broken accidentally at the terminal border, but it is wrapped by words.
    Exception: Single words which are longer than the terminal width are broken at the terminal line end.
  • Paging
    If the info text results in more lines (after the word wrapping mentioned above) than the real terminal height, the text is paged, e.g. there is displayed one page fitting the terminal dimensions and below there is shown a

    ===More===

    line indicating there are more pages of text available. The next page is shown when pressing the SPACE (or any other key) here.

Configuration 

The word wrap and paging feature described above must be activated depending on the format of the info text, they are deactivated by default. 

Panel configuration parameterPossible valuesDefaultDescription
console-text-wordwrap
true | false
false

Set "true" in order to activate word wrapping for the displayed text in console installation mode.

Since: 5.0.7

console-text-paging
true | false
false

Set "true" in order to activate paging for the displayed text in console installation mode.

Since: 5.0.7

 Example: 

Example of install.xml
<panels>
    <panel classname="PDFLicencePanel" id="panel.license">
      <configuration>
        <param name="console-text-paging" value="true" />
        <param name="console-text-wordwrap" value="false" />
      </configuration>
    </panel>
    ...
</panels> 

The two options work independently on each other. If there are both activated, word wrapping is done before calculating the page size for paging.

Resources

ResourceDescription
PDFLicencePanel.licenceThe license agreement text to show on the panel.

 

Maven Dependencies

This Panel depends on Apache PDF Box and Ice PDF. The dependencies must be available for the plugins and also included into the installer, enabling it to load the PDF in runtime when installing.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>	
	
	<parent>
		<groupId>some-group-id</groupId>
		<artifactId>some-parent-artifact-id</artifactId>
		<version>1.0.0-SNAPSHOT</version>
	</parent>
	
	<artifactId>some-artifact-id</artifactId>

	<name>Sample Installer</name>
	<description>Installer for Sample</description>

	<packaging>jar</packaging>

	<dependencies>
		<!-- PDF Panel -->
      	<dependency>
        	<groupId>org.apache.pdfbox</groupId>
      	  	<artifactId>pdfbox</artifactId>
        	<version>1.8.10</version>
      	</dependency>
      	<dependency>
			<groupId>org.icepdf.os</groupId>
			<artifactId>icepdf-core</artifactId>
			<version>6.0.1</version>
	 	</dependency>
	 	<dependency>
			<groupId>org.icepdf.os</groupId>
			<artifactId>icepdf-viewer</artifactId>
			<version>6.0.1</version>
	  	</dependency>
	  	<!-- PDF Panel -->
	</dependencies>

	<build>
		<defaultGoal>package</defaultGoal>
		<resources>
			<resource>
				<directory>src/izpack</directory>
				<filtering>true</filtering>
			</resource>
		</resources>
		<plugins>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<encoding>${project.build.sourceEncoding}</encoding>
					<source>${maven.compiler.source}</source>
					<target>${maven.compiler.target}</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<configuration>
					<transitive>true</transitive>
				</configuration>
				<executions>	
					<execution>
						<id>pdf</id>
						<phase>process-resources</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<stripVersion>true</stripVersion>
							<includeScope>compile</includeScope>
							<outputDirectory>${stage.dir.fullpath}/deps</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.codehaus.izpack</groupId>
				<artifactId>izpack-maven-plugin</artifactId>
				<version>${izpack-maven-plugin.version}</version>
				<dependencies>
					<dependency>
						<groupId>org.codehaus.izpack</groupId>
						<artifactId>izpack-compiler</artifactId>
						<version>${izpack.version}</version>
					</dependency>
					<!-- PDF Panel -->
      				<dependency>
        				<groupId>org.apache.pdfbox</groupId>
      				  	<artifactId>pdfbox</artifactId>
        					<version>1.8.10</version>
      				</dependency>
      					<dependency>
						<groupId>org.icepdf.os</groupId>
						<artifactId>icepdf-core</artifactId>
						<version>6.0.1</version>
	 				</dependency>
	 			 	<dependency>
						<groupId>org.icepdf.os</groupId>
		  				<artifactId>icepdf-viewer</artifactId>
		  				<version>6.0.1</version>
	  				</dependency>
	  				<!-- PDF Panel -->
				</dependencies>
				<configuration>
					<baseDir>${stage.dir.fullpath}</baseDir>
					<installFile>${stage.dir.fullpath}/install.xml</installFile>
					<mkdirs>true</mkdirs>
					<jarName>${project.build.finalName}-standard</jarName>
				</configuration>
				<executions>
					<execution>
						<id>standard-installer</id>
						<phase>package</phase>
						<goals>
							<goal>izpack</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<repositories>
		<repository>
			<id>ice-maven-release</id>
			<name>Ice Maven Release Repository</name>
			<url>http://anonsvn.icesoft.org/repo/maven2/releases</url>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>ice-maven-release</id>
			<name>Ice Maven Release Repository</name>
			<url>http://anonsvn.icesoft.org/repo/maven2/releases</url>
		</pluginRepository>
	</pluginRepositories>
</project>
  • No labels