summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-java/skinlf
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-java/skinlf')
-rw-r--r--dev-java/skinlf/Manifest1
-rw-r--r--dev-java/skinlf/files/skinlf-1.2.12-build.xml299
-rw-r--r--dev-java/skinlf/files/skinlf-1.2.12-common-devjavanet.xml38
-rw-r--r--dev-java/skinlf/files/skinlf-1.2.12-common.xml171
-rw-r--r--dev-java/skinlf/files/skinlf-1.2.12-image-utils-without-jimi.patch77
-rw-r--r--dev-java/skinlf/files/skinlf-1.2.12-image-utils.patch38
-rw-r--r--dev-java/skinlf/files/skinlf-6.7-build.xml276
-rw-r--r--dev-java/skinlf/files/skinlf-6.7-common.xml171
-rw-r--r--dev-java/skinlf/files/skinlf-6.7-image-utils-without-jimi.patch77
-rw-r--r--dev-java/skinlf/metadata.xml12
-rw-r--r--dev-java/skinlf/skinlf-6.7-r1.ebuild59
11 files changed, 1219 insertions, 0 deletions
diff --git a/dev-java/skinlf/Manifest b/dev-java/skinlf/Manifest
new file mode 100644
index 000000000000..dc375c475a72
--- /dev/null
+++ b/dev-java/skinlf/Manifest
@@ -0,0 +1 @@
+DIST skinlf-6.7-20060722.zip 827174 SHA256 3d31ffbe1fa1325049cb94e675971a2b8d89ae24558cb173e7e4e1f926dd7daa SHA512 e4df9c6a85b5bbdbd40af177595641a5ad55a5cb16e5a31217fb3f5badd25727e4b48fa78ba2374f4eb55224068807b5bd6df9fba7f2418b7b810b25cf2043b6 WHIRLPOOL f1ba8c9408fc77fd1d68a5c2b7834ed0f1c79dbaa3095e015f95464da0a852a892e3f40635b86dde14f6af314902f88be3e6218f313a9722d76037fa6a944bba
diff --git a/dev-java/skinlf/files/skinlf-1.2.12-build.xml b/dev-java/skinlf/files/skinlf-1.2.12-build.xml
new file mode 100644
index 000000000000..83dd73ea9055
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-1.2.12-build.xml
@@ -0,0 +1,299 @@
+<!DOCTYPE project [
+ <!ENTITY build-COMMON SYSTEM "common.xml">
+ <!ENTITY build-COMMONDEVJAVANET SYSTEM "common-devjavanet.xml">
+]>
+
+<!--
+ Skin Look And Feel Build
+-->
+<project name="skinlf" default="compile.java" basedir=".">
+
+ <!-- Allow user to override settings -->
+ <property file="${user.home}/skinlf-ant.properties" />
+ <property file="build.properties" />
+
+ <!-- Project Identification -->
+ <property name="project" value="skinlf"/>
+ <property name="version" value="1.2.12"/>
+ <property name="year" value="2000-2005"/>
+ <property name="project.fullname" value="Skin Look And Feel"/>
+ <property name="project.nativeskin" value="nativeskin"/>
+
+ <property name="javadoc.packagenames" value="com.l2fprod.gui,com.l2fprod.gui.plaf.skin,com.l2fprod.gui.region,com.l2fprod.gui.nativeskin"/>
+
+ <path id="classpath">
+ <pathelement location="lib/imageconversion.jar"/>
+ <pathelement location="lib/JimiProClasses.zip"/>
+ <pathelement location="lib/xalan.jar"/>
+ <pathelement location="lib/xercesImpl.jar"/>
+ <pathelement location="lib/xml-apis.jar"/>
+ </path>
+
+ <property name="classpath.asprop" refid="classpath"/>
+
+ &build-COMMON;
+ &build-COMMONDEVJAVANET;
+
+ <!-- get some of the dependant jars from maven repository -->
+ <target name="init.jars">
+ <get src="http://www.ibiblio.org/maven/javacc/jars/JavaCC.zip"
+ dest="lib/JavaCC.zip"
+ verbose="true"
+ usetimestamp="true"/>
+ <get src="http://www.ibiblio.org/maven/xalan/jars/xalan-2.5.1.jar"
+ dest="lib/xalan.jar"
+ verbose="true"
+ usetimestamp="true"/>
+ <get src="http://www.ibiblio.org/maven/xerces/jars/xercesImpl-2.4.0.jar"
+ dest="lib/xercesImpl.jar"
+ verbose="true"
+ usetimestamp="true"/>
+ <get src="http://www.ibiblio.org/maven/xml-apis/jars/xml-apis-2.0.2.jar"
+ dest="lib/xml-apis.jar"
+ verbose="true"
+ usetimestamp="true"/>
+ </target>
+
+ <target name="compile.javacc" depends="init">
+ <javacc target="src/com/l2fprod/gui/plaf/skin/impl/gtk/parser/GtkParser.jj"
+ outputdirectory="src/com/l2fprod/gui/plaf/skin/impl/gtk/parser"
+ javacchome="lib"
+ static="false"
+ javaunicodeescape="true" />
+ </target>
+
+ <target name="compile" depends="init">
+ </target>
+
+ <!--
+ Utility targets to use the style converters
+ -->
+ <target name="convert.msstyles">
+ <fail unless="msstyle" message="Specify path to msstyle xml -Dmsstyle=pathtoxml"/>
+ <fail unless="skin" message="Specify themepack folder -Dskin=pathtothemepackdir"/>
+ <java classname="com.l2fprod.tools.msstyles.MsStylesToSkinLF"
+ classpath="${classpath.asprop}:${java.src.dir}:${build.classes}"
+ fork="yes">
+ <arg value="${msstyle}" />
+ <arg value="${msstyle}.xml" />
+ <arg value="${skin}" />
+ </java>
+ <copy todir="${skin}">
+ <fileset dir="src/themepacks/skeletonthemepack" includes="**"/>
+ </copy>
+ </target>
+
+ <!--
+ Start Demos
+ -->
+ <target name="demo">
+ <java classname="examples.demo"
+ classpath="${classpath.asprop}:${java.src.dir}:${build.classes}"
+ fork="yes">
+ <arg value="${skin}" />
+ </java>
+ </target>
+
+ <!-- Dist targets -->
+ <target name="jar" depends="compile.java">
+ <jar destfile="${build.dir}/${project}.jar">
+ <fileset dir="${build.classes}" includes="*.class,com/**/*.class" excludes="**/region/**,**/nativeskin/**"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.properties"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.template"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.gif"/>
+ <manifest>
+ <attribute name="Built-by" value="${user.name}"/>
+ <attribute name="Main-Class" value="com.l2fprod.gui.plaf.skin.Skinit"/>
+ <section name="com/l2fprod/gui/plaf/skin">
+ <attribute name="Specification-Title" value="${project.fullname}"/>
+ <attribute name="Specification-Version" value="${version}"/>
+ <attribute name="Specification-Vendor" value="L2FProd.com"/>
+ <attribute name="Implementation-Title" value="${project.fullname}"/>
+ <attribute name="Implementation-Version" value="${version}"/>
+ <attribute name="Implementation-Vendor" value="L2FProd.com"/>
+ </section>
+ </manifest>
+ </jar>
+ </target>
+
+ <target name="obfuscate" depends="jar">
+ <taskdef name="proguard"
+ classname="proguard.ant.ProGuardTask"
+ classpath="lib/proguard.jar"/>
+ <move file="${build.dir}/${project}.jar"
+ tofile="${build.dir}/${project}-toobfuscate.jar"/>
+ <proguard
+ outjar="${build.dir}/${project}.jar"
+ obfuscate="yes"
+ usemixedclassnames="no"
+ overloadaggressively="yes"
+ printmapping="obfuscatemapping.txt"
+ printusage="obfuscateusage.txt">
+ <libraryjar name="${java.home}/lib/rt.jar"/>
+ <injar name="${build.dir}/${project}-toobfuscate.jar"/>
+ <keep access="public" type="class" name="Skinit">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.SkinApplet">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.SkinChooser">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.WindowSnapping">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.nativeskin.**">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.CompoundSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.IncorrectVersionException">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.LinuxLookAndFeel">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.Skin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinButton">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinFrame">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.Skinit">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinLookAndFeel">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinPersonality">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinPreviewWindow">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinProgress">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinScrollbar">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSeparator">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSlider">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSplitPane">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinTab">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.*">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.gtk.GtkSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.kde.KdeSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.region.*">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.tools.**">
+ <method name="*"/>
+ </keep>
+ <keep type="class" name="com.l2fprod.util.**">
+ <method name="*"/>
+ </keep>
+ </proguard>
+ </target>
+
+ <target name="dist.pre" depends="jar">
+ <!-- examples.jar -->
+ <jar destfile="${build.dist.lib}/examples.jar">
+ <fileset dir="${build.classes}" includes="examples/**.class"/>
+ <fileset dir="${java.src.dir}" includes="examples/**.properties,examples/**.gif,examples/**.jpg"/>
+ </jar>
+ <!-- nativeskin.jar -->
+ <jar jarfile="${build.dist.lib}/nativeskin.jar">
+ <fileset dir="${build.classes}"
+ includes="com/l2fprod/gui/region/**,com/l2fprod/gui/nativeskin/**,com/l2fprod/util/OS**,,com/l2fprod/util/Access**"
+ excludes="**/*.html"/>
+ </jar>
+ <!-- batch files -->
+ <copy todir="${build.dist.bin}"
+ flatten="yes"
+ preservelastmodified="yes">
+ <fileset dir="src" includes="**/*.bat"/>
+ </copy>
+ <!-- dlls -->
+ <copy todir="${build.dist.lib}">
+ <fileset dir="src/native/win32" includes="*.dll"/>
+ </copy>
+ <!-- default theme -->
+ <zip destfile="${build.dist.lib}/themepack.zip">
+ <zipfileset dir="src/themepacks/whistlerthemepack"/>
+ </zip>
+ </target>
+
+ <!--
+ Publish the new version of SKinLF
+ -->
+ <target name="publish" depends="init">
+ <!-- copy zip to dist folder -->
+ <copy todir="${publish.download.dir}"
+ file="${project}-${version}-${build.version}.zip"/>
+
+ <filter token="WEB" value="${publish.web.url}"/>
+ <!-- update the jnlp website with the new release -->
+ <!-- put skinlf.jar in jnlp folder -->
+ <copy todir="${publish.skinlf.home}/jnlp/" filtering="on" overwrite="yes">
+ <fileset dir="src/jnlp" includes="*.jnlp"/>
+ </copy>
+ <copy file="${build.dist.lib}/${project}.jar" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/examples.jar" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/themepack.zip" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/nativeskin.jar" todir="${publish.skinlf.home}/jnlp"/>
+ <jar destfile="${publish.skinlf.home}/jnlp/nativeskinlibs.jar"
+ basedir="${build.dist.lib}" includes="*.dll"/>
+
+ <!-- copy the documentation
+ <copy todir="${web.skinlf.home}/documentation">
+ <fileset dir="${javadoc.destdir}"/>
+ </copy>
+ -->
+ <!-- Sign all Jars -->
+ <signjar keystore="../common/keystore" alias="L2FProd.com" storepass="L2FProd.com">
+ <fileset dir="${publish.skinlf.home}/jnlp" includes="*.jar"/>
+ </signjar>
+
+ </target>
+
+ <target name="themes">
+ <zip destfile="${build.www.themedir}/cellshadedthemepack.zip"
+ basedir="src/themepacks/cellshadedthemepack"/>
+ <zip destfile="${build.www.themedir}/whistlerthemepack.zip"
+ basedir="src/themepacks/whistlerthemepack"/>
+ <zip destfile="${build.www.themedir}/xplunathemepack.zip"
+ basedir="src/themepacks/xplunathemepack"/>
+ <zip destfile="${build.www.themedir}/toxicthemepack.zip"
+ basedir="src/themepacks/toxicthemepack"/>
+ <zip destfile="${build.www.themedir}/beigeazulthemepack.zip"
+ basedir="src/themepacks/beigeazulthemepack"/>
+
+
+ <!-- png for these themepacks are not in cvs -->
+ <zip destfile="${build.www.themedir}/aquathemepack.zip"
+ basedir="src/themepacks/aquathemepack"/>
+ <zip destfile="${build.www.themedir}/alloythemepack.zip"
+ basedir="src/themepacks/alloythemepack"/>
+ </target>
+
+</project>
diff --git a/dev-java/skinlf/files/skinlf-1.2.12-common-devjavanet.xml b/dev-java/skinlf/files/skinlf-1.2.12-common-devjavanet.xml
new file mode 100644
index 000000000000..da7cdcf835cc
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-1.2.12-common-devjavanet.xml
@@ -0,0 +1,38 @@
+<!--
+ Common targets dealing with dev.java.net
+-->
+
+<target name="devjavanet.setup">
+ <property name="cvsroot" value=":pserver:${cvs.user.name}@cvs.dev.java.net:/shared/data/ccvs/repository"/>
+ <property name="cvsweb" value="https://skinlf.dev.java.net/unbranded-source/browse/"/>
+</target>
+
+<target name="cvs.tagdiff" depends="devjavanet.setup">
+ <property name="filename" value="${build.dir}/${startTag}-${endTag}-diff.xml"/>
+ <cvstagdiff cvsroot="${cvsroot}"
+ destfile="${filename}"
+ package="${project}"
+ startTag="${startTag}"
+ endTag="${endTag}"/>
+ <xslt in="${filename}"
+ out="${filename}.html"
+ style="${ant.home}/etc/tagdiff.xsl">
+ <param name="title" expression="${project} diff between ${startTag} and ${endTag}"/>
+ <param name="module" expression="${project}"/>
+ <param name="cvsweb" expression="${cvsweb}"/>
+ </xslt>
+</target>
+
+<target name="cvs.changelog" depends="devjavanet.setup">
+ <property name="filename" value="${build.dir}/${startDate}-clog.xml"/>
+ <cvschangelog
+ start="${startDate}"
+ destfile="${filename}"/>
+ <xslt in="${filename}"
+ out="${filename}.html"
+ style="${ant.home}/etc/changelog.xsl">
+ <param name="title" expression="${project} changelog since ${startDate}"/>
+ <param name="module" expression="${project}"/>
+ <param name="cvsweb" expression="${cvsweb}"/>
+ </xslt>
+</target>
diff --git a/dev-java/skinlf/files/skinlf-1.2.12-common.xml b/dev-java/skinlf/files/skinlf-1.2.12-common.xml
new file mode 100644
index 000000000000..c2803acc5bab
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-1.2.12-common.xml
@@ -0,0 +1,171 @@
+<!--
+ Common Target which could be reused by other projects later.
+-->
+
+<!-- COMMON PROPERTIES -->
+
+ <property name="debug" value="true"/>
+ <property name="optimize" value="false"/>
+
+ <!-- Java Related -->
+ <property name="java.src.dir" value="src"/>
+ <property name="javac.compiler" value="modern"/>
+
+ <!-- Destination Directory for the build -->
+ <property name="build.dir" value="build"/>
+ <property name="build.classes" value="${build.dir}/classes"/>
+ <property name="build.src" value="${build.dir}/src"/>
+ <property name="build.dist.dir" value="${project}-${version}"/>
+ <property name="build.dist.src" value="${build.dist.dir}/src"/>
+ <property name="build.dist.lib" value="${build.dist.dir}/lib"/>
+ <property name="build.dist.bin" value="${build.dist.dir}/bin"/>
+ <property name="build.www.dir" value="${build.dir}/www"/>
+
+<!-- COMMON TARGETS -->
+
+ <target name="init.properties">
+ <tstamp>
+ <format property="build.time" pattern="MM/dd/yyyy hh:mm aa" locale="en"/>
+ <format property="build.version" pattern="yyyyMMdd" locale="en"/>
+ </tstamp>
+ <filter token="VERSION" value="${version}"/>
+ <filter token="PROJECT.FULLNAME" value="${project.fullname}"/>
+ <filter token="DATE" value="${build.time}"/>
+ <filter token="YEAR" value="${year}"/>
+ </target>
+
+ <target name="init.directories">
+ <mkdir dir="${build.dir}"/>
+ <mkdir dir="${build.classes}"/>
+ <mkdir dir="${build.dist.dir}"/>
+ <mkdir dir="${build.dist.src}"/>
+ <mkdir dir="${build.dist.lib}"/>
+ <mkdir dir="${build.dist.bin}"/>
+ </target>
+
+ <target name="init" depends="init.properties,init.directories">
+ </target>
+
+ <target name="clean">
+ <delete dir="${build.dir}"/>
+ <delete dir="${build.dist.dir}"/>
+ </target>
+
+ <target name="fixcrlf">
+ <fixcrlf srcdir="${basedir}" eol="cr">
+ <include name="AUTHORS,LICENSE*,README,THANKS" />
+ <include name="**/*.java" />
+ </fixcrlf>
+ </target>
+
+<!-- Java Related Targets -->
+
+ <target name="compile.java" depends="init">
+ <depend srcdir="${java.src.dir}"
+ destdir="${build.classes}"
+ cache="${build.dir}/dependcache"
+ closure="yes"/>
+
+ <copy todir="${build.src}" filtering="yes">
+ <fileset dir="${java.src.dir}">
+ <include name="**/*.java"/>
+ </fileset>
+ </copy>
+ <javac srcdir="${build.src}"
+ destdir="${build.classes}"
+ classpathref="classpath"
+ compiler="${javac.compiler}"
+ includeAntRuntime="false"
+ includeJavaRuntime="false"
+ debug="${debug}"
+ optimize="${optimize}"
+ target="1.3" source="1.3">
+ </javac>
+ </target>
+
+<!-- Distribution Target -->
+
+ <target name="dist" depends="jar,dist.pre">
+ <!-- project.jar -->
+ <copy todir="${build.dist.lib}"
+ file="${build.dir}/${project}.jar"
+ preservelastmodified="yes"/>
+ <!-- source code -->
+ <copy todir="${build.dist.src}"
+ preservelastmodified="yes">
+ <fileset dir="${build.src}" includes="**/*.java"/>
+ <fileset dir="${java.src.dir}" includes="**/*.properties"/>
+ </copy>
+ <!-- regular files -->
+ <copy todir="${build.dist.dir}"
+ filtering="yes"
+ preservelastmodified="yes">
+ <fileset dir="${basedir}">
+ <include name="AUTHORS"/>
+ <include name="INSTALL"/>
+ <include name="README"/>
+ <include name="THANKS"/>
+ <include name="LICENSE"/>
+ <include name="LICENSE_*"/>
+ </fileset>
+ </copy>
+ <xslt in="xdocs/CHANGES.xml"
+ out="${build.dist.dir}/CHANGES"
+ style="xdocs/xsl/text.xsl"/>
+ <!-- zip file -->
+ <zip destfile="${project}-${version}-${build.version}.zip">
+ <zipfileset dir="${build.dist.dir}"
+ prefix="${project}-${version}" />
+ </zip>
+ </target>
+
+<!-- Source code formatting -->
+
+ <target name="jalopy" depends="init">
+ </target>
+
+<!-- Project Web Documentation -->
+
+ <target name="www" depends="init">
+ <mkdir dir="${build.www.dir}"/>
+ <xslt in="xdocs/www.xml"
+ out="${build.www.dir}/empty.html"
+ style="xdocs/xsl/tohtml.xsl">
+ <param name="output.dir" expression="${build.www.dir}"/>
+ <param name="timestamp" expression="${build.time}"/>
+ </xslt>
+ <copy todir="${build.www.dir}">
+ <fileset dir="xdocs">
+ <include name="images/**"/>
+ <include name="**.java"/>
+ </fileset>
+ </copy>
+ <mkdir dir="${build.www.dir}/javadoc"/>
+ <javadoc sourcepath="${java.src.dir}"
+ classpath="${classpath}"
+ destdir="${build.www.dir}/javadoc"
+ packagenames="${javadoc.packagenames}"
+ private="false" protected="true"
+ windowtitle="${project.fullname} ${version} API"
+ doctitle="${project.fullname} ${version}"
+ version="false" author="false" use="false"
+ stylesheetfile="xdocs/javadoc.css"
+ splitindex="true"
+ bottom="Copyright &#169; ${year} L2FProd.com. All Rights Reserved."/>
+ <delete file="${build.www.dir}/empty.html"/>
+ </target>
+
+ <target name="www.sync" depends="init">
+ <ftp server="${build.www.server}"
+ userid="${build.www.userid}"
+ password="${build.www.password}"
+ remotedir="${build.www.remotedir}"
+ action="put"
+ verbose="yes"
+ depends="yes">
+ <fileset dir="${build.www.dir}">
+ <include name="**/**"/>
+ </fileset>
+ </ftp>
+ </target>
+
diff --git a/dev-java/skinlf/files/skinlf-1.2.12-image-utils-without-jimi.patch b/dev-java/skinlf/files/skinlf-1.2.12-image-utils-without-jimi.patch
new file mode 100644
index 000000000000..02670136667d
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-1.2.12-image-utils-without-jimi.patch
@@ -0,0 +1,77 @@
+diff -ru skinlf-1.2.12-orig/src/com/l2fprod/tools/ImageUtils.java skinlf-1.2.12/src/com/l2fprod/tools/ImageUtils.java
+--- skinlf-1.2.12-orig/src/com/l2fprod/tools/ImageUtils.java 2006-01-24 20:09:36.000000000 +0100
++++ skinlf-1.2.12/src/com/l2fprod/tools/ImageUtils.java 2006-01-24 20:19:19.000000000 +0100
+@@ -6,15 +6,12 @@
+
+ import javax.swing.ImageIcon;
+
+-import com.ibm.imageconversion.*;
+-import com.sun.jimi.core.*;
++import javax.imageio.*;
+
+ public class ImageUtils {
+
+ public static Component bitmapCreator = new javax.swing.JLabel();
+
+- static BMPDecoder decoder = new BMPDecoder();
+- static BMPEncoder encoder = new BMPEncoder();
+
+ public static Image loadPng(String pathToImage) throws Exception {
+ ImageIcon icon = new ImageIcon(new File(pathToImage).toURL());
+@@ -22,29 +19,33 @@
+ }
+
+ public static void savePng(Image image, String pathToImage) throws Exception {
+- Jimi.putImage(image, pathToImage);
++ ImageIO.write((RenderedImage)image, "png", new File(pathToImage));
+ }
+
++ private static String getFileFmt(String pathToImage) throws Exception {
++ String fmt;
++ if (pathToImage.toLowerCase().endsWith(".png")) {
++ return "png";
++ }
++ if (pathToImage.toLowerCase().endsWith(".gif")) {
++ return "gif";
++ }
++ if (pathToImage.toLowerCase().endsWith(".bmp")) {
++ return "bmp";
++ }
++ return "";
++ }
++
+ public static void createPicture(String pathToImage, int index, int maxParts,
+ String filename, boolean horizontal) {
+ try {
+ System.out.println("working with " + pathToImage);
+ Image image = null;
+-
+- if (pathToImage.toLowerCase().endsWith(".png") ||
+- pathToImage.toLowerCase().endsWith(".gif")) {
+- image = loadPng(pathToImage);
+- } else if (pathToImage.toLowerCase().endsWith(".bmp")) {
+- decoder.setInputFilename(pathToImage);
+- decoder.triggerAction();
+- image = decoder.getResult();
+- } else {
+- throw new Error("do not know how to load " + pathToImage);
+- }
++ image = Toolkit.getDefaultToolkit().getImage(pathToImage);
+
+ // if only one image, dump it as it
+- if (index == 0 && maxParts == 1) {
+- Jimi.putImage(image, filename);
++ if (index == 0 && maxParts == 1) {
++ ImageIO.write((RenderedImage)image, getFileFmt(pathToImage), new File(pathToImage));
+ } else {
+ if (horizontal) {
+ int partHeight = image.getHeight(bitmapCreator) / maxParts;
+@@ -55,7 +56,7 @@
+ image = grab(image, partWidth * index, 0,
+ partWidth, image.getHeight(bitmapCreator));
+ }
+- Jimi.putImage(image, filename);
++ ImageIO.write((RenderedImage)image, getFileFmt(pathToImage), new File(pathToImage));
+ }
+ } catch (Exception e) {
+ System.out.println("error while working with " + pathToImage);
diff --git a/dev-java/skinlf/files/skinlf-1.2.12-image-utils.patch b/dev-java/skinlf/files/skinlf-1.2.12-image-utils.patch
new file mode 100644
index 000000000000..f6d695f2894b
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-1.2.12-image-utils.patch
@@ -0,0 +1,38 @@
+diff -ru skinlf-1.2.12-orig/src/com/l2fprod/tools/ImageUtils.java skinlf-1.2.12/src/com/l2fprod/tools/ImageUtils.java
+--- skinlf-1.2.12-orig/src/com/l2fprod/tools/ImageUtils.java 2006-01-22 13:14:39.000000000 +0100
++++ skinlf-1.2.12/src/com/l2fprod/tools/ImageUtils.java 2006-01-22 13:19:13.000000000 +0100
+@@ -6,15 +6,12 @@
+
+ import javax.swing.ImageIcon;
+
+-import com.ibm.imageconversion.*;
+ import com.sun.jimi.core.*;
+
+ public class ImageUtils {
+
+ public static Component bitmapCreator = new javax.swing.JLabel();
+
+- static BMPDecoder decoder = new BMPDecoder();
+- static BMPEncoder encoder = new BMPEncoder();
+
+ public static Image loadPng(String pathToImage) throws Exception {
+ ImageIcon icon = new ImageIcon(new File(pathToImage).toURL());
+@@ -30,17 +27,7 @@
+ try {
+ System.out.println("working with " + pathToImage);
+ Image image = null;
+-
+- if (pathToImage.toLowerCase().endsWith(".png") ||
+- pathToImage.toLowerCase().endsWith(".gif")) {
+- image = loadPng(pathToImage);
+- } else if (pathToImage.toLowerCase().endsWith(".bmp")) {
+- decoder.setInputFilename(pathToImage);
+- decoder.triggerAction();
+- image = decoder.getResult();
+- } else {
+- throw new Error("do not know how to load " + pathToImage);
+- }
++ image = Toolkit.getDefaultToolkit().getImage(pathToImage);
+
+ // if only one image, dump it as it
+ if (index == 0 && maxParts == 1) {
diff --git a/dev-java/skinlf/files/skinlf-6.7-build.xml b/dev-java/skinlf/files/skinlf-6.7-build.xml
new file mode 100644
index 000000000000..42b4c1145aa2
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-6.7-build.xml
@@ -0,0 +1,276 @@
+<!DOCTYPE project [
+ <!ENTITY build-COMMON SYSTEM "common.xml">
+]>
+
+<!--
+ Skin Look And Feel Build
+-->
+<project name="skinlf" default="compile.java" basedir=".">
+
+ <!-- Allow user to override settings -->
+ <property file="${user.home}/skinlf-ant.properties" />
+ <property file="build.properties" />
+
+ <!-- Project Identification -->
+ <property name="project" value="skinlf"/>
+ <property name="version" value="6.7"/>
+ <property name="year" value="2000-2006"/>
+ <property name="project.fullname" value="Skin Look And Feel"/>
+ <property name="project.nativeskin" value="nativeskin"/>
+
+ <property name="javadoc.packagenames" value="com.l2fprod.gui,com.l2fprod.gui.plaf.skin,com.l2fprod.gui.region,com.l2fprod.gui.nativeskin"/>
+
+
+
+ <path id="classpath">
+ <fileset dir="lib" includes="**/*.jar"/>
+ </path>
+
+ <property name="classpath.asprop" refid="classpath"/>
+
+ &build-COMMON;
+
+ <target name="compile.javacc" depends="init">
+ <javacc target="src/com/l2fprod/gui/plaf/skin/impl/gtk/parser/GtkParser.jj"
+ outputdirectory="src/com/l2fprod/gui/plaf/skin/impl/gtk/parser"
+ javacchome="lib"
+ static="false"
+ javaunicodeescape="true" />
+ </target>
+
+ <target name="compile" depends="init">
+ </target>
+
+ <!--
+ Utility targets to use the style converters
+ -->
+ <target name="convert.msstyles">
+ <fail unless="msstyle" message="Specify path to msstyle xml -Dmsstyle=pathtoxml"/>
+ <fail unless="skin" message="Specify themepack folder -Dskin=pathtothemepackdir"/>
+ <java classname="com.l2fprod.tools.msstyles.MsStylesToSkinLF"
+ classpath="${classpath.asprop}:${java.src.dir}:${build.classes}"
+ fork="yes">
+ <arg value="${msstyle}" />
+ <arg value="${msstyle}.xml" />
+ <arg value="${skin}" />
+ </java>
+ <copy todir="${skin}">
+ <fileset dir="src/themepacks/skeletonthemepack" includes="**"/>
+ </copy>
+ </target>
+
+ <!--
+ Start Demos
+ -->
+ <target name="demo">
+ <java classname="examples.demo"
+ classpath="${classpath.asprop}:${java.src.dir}:${build.classes}"
+ fork="yes">
+ <arg value="${skin}" />
+ </java>
+ </target>
+
+ <!-- Dist targets -->
+ <target name="jar" depends="compile.java">
+ <jar destfile="${build.dir}/${project}.jar">
+ <fileset dir="${build.classes}" includes="*.class,com/**/*.class" excludes="**/region/**,**/nativeskin/**"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.properties"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.template"/>
+ <fileset dir="${java.src.dir}" includes="com/**/*.gif"/>
+ <manifest>
+ <attribute name="Built-by" value="${user.name}"/>
+ <attribute name="Main-Class" value="com.l2fprod.gui.plaf.skin.Skinit"/>
+ <attribute name="Class-Path" value="laf-plugin.jar"/>
+ <section name="com/l2fprod/gui/plaf/skin">
+ <attribute name="Specification-Title" value="${project.fullname}"/>
+ <attribute name="Specification-Version" value="${version}"/>
+ <attribute name="Specification-Vendor" value="L2FProd.com"/>
+ <attribute name="Implementation-Title" value="${project.fullname}"/>
+ <attribute name="Implementation-Version" value="${version}"/>
+ <attribute name="Implementation-Vendor" value="L2FProd.com"/>
+ </section>
+ </manifest>
+ </jar>
+ </target>
+
+ <target name="obfuscate" depends="jar">
+ <taskdef name="proguard"
+ classname="proguard.ant.ProGuardTask"
+ classpath="lib/proguard.jar"/>
+ <move file="${build.dir}/${project}.jar"
+ tofile="${build.dir}/${project}-toobfuscate.jar"/>
+ <proguard
+ outjar="${build.dir}/${project}.jar"
+ obfuscate="yes"
+ usemixedclassnames="no"
+ overloadaggressively="yes"
+ printmapping="obfuscatemapping.txt"
+ printusage="obfuscateusage.txt">
+ <libraryjar name="${java.home}/lib/rt.jar"/>
+ <injar name="${build.dir}/${project}-toobfuscate.jar"/>
+ <keep access="public" type="class" name="Skinit">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.SkinApplet">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.SkinChooser">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.WindowSnapping">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.nativeskin.**">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.CompoundSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.IncorrectVersionException">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.LinuxLookAndFeel">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.Skin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinButton">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinFrame">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.Skinit">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinLookAndFeel">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinPersonality">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinPreviewWindow">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinProgress">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinScrollbar">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSeparator">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSlider">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinSplitPane">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.SkinTab">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.*">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.gtk.GtkSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.plaf.skin.impl.kde.KdeSkin">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.gui.region.*">
+ <method name="*"/>
+ </keep>
+ <keep access="public" type="class" name="com.l2fprod.tools.**">
+ <method name="*"/>
+ </keep>
+ <keep type="class" name="com.l2fprod.util.**">
+ <method name="*"/>
+ </keep>
+ </proguard>
+ </target>
+
+ <target name="dist.pre" depends="jar">
+ <!-- examples.jar -->
+ <jar destfile="${build.dist.lib}/examples.jar">
+ <fileset dir="${build.classes}" includes="examples/**.class"/>
+ <fileset dir="${java.src.dir}" includes="examples/**.properties,examples/**.gif,examples/**.jpg"/>
+ </jar>
+ <!-- nativeskin.jar -->
+ <jar jarfile="${build.dist.lib}/nativeskin.jar">
+ <fileset dir="${build.classes}"
+ includes="com/l2fprod/gui/region/**,com/l2fprod/gui/nativeskin/**,com/l2fprod/util/OS**,,com/l2fprod/util/Access**"
+ excludes="**/*.html"/>
+ </jar>
+ <!-- batch files -->
+ <copy todir="${build.dist.bin}"
+ flatten="yes"
+ preservelastmodified="yes">
+ <fileset dir="src" includes="**/*.bat"/>
+ </copy>
+ <!-- dlls -->
+ <copy todir="${build.dist.lib}">
+ <fileset dir="src/native/win32" includes="*.dll"/>
+ </copy>
+ <!-- default theme -->
+ <zip destfile="${build.dist.lib}/themepack.zip">
+ <zipfileset dir="src/themepacks/whistlerthemepack"/>
+ </zip>
+ </target>
+
+ <!--
+ Publish the new version of SKinLF
+ -->
+ <target name="publish" depends="init">
+ <!-- copy zip to dist folder -->
+ <copy todir="${publish.download.dir}"
+ file="${project}-${version}-${build.version}.zip"/>
+
+ <filter token="WEB" value="${publish.web.url}"/>
+ <!-- update the jnlp website with the new release -->
+ <!-- put skinlf.jar in jnlp folder -->
+ <copy todir="${publish.skinlf.home}/jnlp/" filtering="on" overwrite="yes">
+ <fileset dir="src/jnlp" includes="*.jnlp"/>
+ </copy>
+ <copy file="${build.dist.lib}/${project}.jar" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/examples.jar" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/themepack.zip" todir="${publish.skinlf.home}/jnlp/"/>
+ <copy file="${build.dist.lib}/nativeskin.jar" todir="${publish.skinlf.home}/jnlp"/>
+ <jar destfile="${publish.skinlf.home}/jnlp/nativeskinlibs.jar"
+ basedir="${build.dist.lib}" includes="*.dll"/>
+
+ <!-- copy the documentation
+ <copy todir="${web.skinlf.home}/documentation">
+ <fileset dir="${javadoc.destdir}"/>
+ </copy>
+ -->
+ <!-- Sign all Jars -->
+ <signjar keystore="../common/keystore" alias="L2FProd.com" storepass="L2FProd.com">
+ <fileset dir="${publish.skinlf.home}/jnlp" includes="*.jar"/>
+ </signjar>
+
+ </target>
+
+ <target name="themes">
+ <zip destfile="${build.www.themedir}/cellshadedthemepack.zip"
+ basedir="src/themepacks/cellshadedthemepack"/>
+ <zip destfile="${build.www.themedir}/whistlerthemepack.zip"
+ basedir="src/themepacks/whistlerthemepack"/>
+ <zip destfile="${build.www.themedir}/xplunathemepack.zip"
+ basedir="src/themepacks/xplunathemepack"/>
+ <zip destfile="${build.www.themedir}/toxicthemepack.zip"
+ basedir="src/themepacks/toxicthemepack"/>
+ <zip destfile="${build.www.themedir}/beigeazulthemepack.zip"
+ basedir="src/themepacks/beigeazulthemepack"/>
+
+
+ <!-- png for these themepacks are not in cvs -->
+ <zip destfile="${build.www.themedir}/aquathemepack.zip"
+ basedir="src/themepacks/aquathemepack"/>
+ <zip destfile="${build.www.themedir}/alloythemepack.zip"
+ basedir="src/themepacks/alloythemepack"/>
+ </target>
+
+</project>
diff --git a/dev-java/skinlf/files/skinlf-6.7-common.xml b/dev-java/skinlf/files/skinlf-6.7-common.xml
new file mode 100644
index 000000000000..c2803acc5bab
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-6.7-common.xml
@@ -0,0 +1,171 @@
+<!--
+ Common Target which could be reused by other projects later.
+-->
+
+<!-- COMMON PROPERTIES -->
+
+ <property name="debug" value="true"/>
+ <property name="optimize" value="false"/>
+
+ <!-- Java Related -->
+ <property name="java.src.dir" value="src"/>
+ <property name="javac.compiler" value="modern"/>
+
+ <!-- Destination Directory for the build -->
+ <property name="build.dir" value="build"/>
+ <property name="build.classes" value="${build.dir}/classes"/>
+ <property name="build.src" value="${build.dir}/src"/>
+ <property name="build.dist.dir" value="${project}-${version}"/>
+ <property name="build.dist.src" value="${build.dist.dir}/src"/>
+ <property name="build.dist.lib" value="${build.dist.dir}/lib"/>
+ <property name="build.dist.bin" value="${build.dist.dir}/bin"/>
+ <property name="build.www.dir" value="${build.dir}/www"/>
+
+<!-- COMMON TARGETS -->
+
+ <target name="init.properties">
+ <tstamp>
+ <format property="build.time" pattern="MM/dd/yyyy hh:mm aa" locale="en"/>
+ <format property="build.version" pattern="yyyyMMdd" locale="en"/>
+ </tstamp>
+ <filter token="VERSION" value="${version}"/>
+ <filter token="PROJECT.FULLNAME" value="${project.fullname}"/>
+ <filter token="DATE" value="${build.time}"/>
+ <filter token="YEAR" value="${year}"/>
+ </target>
+
+ <target name="init.directories">
+ <mkdir dir="${build.dir}"/>
+ <mkdir dir="${build.classes}"/>
+ <mkdir dir="${build.dist.dir}"/>
+ <mkdir dir="${build.dist.src}"/>
+ <mkdir dir="${build.dist.lib}"/>
+ <mkdir dir="${build.dist.bin}"/>
+ </target>
+
+ <target name="init" depends="init.properties,init.directories">
+ </target>
+
+ <target name="clean">
+ <delete dir="${build.dir}"/>
+ <delete dir="${build.dist.dir}"/>
+ </target>
+
+ <target name="fixcrlf">
+ <fixcrlf srcdir="${basedir}" eol="cr">
+ <include name="AUTHORS,LICENSE*,README,THANKS" />
+ <include name="**/*.java" />
+ </fixcrlf>
+ </target>
+
+<!-- Java Related Targets -->
+
+ <target name="compile.java" depends="init">
+ <depend srcdir="${java.src.dir}"
+ destdir="${build.classes}"
+ cache="${build.dir}/dependcache"
+ closure="yes"/>
+
+ <copy todir="${build.src}" filtering="yes">
+ <fileset dir="${java.src.dir}">
+ <include name="**/*.java"/>
+ </fileset>
+ </copy>
+ <javac srcdir="${build.src}"
+ destdir="${build.classes}"
+ classpathref="classpath"
+ compiler="${javac.compiler}"
+ includeAntRuntime="false"
+ includeJavaRuntime="false"
+ debug="${debug}"
+ optimize="${optimize}"
+ target="1.3" source="1.3">
+ </javac>
+ </target>
+
+<!-- Distribution Target -->
+
+ <target name="dist" depends="jar,dist.pre">
+ <!-- project.jar -->
+ <copy todir="${build.dist.lib}"
+ file="${build.dir}/${project}.jar"
+ preservelastmodified="yes"/>
+ <!-- source code -->
+ <copy todir="${build.dist.src}"
+ preservelastmodified="yes">
+ <fileset dir="${build.src}" includes="**/*.java"/>
+ <fileset dir="${java.src.dir}" includes="**/*.properties"/>
+ </copy>
+ <!-- regular files -->
+ <copy todir="${build.dist.dir}"
+ filtering="yes"
+ preservelastmodified="yes">
+ <fileset dir="${basedir}">
+ <include name="AUTHORS"/>
+ <include name="INSTALL"/>
+ <include name="README"/>
+ <include name="THANKS"/>
+ <include name="LICENSE"/>
+ <include name="LICENSE_*"/>
+ </fileset>
+ </copy>
+ <xslt in="xdocs/CHANGES.xml"
+ out="${build.dist.dir}/CHANGES"
+ style="xdocs/xsl/text.xsl"/>
+ <!-- zip file -->
+ <zip destfile="${project}-${version}-${build.version}.zip">
+ <zipfileset dir="${build.dist.dir}"
+ prefix="${project}-${version}" />
+ </zip>
+ </target>
+
+<!-- Source code formatting -->
+
+ <target name="jalopy" depends="init">
+ </target>
+
+<!-- Project Web Documentation -->
+
+ <target name="www" depends="init">
+ <mkdir dir="${build.www.dir}"/>
+ <xslt in="xdocs/www.xml"
+ out="${build.www.dir}/empty.html"
+ style="xdocs/xsl/tohtml.xsl">
+ <param name="output.dir" expression="${build.www.dir}"/>
+ <param name="timestamp" expression="${build.time}"/>
+ </xslt>
+ <copy todir="${build.www.dir}">
+ <fileset dir="xdocs">
+ <include name="images/**"/>
+ <include name="**.java"/>
+ </fileset>
+ </copy>
+ <mkdir dir="${build.www.dir}/javadoc"/>
+ <javadoc sourcepath="${java.src.dir}"
+ classpath="${classpath}"
+ destdir="${build.www.dir}/javadoc"
+ packagenames="${javadoc.packagenames}"
+ private="false" protected="true"
+ windowtitle="${project.fullname} ${version} API"
+ doctitle="${project.fullname} ${version}"
+ version="false" author="false" use="false"
+ stylesheetfile="xdocs/javadoc.css"
+ splitindex="true"
+ bottom="Copyright &#169; ${year} L2FProd.com. All Rights Reserved."/>
+ <delete file="${build.www.dir}/empty.html"/>
+ </target>
+
+ <target name="www.sync" depends="init">
+ <ftp server="${build.www.server}"
+ userid="${build.www.userid}"
+ password="${build.www.password}"
+ remotedir="${build.www.remotedir}"
+ action="put"
+ verbose="yes"
+ depends="yes">
+ <fileset dir="${build.www.dir}">
+ <include name="**/**"/>
+ </fileset>
+ </ftp>
+ </target>
+
diff --git a/dev-java/skinlf/files/skinlf-6.7-image-utils-without-jimi.patch b/dev-java/skinlf/files/skinlf-6.7-image-utils-without-jimi.patch
new file mode 100644
index 000000000000..3e797bf08d86
--- /dev/null
+++ b/dev-java/skinlf/files/skinlf-6.7-image-utils-without-jimi.patch
@@ -0,0 +1,77 @@
+diff -ru skinlf-1.2.12-orig/src/com/l2fprod/tools/ImageUtils.java skinlf-1.2.12/src/com/l2fprod/tools/ImageUtils.java
+--- src/com/l2fprod/tools/ImageUtils.java 2006-01-24 20:09:36.000000000 +0100
++++ src/com/l2fprod/tools/ImageUtils.java 2006-01-24 20:19:19.000000000 +0100
+@@ -6,15 +6,12 @@
+
+ import javax.swing.ImageIcon;
+
+-import com.ibm.imageconversion.*;
+-import com.sun.jimi.core.*;
++import javax.imageio.*;
+
+ public class ImageUtils {
+
+ public static Component bitmapCreator = new javax.swing.JLabel();
+
+- static BMPDecoder decoder = new BMPDecoder();
+- static BMPEncoder encoder = new BMPEncoder();
+
+ public static Image loadPng(String pathToImage) throws Exception {
+ ImageIcon icon = new ImageIcon(new File(pathToImage).toURL());
+@@ -22,29 +19,33 @@
+ }
+
+ public static void savePng(Image image, String pathToImage) throws Exception {
+- Jimi.putImage(image, pathToImage);
++ ImageIO.write((RenderedImage)image, "png", new File(pathToImage));
+ }
+
++ private static String getFileFmt(String pathToImage) throws Exception {
++ String fmt;
++ if (pathToImage.toLowerCase().endsWith(".png")) {
++ return "png";
++ }
++ if (pathToImage.toLowerCase().endsWith(".gif")) {
++ return "gif";
++ }
++ if (pathToImage.toLowerCase().endsWith(".bmp")) {
++ return "bmp";
++ }
++ return "";
++ }
++
+ public static void createPicture(String pathToImage, int index, int maxParts,
+ String filename, boolean horizontal) {
+ try {
+ System.out.println("working with " + pathToImage);
+ Image image = null;
+-
+- if (pathToImage.toLowerCase().endsWith(".png") ||
+- pathToImage.toLowerCase().endsWith(".gif")) {
+- image = loadPng(pathToImage);
+- } else if (pathToImage.toLowerCase().endsWith(".bmp")) {
+- decoder.setInputFilename(pathToImage);
+- decoder.triggerAction();
+- image = decoder.getResult();
+- } else {
+- throw new Error("do not know how to load " + pathToImage);
+- }
++ image = Toolkit.getDefaultToolkit().getImage(pathToImage);
+
+ // if only one image, dump it as it
+- if (index == 0 && maxParts == 1) {
+- Jimi.putImage(image, filename);
++ if (index == 0 && maxParts == 1) {
++ ImageIO.write((RenderedImage)image, getFileFmt(pathToImage), new File(pathToImage));
+ } else {
+ if (horizontal) {
+ int partHeight = image.getHeight(bitmapCreator) / maxParts;
+@@ -55,7 +56,7 @@
+ image = grab(image, partWidth * index, 0,
+ partWidth, image.getHeight(bitmapCreator));
+ }
+- Jimi.putImage(image, filename);
++ ImageIO.write((RenderedImage)image, getFileFmt(pathToImage), new File(pathToImage));
+ }
+ } catch (Exception e) {
+ System.out.println("error while working with " + pathToImage);
diff --git a/dev-java/skinlf/metadata.xml b/dev-java/skinlf/metadata.xml
new file mode 100644
index 000000000000..556630dcc7a3
--- /dev/null
+++ b/dev-java/skinlf/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>java</herd>
+<maintainer>
+<email>zzam@gentoo.org</email>
+<name>Matthias Schwarzott</name>
+</maintainer>
+<longdescription lang="en">
+</longdescription>
+</pkgmetadata>
+
diff --git a/dev-java/skinlf/skinlf-6.7-r1.ebuild b/dev-java/skinlf/skinlf-6.7-r1.ebuild
new file mode 100644
index 000000000000..d745774aa030
--- /dev/null
+++ b/dev-java/skinlf/skinlf-6.7-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+JAVA_PKG_IUSE="examples source"
+WANT_ANT_TASKS="ant-nodeps"
+
+inherit eutils java-pkg-2 java-ant-2
+
+MY_P="${P}-20060722"
+
+DESCRIPTION="Skin Look and Feel - Skinning Engine for the Swing toolkit"
+HOMEPAGE="http://${PN}.l2fprod.com/"
+SRC_URI="https://${PN}.dev.java.net/files/documents/66/37801/${MY_P}.zip"
+
+LICENSE="Apache-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+CDEPEND="dev-java/laf-plugin:0
+ dev-java/xalan:0"
+
+RDEPEND=">=virtual/jre-1.4
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.4
+ app-arch/unzip:0
+ ${CDEPEND}"
+
+java_prepare() {
+ epatch "${FILESDIR}/${P}-image-utils-without-jimi.patch"
+
+ cp "${FILESDIR}/${P}-build.xml" build.xml || die
+ cp "${FILESDIR}/${P}-common.xml" common.xml || die
+
+ cd lib || die
+
+ # assert_built_jar_equals is your friend, upstream your enemy
+ unzip ${PN}.jar '*.gif' '*.template' -d ../src || die
+ rm -v *.jar || die
+
+ java-pkg_jar-from xalan,laf-plugin
+}
+
+src_install() {
+ java-pkg_dojar build/${PN}.jar
+
+ # laf-plugin.jar is referenced in manifest's Class-Path
+ # doesn't work without it due to class loader trickery
+ # upstream solved this by absorbing laf-plugin in own jar...
+ java-pkg_dojar lib/laf-plugin.jar
+
+ use examples && java-pkg_doexamples src/examples
+ use source && java-pkg_dosrc src/com src/*.java
+
+ dodoc CHANGES README
+}