- Welcome to the iDempiere (OSGi+ADempiere) 2.1 Page!
+ Welcome to the iDempiere (OSGi+ADempiere) 3.0 Page!
diff --git a/org.adempiere.server/src/main/home/org/bmlaurus/home/Prop.java b/org.adempiere.server/src/main/home/org/bmlaurus/home/Prop.java
index a3d51e99fc..78be9f0fed 100644
--- a/org.adempiere.server/src/main/home/org/bmlaurus/home/Prop.java
+++ b/org.adempiere.server/src/main/home/org/bmlaurus/home/Prop.java
@@ -105,7 +105,7 @@ public final class Prop implements Serializable {
public static final String RSS_REFRESH = "RssRefreshMessage";
/**Defaults*/
- private static final String CREDITS = "Welcome to the iDempiere (OSGi+ADempiere) 1.0b Page!";
+ private static final String CREDITS = "Welcome to the iDempiere (OSGi+ADempiere) 3.0 Page!";
private static String LOGO_URL = null;
diff --git a/org.adempiere.server/src/main/home/org/bmlaurus/home/home.properties b/org.adempiere.server/src/main/home/org/bmlaurus/home/home.properties
index 3712db585c..212a43f8d5 100644
--- a/org.adempiere.server/src/main/home/org/bmlaurus/home/home.properties
+++ b/org.adempiere.server/src/main/home/org/bmlaurus/home/home.properties
@@ -52,7 +52,7 @@ CustomImagePath = NONE
ClientName = iDempiere Server
#Custom Credits & Copyright tail
-Credits = Welcome to the iDempiere (OSGi+ADempiere) 2.1 Page!
+Credits = Welcome to the iDempiere (OSGi+ADempiere) 3.0 Page!
Copyriright = || by Company
#Custom RSS (rss1 to rss5)
@@ -61,4 +61,4 @@ RssRefreshMessage = Refresh
rss1Name = iDempiere's Blog
rss1 = https://groups.google.com/group/idempiere/feed/rss_v2_0_msgs.xml
rss2Name = 2 nd Blog
-rss2 = https://groups.google.com/group/idempiere-es/feed/rss_v2_0_msgs.xml
+rss2 = https://groups.google.com/group/idempiere-es/feed/rss_v2_0_msgs.xml
\ No newline at end of file
diff --git a/org.adempiere.target.platform-feature/feature.xml b/org.adempiere.target.platform-feature/feature.xml
index d224b77eac..793bed9786 100644
--- a/org.adempiere.target.platform-feature/feature.xml
+++ b/org.adempiere.target.platform-feature/feature.xml
@@ -2,7 +2,7 @@
@@ -19,25 +19,33 @@
+ version="1.3.0.v20140909-1633"/>
+ version="1.2.100.v20140606-1602"/>
+ version="3.0.0.qualifier"/>
+
+
+
+
+ version="1.9.2.v201404171502"/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.RSA b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.RSA
deleted file mode 100644
index 47fe7785f9..0000000000
Binary files a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.RSA and /dev/null differ
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.SF b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.SF
deleted file mode 100644
index 34220478da..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/ECLIPSEF.SF
+++ /dev/null
@@ -1,179 +0,0 @@
-Signature-Version: 1.0
-SHA1-Digest-Manifest: DnymqoTvSz4gbC12HMrSKUQk34w=
-Created-By: 1.6.0 (IBM Corporation)
-SHA1-Digest-Manifest-Main-Attributes: T473SZ5WWmQktg3oaHggnJO/FTM=
-
-Name: lib/ant-apache-bcel.jar
-SHA1-Digest: LOl+pgdc9a4HwZywWL7CEqCEvZs=
-
-Name: etc/mmetrics-frames.xsl
-SHA1-Digest: APiAPtADgoYGSwEquxQdQx5NN0A=
-
-Name: bin/ant.bat
-SHA1-Digest: VRSA9YOPmicxeIZD8LdYkqdUmEA=
-
-Name: etc/tagdiff.xsl
-SHA1-Digest: oQK6F+rUwsdxfJl58vbKAmtTs3Y=
-
-Name: lib/ant.jar
-SHA1-Digest: lQ3OziQI4mYf42vhZl5qK05euHQ=
-
-Name: lib/ant-apache-oro.jar
-SHA1-Digest: 08O0J8DpA2CUYHKRuRY8E6d2FS0=
-
-Name: lib/ant-jsch.jar
-SHA1-Digest: 9REV6G1dh3UOS8ueh6rJVnXaBBE=
-
-Name: about_files/LICENSE.dom.html
-SHA1-Digest: xK0He1PkoQXdHC48ROEqZRNXTL4=
-
-Name: etc/coverage-frames.xsl
-SHA1-Digest: Lk7Vo06ABrH7brbJkP1hKRxLkMg=
-
-Name: lib/ant-jdepend.jar
-SHA1-Digest: 0jLeaOQiRnL1dq7dYpmBw3NIEPk=
-
-Name: about_files/asl-v20.txt
-SHA1-Digest: pJO0L/tUizs1vz2W9gV2VmGJsDs=
-
-Name: lib/ant-nodeps.jar
-SHA1-Digest: b3zl9yIdDVX5up8caMNncYIhOZk=
-
-Name: META-INF/eclipse.inf
-SHA1-Digest: Z+e4UrhAmTCBR1UpP/RqMf9OX00=
-
-Name: lib/ant-apache-regexp.jar
-SHA1-Digest: bCJf89W6L5gZfecnoaC3GY5i9j0=
-
-Name: bin/runant.pl
-SHA1-Digest: 4EKNYCEcyO/SMqxm79fnts8/Q1c=
-
-Name: lib/ant-weblogic.jar
-SHA1-Digest: 1zEByTGSxJzTfSdx+joviPFLPgI=
-
-Name: bin/envset.cmd
-SHA1-Digest: anGgepI9TTUvD6W73h+kGQrc2d0=
-
-Name: etc/checkstyle/checkstyle-text.xsl
-SHA1-Digest: Jzub6NSrWxS9hYda+Wy/SP49SeI=
-
-Name: lib/ant-junit.jar
-SHA1-Digest: Asegl5TsYIaKAuGWD3RQGmYG9iw=
-
-Name: bin/ant.cmd
-SHA1-Digest: fKm5e7CiWr2UH61jbx6Yol3cQZo=
-
-Name: etc/log.xsl
-SHA1-Digest: 0HD61tw+M8q33hpPVPkjJJe4SDo=
-
-Name: bin/antRun
-SHA1-Digest: 3xz5zLVIT2QJnPskzZCOuX0LVnw=
-
-Name: bin/runant.py
-SHA1-Digest: uMviIJaN6y/k6xUbjXhmUd6TN8E=
-
-Name: lib/ant-commons-logging.jar
-SHA1-Digest: gPBkcASbXXb7sM6WCSbP3OnU0qw=
-
-Name: lib/ant-swing.jar
-SHA1-Digest: KeZdzozW8mPvLnnzlpJbnLFHC/k=
-
-Name: etc/jdepend-frames.xsl
-SHA1-Digest: OEsPHq3PIr185ocUtm81ULkmobs=
-
-Name: etc/checkstyle/checkstyle-xdoc.xsl
-SHA1-Digest: mfVMgdE+9JoC0hKc0Vc5f7pbe/c=
-
-Name: etc/changelog.xsl
-SHA1-Digest: 9ZFS8fHSvz42GLs2NDnqzLFo5G8=
-
-Name: lib/ant-launcher.jar
-SHA1-Digest: T5al3RPPs+cl2svqvzwRQyPua1M=
-
-Name: etc/jdepend.xsl
-SHA1-Digest: M6boZHWa9+JeDhCjXtq5Z9Y61dY=
-
-Name: bin/runrc.cmd
-SHA1-Digest: aq6+dBb+jdiXyrvDNmLIOzj21N8=
-
-Name: lib/ant-jmf.jar
-SHA1-Digest: rEt5vCSeiJhrDXhToAlqBYJUlpY=
-
-Name: lib/ant-starteam.jar
-SHA1-Digest: CC7k+9amtUmgE+nMSJswFn0gmdc=
-
-Name: lib/ant-netrexx.jar
-SHA1-Digest: 4MHr/zw5Cad5RNbITo3KEhTVU/g=
-
-Name: plugin.properties
-SHA1-Digest: g7K94ZyjaSU4QSVkjoTpYtl1vqE=
-
-Name: lib/ant-jai.jar
-SHA1-Digest: Hgz5UmlpuD4hOHTE+BQc7wzmHz0=
-
-Name: lib/ant-trax.jar
-SHA1-Digest: w6uurfjcZy7fOSYUPT2jG8svYVo=
-
-Name: bin/antRun.bat
-SHA1-Digest: KX8SW+sZ8gtQYr3boWRpl2DkWrE=
-
-Name: lib/ant-apache-bsf.jar
-SHA1-Digest: usSlJG0vxeeqtxI/5lH/UPeH2fg=
-
-Name: about_files/LICENSE.sax.txt
-SHA1-Digest: CnKqzCUI0E0NUSlVIAfUd8gctxU=
-
-Name: lib/ant-stylebook.jar
-SHA1-Digest: FwmSqxPzrBPJXJ0X4oKHndncTnY=
-
-Name: lib/ant-apache-log4j.jar
-SHA1-Digest: zcg372So4PVCkltPKzEiAFN3rA4=
-
-Name: bin/ant
-SHA1-Digest: bnS5vQF5wYnqXs8zr+3LORKIA0U=
-
-Name: etc/checkstyle/checkstyle-frames.xsl
-SHA1-Digest: cQKamOMX7Att9wW45aAohAWp3K0=
-
-Name: bin/complete-ant-cmd.pl
-SHA1-Digest: wXOPsOb8rPKKwt6rAb3XoXCwFgQ=
-
-Name: about_files/NOTICE
-SHA1-Digest: g5R8FDyNNir6o/tFVnDNSlcP+z0=
-
-Name: lib/ant-apache-resolver.jar
-SHA1-Digest: NNj7gb1Enc2M8v/lMP9D4XO+8W0=
-
-Name: etc/junit-frames.xsl
-SHA1-Digest: 2hTCiaPp95X9ZjX8ZDwjvqwfT6U=
-
-Name: etc/junit-noframes.xsl
-SHA1-Digest: M4u7091ckN+zoCaRvjal1SDwJQE=
-
-Name: lib/ant-antlr.jar
-SHA1-Digest: pYDgw2hfdxjUG5938M9pyip9zoA=
-
-Name: about.html
-SHA1-Digest: tujWEJAt+/IKSC26IMuUh48ercA=
-
-Name: etc/maudit-frames.xsl
-SHA1-Digest: U8xxI3AoPSoVepSv0ZbfrARsTZY=
-
-Name: etc/junit-frames-xalan1.xsl
-SHA1-Digest: Bvmst1NiMllcc+sricG/3Eyszc0=
-
-Name: lib/ant-commons-net.jar
-SHA1-Digest: 054oC0sq2Zt1GCWm8zv3DATb8nQ=
-
-Name: lib/ant-javamail.jar
-SHA1-Digest: eJJcJGmsmr4JB5KfiZJRZcv6xLs=
-
-Name: bin/lcp.bat
-SHA1-Digest: EA5m2+HfGFLhb6ForQdjnlvl3cU=
-
-Name: bin/antenv.cmd
-SHA1-Digest: as5/uc6NFrw5Zqzjc5vZEWg6MsM=
-
-Name: bin/antRun.pl
-SHA1-Digest: Cw3hkFZ/7NbP7kPUGL/WM1n8EKk=
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/MANIFEST.MF b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/MANIFEST.MF
deleted file mode 100644
index 56d762ba7c..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,234 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ClassPath: lib/ant.jar,lib/ant-antlr.jar,lib/ant-apache-bcel.ja
- r,lib/ant-apache-bsf.jar,lib/ant-apache-log4j.jar,lib/ant-apache-oro.
- jar,lib/ant-apache-regexp.jar,lib/ant-apache-resolver.jar,lib/ant-com
- mons-logging.jar,lib/ant-commons-net.jar,lib/ant-jai.jar,lib/ant-java
- mail.jar,lib/ant-jdepend.jar,lib/ant-jmf.jar,lib/ant-jsch.jar,lib/ant
- -junit.jar,lib/ant-launcher.jar,lib/ant-netrexx.jar,lib/ant-nodeps.ja
- r,lib/ant-starteam.jar,lib/ant-stylebook.jar,lib/ant-swing.jar,lib/an
- t-trax.jar,lib/ant-weblogic.jar
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.apache.ant
-Require-Bundle: org.eclipse.osgi
-Export-Package: images,org.apache.tools.ant,org.apache.tools.ant.dispa
- tch,org.apache.tools.ant.filters,org.apache.tools.ant.filters.util,or
- g.apache.tools.ant.helper,org.apache.tools.ant.input,org.apache.tools
- .ant.launch,org.apache.tools.ant.listener,org.apache.tools.ant.loader
- ,org.apache.tools.ant.taskdefs,org.apache.tools.ant.taskdefs.compiler
- s,org.apache.tools.ant.taskdefs.condition,org.apache.tools.ant.taskde
- fs.cvslib,org.apache.tools.ant.taskdefs.email,org.apache.tools.ant.ta
- skdefs.optional,org.apache.tools.ant.taskdefs.optional.ccm,org.apache
- .tools.ant.taskdefs.optional.clearcase,org.apache.tools.ant.taskdefs.
- optional.depend,org.apache.tools.ant.taskdefs.optional.depend.constan
- tpool,org.apache.tools.ant.taskdefs.optional.dotnet,org.apache.tools.
- ant.taskdefs.optional.ejb,org.apache.tools.ant.taskdefs.optional.exte
- nsion,org.apache.tools.ant.taskdefs.optional.extension.resolvers,org.
- apache.tools.ant.taskdefs.optional.i18n,org.apache.tools.ant.taskdefs
- .optional.image,org.apache.tools.ant.taskdefs.optional.j2ee,org.apach
- e.tools.ant.taskdefs.optional.javacc,org.apache.tools.ant.taskdefs.op
- tional.javah,org.apache.tools.ant.taskdefs.optional.jdepend,org.apach
- e.tools.ant.taskdefs.optional.jlink,org.apache.tools.ant.taskdefs.opt
- ional.jsp,org.apache.tools.ant.taskdefs.optional.jsp.compilers,org.ap
- ache.tools.ant.taskdefs.optional.junit,org.apache.tools.ant.taskdefs.
- optional.junit.xsl,org.apache.tools.ant.taskdefs.optional.native2asci
- i,org.apache.tools.ant.taskdefs.optional.net,org.apache.tools.ant.tas
- kdefs.optional.perforce,org.apache.tools.ant.taskdefs.optional.pvcs,o
- rg.apache.tools.ant.taskdefs.optional.scm,org.apache.tools.ant.taskde
- fs.optional.script,org.apache.tools.ant.taskdefs.optional.sos,org.apa
- che.tools.ant.taskdefs.optional.sound,org.apache.tools.ant.taskdefs.o
- ptional.splash,org.apache.tools.ant.taskdefs.optional.ssh,org.apache.
- tools.ant.taskdefs.optional.starteam,org.apache.tools.ant.taskdefs.op
- tional.unix,org.apache.tools.ant.taskdefs.optional.vss,org.apache.too
- ls.ant.taskdefs.optional.windows,org.apache.tools.ant.taskdefs.rmic,o
- rg.apache.tools.ant.types,org.apache.tools.ant.types.conditions,org.a
- pache.tools.ant.types.mappers,org.apache.tools.ant.types.optional,org
- .apache.tools.ant.types.optional.depend,org.apache.tools.ant.types.op
- tional.image,org.apache.tools.ant.types.resolver,org.apache.tools.ant
- .types.resources,org.apache.tools.ant.types.resources.comparators,org
- .apache.tools.ant.types.resources.selectors,org.apache.tools.ant.type
- s.selectors,org.apache.tools.ant.types.selectors.modifiedselector,org
- .apache.tools.ant.types.spi,org.apache.tools.ant.util,org.apache.tool
- s.ant.util.depend,org.apache.tools.ant.util.depend.bcel,org.apache.to
- ols.ant.util.facade,org.apache.tools.ant.util.java15,org.apache.tools
- .ant.util.optional,org.apache.tools.ant.util.regexp,org.apache.tools.
- bzip2,org.apache.tools.mail,org.apache.tools.tar,org.apache.tools.zip
-Bundle-Version: 1.7.1.v20100518-1145
-Bundle-ManifestVersion: 2
-
-Name: lib/ant-apache-bcel.jar
-SHA1-Digest: mL7ypH+XtKGLayV/7EGF6kwoYwI=
-
-Name: etc/mmetrics-frames.xsl
-SHA1-Digest: cQnziGYZC2FrO0zwFE92P1bP2v8=
-
-Name: bin/ant.bat
-SHA1-Digest: Rc2etgn1RATkrEL3NCa3Fs75Ov8=
-
-Name: etc/tagdiff.xsl
-SHA1-Digest: ddaegkBkww5CoIlRpSR8RDUI1bQ=
-
-Name: lib/ant.jar
-SHA1-Digest: QmGGhQi4COYG3u+KHGHVjvZA9hM=
-
-Name: lib/ant-apache-oro.jar
-SHA1-Digest: 3mVzpEG3xmdgVi2+lwuMPKHKZfM=
-
-Name: lib/ant-jsch.jar
-SHA1-Digest: FmNWUeOpmyXmyH5K7WvBCfyprsE=
-
-Name: about_files/LICENSE.dom.html
-SHA1-Digest: 9F8cZaCgriCte0T6Mt5hAFumadk=
-
-Name: etc/coverage-frames.xsl
-SHA1-Digest: 5SE/NhPWEbqzGDGL58dwEbkhwRs=
-
-Name: lib/ant-jdepend.jar
-SHA1-Digest: juZ5ScBk7RdbT9kx1nq/TB1qix8=
-
-Name: about_files/asl-v20.txt
-SHA1-Digest: K4uBUimqimHkg/tLoFiLi2xJGJA=
-
-Name: lib/ant-nodeps.jar
-SHA1-Digest: stuzByOvnFqXXfMR1DOHMbURR4Y=
-
-Name: META-INF/eclipse.inf
-SHA1-Digest: u+F8j/GAE8tzrDry9+wT3Cvg81Y=
-
-Name: lib/ant-apache-regexp.jar
-SHA1-Digest: bCOUGaWl76Yhuy0KPpq3Cl/w55g=
-
-Name: bin/runant.pl
-SHA1-Digest: tynYaGh8+BtWDsZ6PljZdoi+egU=
-
-Name: lib/ant-weblogic.jar
-SHA1-Digest: q/YjU1rB8u/dxjXcENxmEQ3pgXQ=
-
-Name: etc/checkstyle/checkstyle-text.xsl
-SHA1-Digest: CqSzAXEeeV20DtFpeujwjL9FEW8=
-
-Name: bin/envset.cmd
-SHA1-Digest: EJ+ljL5sbUQ8mWVn8V49XPBuAz0=
-
-Name: bin/ant.cmd
-SHA1-Digest: 4jPJI7nJO+v3oPpbi5GbrT7x9qk=
-
-Name: lib/ant-junit.jar
-SHA1-Digest: VPSxi0uuALZXXpJF4QFhkpUOpUI=
-
-Name: bin/antRun
-SHA1-Digest: S63QT5F5EI1BCpIj59nosT3lVTw=
-
-Name: etc/log.xsl
-SHA1-Digest: juv2H0VplMm4ri1rzgdOW0yCroc=
-
-Name: bin/runant.py
-SHA1-Digest: Kg3iFzRnZW6PVIFmbj7Eyuo72cM=
-
-Name: lib/ant-commons-logging.jar
-SHA1-Digest: NjlZah2crXobTrvv4OGCIMjO+8A=
-
-Name: lib/ant-swing.jar
-SHA1-Digest: XynrDWbhmRUIf9PM4gVJqgCaA5s=
-
-Name: etc/jdepend-frames.xsl
-SHA1-Digest: U2Bb6aMxgbEYqXkCm2sujeLP7Zo=
-
-Name: etc/checkstyle/checkstyle-xdoc.xsl
-SHA1-Digest: yL3TqCA4pc0daZXtXwAiCN6xHxI=
-
-Name: etc/changelog.xsl
-SHA1-Digest: 2EZZ+jSTt1TTlBYPN4vGUAX7cTQ=
-
-Name: lib/ant-launcher.jar
-SHA1-Digest: GHtlGif/wHyc2Emb1oDygUu5sOU=
-
-Name: etc/jdepend.xsl
-SHA1-Digest: 0rf14aLzhLsun24uUsXVVvkHM6I=
-
-Name: bin/runrc.cmd
-SHA1-Digest: eNo+cuYQicndcc56FVkRScD5w30=
-
-Name: lib/ant-jmf.jar
-SHA1-Digest: LkMJEvWekiNff2+40hzqUtHWv5Y=
-
-Name: lib/ant-starteam.jar
-SHA1-Digest: phxps48pSlCZmpwiyZY2cbk6yaw=
-
-Name: lib/ant-netrexx.jar
-SHA1-Digest: QWTo/YKGFWwaSuanXxbeyc3U2yQ=
-
-Name: plugin.properties
-SHA1-Digest: EM3JUl9D3jv9MhxxbdTWTUt6kbI=
-
-Name: lib/ant-jai.jar
-SHA1-Digest: EJ+iUjul2mZKti+TEgmuQ3kIh/o=
-
-Name: lib/ant-trax.jar
-SHA1-Digest: HZ8Fu0t4n4XH3pf7VeSW1i3ymAw=
-
-Name: bin/antRun.bat
-SHA1-Digest: zB9JbFFhlXTVgwaJlw61wNELj6k=
-
-Name: lib/ant-apache-bsf.jar
-SHA1-Digest: 3m9VogNJMXiCF1ZkaeMRPdtM9OA=
-
-Name: about_files/LICENSE.sax.txt
-SHA1-Digest: uLnQn2qwT77aJ6MThuLeWz1I5ek=
-
-Name: lib/ant-stylebook.jar
-SHA1-Digest: E+Uxq8GjVBkGmc4TZ3JQh4MZeRw=
-
-Name: lib/ant-apache-log4j.jar
-SHA1-Digest: 35KkJkHQuFhTpd0mbJemrVVJCQI=
-
-Name: bin/ant
-SHA1-Digest: jK7w10Hy+BIiSimUAhjgizdaBuY=
-
-Name: etc/checkstyle/checkstyle-frames.xsl
-SHA1-Digest: 5KYg/jQq+iuWKS5gF1qX37F+UX0=
-
-Name: bin/complete-ant-cmd.pl
-SHA1-Digest: F1mrSua1xk98goAA1YvtOoJNiuw=
-
-Name: about_files/NOTICE
-SHA1-Digest: v3XrGNGv2sQGqBe+ObJZnq9915g=
-
-Name: lib/ant-apache-resolver.jar
-SHA1-Digest: fzM5Jwsbw+H2XUPO5uxQGgO9mRA=
-
-Name: etc/junit-frames.xsl
-SHA1-Digest: XIcHcYoM8I5hzTkhdiy5iskupIM=
-
-Name: etc/junit-noframes.xsl
-SHA1-Digest: zmgmTYDnXS0QZvMd3wUarjPR7aE=
-
-Name: lib/ant-antlr.jar
-SHA1-Digest: Kagxm9lkBtXTXWMRKDWn52KZeTE=
-
-Name: about.html
-SHA1-Digest: cPPs9diR9VPNDzWrCs1FLNOdJEo=
-
-Name: etc/maudit-frames.xsl
-SHA1-Digest: 1oML7OYqWjV+hPKu/ItdzrAFGcA=
-
-Name: etc/junit-frames-xalan1.xsl
-SHA1-Digest: ME/2vW22HRXG87EwVJ9LFfkfyEI=
-
-Name: lib/ant-commons-net.jar
-SHA1-Digest: Rg+mKr8hSVibDLdQwjnhGg+oMuA=
-
-Name: lib/ant-javamail.jar
-SHA1-Digest: 2b0KzqoBPtuNEHHwW3KXqLGLby8=
-
-Name: bin/lcp.bat
-SHA1-Digest: eX7ICcBsanATsaEDkn5+oTA4QaQ=
-
-Name: bin/antenv.cmd
-SHA1-Digest: s2zvcJEs2E2x6ckfXZoGxx1OF1Y=
-
-Name: bin/antRun.pl
-SHA1-Digest: mynp1agPByxojQUKZqlVZkXZSHY=
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/eclipse.inf b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/eclipse.inf
deleted file mode 100644
index 68d6fa9b5f..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/META-INF/eclipse.inf
+++ /dev/null
@@ -1,4 +0,0 @@
-#Processed using Jarprocessor
-jarprocessor.exclude.children.sign = true
-pack200.args = -E4
-pack200.conditioned = true
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about.html b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about.html
deleted file mode 100644
index 08d57814a8..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about.html
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-About
-
-
-About This Content
-
-July 14, 2008
-License
-
-The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at http://www.eclipse.org/legal/epl-v10.html .
-For purposes of the EPL, "Program" will mean the Content.
-
-If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at http://www.eclipse.org .
-
-Third Party Content
-
-The Content includes items that have been sourced from third parties as set out below. If you
-did not receive this Content directly from the Eclipse Foundation, the following is provided
-for informational purposes only, and you should look to the Redistributor’s license for
-terms and conditions of use.
-
-Ant 1.7.1
-The plug-in includes software developed by The Apache Software Foundation as part of the Ant project.
-
-The Ant binary code in ant.jar and the scripts ant, ant.bat, ant.cmd, antenv.cmd, antRun, antRun.bat, antRun.pl, complete-ant-cmd.pl, envset.cmd, lcp.bat, runant.pl, runant.py and runrc.cmd are included with the plug-in with no modifications.
-The Ant source code is located in the zip files named ant-*src.zip.
-
-Your use of the Ant code and the scripts is subject to the terms and conditions of the Apache License, Version 2.0. A copy of the license is contained
-in the file asl-v20.txt and is also available at http://www.apache.org/licenses/LICENSE-2.0.html .
-
-
The names "Ant" and "Apache Software Foundation" must not be used to endorse or promote products derived from this
-software without prior written permission. For written permission, please contact apache@apache.org .
-
-The Apache attribution NOTICE file is included with the Content in accordance with 4d of the Apache License, Version 2.0.
-
-Ant includes the following software:
-
-
- DOM
- DOM is developed by the World Wide Web Consortium. Your use of DOM is subject to the terms and conditions of the license found in the
- file LICENSE.dom.html which is included with this plug-in and can also be found at
- http://www.w3.org/Consortium/Legal/copyright-software-19980720 .
-
- SAX
-
- SAX is developed by the SAX project (http://www.saxproject.org ). Your use of SAX is subject to the
- terms and conditions of the license found in the file LICENSE.sax.txt which is included with this plug-in.
-
-
-
\ No newline at end of file
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.dom.html b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.dom.html
deleted file mode 100644
index 97e7898475..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.dom.html
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-License
-
-
-
-This license came from:
-http://www.w3.org/Consortium/Legal/copyright-software-19980720
-
-
-W3C® SOFTWARE NOTICE AND LICENSE
-Copyright © 1994-2001 World Wide Web Consortium , (Massachusetts Institute of Technology ,
-Institut National de Recherche en Informatique et en Automatique , Keio University ). All Rights Reserved.
-http://www.w3.org/Consortium/Legal/
-
-
-This W3C work (including software, documents, or other related
-items) is being provided by the copyright holders under the
-following license. By obtaining, using and/or copying this work,
-you (the licensee) agree that you have read, understood, and will
-comply with the following terms and conditions:
-Permission to use, copy, modify, and distribute this software
-and its documentation, with or without modification, for any
-purpose and without fee or royalty is hereby granted, provided that
-you include the following on ALL copies of the software and
-documentation or portions thereof, including modifications, that
-you make:
-
-
-The full text of this NOTICE in a location viewable to users of
-the redistributed or derivative work.
-
-
-Any pre-existing intellectual property disclaimers, notices, or
-terms and conditions. If none exist, a short notice of the
-following form (hypertext is preferred, text is permitted) should
-be used within the body of any redistributed or derivative code:
-"Copyright © [$date-of-software] World Wide Web Consortium, (Massachusetts Institute of
-Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All Rights Reserved.
-http://www.w3.org/Consortium/Legal/"
-
-
-Notice of any changes or modifications to the W3C files,
-including the date changes were made. (We recommend you provide
-URIs to the location from which the code is derived.)
-
-
-THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND
-COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
-MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE
-USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD
-PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT,
-SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE
-SOFTWARE OR DOCUMENTATION.
-
-
-The name and trademarks of copyright holders may NOT be used in
-advertising or publicity pertaining to the software without
-specific, written prior permission. Title to copyright in this
-software and any associated documentation will at all times remain
-with copyright holders.
-
-
-____________________________________
-This formulation of W3C's notice and license became active on
-August 14 1998 so as to improve compatibility with GPL. This
-version ensures that W3C software licensing terms are no more
-restrictive than GPL and consequently W3C software may be
-distributed in GPL packages. See the older formulation for the
-policy prior to this date. Please see our Copyright FAQ for common
-questions about using materials from
-our site, including specific terms and conditions for packages like
-libwww, Amaya, and Jigsaw.
-Other questions about this notice can be
-directed to site-policy@w3.org.
-
-
-
\ No newline at end of file
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.sax.txt b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.sax.txt
deleted file mode 100644
index d46b3dce08..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/LICENSE.sax.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-This license came from: http://www.megginson.com/SAX/copying.html
- However please note future versions of SAX may be covered
- under http://saxproject.org/?selected=pd
-
-
-This page is now out of date -- see the new SAX site at
-http://www.saxproject.org/ for more up-to-date
-releases and other information. Please change your bookmarks.
-
-
-SAX2 is Free!
-
-I hereby abandon any property rights to SAX 2.0 (the Simple API for
-XML), and release all of the SAX 2.0 source code, compiled code, and
-documentation contained in this distribution into the Public Domain.
-SAX comes with NO WARRANTY or guarantee of fitness for any
-purpose.
-
-David Megginson, david@megginson.com
-2000-05-05
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/NOTICE b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/NOTICE
deleted file mode 100644
index 4c88cc6659..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/NOTICE
+++ /dev/null
@@ -1,26 +0,0 @@
- =========================================================================
- == NOTICE file corresponding to the section 4 d of ==
- == the Apache License, Version 2.0, ==
- == in this case for the Apache Ant distribution. ==
- =========================================================================
-
- Apache Ant
- Copyright 1999-2008 The Apache Software Foundation
-
- This product includes software developed by
- The Apache Software Foundation (http://www.apache.org/).
-
- This product includes also software developed by :
- - the W3C consortium (http://www.w3c.org) ,
- - the SAX project (http://www.saxproject.org)
-
- The task is based on code Copyright (c) 2002, Landmark
- Graphics Corp that has been kindly donated to the Apache Software
- Foundation.
-
- Portions of this software were originally based on the following:
- - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
- - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
- - voluntary contributions made by Paul Eng on behalf of the
- Apache Software Foundation that were originally developed at iClick, Inc.,
- software copyright (c) 1999.
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/asl-v20.txt b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/asl-v20.txt
deleted file mode 100644
index d645695673..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/about_files/asl-v20.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant
deleted file mode 100644
index 2e60839241..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant
+++ /dev/null
@@ -1,326 +0,0 @@
-#! /bin/sh
-
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Extract launch and ant arguments, (see details below).
-ant_exec_args=
-no_config=false
-use_jikes_default=false
-ant_exec_debug=false
-show_help=false
-for arg in "$@" ; do
- if [ "$arg" = "--noconfig" ] ; then
- no_config=true
- elif [ "$arg" = "--usejikes" ] ; then
- use_jikes_default=true
- elif [ "$arg" = "--execdebug" ] ; then
- ant_exec_debug=true
- elif [ my"$arg" = my"--h" -o my"$arg" = my"--help" ] ; then
- show_help=true
- ant_exec_args="$ant_exec_args -h"
- else
- if [ my"$arg" = my"-h" -o my"$arg" = my"-help" ] ; then
- show_help=true
- fi
- ant_exec_args="$ant_exec_args \"$arg\""
- fi
-done
-
-# Source/default ant configuration
-if $no_config ; then
- rpm_mode=false
- usejikes=$use_jikes_default
-else
- # load system-wide ant configuration (ONLY if ANT_HOME has NOT been set)
- if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ]; then
- if [ -f "/etc/ant.conf" ] ; then
- . /etc/ant.conf
- fi
- fi
-
- # load user ant configuration
- if [ -f "$HOME/.ant/ant.conf" ] ; then
- . $HOME/.ant/ant.conf
- fi
- if [ -f "$HOME/.antrc" ] ; then
- . "$HOME/.antrc"
- fi
-
- # provide default configuration values
- if [ -z "$rpm_mode" ] ; then
- rpm_mode=false
- fi
- if [ -z "$usejikes" ] ; then
- usejikes=$use_jikes_default
- fi
-fi
-
-# Setup Java environment in rpm mode
-if $rpm_mode ; then
- if [ -f /usr/share/java-utils/java-functions ] ; then
- . /usr/share/java-utils/java-functions
- set_jvm
- set_javacmd
- fi
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- Darwin*) darwin=true
- if [ -z "$JAVA_HOME" ] ; then
- JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
- fi
- ;;
-esac
-
-if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ] ; then
- ## resolve links - $0 may be a link to ant's home
- PRG="$0"
- progname=`basename "$0"`
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
- done
-
- ANT_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- ANT_HOME=`cd "$ANT_HOME" > /dev/null && pwd`
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$ANT_HOME" ] &&
- ANT_HOME=`cygpath --unix "$ANT_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-fi
-
-# set ANT_LIB location
-ANT_LIB="${ANT_HOME}/lib"
-
-if [ -z "$JAVACMD" ] ; then
- if [ -n "$JAVA_HOME" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- JAVACMD="$JAVA_HOME/jre/sh/java"
- elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
- JAVACMD="$JAVA_HOME/jre/bin/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD=`which java 2> /dev/null `
- if [ -z "$JAVACMD" ] ; then
- JAVACMD=java
- fi
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly."
- echo " We cannot execute $JAVACMD"
- exit 1
-fi
-
-# Build local classpath using just the launcher in non-rpm mode or
-# use the Jpackage helper in rpm mode with basic and default jars
-# specified in the ant.conf configuration. Because the launcher is
-# used, libraries linked in ANT_HOME/lib will also be included, but this
-# is discouraged as it is not java-version safe. A user should
-# request optional jars and their dependencies via the OPT_JAR_LIST
-# variable
-if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
- LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl xml-commons-apis)"
-
- # If no optional jars have been specified then build the default list
- if [ -z "$OPT_JAR_LIST" ] ; then
- for file in /etc/ant.d/*; do
- if [ -f "$file" ]; then
- case "$file" in
- *~) ;;
- *#*) ;;
- *.rpmsave) ;;
- *.rpmnew) ;;
- *)
- for dep in `cat "$file"`; do
- case "$OPT_JAR_LIST" in
- *"$dep"*) ;;
- *) OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
- esac
- done
- esac
- fi
- done
- fi
-
- # If the user requested to try to add some other jars to the classpath
- if [ -n "$OPT_JAR_LIST" ] ; then
- _OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)"
- if [ -n "$_OPTCLASSPATH" ] ; then
- LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH"
- fi
- fi
-
- # Explicitly add javac path to classpath, assume JAVA_HOME set
- # properly in rpm mode
- if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then
- LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar"
- fi
- if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
- LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip"
- fi
-
- # if CLASSPATH_OVERRIDE env var is set, LOCALCLASSPATH will be
- # user CLASSPATH first and ant-found jars after.
- # In that case, the user CLASSPATH will override ant-found jars
- #
- # if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour
- # with ant-found jars first and user CLASSPATH after
- if [ -n "$CLASSPATH" ] ; then
- # merge local and specified classpath
- if [ -z "$LOCALCLASSPATH" ] ; then
- LOCALCLASSPATH="$CLASSPATH"
- elif [ -n "$CLASSPATH_OVERRIDE" ] ; then
- LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH"
- else
- LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH"
- fi
-
- # remove class path from launcher -cp option
- CLASSPATH=""
- fi
-else
- # not using rpm_mode; use launcher to determine classpaths
- if [ -z "$LOCALCLASSPATH" ] ; then
- LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
- else
- LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
- fi
-fi
-
-if [ -n "$JAVA_HOME" ] ; then
- # OSX hack to make Ant work with jikes
- if $darwin ; then
- OSXHACK="${JAVA_HOME}/../Classes"
- if [ -d "${OSXHACK}" ] ; then
- for i in "${OSXHACK}"/*.jar
- do
- JIKESPATH="$JIKESPATH:$i"
- done
- fi
- fi
-fi
-
-# Allow Jikes support (off by default)
-if $usejikes; then
- ANT_OPTS="$ANT_OPTS -Dbuild.compiler=jikes"
-fi
-
-# For Cygwin, switch paths to appropriate format before running java
-# For PATHs convert to unix format first, then to windows format to ensure
-# both formats are supported. Probably this will fail on directories with ;
-# in the name in the path. Let's assume that paths containing ; are more
-# rare than windows style paths on cygwin.
-if $cygwin; then
- if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
- format=mixed
- else
- format=windows
- fi
- ANT_HOME=`cygpath --$format "$ANT_HOME"`
- ANT_LIB=`cygpath --$format "$ANT_LIB"`
- JAVA_HOME=`cygpath --$format "$JAVA_HOME"`
- LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"`
- LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"`
- if [ -n "$CLASSPATH" ] ; then
- CP_TEMP=`cygpath --path --unix "$CLASSPATH"`
- CLASSPATH=`cygpath --path --$format "$CP_TEMP"`
- fi
- CYGHOME=`cygpath --$format "$HOME"`
-fi
-
-# Show script help if requested
-if $show_help ; then
- echo $0 '[script options] [options] [target [target2 [target3] ..]]'
- echo 'Script Options:'
- echo ' --help, --h print this message and ant help'
- echo ' --noconfig suppress sourcing of /etc/ant.conf,'
- echo ' $HOME/.ant/ant.conf, and $HOME/.antrc'
- echo ' configuration files'
- echo ' --usejikes enable use of jikes by default, unless'
- echo ' set explicitly in configuration files'
- echo ' --execdebug print ant exec line generated by this'
- echo ' launch script'
- echo ' '
-fi
-# add a second backslash to variables terminated by a backslash under cygwin
-if $cygwin; then
- case "$ANT_HOME" in
- *\\ )
- ANT_HOME="$ANT_HOME\\"
- ;;
- esac
- case "$CYGHOME" in
- *\\ )
- CYGHOME="$CYGHOME\\"
- ;;
- esac
- case "$JIKESPATH" in
- *\\ )
- JIKESPATH="$JIKESPATH\\"
- ;;
- esac
- case "$LOCALCLASSPATH" in
- *\\ )
- LOCALCLASSPATH="$LOCALCLASSPATH\\"
- ;;
- esac
- case "$CLASSPATH" in
- *\\ )
- CLASSPATH="$CLASSPATH\\"
- ;;
- esac
-fi
-# Execute ant using eval/exec to preserve spaces in paths,
-# java options, and ant args
-ant_sys_opts=
-if [ -n "$CYGHOME" ]; then
- if [ -n "$JIKESPATH" ]; then
- ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\" -Dcygwin.user.home=\"$CYGHOME\""
- else
- ant_sys_opts="-Dcygwin.user.home=\"$CYGHOME\""
- fi
-else
- if [ -n "$JIKESPATH" ]; then
- ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\""
- fi
-fi
-ant_exec_command="exec \"$JAVACMD\" $ANT_OPTS -classpath \"$LOCALCLASSPATH\" -Dant.home=\"$ANT_HOME\" -Dant.library.dir=\"$ANT_LIB\" $ant_sys_opts org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"$CLASSPATH\" $ant_exec_args"
-if $ant_exec_debug ; then
- echo $ant_exec_command
-fi
-eval $ant_exec_command
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.bat b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.bat
deleted file mode 100644
index 6d57c81ea5..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.bat
+++ /dev/null
@@ -1,226 +0,0 @@
-@echo off
-
-REM Licensed to the Apache Software Foundation (ASF) under one or more
-REM contributor license agreements. See the NOTICE file distributed with
-REM this work for additional information regarding copyright ownership.
-REM The ASF licenses this file to You under the Apache License, Version 2.0
-REM (the "License"); you may not use this file except in compliance with
-REM the License. You may obtain a copy of the License at
-REM
-REM http://www.apache.org/licenses/LICENSE-2.0
-REM
-REM Unless required by applicable law or agreed to in writing, software
-REM distributed under the License is distributed on an "AS IS" BASIS,
-REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-REM See the License for the specific language governing permissions and
-REM limitations under the License.
-
-REM This is an inordinately troublesome piece of code, particularly because it
-REM tries to work on both Win9x and WinNT-based systems. If we could abandon '9x
-REM support, things would be much easier, but sadly, it is not yet time.
-REM Be cautious about editing this, and only add WinNT specific stuff in code that
-REM only runs on WinNT.
-
-if "%HOME%"=="" goto homeDrivePathPre
-if exist "%HOME%\antrc_pre.bat" call "%HOME%\antrc_pre.bat"
-
-:homeDrivePathPre
-if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePre
-if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePre
-if exist "%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat" call "%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat"
-
-:userProfilePre
-if "%USERPROFILE%"=="" goto alpha
-if "%USERPROFILE%"=="%HOME%" goto alpha
-if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto alpha
-if exist "%USERPROFILE%\antrc_pre.bat" call "%USERPROFILE%\antrc_pre.bat"
-
-:alpha
-
-if "%OS%"=="Windows_NT" @setlocal
-if "%OS%"=="WINNT" @setlocal
-
-if "%ANT_HOME%"=="" goto setDefaultAntHome
-
-:stripAntHome
-if not _%ANT_HOME:~-1%==_\ goto checkClasspath
-set ANT_HOME=%ANT_HOME:~0,-1%
-goto stripAntHome
-
-:setDefaultAntHome
-rem %~dp0 is expanded pathname of the current script under NT
-set ANT_HOME=%~dp0..
-
-:checkClasspath
-set _USE_CLASSPATH=yes
-rem CLASSPATH must not be used if it is equal to ""
-if "%CLASSPATH%"=="""" set _USE_CLASSPATH=no
-if "%CLASSPATH%"=="" set _USE_CLASSPATH=no
-
-rem Slurp the command line arguments. This loop allows for an unlimited number
-rem of arguments (up to the command line limit, anyway).
-set ANT_CMD_LINE_ARGS=%1
-if ""%1""=="""" goto doneStart
-shift
-:setupArgs
-if ""%1""=="""" goto doneStart
-if ""%1""==""-noclasspath"" goto clearclasspath
-set ANT_CMD_LINE_ARGS=%ANT_CMD_LINE_ARGS% %1
-shift
-goto setupArgs
-
-rem here is there is a -noclasspath in the options
-:clearclasspath
-set _USE_CLASSPATH=no
-shift
-goto setupArgs
-
-rem This label provides a place for the argument list loop to break out
-rem and for NT handling to skip to.
-
-:doneStart
-
-if _USE_CLASSPATH==no goto findAntHome
-
-:stripClasspath
-if not _%CLASSPATH:~-1%==_\ goto findAntHome
-set CLASSPATH=%CLASSPATH:~0,-1%
-goto stripClasspath
-
-:findAntHome
-rem find ANT_HOME if it does not exist due to either an invalid value passed
-rem by the user or the %0 problem on Windows 9x
-if exist "%ANT_HOME%\lib\ant.jar" goto checkJava
-
-rem check for ant in Program Files
-if not exist "%ProgramFiles%\ant" goto checkSystemDrive
-set ANT_HOME=%ProgramFiles%\ant
-goto checkJava
-
-:checkSystemDrive
-rem check for ant in root directory of system drive
-if not exist %SystemDrive%\ant\lib\ant.jar goto checkCDrive
-set ANT_HOME=%SystemDrive%\ant
-goto checkJava
-
-:checkCDrive
-rem check for ant in C:\ant for Win9X users
-if not exist C:\ant\lib\ant.jar goto noAntHome
-set ANT_HOME=C:\ant
-goto checkJava
-
-:noAntHome
-echo ANT_HOME is set incorrectly or ant could not be located. Please set ANT_HOME.
-goto end
-
-:checkJava
-set _JAVACMD=%JAVACMD%
-
-if "%JAVA_HOME%" == "" goto noJavaHome
-if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
-if "%_JAVACMD%" == "" set _JAVACMD=%JAVA_HOME%\bin\java.exe
-goto checkJikes
-
-:noJavaHome
-if "%_JAVACMD%" == "" set _JAVACMD=java.exe
-
-:checkJikes
-if not "%JIKESPATH%"=="" goto runAntWithJikes
-
-:runAnt
-if "%_USE_CLASSPATH%"=="no" goto runAntNoClasspath
-:runAntWithClasspath
-"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%" %ANT_CMD_LINE_ARGS%
-rem Check the error code of the Ant build
-if not "%OS%"=="Windows_NT" goto onError
-set ANT_ERROR=%ERRORLEVEL%
-goto end
-
-:runAntNoClasspath
-"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
-rem Check the error code of the Ant build
-if not "%OS%"=="Windows_NT" goto onError
-set ANT_ERROR=%ERRORLEVEL%
-goto end
-
-:runAntWithJikes
-
-if not _%JIKESPATH:~-1%==_\ goto checkJikesAndClasspath
-set JIKESPATH=%JIKESPATH:~0,-1%
-goto runAntWithJikes
-
-:checkJikesAndClasspath
-
-if "%_USE_CLASSPATH%"=="no" goto runAntWithJikesNoClasspath
-
-:runAntWithJikesAndClasspath
-"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%" %ANT_CMD_LINE_ARGS%
-rem Check the error code of the Ant build
-if not "%OS%"=="Windows_NT" goto onError
-set ANT_ERROR=%ERRORLEVEL%
-goto end
-
-:runAntWithJikesNoClasspath
-"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
-rem Check the error code of the Ant build
-if not "%OS%"=="Windows_NT" goto onError
-set ANT_ERROR=%ERRORLEVEL%
-goto end
-
-:onError
-rem Windows 9x way of checking the error code. It matches via brute force.
-for %%i in (1 10 100) do set err%%i=
-for %%i in (0 1 2) do if errorlevel %%i00 set err100=%%i
-if %err100%==2 goto onError200
-if %err100%==0 set err100=
-for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%%i0 set err10=%%i
-if "%err100%"=="" if %err10%==0 set err10=
-:onError1
-for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%err10%%%i set err1=%%i
-goto onErrorEnd
-:onError200
-for %%i in (0 1 2 3 4 5) do if errorlevel 2%%i0 set err10=%%i
-if err10==5 for %%i in (0 1 2 3 4 5) do if errorlevel 25%%i set err1=%%i
-if not err10==5 goto onError1
-:onErrorEnd
-set ANT_ERROR=%err100%%err10%%err1%
-for %%i in (1 10 100) do set err%%i=
-
-:end
-rem bug ID 32069: resetting an undefined env variable changes the errorlevel.
-if not "%_JAVACMD%"=="" set _JAVACMD=
-if not "%_ANT_CMD_LINE_ARGS%"=="" set ANT_CMD_LINE_ARGS=
-
-if "%ANT_ERROR%"=="0" goto mainEnd
-
-rem Set the return code if we are not in NT. We can only set
-rem a value of 1, but it's better than nothing.
-if not "%OS%"=="Windows_NT" echo 1 > nul | choice /n /c:1
-
-rem Set the ERRORLEVEL if we are running NT.
-if "%OS%"=="Windows_NT" color 00
-
-goto omega
-
-:mainEnd
-
-rem If there were no errors, we run the post script.
-if "%OS%"=="Windows_NT" @endlocal
-if "%OS%"=="WINNT" @endlocal
-
-if "%HOME%"=="" goto homeDrivePathPost
-if exist "%HOME%\antrc_post.bat" call "%HOME%\antrc_post.bat"
-
-:homeDrivePathPost
-if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePost
-if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePost
-if exist "%HOMEDRIVE%%HOMEPATH%\antrc_post.bat" call "%HOMEDRIVE%%HOMEPATH%\antrc_post.bat"
-
-:userProfilePost
-if "%USERPROFILE%"=="" goto omega
-if "%USERPROFILE%"=="%HOME%" goto omega
-if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto omega
-if exist "%USERPROFILE%\antrc_post.bat" call "%USERPROFILE%\antrc_post.bat"
-
-:omega
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.cmd b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.cmd
deleted file mode 100644
index d221a40959..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/ant.cmd
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Run ant
-*/
-
-'@echo off'
-parse arg mode envarg '::' antarg
-
-if mode\='.' & mode\='..' & mode\='/' then do
- envarg = mode envarg
- mode = ''
-end
-
-if antarg = '' then do
- antarg = envarg
- envarg = ''
-end
-
-x = setlocal()
-
-env="OS2ENVIRONMENT"
-antenv = _getenv_('antenv')
-if _testenv_() = 0 then interpret 'call "' || antenv || '"' '"' || envarg || '"'
-
-if mode = '' then mode = _getenv_('ANT_MODE' '..')
-if mode \= '/' then do
- runrc = _getenv_('runrc')
- antrc = _getenv_('antrc' 'antrc.cmd')
- if mode = '..' then mode = '-r'
- else mode = ''
- interpret 'call "' || runrc || '"' antrc '"' || mode || '"'
-end
-
-if _testenv_() = 0 then do
- say 'Ant environment is not set properly'
- x = endlocal()
- exit 16
-end
-
-settings = '-Dant.home=' || ANT_HOME '-Djava.home=' || JAVA_HOME
-
-java = _getenv_('javacmd' 'java')
-opts = value('ANT_OPTS',,env)
-args = value('ANT_ARGS',,env)
-lcp = value('LOCALCLASSPATH',,env)
-cp = value('CLASSPATH',,env)
-if value('ANT_USE_CP',,env) \= '' then do
- if lcp \= '' & right(lcp, 1) \= ';' then lcp = lcp || ';'
- lcp = lcp || cp
- 'SET CLASSPATH='
-end
-if lcp\='' then lcp = '-classpath' lcp
-
-cmd = java opts lcp '-jar' ANT_HOME ||'\lib\ant-launcher.jar' settings args antarg
-launcher = stream(ANT_HOME ||'\lib\ant-launcher.jar', 'C', 'query exists')
-if launcher = '' then entry = 'org.apache.tools.ant.Main'
-else entry = 'org.apache.tools.ant.launch.Launcher'
-java opts lcp entry settings args antarg
-
-x = endlocal()
-
-return rc
-
-_testenv_: procedure expose env ANT_HOME JAVA_HOME
-ANT_HOME = value('ANT_HOME',,env)
-if ANT_HOME = '' then return 0
-JAVA_HOME = value('JAVA_HOME',,env)
-if JAVA_HOME = '' then return 0
-cp = translate(value('CLASSPATH',,env))
-if pos(translate(ANT_HOME), cp) = 0 then return 0
-if pos(translate(JAVA_HOME), cp) = 0 then return 0
-return 1
-
-_getenv_: procedure expose env
-parse arg envar default
-if default = '' then default = envar
-var = value(translate(envar),,env)
-if var = '' then var = default
-return var
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun
deleted file mode 100644
index 8110f86efe..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun
+++ /dev/null
@@ -1,24 +0,0 @@
-#! /bin/sh
-
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Args: DIR command
-cd "$1"
-CMD="$2"
-shift
-shift
-
-exec "$CMD" "$@"
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.bat b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.bat
deleted file mode 100644
index 10d2bbc78a..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.bat
+++ /dev/null
@@ -1,50 +0,0 @@
-@echo off
-
-REM Licensed to the Apache Software Foundation (ASF) under one or more
-REM contributor license agreements. See the NOTICE file distributed with
-REM this work for additional information regarding copyright ownership.
-REM The ASF licenses this file to You under the Apache License, Version 2.0
-REM (the "License"); you may not use this file except in compliance with
-REM the License. You may obtain a copy of the License at
-REM
-REM http://www.apache.org/licenses/LICENSE-2.0
-REM
-REM Unless required by applicable law or agreed to in writing, software
-REM distributed under the License is distributed on an "AS IS" BASIS,
-REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-REM See the License for the specific language governing permissions and
-REM limitations under the License.
-
-if "%OS%"=="Windows_NT" @setlocal
-if "%OS%"=="WINNT" @setlocal
-
-if ""%1""=="""" goto runCommand
-
-rem Change drive and directory to %1
-if "%OS%"=="Windows_NT" goto nt_cd
-if "%OS%"=="WINNT" goto nt_cd
-cd ""%1""
-goto end_cd
-:nt_cd
-cd /d ""%1""
-:end_cd
-shift
-
-rem Slurp the command line arguments. This loop allows for an unlimited number
-rem of arguments (up to the command line limit, anyway).
-set ANT_RUN_CMD=%1
-if ""%1""=="""" goto runCommand
-shift
-:loop
-if ""%1""=="""" goto runCommand
-set ANT_RUN_CMD=%ANT_RUN_CMD% %1
-shift
-goto loop
-
-:runCommand
-rem echo %ANT_RUN_CMD%
-%ANT_RUN_CMD%
-
-if "%OS%"=="Windows_NT" @endlocal
-if "%OS%"=="WINNT" @endlocal
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.pl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.pl
deleted file mode 100644
index dbea10f2a8..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antRun.pl
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/usr/bin/perl
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#######################################################################
-#
-# antRun.pl
-#
-# wrapper script for invoking commands on a platform with Perl installed
-# this is akin to antRun.bat, and antRun the SH script
-#
-# created: 2001-10-18
-# author: Jeff Tulley jtulley@novell.com
-#######################################################################
-#be fussy about variables
-use strict;
-
-#turn warnings on during dev; generates a few spurious uninitialised var access warnings
-#use warnings;
-
-#and set $debug to 1 to turn on trace info (currently unused)
-my $debug=1;
-
-#######################################################################
-# change drive and directory to "%1"
-my $ANT_RUN_CMD = @ARGV[0];
-
-# assign current run command to "%2"
-chdir (@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n";
-if ($^O eq "NetWare") {
- # There is a bug in Perl 5 on NetWare, where chdir does not
- # do anything. On NetWare, the following path-prefixed form should
- # always work. (afaict)
- $ANT_RUN_CMD .= "/".@ARGV[1];
-}
-else {
- $ANT_RUN_CMD = @ARGV[1];
-}
-
-# dispose of the first two arguments, leaving only the command's args.
-shift;
-shift;
-
-# run the command
-my $returnValue = system $ANT_RUN_CMD, @ARGV;
-if ($returnValue eq 0) {
- exit 0;
-}
-else {
- # only 0 and 1 are widely recognized as exit values
- # so change the exit value to 1
- exit 1;
-}
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antenv.cmd b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antenv.cmd
deleted file mode 100644
index 170d89f346..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/antenv.cmd
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-'@echo off'
-call RxFuncAdd "SysLoadFuncs", "RexxUtil", "SysLoadFuncs"
-call SysLoadFuncs
-
-/* Prepare the parameters for later use */
-parse arg argv
-mode = ''
-args = ''
-opts = ''
-cp = ''
-lcp = ''
-
-do i = 1 to words(argv)
- param = word(argv, i)
- select
- when param='-lcp' then mode = 'l'
- when param='-cp' | param='-classpath' then mode = 'c'
- when abbrev('-opts', param, 4) then mode = 'o'
- when abbrev('-args', param, 4) then mode = 'a'
- otherwise
- select
- when mode = 'a' then args = space(args param, 1)
- when mode = 'c' then cp = space(cp param, 1)
- when mode = 'l' then lcp = space(lcp param, 1)
- when mode = 'o' then opts = space(opts param, 1)
- otherwise
- say 'Option' param 'ignored'
- end
- end
-end
-
-env="OS2ENVIRONMENT"
-antconf = _getenv_('antconf' 'antconf.cmd')
-runrc = _getenv_('runrc')
-interpret 'call "' || runrc || '"' '"' || antconf || '"' 'ETC'
-ANT_HOME = value('ANT_HOME',,env)
-JAVA_HOME = value('JAVA_HOME',,env)
-classpath = value('CLASSPATH',,env)
-classes = stream(JAVA_HOME || "\lib\classes.zip", "C", "QUERY EXISTS")
-if classes \= '' then classpath = prepend(classpath classes)
-classes = stream(JAVA_HOME || "\lib\tools.jar", "C", "QUERY EXISTS")
-if classes \= '' then classpath = prepend(classpath classes)
-
-classpath = prepend(classpath ANT_HOME || '\lib\ant-launcher.jar')
-'SET CLASSPATH=' || classpath
-
-/* Setting classpathes, options and arguments */
-envset = _getenv_('envset')
-if cp\='' then interpret 'call "' || envset || '"' '"; CLASSPATH"' '"' || cp || '"'
-if lcp\='' then interpret 'call "' || envset || '"' '"; LOCALCLASSPATH"' '"' || lcp || '"'
-if opts\='' then interpret 'call "' || envset || '"' '"-D ANT_OPTS"' '"' || opts || '"'
-if args\='' then interpret 'call "' || envset || '"' '"ANT_ARGS"' '"' || args || '"'
-
-exit 0
-
-addpath: procedure
-parse arg path elem
-if elem = '' then do
- if path\='' & right(path, 1)\=';' then path = path || ';'
- return path
-end
-if substr(path, length(path)) = ';' then glue = ''
-else glue = ';'
-if pos(translate(elem), translate(path)) = 0 then path = path || glue || elem || ';'
-return path
-
-prepend: procedure
-parse arg path elem
-if elem = '' then do
- if path\='' & right(path, 1)\=';' then path = path || ';'
- return path
-end
-if pos(translate(elem), translate(path)) = 0 then path = elem || ';' || path
-return path
-
-_getenv_: procedure expose env
-parse arg envar default
-if default = '' then default = envar
-var = value(translate(envar),,env)
-if var = '' then var = default
-return var
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/complete-ant-cmd.pl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/complete-ant-cmd.pl
deleted file mode 100644
index b58c26e15c..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/complete-ant-cmd.pl
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/usr/bin/perl
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# A script to allow Bash or Z-Shell to complete an Ant command-line.
-#
-# To install for Bash 2.0 or better, add the following to ~/.bashrc:
-#
-# $ complete -C complete-ant-cmd ant build.sh
-#
-# To install for Z-Shell 2.5 or better, add the following to ~/.zshrc:
-#
-# function ant_complete () {
-# local args_line args
-# read -l args_line
-# set -A args $args_line
-# set -A reply $(COMP_LINE=$args_line complete-ant-cmd ${args[1]} $1)
-# }
-# compctl -K ant_complete ant build.sh
-#
-# @author Mike Williams
-
-my $cmdLine = $ENV{'COMP_LINE'};
-my $antCmd = $ARGV[0];
-my $word = $ARGV[1];
-
-my @completions;
-if ($word =~ /^-/) {
- list( restrict( $word, getArguments() ));
-} elsif ($cmdLine =~ /-(f|buildfile)\s+\S*$/) {
- list( getBuildFiles($word) );
-} else {
- list( restrict( $word, getTargets() ));
-}
-
-exit(0);
-
-sub list {
- for (@_) {
- print "$_\n";
- }
-}
-
-sub restrict {
- my ($word, @completions) = @_;
- grep( /^\Q$word\E/, @completions );
-}
-
-sub getArguments {
- qw(-buildfile -debug -emacs -f -find -help -listener -logfile
- -logger -projecthelp -quiet -verbose -version);
-}
-
-
-sub getBuildFiles {
- my ($word) = @_;
- grep( /\.xml$/, glob( "$word*" ));
-}
-
-sub getTargets {
-
- # Look for build-file
- my $buildFile = 'build.xml';
- if ($cmdLine =~ /-(f|buildfile)\s+(\S+)/) {
- $buildFile = $2;
- }
- return () unless (-f $buildFile);
-
- # Run "ant -projecthelp" to list targets. Keep a cache of results in a
- # cache-file.
- my $cacheFile = $buildFile;
- $cacheFile =~ s|(.*/)?(.*)|${1}.ant-targets-${2}|;
- if ((!-e $cacheFile) || (-M $buildFile) < (-M $cacheFile)) {
- open( CACHE, '>'.$cacheFile ) || die "can\'t write $cacheFile: $!\n";
- open( HELP, "$antCmd -projecthelp -f '$buildFile'|" ) || return();
- my %targets;
- while( ) {
- if (/^\s+(\S+)/) {
- $targets{$1}++;
- }
- }
- my @targets = sort keys %targets;
- for (@targets) { print CACHE "$_\n"; }
- return @targets;
- }
-
- # Read the target-cache
- open( CACHE, $cacheFile ) || die "can\'t read $cacheFile: $!\n";
- my @targets;
- while () {
- chop;
- s/\r$//; # for Cygwin
- push( @targets, $_ );
- }
- close( CACHE );
- @targets;
-
-}
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/envset.cmd b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/envset.cmd
deleted file mode 100644
index 3b074193e9..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/envset.cmd
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-SET environment variables
-First optional parameter:
- ; parameters are considered parts of a path variable, semicolons are
- appended to each element if not already present
- -D parameters are properties for Java or Makefile etc., -D will be
- prepended and the parameters will be separated by a space
- =D the same as above but equal sign is not required
- , parameters should be comma separated in the environment variable
- - parameters should be separated by the next parameter
- Other values mean that the first parameter is missing and the environment
- variable will be set to the space separated parameters
-
-Second parameter: name of the environment variable
-
-Next parameters: values
-; implies that the equal sign is considered a part of the parameter and is
-not interpreted
-
--D requires parameters in the form name=value. If the equal sign is not found,
-the parameters are changed to name=expanded_name
-
-Other options have optional equal sign. If it is found, only the part after
-the equal sign will be oprionally expanded.
-
-If the parameter is the minus sign, the next parameter will not be expanded.
-If the parameter is a single dot, it will be replaced with the value of the
-environment variable as it existed before envset was invoked.
-
-For other parameters the batch looks for the environment variable with the
-same name (in uppercase). If it is found, it forms the expanded_name. If
-the environment variable with such a name does not exist, the expanded_name
-will hold the parameter name without case conversion.
-*/
-
-parse arg mode envar args
-
-equal = 0
-sep = ' '
-
-/* Parse command line parameters */
-select
- when mode='-' then do
- sep = envar
- parse var args envar args
- end
- when mode=';' then do
- sep = ''
- equal = -1
- end
- when mode='-D' then equal = 1
- when mode='=D' then mode = '-D'
- when mode=',' then sep = ','
-otherwise
- args = envar args
- envar = mode
- mode = ''
-end
-
-env = 'OS2ENVIRONMENT'
-envar = translate(envar)
-orig = value(envar,,env)
-newval = ''
-expand = 1
-
-/* for each parameter... */
-do i = 1 to words(args)
- if expand > 0 & word(args, i) = '-' then expand = 0
- else call addval word(args, i)
-end
-
-/* Optionally enclose path variable by quotes */
-if mode = ';' & pos(' ', newval) > 0 then newval = '"' || newval || '"'
-
-/* Set the new value, 'SET' cannot be used since it does not allow '=' */
-x = value(envar, newval, env)
-exit 0
-
-addval: procedure expose sep equal orig expand newval mode env
-parse arg var
-
-if var = '.' then expvar = orig
-else do
- if equal >= 0 then do
- parse var var name '=' val
- if val = '' then var = name
- else var = val
- end
- if expand = 0 then expvar = var
- else expvar = value(translate(var),,env)
- if expvar = '' then expvar = var
- if equal >= 0 then do
- if val = '' then do
- parse var expvar key '=' val
- if val <> '' then name = key
- else do
- if equal > 0 then val = key
- else name = key
- end
- end
- else val = expvar
- if pos(' ', val) > 0 | pos('=', val) > 0 then val = '"' || val || '"'
- if val = '' then expvar = name
- else expvar = name || '=' || val
- end
- if mode = '-D' then expvar = '-D' || expvar
- if mode = ';' then do
- if right(expvar, 1) <> ';' then expvar = expvar || ';'
- end
-end
-
-if newval = '' then newval = expvar
-else newval = newval || sep || expvar
-expand = 1
-return
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/lcp.bat b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/lcp.bat
deleted file mode 100644
index 4bf2e7ce1c..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/lcp.bat
+++ /dev/null
@@ -1,31 +0,0 @@
-REM
-REM Licensed to the Apache Software Foundation (ASF) under one or more
-REM contributor license agreements. See the NOTICE file distributed with
-REM this work for additional information regarding copyright ownership.
-REM The ASF licenses this file to You under the Apache License, Version 2.0
-REM (the "License"); you may not use this file except in compliance with
-REM the License. You may obtain a copy of the License at
-REM
-REM http://www.apache.org/licenses/LICENSE-2.0
-REM
-REM Unless required by applicable law or agreed to in writing, software
-REM distributed under the License is distributed on an "AS IS" BASIS,
-REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-REM See the License for the specific language governing permissions and
-REM limitations under the License.
-REM
-REM
-
-set _CLASSPATHCOMPONENT=%1
-if ""%1""=="""" goto gotAllArgs
-shift
-
-:argCheck
-if ""%1""=="""" goto gotAllArgs
-set _CLASSPATHCOMPONENT=%_CLASSPATHCOMPONENT% %1
-shift
-goto argCheck
-
-:gotAllArgs
-set LOCALCLASSPATH=%LOCALCLASSPATH%;%_CLASSPATHCOMPONENT%
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.pl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.pl
deleted file mode 100644
index 5f8307ac33..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.pl
+++ /dev/null
@@ -1,153 +0,0 @@
-#!/usr/bin/perl
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#######################################################################
-#
-# runant.pl
-#
-# wrapper script for invoking ant in a platform with Perl installed
-# this may include cgi-bin invocation, which is considered somewhat daft.
-# (slo: that should be a separate file which can be derived from this
-# and returns the XML formatted output)
-#
-# the code is not totally portable due to classpath and directory splitting
-# issues. oops. (NB, use File::Spec::Functions will help and the code is
-# structured for the catfile() call, but because of perl version funnies
-# the code is not included.
-#
-# created: 2000-8-24
-# author: Steve Loughran steve_l@sourceforge.net
-#######################################################################
-#
-# Assumptions:
-#
-# - the "java" executable/script is on the command path
-# - ANT_HOME has been set
-# - target platform uses ":" as classpath separator or perl indicates it is dos/win32
-# - target platform uses "/" as directory separator.
-
-#be fussy about variables
-use strict;
-
-#platform specifics (disabled)
-#use File::Spec::Functions;
-
-#turn warnings on during dev; generates a few spurious uninitialised var access warnings
-#use warnings;
-
-#and set $debug to 1 to turn on trace info
-my $debug=1;
-
-#######################################################################
-#
-# check to make sure environment is setup
-#
-
-my $HOME = $ENV{ANT_HOME};
-if ($HOME eq "")
- {
- die "\n\nANT_HOME *MUST* be set!\n\n";
- }
-
-my $JAVACMD = $ENV{JAVACMD};
-$JAVACMD = "java" if $JAVACMD eq "";
-
-my $onnetware = 0;
-if ($^O eq "NetWare")
-{
- $onnetware = 1;
-}
-
-my $oncygwin = ($^O eq "cygwin");
-
-#ISSUE: what java wants to split up classpath varies from platform to platform
-#and perl is not too hot at hinting which box it is on.
-#here I assume ":" 'cept on win32, dos, and netware. Add extra tests here as needed.
-my $s=":";
-if(($^O eq "MSWin32") || ($^O eq "dos") || ($^O eq "cygwin") ||
- ($onnetware == 1))
- {
- $s=";";
- }
-
-#build up standard classpath
-my $localpath = "$HOME/lib/ant-launcher.jar";
-#set JVM options and Ant arguments, if any
-my @ANT_OPTS=split(" ", $ENV{ANT_OPTS});
-my @ANT_ARGS=split(" ", $ENV{ANT_ARGS});
-
-#jikes
-if($ENV{JIKESPATH} ne "")
- {
- push @ANT_OPTS, "-Djikes.class.path=$ENV{JIKESPATH}";
- }
-
-#construct arguments to java
-my @ARGS;
-push @ARGS, @ANT_OPTS;
-
-my $CYGHOME = "";
-
-my $classpath=$ENV{CLASSPATH};
-if ($oncygwin == 1) {
- $localpath = `cygpath --path --windows $localpath`;
- chomp ($localpath);
- if (! $classpath eq "")
- {
- $classpath = `cygpath --path --windows "$classpath"`;
- chomp ($classpath);
- }
- $HOME = `cygpath --path --windows $HOME`;
- chomp ($HOME);
- $CYGHOME = `cygpath --path --windows $ENV{HOME}`;
- chomp ($CYGHOME);
-}
-push @ARGS, "-classpath", "$localpath";
-push @ARGS, "-Dant.home=$HOME";
-if ( ! $CYGHOME eq "" )
-{
- push @ARGS, "-Dcygwin.user.home=\"$CYGHOME\""
-}
-push @ARGS, "org.apache.tools.ant.launch.Launcher", @ANT_ARGS;
-push @ARGS, @ARGV;
-if (! $classpath eq "")
-{
- if ($onnetware == 1)
- {
- # make classpath literally $CLASSPATH
- # this is to avoid pushing us over the 512 character limit
- # even skip the ; - that is already in $localpath
- push @ARGS, "-lib", "\$CLASSPATH";
- }
- else
- {
- push @ARGS, "-lib", "$classpath";
- }
-}
-print "\n $JAVACMD @ARGS\n\n" if ($debug);
-
-my $returnValue = system $JAVACMD, @ARGS;
-if ($returnValue eq 0)
- {
- exit 0;
- }
-else
- {
- # only 0 and 1 are widely recognized as exit values
- # so change the exit value to 1
- exit 1;
- }
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.py b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.py
deleted file mode 100644
index eec549ebd4..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runant.py
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/usr/bin/python
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-"""
-
- runant.py
-
- This script is a translation of the runant.pl written by Steve Loughran.
- It runs ant with/out arguments, it should be quite portable (thanks to
- the python os library)
- This script has been tested with Python2.0/Win2K
-
- created: 2001-04-11
- author: Pierre Dittgen pierre.dittgen@criltelecom.com
-
- Assumptions:
-
- - the "java" executable/script is on the command path
-"""
-import os, os.path, string, sys
-
-# Change it to 1 to get extra debug information
-debug = 0
-
-#######################################################################
-
-# If ANT_HOME is not set default to script's parent directory
-if os.environ.has_key('ANT_HOME'):
- ANT_HOME = os.environ['ANT_HOME']
-else:
- ANT_HOME = os.path.dirname(os.path.dirname(os.path.abspath(sys.argv[0])))
-
-# set ANT_LIB location
-ANT_LIB = os.path.join(ANT_HOME, 'lib')
-
-# set JAVACMD (check variables JAVACMD and JAVA_HOME)
-JAVACMD = None
-if not os.environ.has_key('JAVACMD'):
- if os.environ.has_key('JAVA_HOME'):
- if not os.path.exists(os.environ['JAVA_HOME']):
- print "Warning: JAVA_HOME is not defined correctly."
- else:
- JAVACMD = os.path.join(os.environ['JAVA_HOME'], 'bin', 'java')
- else:
- print "Warning: JAVA_HOME not set."
-else:
- JAVACMD = os.environ['JAVACMD']
-if not JAVACMD:
- JAVACMD = 'java'
-
-launcher_jar = os.path.join(ANT_LIB, 'ant-launcher.jar')
-if not os.path.exists(launcher_jar):
- print 'Unable to locate ant-launcher.jar. Expected to find it in %s' % \
- ANT_LIB
-
-# Build up standard classpath (LOCALCLASSPATH)
-LOCALCLASSPATH = launcher_jar
-if os.environ.has_key('LOCALCLASSPATH'):
- LOCALCLASSPATH += os.pathsep + os.environ['LOCALCLASSPATH']
-
-ANT_OPTS = ""
-if os.environ.has_key('ANT_OPTS'):
- ANT_OPTS = os.environ['ANT_OPTS']
-
-OPTS = ""
-if os.environ.has_key('JIKESPATH'):
- OPTS = '-Djikes.class.path=\"%s\"' % os.environ['JIKESPATH']
-
-ANT_ARGS = ""
-if os.environ.has_key('ANT_ARGS'):
- ANT_ARGS = os.environ['ANT_ARGS']
-
-CLASSPATH = ""
-if os.environ.has_key('CLASSPATH'):
- CLASSPATH = os.environ['CLASSPATH']
-
-# Builds the commandline
-cmdline = ('%s %s -classpath %s -Dant.home=%s %s ' + \
- 'org.apache.tools.ant.launch.Launcher %s -lib %s %s') \
- % (JAVACMD, ANT_OPTS, LOCALCLASSPATH, ANT_HOME, OPTS, ANT_ARGS, \
- CLASSPATH, string.join(sys.argv[1:], ' '))
-
-if debug:
- print '\n%s\n\n' % (cmdline)
-sys.stdout.flush()
-
-# Run the biniou!
-os.system(cmdline)
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runrc.cmd b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runrc.cmd
deleted file mode 100644
index c68f04d4aa..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/bin/runrc.cmd
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Run RC file, name is in the first arg, second arg is either PATH
- ENV or -r or nothing
-*/
-
-parse arg name path rest
-
-if name = '' then do
- say 'RC file name is missing'
- exit 1
-end
-
-if rest \= '' then do
- say 'Too many parameters'
- exit 1
-end
-
-call runit name path
-exit 0
-
-runit: procedure
-parse arg name path dir
-
-if path \= '' & path \= '-r' then do
- dir = value(translate(path),,'OS2ENVIRONMENT')
- if dir = '' then return
- dir = translate(dir, '\', '/') /* change UNIX-like path to OS/2 */
-end
-
-if dir = '' then dir = directory()
-
-if path = '-r' then do /* recursive call */
- subdir = filespec('path', dir)
- if subdir \= '\' then do
- subdir = left(subdir, length(subdir)-1)
- call runit name path filespec('drive', dir) || subdir
- end
-end
-
-/* Look for the file and run it */
-if right(dir, 1) \= '\' then dir = dir || '\'
-rcfile = stream(dir || name, 'c', 'query exists')
-if rcfile \= '' then interpret 'call "' || rcfile || '"'
-
-return
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/changelog.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/changelog.xsl
deleted file mode 100644
index c6aef8fde1..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/changelog.xsl
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Designed for use with Apache Ant .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- mailto:
-
-
-
-
-
-
-
-
-
- / ?rev= &content-type=text/x-cvsweb-markup
-
-
- / ?r1= &r2=
-
-
- ( )
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-frames.xsl
deleted file mode 100644
index abaafd6300..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-frames.xsl
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CheckStyle Audit
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature.
- If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
- CheckStyle Audit
-
-
- Designed for use with
- CheckStyle and
- Ant .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .bannercell {
- border: 0px;
- padding: 0px;
- }
- body {
- margin-left: 10;
- margin-right: 10;
- font:normal 80% arial,helvetica,sanserif;
- background-color:#FFFFFF;
- color:#000000;
- }
- .oddrow td {
- background: #efefef;
- }
- .evenrow td {
- background: #fff;
- }
- th, td {
- text-align: left;
- vertical-align: top;
- }
- th {
- font-weight:bold;
- background: #ccc;
- color: black;
- }
- table, th, td {
- font-size:100%;
- border: none
- }
- table.log tr td, tr th {
-
- }
- h2 {
- font-weight:bold;
- font-size:140%;
- margin-bottom: 5;
- }
- h3 {
- font-size:100%;
- font-weight:bold;
- background: #525D76;
- color: white;
- text-decoration: none;
- padding: 5px;
- margin-right: 2px;
- margin-left: 2px;
- margin-bottom: 0;
- }
-
-
-
-
-
-
-
-
-
- Files
-
-
-
-
-
-
-
-
- Files
-
-
- Name
- Errors
-
-
-
-
-
-
-
-
-
-
-
-
-
- files/ .html
-
-
-
-
-
-
-
-
-
-
-
-
-
- files/ .html
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
- File
-
-
- Error Description
- Line:Column
-
-
-
-
-
- :
-
-
-
-
-
-
-
-
-
- Summary
-
-
-
-
-
- Total Files
- Files With Errors
- Errors
-
-
-
-
-
-
-
-
-
-
-
-
- oddrow
- evenrow
-
-
-
\ No newline at end of file
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-text.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-text.xsl
deleted file mode 100644
index 7359e41601..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-text.xsl
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- :
-
- :
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-xdoc.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-xdoc.xsl
deleted file mode 100644
index 5fc6eab380..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/checkstyle/checkstyle-xdoc.xsl
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Checkstyle Audit
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Name
- Errors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- files .html
-
-
-
-
-
-
-
-
-
-
-
-
- Checkstyle Audit
-
-
-
-
-
-
- Error Description
- Line
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Files
- Files With Errors
- Errors
-
-
-
-
-
-
-
-
-
-
-
-
-
- oddrow
- evenrow
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/coverage-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/coverage-frames.xsl
deleted file mode 100644
index a55a52aa8c..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/coverage-frames.xsl
+++ /dev/null
@@ -1,489 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Coverage Results.
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
- .bannercell {
- border: 0px;
- padding: 0px;
- }
- body {
- margin-left: 10;
- margin-right: 10;
- font:normal 80% arial,helvetica,sanserif;
- background-color:#FFFFFF;
- color:#000000;
- }
- .a td {
- background: #efefef;
- }
- .b td {
- background: #fff;
- }
- th, td {
- text-align: left;
- vertical-align: top;
- }
- th {
- font-weight:bold;
- background: #ccc;
- color: black;
- }
- table, th, td {
- font-size:100%;
- border: none
- }
- table.log tr td, tr th {
-
- }
- h2 {
- font-weight:bold;
- font-size:140%;
- margin-bottom: 5;
- }
- h3 {
- font-size:100%;
- font-weight:bold;
- background: #525D76;
- color: white;
- text-decoration: none;
- padding: 5px;
- margin-right: 2px;
- margin-left: 2px;
- margin-bottom: 0;
- }
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
- /
- .html
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
- Summary
-
-
-
- Reported Classes
- Methods Hit
- Lines Hit
-
-
-
-
-
-
-
-
-
-
-
- To ensure accurate test runs on Java applications, developers need to know how much of
- the code has been tested, and where to find any untested code. Coverage helps you
- locate untested code, and measure precisely how much code has been exercised.
- The result is a higher quality application in a shorter period of time.
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Package
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Class .
-
-
-
-
-
- Methods
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Name
- Methods Hit
- Lines Hit
-
-
-
-
-
- Name
- Lines Hit
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Name
- Methods Hit
- Lines Hit
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
-
- a
- b
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend-frames.xsl
deleted file mode 100644
index ccc9dcc205..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend-frames.xsl
+++ /dev/null
@@ -1,487 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- JDepend Analysis
-
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- There are no cyclic dependancies.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The following explanations are for quick reference and are lifted directly from the original JDepend documentation .
-
-
- The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.
-
- The number of other packages that depend upon classes within the package is an indicator of the package's responsibility.
-
- The number of other packages that the classes in the package depend upon is an indicator of the package's independence.
-
- The ratio of the number of abstract classes (and interfaces) in the analyzed package to the total number of classes in the analyzed package.
- The range for this metric is 0 to 1, with A=0 indicating a completely concrete package and A=1 indicating a completely abstract package.
-
- The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the package's resilience to change.
- The range for this metric is 0 to 1, with I=0 indicating a completely stable package and I=1 indicating a completely instable package.
-
- The perpendicular distance of a package from the idealized line A + I = 1. This metric is an indicator of the package's balance between abstractness and stability.
- A package squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal packages are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0).
- The range for this metric is 0 to 1, with D=0 indicating a package that is coincident with the main sequence and D=1 indicating a package that is as far from the main sequence as possible.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Not Analyzed:
-
-
-
-
-
-
-
-
-
-
-
-
- Cycles
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- JDepend Analysis
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend.xsl
deleted file mode 100644
index f8132975f5..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/jdepend.xsl
+++ /dev/null
@@ -1,276 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- JDepend Analysis
-
-
-
-
-
-
-
-
-
- Designed for use with JDepend and Ant .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Abstract Classes
- Concrete Classes
- Used by Packages
- Uses Packages
-
-
-
-
- None
-
-
-
-
-
-
-
- None
-
-
-
-
-
-
-
- None
-
-
-
- #PK
-
-
-
-
-
-
- None
-
-
-
- #PK
-
-
-
-
-
-
-
-
-
-
-
-
- There are no cyclic dependancies.
-
-
-
-
-
-
-
-
-
-
- The following explanations are for quick reference and are lifted directly from the original JDepend documentation .
-
-
- The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.
-
- The number of other packages that depend upon classes within the package is an indicator of the package's responsibility.
-
- The number of other packages that the classes in the package depend upon is an indicator of the package's independence.
-
- The ratio of the number of abstract classes (and interfaces) in the analyzed package to the total number of classes in the analyzed package.
- The range for this metric is 0 to 1, with A=0 indicating a completely concrete package and A=1 indicating a completely abstract package.
-
- The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the package's resilience to change.
- The range for this metric is 0 to 1, with I=0 indicating a completely stable package and I=1 indicating a completely instable package.
-
- The perpendicular distance of a package from the idealized line A + I = 1. This metric is an indicator of the package's balance between abstractness and stability.
- A package squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal packages are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0).
- The range for this metric is 0 to 1, with D=0 indicating a package that is coincident with the main sequence and D=1 indicating a package that is as far from the main sequence as possible.
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames-xalan1.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames-xalan1.xsl
deleted file mode 100644
index 8cef4cae2f..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames-xalan1.xsl
+++ /dev/null
@@ -1,719 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Unit Test Results.
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
-body {
- font:normal 68% verdana,arial,helvetica;
- color:#000000;
-}
-table tr td, table tr th {
- font-size: 68%;
-}
-table.details tr th{
- font-weight: bold;
- text-align:left;
- background:#a6caf0;
-}
-table.details tr td{
- background:#eeeee0;
-}
-
-p {
- line-height:1.5em;
- margin-top:0.5em; margin-bottom:1.0em;
-}
-h1 {
- margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
-}
-h2 {
- margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
-}
-h3 {
- margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
-}
-h4 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-h5 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-h6 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-.Error {
- font-weight:bold; color:red;
-}
-.Failure {
- font-weight:bold; color:purple;
-}
-.Properties {
- text-align:right;
-}
-
-
-
-
-
-
- .
-
-
- Unit Test Results:
-
-
-
-
-
-
-
-
- Class
-
-
-
-
- Tests
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- cur = TestCases[' . '] = new Array();
-
-
- cur[' '] = ' ';
-
-
-
-
-
-
-
-
-
-
- Unit Test Classes:
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
- All Unit Test Classes
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
- /
- .html
-
-
-
-
-
-
-
-
-
-
-
-
- All Unit Test Packages
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
- <none>
-
-
-
-
-
-
-
-
-
- Unit Test Results: Summary
-
-
-
-
-
- open('allclasses-frame.html','classListFrame')
-
- Summary
-
-
-
-
-
-
-
- Tests
- Failures
- Errors
- Success rate
- Time
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Note: failures are anticipated and checked for with assertions while errors are unanticipated.
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
- <none>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- open('package-frame.html','classListFrame')
-
- Package
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
-
- Unit Test Results
-
-
-
- Designed for use with JUnit and Ant .
-
-
-
-
-
-
-
-
- Name
- Tests
- Errors
- Failures
- Time(s)
- Time Stamp
- Host
-
-
-
-
-
-
- Name
- Status
- Type
- Time(s)
-
-
-
-
-
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Error
- Failure
- TableRowColor
-
-
-
-
-
- Failure
-
-
-
- Error
-
-
-
- Success
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- N/A
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames.xsl
deleted file mode 100644
index 9ea322a6f4..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-frames.xsl
+++ /dev/null
@@ -1,877 +0,0 @@
-
-
-
-
-
-
-
-
-Unit Test Results.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
-body {
- font:normal 68% verdana,arial,helvetica;
- color:#000000;
-}
-table tr td, table tr th {
- font-size: 68%;
-}
-table.details tr th{
- font-weight: bold;
- text-align:left;
- background:#a6caf0;
-}
-table.details tr td{
- background:#eeeee0;
-}
-
-p {
- line-height:1.5em;
- margin-top:0.5em; margin-bottom:1.0em;
-}
-h1 {
- margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
-}
-h2 {
- margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
-}
-h3 {
- margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
-}
-h4 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-h5 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-h6 {
- margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
-}
-.Error {
- font-weight:bold; color:red;
-}
-.Failure {
- font-weight:bold; color:purple;
-}
-.Properties {
- text-align:right;
-}
-
-
-
-
-
-
-
-
-
- All Failures
-
-
- All Errors
-
-
- All Tests
-
-
-
-
- Unit Test Results:
-
-
-
-
-
- open('allclasses-frame.html','classListFrame')
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
- Unit Test Results:
-
-
-
-
-
-
-
-
- Class
-
-
-
-
-
-
- Failures
-
-
- Errors
-
-
- Tests
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- cur = TestCases[' . '] = new Array();
-
-
- cur[' '] = ' ';
-
-
-
-
-
-
-
-
-
-
- Unit Test Classes:
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
- All Unit Test Classes
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
- /
- _.html
-
-
-
-
-
-
-
-
-
-
-
-
- All Unit Test Packages
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
- <none>
-
-
-
-
-
-
-
-
-
- Unit Test Results: Summary
-
-
-
-
-
- open('allclasses-frame.html','classListFrame')
-
- Summary
-
-
-
-
-
-
-
- Tests
- Failures
- Errors
- Success rate
- Time
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Note: failures are anticipated and checked for with assertions while errors are unanticipated.
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
- <none>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- open('package-frame.html','classListFrame')
-
- Package
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
-
-
-
-
-
- Designed for use with JUnit and Ant .
-
-
-
-
-
-
-
-
- Name
- Tests
- Errors
- Failures
- Time(s)
- Time Stamp
- Host
-
-
-
-
-
-
-
-
- Class
-
- Name
- Status
- Type
- Time(s)
-
-
-
-
-
-
-
-
-
- Error
- Failure
- Pass
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Error
- Failure
- TableRowColor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Failure
-
-
-
- Error
-
-
-
- Success
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- N/A
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-noframes.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-noframes.xsl
deleted file mode 100644
index f0ab96416c..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/junit-noframes.xsl
+++ /dev/null
@@ -1,467 +0,0 @@
-
-
-
-
-
-
-Unit Test Results.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packages
- Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Failure
- Error
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Package
-
-
- Back to top
-
-
-
-
-
-
-
-
-
-
- TestCase
-
-
-
-
-
- Back to top
-
-
-
-
- Summary
-
-
-
-
-
-
-
- Tests
- Failures
- Errors
- Success rate
- Time
-
-
-
-
- Failure
- Error
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Note: failures are anticipated and checked for with assertions while errors are unanticipated.
-
-
-
-
-
-
-
- cur = TestCases[' . '] = new Array();
-
-
- cur[' '] = ' ';
-
-
-
-
-
-
-
-
-
- Designed for use with JUnit and Ant .
-
-
-
-
-
-
-
- Name
- Tests
- Errors
- Failures
- Time(s)
-
-
-
-
-
-
- Name
- Tests
- Errors
- Failures
- Time(s)
- Time Stamp
- Host
-
-
-
-
-
-
- Name
- Status
- Type
- Time(s)
-
-
-
-
-
-
-
-
-
-
- Failure
- Error
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Error
-
-
-
-
-
- Failure
-
-
-
- Error
-
-
-
- Success
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- N/A
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/log.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/log.xsl
deleted file mode 100644
index 5040993b7f..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/log.xsl
+++ /dev/null
@@ -1,203 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- failed
- complete
-
-
-
- Build Failed
-
-
- Build Complete
-
- Total Time:
-
-
-
-
-
- See the stacktrace .
-
-
-
-
-
- ant.file
- ant.version
- java.version
- os.name
-
-
- Build events
-
-
- target
- task
- message
-
-
-
-
-
-
-
- Error details
-
-
-
-
-
-
-
-
-
-
- a
- b
-
-
- [ ]
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/maudit-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/maudit-frames.xsl
deleted file mode 100644
index 257c0c8ca6..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/maudit-frames.xsl
+++ /dev/null
@@ -1,503 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Audit Results.
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
- .bannercell {
- border: 0px;
- padding: 0px;
- }
- body {
- margin-left: 10;
- margin-right: 10;
- font:normal 80% arial,helvetica,sanserif;
- background-color:#FFFFFF;
- color:#000000;
- }
- .a td {
- background: #efefef;
- }
- .b td {
- background: #fff;
- }
- th, td {
- text-align: left;
- vertical-align: top;
- }
- th {
- font-weight:bold;
- background: #ccc;
- color: black;
- }
- table, th, td {
- font-size:100%;
- border: none
- }
- table.log tr td, tr th {
-
- }
- h2 {
- font-weight:bold;
- font-size:140%;
- margin-bottom: 5;
- }
- h3 {
- font-size:100%;
- font-weight:bold;
- background: #525D76;
- color: white;
- text-decoration: none;
- padding: 5px;
- margin-right: 2px;
- margin-left: 2px;
- margin-bottom: 0;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Class .
-
-
-
- Violations
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
- /
- .html
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Summary
-
-
- Audited classes
- Reported classes
- Violations
-
-
-
-
-
-
-
-
-
-
- Note: Rules checked have originated from style guidelines suggested by the language designers,
- experience from the Java development community and insite experience. Violations are generally
- reported with a reference to the Java Language Specifications (JLS x.x.x)
- and Metamata Audit rules (x.x).
- Please consult these documents for additional information about violations.
-
- Rules checked also enforce adherence to Sun Java coding guidelines in use at Jakarta.
-
- One should note that these violations do not necessary underline errors but should be used
- as an indication for possible errors. As always, use your best judgment and review
- them carefully, it might save you hours of debugging.
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- open('package-frame.html','classListFrame')
-
- Package
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Name
- Violations
-
-
-
-
-
-
- Line
- Message
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- a
- b
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/mmetrics-frames.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/mmetrics-frames.xsl
deleted file mode 100644
index 8b4643ad20..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/mmetrics-frames.xsl
+++ /dev/null
@@ -1,1026 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- .
-
-
-
-
-
- Metrics Results.
-
-
-
-
-
-
-
-
- Frame Alert
-
- This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
-
-
-
-
-
-
-
-
-
-
-
-
-Metrics Reference
-V(G) |
-LOC |
-DIT |
-NOA |
-NRM |
-NLM |
-WMC |
-RFC |
-DAC |
-FANOUT |
-CBO |
-LCOM |
-NOC
-
-
-Cyclomatic Complexity - V(G)
-This metric was introduced in the 1970s to measure the amount of control
-flow complexity or branching complexity in a module such as a
-subroutine. It gives the number of paths that may be taken through the
-code, and was initially developed to give some measure of the cost of
-producing a test case for the module by executing each path.
-
-Methods with a high cyclomatic complexity tend to be more difficult to
-understand and maintain. In general the more complex the methods of an
-application, the more difficult it will be to test it, and this will adversely
-affect its reliability.
-
-V(G) is a measure of the control flow complexity of a method or
-constructor. It counts the number of branches in the body of the method,
-defined as:
-
-while statements;
-if statements;
-for statements.
-
-
-The metric can also be configured to count each case of a switch
-statement as well.
-
-
-Lines of Code - LOC
-
-This is perhaps the simplest of all the metrics to define and compute.
-Counting lines has a long history as a software metric dating from before
-the rise of structured programming, and it is still in widespread use today.
-The size of a method affects the ease with which it can be understood, its
-reusability and its maintainability. There are a variety of ways that the size
-can be calculated. These include counting all the lines of code, the number
-of statements, the blank lines of code, the lines of commentary, and the
-lines consisting only of syntax such as block delimiters.
-
-This metric can also be used for sizing other constructs as well, for
-example, the overall size of a Java class or package can be measured by
-counting the number of source lines it consists of.
-
-LOC can be used to determine the size of a compilation unit (source file),
-class or interface, method, constructor, or field. It can be configured to
-ignore:
-
-blank lines;
-lines consisting only of comments;
-lines consisting only of opening and closing braces.
-
-
-
-Depth of Inheritance Hierarchy - DIT
-
-This metric calculates how far down the inheritance hierarchy a class is
-declared. In Java all classes have java.lang.Object as their ultimate
-superclass, which is defined to have a depth of 1. So a class that
-immediately extends java.lang.Object has a metric value of 2; any of its
-subclasses will have a value of 3, and so on.
-
-A class that is deep within the tree inherits more methods and state
-variables, thereby increasing its complexity and making it difficult to
-predict its behavior. It can be harder to understand a system with many
-inheritance layers.
-
-DIT is defined for classes and interfaces:
-
-all interface types have a depth of 1;
-the class java.lang.Object has a depth of 1;
-all other classes have a depth of 1 + the depth of their super class.
-
-
-
-Number of Attributes - NOA
-
-The number of distinct state variables in a class serves as one measure of
-its complexity. The more state a class represents the more difficult it is to
-maintain invariants for it. It also hinders comprehensibility and reuse.
-
-In Java, state can be exposed to subclasses through protected fields, which
-entails that the subclass also be aware of and maintain any invariants. This
-interference with the class's data encapsulation can be a source of defects
-and hidden dependencies between the state variables.
-
-NOA is defined for classes and interfaces. It counts the number of fields
-declared in the class or interface.
-
-
-Number of Remote Methods - NRM
-
-NRM is defined for classes. A remote method call is defined as an
-invocation of a method that is not declared in any of:
-
-the class itself;
-a class or interface that the class extends or implements;
-a class or method that extends the class.
-
-
-The value is the count of all the remote method calls in all of the methods
-and constructors of the class.
-
-
-Number of Local Methods - NLM
-
-NLM is defined for classes and interfaces. A local method is defined as a
-method that is declared in the class or interface. NLM can be configured to
-include the local methods of all of the class's superclasses. Methods with
-public, protected, package and private visibility can be independently
-counted by setting configuration parameters.
-
-
-Weighted Methods per Class - WMC
-
-If the number of methods in a class can be determined during the design
-and modeling phase of a project, it can be used as a predictor of how
-much time and effort is needed to develop, debug and maintain it. This
-metric can be further refined by incorporating a weighting for the
-complexity of each method. The usual weighting is given by the cyclomatic
-complexity of the method.
-
-The subclasses of a class inherit all of its public and protected methods,
-and possibly its package methods as well, so the number of methods a
-class has directly impacts the complexity of its subclasses. Classes with
-large numbers of methods are often specific to a particular application,
-reducing the ability to reuse them.
-
-The definition of WMC is based upon NLM, and it provides the same
-configuration parameters for counting inherited methods and of varying
-visibility. The main difference is that NLM always counts each method as 1,
-whereas WMC will weight each method. There are two weighting schemes:
-
-V(G) the cyclomatic complexity of the method is used as its weight.
- Methods from class files are given a V(G) of 1.
-the arity, or the number of parameters of the method are used to
- determine the weight.
-
-
-
-Response For Class - RFC
-
-The response set of a class is the set of all methods that can be invoked as
-a result of a message sent to an object of the class. This includes methods
-in the class's inheritance hierarchy and methods that can be invoked on
-other objects. The Response For Class metric is defined to be size of the
-response set for the class. A class which provides a larger response set is
-considered to be more complex than one with a smaller response set.
-
-One reason for this is that if a method call on a class can result in a large
-number of different method calls on the target and other classes, then it
-can be harder to test the behavior of the class and debug problems. It will
-typically require a deeper understanding of the potential interactions that
-objects of the class can have with the rest of the system.
-
-RFC is defined as the sum of NLM and NRM for the class. The local methods
-include all of the public, protected, package and private methods, but not
-methods declared only in a superclass.
-
-
-Data Abstraction Coupling - DAC
-
-DAC is defined for classes and interfaces. It counts the number of reference
-types that are used in the field declarations of the class or interface. The
-component types of arrays are also counted. Any field with a type that is
-either a supertype or a subtype of the class is not counted.
-
-
-Fan Out - FANOUT
-
-FANOUT is defined for classes and interfaces, constructors and methods. It
-counts the number of reference types that are used in:
-
-field declarations;
-formal parameters and return types;
-throws declarations;
-local variables.
-
-
-The component types of arrays are also counted. Any type that is either a
-supertype or a subtype of the class is not counted.
-
-
-Coupling Between Objects - CBO
-
-When one object or class uses another object or class they are said to be
-coupled. One major source of coupling is that between a superclass and a
-subclass. A coupling is also introduced when a method or field in another
-class is accessed, or when an object of another class is passed into or out
-of a method invocation. Coupling Between Objects is a measure of the
-non-inheritance coupling between two objects.
-
-A high value of coupling reduces the modularity of the class and makes
-reuse more difficult. The more independent a class is the more likely it is
-that it will be possible to reuse it in another part of the system. When a
-class is coupled to another class it becomes sensitive to changes in that
-class, thereby making maintenance for difficult. In addition, a class that is
-overly dependent on other classes can be difficult to understand and test in
-isolation.
-
-CBO is defined for classes and interfaces, constructors and methods. It
-counts the number of reference types that are used in:
-
-field declarations
-formal parameters and return types
-throws declarations
-local variables
-
-
-It also counts:
-
-types from which field and method selections are made
-
-
-The component types of arrays are also counted. Any type that is either a
-supertype or a subtype of the class is not counted.
-
-
-Lack of Cohesion Of Methods - LCOM
-
-The cohesion of a class is the degree to which its methods are related to
-each other. It is determined by examining the pattern of state variable
-accesses within the set of methods. If all the methods access the same state
-variables then they have high cohesion; if they access disjoint sets of
-variables then the cohesion is low. An extreme example of low cohesion
-would be if none of the methods accessed any of the state variables.
-
-If a class exhibits low method cohesion it indicates that the design of the
-class has probably been partitioned incorrectly, and could benefit by being
-split into more classes with individually higher cohesion. On the other
-hand, a high value of cohesion (a low lack of cohesion) implies that the
-class is well designed. A cohesive class will tend to provide a high degree
-of encapsulation, whereas a lack of cohesion decreases encapsulation and
-increases complexity.
-
-Another form of cohesion that is useful for Java programs is cohesion
-between nested and enclosing classes. A nested class that has very low
-cohesion with its enclosing class would probably better designed as a peer
-class rather than a nested class.
-
-LCOM is defined for classes. Operationally, LCOM takes each pair of
-methods in the class and determines the set of fields they each access. If
-they have disjoint sets of field accesses increase the count P by one. If they
-share at least one field access then increase Q by one. After considering
-each pair of methods,
-LCOM = (P > Q) ? (P - Q) : 0
-
-Indirect access to fields via local methods can be considered by setting a
-metric configuration parameter.
-
-
-Number Of Classes - NOC
-
-The overall size of the system can be estimated by calculating the number
-of classes it contains. A large system with more classes is more complex
-than a smaller one because the number of potential interactions between
-objects is higher. This reduces the comprehensibility of the system which
-in turn makes it harder to test, debug and maintain.
-
-If the number of classes in the system can be projected during the initial
-design phase of the project it can serve as a base for estimating the total
-effort and cost of developing, debugging and maintaining the system.
-
-The NOC metric can also usefully be applied at the package and class level
-as well as the total system.
-
-NOCL is defined for class and interfaces. It counts the number of classes or
-interfaces that are declared. This is usually 1, but nested class declarations
-will increase this number.
-
-
-
-
-
-
- .bannercell {
- border: 0px;
- padding: 0px;
- }
- body {
- margin-left: 10;
- margin-right: 10;
- font:normal 80% arial,helvetica,sanserif;
- background-color:#FFFFFF;
- color:#000000;
- }
- .a td {
- background: #efefef;
- }
- .b td {
- background: #fff;
- }
- th, td {
- text-align: left;
- vertical-align: top;
- }
- th {
- font-weight:bold;
- background: #ccc;
- color: black;
- }
- table, th, td {
- font-size:100%;
- border: none
- }
- table.log tr td, tr th {
-
- }
- h2 {
- font-weight:bold;
- font-size:140%;
- margin-bottom: 5;
- }
- h3 {
- font-size:100%;
- font-weight:bold;
- background: #525D76;
- color: white;
- text-decoration: none;
- padding: 5px;
- margin-right: 2px;
- margin-left: 2px;
- margin-bottom: 0;
- }
- .Error {
- font-weight:bold; color:red;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Class .
-
-
- Methods
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
- /
-
- .html
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Summary
-
-
-
-
- Note: Metrics evaluate the quality of software by analyzing the program source and quantifying
- various kind of complexity. Complexity is a common source of problems and defects in software.
- High complexity makes it more difficult to develop, understand, maintain, extend, test and debug
- a program.
-
- The primary use of metrics is to focus your attention on those parts of code that potentially are
- complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial
- actions.
- For additional information about metrics and their meaning, please consult
- Metamata Metrics manual.
-
-
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Package
-
-
-
-
-
-
- Note: Metrics evaluate the quality of software by analyzing the program source and quantifying
- various kind of complexity. Complexity is a common source of problems and defects in software.
- High complexity makes it more difficult to develop, understand, maintain, extend, test and debug
- a program.
-
- The primary use of metrics is to focus your attention on those parts of code that potentially are
- complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial
- actions.
- For additional information about metrics and their meaning, please consult
- Metamata Metrics manual.
-
-
-
-
-
-
- Classes
-
-
-
-
-
-
-
-
-
-
-
-
-
- ../
-
-
-
-
-
- ../
-
-
-
-
-
-
-
- stylesheet.css
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Name
- V(G)
- LOC
- DIT
- NOA
- NRM
- NLM
- WMC
- RFC
- DAC
- FANOUT
- CBO
- LCOM
- NOCL
-
-
-
-
-
-
- Name
- V(G)
- LOC
- FANOUT
- CBO
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- a
- b
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Error
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/tagdiff.xsl b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/tagdiff.xsl
deleted file mode 100644
index 5d430a79da..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/etc/tagdiff.xsl
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Tagdiff between and
-
- Designed for use with Ant .
-
-
-
-
-
- New Files
- New
-
-
-
-
- Modified Files
- Modified
-
-
-
-
-
- Removed Files
- Removed
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - entries
-
- (back to top)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- mailto:
-
-
-
-
-
-
-
-
- /
-
-
-
-
-
-
-
- / ?rev= &content-type=text/x-cvsweb-markup
-
-
- / ?r1= &r2= &diff_format=h
-
- ( --> )
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/plugin.properties b/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/plugin.properties
deleted file mode 100644
index 658714d777..0000000000
--- a/org.adempiere.target.platform-feature/plugins/org.apache.ant_1.7.1.v20100518-1145/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2010 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-pluginName = Apache Ant
-providerName = Eclipse Orbit
diff --git a/org.adempiere.tomcat.config/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.tomcat.config/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 577ba9c089..0000000000
--- a/org.adempiere.tomcat.config/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,8 +0,0 @@
-#Wed Jul 14 01:21:39 MYT 2010
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
diff --git a/org.adempiere.tomcat.config/META-INF/MANIFEST.MF b/org.adempiere.tomcat.config/META-INF/MANIFEST.MF
deleted file mode 100644
index 43ed2904f1..0000000000
--- a/org.adempiere.tomcat.config/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: TomcatConfig
-Bundle-SymbolicName: org.adempiere.tomcat.config
-Bundle-Version: 2.1.0
-Fragment-Host: org.eclipse.gemini.web.tomcat;bundle-version="1.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
diff --git a/org.adempiere.tomcat.config/META-INF/tomcat/dev.readme.txt b/org.adempiere.tomcat.config/META-INF/tomcat/dev.readme.txt
deleted file mode 100644
index a8b121a5fc..0000000000
--- a/org.adempiere.tomcat.config/META-INF/tomcat/dev.readme.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-For development, save server.dev.xml as server.xml and change the ssl keystorepass to match
-the keystorepass you use for your development jre.
-
-This step is to enabled tomcat ssl connector which is needed for the swing client to use the
-remote Server and Status service.
\ No newline at end of file
diff --git a/org.adempiere.tomcat.config/META-INF/tomcat/server.dev.xml b/org.adempiere.tomcat.config/META-INF/tomcat/server.dev.xml
deleted file mode 100644
index 23ff2f1d5e..0000000000
--- a/org.adempiere.tomcat.config/META-INF/tomcat/server.dev.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.tomcat.config/META-INF/tomcat/serverTemplate.xml b/org.adempiere.tomcat.config/META-INF/tomcat/serverTemplate.xml
deleted file mode 100644
index acc07d9dcf..0000000000
--- a/org.adempiere.tomcat.config/META-INF/tomcat/serverTemplate.xml
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.tomcat.config/buckminster.cspec b/org.adempiere.tomcat.config/buckminster.cspec
deleted file mode 100644
index 5e3c23418e..0000000000
--- a/org.adempiere.tomcat.config/buckminster.cspec
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.tomcat.config/build.properties b/org.adempiere.tomcat.config/build.properties
deleted file mode 100644
index a38a06e232..0000000000
--- a/org.adempiere.tomcat.config/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
-bin.excludes = META-INF/tomcat/dev.readme.txt,\
- META-INF/tomcat/server.dev.xml,\
- META-INF/tomcat/server.xml
diff --git a/org.adempiere.ui.swing-feature/feature.xml b/org.adempiere.ui.swing-feature/feature.xml
index 3a630aceca..20df2214f1 100644
--- a/org.adempiere.ui.swing-feature/feature.xml
+++ b/org.adempiere.ui.swing-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -17,21 +17,21 @@
-
+
+ version="3.0.0.qualifier"/>
+
+
+
+
diff --git a/org.adempiere.ui.swing-feature/swingclient.product b/org.adempiere.ui.swing-feature/swingclient.product
index 63689ee191..9d6e30fa82 100644
--- a/org.adempiere.ui.swing-feature/swingclient.product
+++ b/org.adempiere.ui.swing-feature/swingclient.product
@@ -1,7 +1,7 @@
-
+
@@ -26,10 +26,10 @@
-
-
-
-
+
+
+
+
diff --git a/org.adempiere.ui.swing-feature/swingclient.product.launch b/org.adempiere.ui.swing-feature/swingclient.product.launch
index 313c7257a4..19b17453fe 100644
--- a/org.adempiere.ui.swing-feature/swingclient.product.launch
+++ b/org.adempiere.ui.swing-feature/swingclient.product.launch
@@ -4,7 +4,7 @@
-
+
@@ -12,8 +12,9 @@
-
+
+
@@ -21,8 +22,8 @@
-
-
+
+
diff --git a/org.adempiere.ui.swing/.classpath b/org.adempiere.ui.swing/.classpath
index 8822724374..92009dc82c 100644
--- a/org.adempiere.ui.swing/.classpath
+++ b/org.adempiere.ui.swing/.classpath
@@ -1,11 +1,18 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.ui.swing/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.ui.swing/.settings/org.eclipse.jdt.core.prefs
index ee6ba6eb35..f42de363af 100644
--- a/org.adempiere.ui.swing/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.ui.swing/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Wed Jul 14 15:37:06 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.ui.swing/.settings/org.eclipse.wst.common.project.facet.core.xml b/org.adempiere.ui.swing/.settings/org.eclipse.wst.common.project.facet.core.xml
index d0e0b2d1bf..81c1656497 100644
--- a/org.adempiere.ui.swing/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/org.adempiere.ui.swing/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -2,6 +2,6 @@
-
+
diff --git a/org.adempiere.ui.swing/META-INF/MANIFEST.MF b/org.adempiere.ui.swing/META-INF/MANIFEST.MF
index e53e5496aa..ed130faefb 100644
--- a/org.adempiere.ui.swing/META-INF/MANIFEST.MF
+++ b/org.adempiere.ui.swing/META-INF/MANIFEST.MF
@@ -1,8 +1,8 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Swing Client
+Bundle-Name: iDempiere Swing Client
Bundle-SymbolicName: org.adempiere.ui.swing;singleton:=true
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-ClassPath: client.jar,
swingx-1.6.jar,
looks-2.0.4.jar,
@@ -68,15 +68,15 @@ Export-Package: com.jgoodies.looks,
org.jdesktop.swingx.tree,
org.jdesktop.swingx.treetable,
org.jdesktop.swingx.util
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.ui;bundle-version="2.1.0",
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.ui;bundle-version="3.0.0",
org.restlet;bundle-version="2.1.0",
org.restlet.ext.net;bundle-version="2.1.0",
org.restlet.ext.servlet;bundle-version="2.1.0",
org.restlet.ext.ssl;bundle-version="2.1.0"
Eclipse-ExtensibleAPI: true
Eclipse-RegisterBuddy: org.adempiere.base
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.net.ssl,
net.sf.jasperreports.engine,
org.apache.ecs,
diff --git a/org.adempiere.ui.swing/build.properties b/org.adempiere.ui.swing/build.properties
index 3d5f086139..0944263797 100644
--- a/org.adempiere.ui.swing/build.properties
+++ b/org.adempiere.ui.swing/build.properties
@@ -15,4 +15,4 @@ bin.includes = META-INF/,\
OSGI-INF/reportviewerprovider.xml,\
OSGI-INF/defaultformfactory.xml
source.client.jar = src/
-output.client.jar = build/
+output.client.jar = bin/
diff --git a/org.adempiere.ui.zk-feature/feature.xml b/org.adempiere.ui.zk-feature/feature.xml
index 28d2b00696..4856cd72e5 100644
--- a/org.adempiere.ui.zk-feature/feature.xml
+++ b/org.adempiere.ui.zk-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -17,20 +17,20 @@
-
+
+ version="3.0.0.qualifier"/>
diff --git a/org.adempiere.ui.zk.example/.classpath b/org.adempiere.ui.zk.example/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.adempiere.ui.zk.example/.classpath
+++ b/org.adempiere.ui.zk.example/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.adempiere.ui.zk.example/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.ui.zk.example/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.adempiere.ui.zk.example/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.ui.zk.example/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.ui.zk.example/META-INF/MANIFEST.MF b/org.adempiere.ui.zk.example/META-INF/MANIFEST.MF
index f6edfc3db7..56cfd134f6 100644
--- a/org.adempiere.ui.zk.example/META-INF/MANIFEST.MF
+++ b/org.adempiere.ui.zk.example/META-INF/MANIFEST.MF
@@ -5,7 +5,7 @@ Bundle-SymbolicName: org.adempiere.ui.zk.example
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: org.adempiere.ui.zk.example.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.adempiere.base,
org.adempiere.base.equinox,
org.adempiere.exceptions,
diff --git a/org.adempiere.ui.zk/.classpath b/org.adempiere.ui.zk/.classpath
index c487edbc9e..e4eb7a7d31 100644
--- a/org.adempiere.ui.zk/.classpath
+++ b/org.adempiere.ui.zk/.classpath
@@ -1,11 +1,11 @@
+
+
+
-
-
-
-
+
diff --git a/org.adempiere.ui.zk/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.ui.zk/.settings/org.eclipse.jdt.core.prefs
index 790a7bc887..7341ab1683 100644
--- a/org.adempiere.ui.zk/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.ui.zk/.settings/org.eclipse.jdt.core.prefs
@@ -1,12 +1,11 @@
-#Fri Nov 27 23:38:58 CET 2009
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.ui.zk/.tomcatplugin b/org.adempiere.ui.zk/.tomcatplugin
deleted file mode 100644
index a3938844e2..0000000000
--- a/org.adempiere.ui.zk/.tomcatplugin
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
- /
- false
- true
- false
- true
-
-
- webui
-
- /JasperReports/build
- /JasperReportsTools/bin
- /JasperReportsTools/lib/commons-beanutils-1.7.jar
- /JasperReportsTools/lib/commons-digester-1.7.jar
- /JasperReportsTools/lib/iReport.jar
- /JasperReportsTools/lib/jasperreports-1.3.0.jar
- /JasperReportsTools/lib/jfreechart-1.0.2.jar
- /base/build
- /client/build
- /extend/build
- /jboss/client/jbossall-client.jar
- /looks/build
- /tools/build
- /tools/lib/Verisign.jar
- /tools/lib/activation.jar
- /tools/lib/ant.jar
- /tools/lib/barbecue-1.1.jar
- /tools/lib/bsh-2.0b5.jar
- /tools/lib/bsh-engine.jar
- /tools/lib/c3p0-0.9.1.2.jar
- /tools/lib/commons-net-1.4.0.jar
- /tools/lib/groovy-all-1.5.1.jar
- /tools/lib/groovy-engine.jar
- /tools/lib/iText-2.1.7.jar
- /tools/lib/jcommon-1.0.5.jar
- /tools/lib/jfreechart-1.0.2.jar
- /tools/lib/jnlp.jar
- /tools/lib/jpayment.jar
- /tools/lib/jpedal.jar
- /tools/lib/jstl.jar
- /tools/lib/junit.jar
- /tools/lib/jython-engine.jar
- /tools/lib/jython.jar
- /tools/lib/log4j.jar
- /tools/lib/looks-2.0.4.jar
- /tools/lib/mail.jar
- /tools/lib/ocrs12.jar
- /tools/lib/ojdbc14.jar
- /tools/lib/poi-2.0-final-20040126.jar
- /tools/lib/postgresql.jar
- /tools/lib/script-api.jar
- /tools/lib/standard.jar
- /tools/lib/swingx-0.9.0.jar
- /tools/lib/xdoclet-1.2.3.jar
- /tools/lib/xercesImpl.jar
- /zkwebui/WEB-INF/classes
- /zkwebui/WEB-INF/lib/junit.jar
- /zkwebui/WEB-INF/lib/timelinez.jar
- /zkwebui/WEB-INF/lib/zcommon.jar
- /zkwebui/WEB-INF/lib/zhtml.jar
- /zkwebui/WEB-INF/lib/zk.jar
- /zkwebui/WEB-INF/lib/zkex.jar
- /zkwebui/WEB-INF/lib/zkmax.jar
- /zkwebui/WEB-INF/lib/zkplus.jar
- /zkwebui/WEB-INF/lib/zul.jar
- org.eclipse.jdt.junit.JUNIT_CONTAINER/3
- org.eclipse.jst.j2ee.internal.module.container
- org.eclipse.jst.j2ee.internal.web.container
- org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/C-_applications_apache-tomcat-5.5.26
-
-
diff --git a/org.adempiere.ui.zk/META-INF/MANIFEST.MF b/org.adempiere.ui.zk/META-INF/MANIFEST.MF
index 7b22d64915..96fa5d74fe 100644
--- a/org.adempiere.ui.zk/META-INF/MANIFEST.MF
+++ b/org.adempiere.ui.zk/META-INF/MANIFEST.MF
@@ -1,13 +1,19 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Zk Web Client
+Bundle-Name: iDempiere Web Client
Bundle-SymbolicName: org.adempiere.ui.zk;singleton:=true
-Bundle-Version: 2.1.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Import-Package: javax.activation;version="1.1.1",
+Bundle-Version: 3.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Import-Package: javax.activation,
+ javax.annotation;version="1.2.0",
+ javax.annotation.processing,
+ javax.annotation.security;version="1.2.0",
+ javax.annotation.sql;version="1.2.0",
javax.servlet,
+ javax.servlet.annotation;version="3.1.0",
javax.servlet.http,
- metainfo.zk,
+ javax.servlet.jsp.resources;version="2.3.0",
+ javax.servlet.resources;version="3.1.0",
net.sf.jasperreports.engine,
net.sf.jasperreports.engine.export,
net.sf.jasperreports.engine.util,
@@ -18,12 +24,12 @@ Import-Package: javax.activation;version="1.1.1",
org.apache.tools.ant,
org.apache.tools.ant.taskdefs,
org.compiere.css,
- org.osgi.framework;version="1.5.0",
+ org.osgi.framework;version="1.7.0",
org.osgi.service.event;version="1.3.0",
org.osgi.util.tracker;version="1.5.0",
- org.slf4j;version="1.6.1",
- org.slf4j.helpers;version="1.6.1",
- org.slf4j.spi;version="1.6.1"
+ org.slf4j;version="1.7.2",
+ org.slf4j.helpers;version="1.7.2",
+ org.slf4j.spi;version="1.7.2"
DynamicImport-Package: action.images
Bundle-ClassPath: .,
WEB-INF/lib/atmosphere-compat-jbossweb-1.0.4.jar,
@@ -83,8 +89,8 @@ Export-Package: fi.jawsy.jawwa.zk.atmosphere,
web.js.jawwa.atmosphere,
web.js.zkforge,
web.js.zkforge.mold
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.ui;bundle-version="2.1.0",
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.ui;bundle-version="3.0.0",
org.zkoss.zk.library;bundle-version="6.0.0"
Bundle-Activator: org.adempiere.webui.WebUIActivator
Eclipse-ExtensibleAPI: true
diff --git a/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.js b/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.js
index 3823389874..6253b33dac 100644
--- a/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.js
+++ b/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.js
@@ -1 +1 @@
-(function(){var c={lt:"<",gt:">",amp:"&",quot:'"'},f={};for(var b in c){f[c[b]]=b}function g(k){var i=k.indexOf("//");if(i>0){i=k.indexOf("/",i+2);if(i>0){return k.substring(i)}}}function a(o,m){o.push(m);for(var i=m.frames,n=0,k=i.length;n0||k>0?m>k?j:i:o}zUtl={isChar:function(j,i){return(i.digit&&j>="0"&&j<="9")||(i.upper&&j>="A"&&j<="Z")||(i.lower&&j>="a"&&j<="z")||(i.whitespace&&(j==" "||j=="\t"||j=="\n"||j=="\r"))||i[j]},parseMap:function(r,n,j){var k={};if(r){var i=r.split(n||",");if(j){var m=[],u=new RegExp(j,"g"),q="",s,l;while((s=i.shift())!==undefined){if((l=(q+=s).match(u))&&l.length!=1){if(q){m.push(q)}q=""}else{q+=n}}i=m}for(var p=i.length;p--;){var q=i[p].trim(),o=q.indexOf("=");if(o!=-1){k[q.substring(0,o)]=q.substring(o+1,q.length).trim()}}}return k},encodeXML:function(t,i){t=t!=null?String(t):"";var u=t.length,o=i&&i.pre,m=o||(i&&i.multiline),l=i?i.maxlength:0;if(!m&&l&&u>l){var r=l;while(r>0&&t.charAt(r-1)==" "){--r}i.maxlength=0;return zUtl.encodeXML(t.substring(0,r)+"...",i)}var s=[],p=0,q;if(m||o){for(var r=0;r\n");p=r+1}else{if(o&&(n==" "||n=="\t")){s.push(t.substring(p,r)," ");if(n=="\t"){s.push(" ")}p=r+1}}}}}else{for(var r=0;r=0){var r=i.charAt(p+1)=="#"?String.fromCharCode(i.charAt(p+2).toLowerCase()=="x"?parseInt(i.substring(p+3,m),16):parseInt(i.substring(p+2,m),10)):c[i.substring(p+1,m)];if(r){q+=i.substring(o,p)+r;o=(p=m)+1}}}}return !o?i:o ',i0:' ',now:jq.now,today:function(i){var o=new Date(),m=0,k=0,l=0,n=0;if(typeof i=="string"){var j=i.toLowerCase();if(j.indexOf("h")>=0||j.indexOf("k")>=0){m=o.getHours()}if(i.indexOf("m")>=0){k=o.getMinutes()}if(i.indexOf("s")>=0){l=o.getSeconds()}if(i.indexOf("S")>=0){n=o.getMilliseconds()}}else{if(i){return o}}return new Date(o.getFullYear(),o.getMonth(),o.getDate(),m,k,l,n)},isAncestor:function(i,j){if(!i){return true}for(;j;j=j.getParent?j.getParent():j.parent){if(i==j){return true}}return false},progressbox:function(w,l,C,F,i){if(C&&zk.Page.contained.length){for(var H=zk.Page.contained.length,G=zk.Page.contained[--H];G;G=zk.Page.contained[--H]){if(!G._applyMask){G._applyMask=new zk.eff.Mask({id:G.uuid+"-mask",message:l,anchor:G.$n()})}}return}if(i&&i.busy){zk.busy++;jq.focusOut()}var r=jq.innerX(),q=jq.innerY(),D=' style="left:'+r+"px;top:"+q+'px"',k=w+"-t",E=w+"-m",s='
";if(F){s+='
'}jq(document.body).append(s+"
");var I=jq(w,zk),A=I[0],J=jq(k,zk),t=J[0],B=t.style;if(C){A.z_mask=new zk.eff.FullMask({mask:jq(E,zk)[0],zIndex:J.css("z-index")-1})}if(C&&J.length){B.left=jq.px((jq.innerWidth()-t.offsetWidth)/2+r);B.top=jq.px((jq.innerHeight()-t.offsetHeight)/2+q)}else{var o=zk.progPos;if(o){var j,u,z=jq.innerWidth(),v=jq.innerHeight(),K=z-zk(t).offsetWidth(),p=v-zk(t).offsetHeight();if(o.indexOf("mouse")>=0){var m=zk.currentPointer;j=m[0]+10;u=m[1]+10}else{if(o.indexOf("left")>=0){j=r}else{if(o.indexOf("right")>=0){j=r+K-1}else{if(o.indexOf("center")>=0){j=r+K/2}else{j=0}}}if(o.indexOf("top")>=0){u=q}else{if(o.indexOf("bottom")>=0){u=q+p-1}else{if(o.indexOf("center")>=0){u=q+p/2}else{u=0}}}j=j=0?m.substring(0,l):m,k=g(location.href);l=k.indexOf("#");if(l>=0){k=k.substring(0,l)}if(k!=i){return}}location.reload()}}},frames:function(i){var j=[];a(j,i);return j},intsToString:function(m){if(!m){return""}var n=[];for(var l=0,i=m.length;l=0?p.substring(m,l):p.substring(m)).trim();if(n.length==0){if(l<0){break}o.push(i)}else{o.push(zk.parseInt(n))}if(l<0){break}m=l+1}return o},mapToString:function(m,j,l){j=j||"=";l=l||" ";var k=[];for(var i in m){k.push(l,i,j,m[i])}k[0]="";return k.join("")},appendAttr:function(i,k,j){return k||j?" "+i+'="'+k+'"':""},fireSized:function(j,k){if(zUtl.isImageLoading()||zk.clientinfo){var i=arguments.callee;setTimeout(function(){return i(j,k)},20);return}j=h(j);if(!(k<0)){zWatch.fireDown("beforeSize",j,null,k>0)}zWatch.fireDown("onFitSize",j,{reverse:true});zWatch.fireDown("onSize",j)},fireShown:function(i,j){zWatch.fireDown("onShow",i);zUtl.fireSized(i,j)},loadImage:function(i){if(!e[i]){e[i]=true;d(i)}},isImageLoading:function(){for(var img in eo){if(img.complete){try{delete e[img.src]}catch(err){}try{delete eo[img.src]}catch(err){}}}for(var i in e){return true}return false}};var e={};var eo={};function d(j){var i=new Image(),k=function(){try{delete e[j]}catch(err){}try{delete eo[j]}catch(err){}};eo[j]=i;i.onerror=i.onload=i.onabort=k;i.src=j}})();
+(function(){var c={lt:"<",gt:">",amp:"&",quot:'"'},f={};for(var b in c){f[c[b]]=b}function g(k){var i=k.indexOf("//");if(i>0){i=k.indexOf("/",i+2);if(i>0){return k.substring(i)}}}function a(o,m){o.push(m);for(var i=m.frames,n=0,k=i.length;n0||k>0?m>k?j:i:o}zUtl={isChar:function(j,i){return(i.digit&&j>="0"&&j<="9")||(i.upper&&j>="A"&&j<="Z")||(i.lower&&j>="a"&&j<="z")||(i.whitespace&&(j==" "||j=="\t"||j=="\n"||j=="\r"))||i[j]},parseMap:function(r,n,j){var k={};if(r){var i=r.split(n||",");if(j){var m=[],u=new RegExp(j,"g"),q="",s,l;while((s=i.shift())!==undefined){if((l=(q+=s).match(u))&&l.length!=1){if(q){m.push(q)}q=""}else{q+=n}}i=m}for(var p=i.length;p--;){var q=i[p].trim(),o=q.indexOf("=");if(o!=-1){k[q.substring(0,o)]=q.substring(o+1,q.length).trim()}}}return k},encodeXML:function(t,i){t=t!=null?String(t):"";var u=t.length,o=i&&i.pre,m=o||(i&&i.multiline),l=i?i.maxlength:0;if(!m&&l&&u>l){var r=l;while(r>0&&t.charAt(r-1)==" "){--r}i.maxlength=0;return zUtl.encodeXML(t.substring(0,r)+"...",i)}var s=[],p=0,q;if(m||o){for(var r=0;r\n");p=r+1}else{if(o&&(n==" "||n=="\t")){s.push(t.substring(p,r)," ");if(n=="\t"){s.push(" ")}p=r+1}}}}}else{for(var r=0;r=0){var r=i.charAt(p+1)=="#"?String.fromCharCode(i.charAt(p+2).toLowerCase()=="x"?parseInt(i.substring(p+3,m),16):parseInt(i.substring(p+2,m),10)):c[i.substring(p+1,m)];if(r){q+=i.substring(o,p)+r;o=(p=m)+1}}}}return !o?i:o ',i0:' ',now:jq.now,today:function(i){var o=new Date(),m=0,k=0,l=0,n=0;if(typeof i=="string"){var j=i.toLowerCase();if(j.indexOf("h")>=0||j.indexOf("k")>=0){m=o.getHours()}if(i.indexOf("m")>=0){k=o.getMinutes()}if(i.indexOf("s")>=0){l=o.getSeconds()}if(i.indexOf("S")>=0){n=o.getMilliseconds()}}else{if(i){return o}}return new Date(o.getFullYear(),o.getMonth(),o.getDate(),m,k,l,n)},isAncestor:function(i,j){if(!i){return true}for(;j;j=j.getParent?j.getParent():j.parent){if(i==j){return true}}return false},progressbox:function(z,l,D,G,i){if(D&&zk.Page.contained.length){for(var I=zk.Page.contained.length,H=zk.Page.contained[--I];H;H=zk.Page.contained[--I]){if(!H._applyMask){H._applyMask=new zk.eff.Mask({id:H.uuid+"-mask",message:l,anchor:H.$n()})}}return}if(i&&i.busy){zk.busy++;jq.focusOut()}var r=jq.innerX(),q=jq.innerY(),E=' style="left:'+r+"px;top:"+q+'px"',k=z+"-t",F=z+"-m",s='
";if(G){s+='
'}jq(document.body).append(s+"
");var J=jq(z,zk),B=J[0],K=jq(k,zk),t=K[0],C=t.style;if(D){var w=K.css("z-index");if(w=="auto"){w=1}B.z_mask=new zk.eff.FullMask({mask:jq(F,zk)[0],zIndex:w-1})}if(D&&K.length){C.left=jq.px((jq.innerWidth()-t.offsetWidth)/2+r);C.top=jq.px((jq.innerHeight()-t.offsetHeight)/2+q)}else{var o=zk.progPos;if(o){var j,u,A=jq.innerWidth(),v=jq.innerHeight(),L=A-zk(t).offsetWidth(),p=v-zk(t).offsetHeight();if(o.indexOf("mouse")>=0){var m=zk.currentPointer;j=m[0]+10;u=m[1]+10}else{if(o.indexOf("left")>=0){j=r}else{if(o.indexOf("right")>=0){j=r+L-1}else{if(o.indexOf("center")>=0){j=r+L/2}else{j=0}}}if(o.indexOf("top")>=0){u=q}else{if(o.indexOf("bottom")>=0){u=q+p-1}else{if(o.indexOf("center")>=0){u=q+p/2}else{u=0}}}j=j=0?m.substring(0,l):m,k=g(location.href);l=k.indexOf("#");if(l>=0){k=k.substring(0,l)}if(k!=i){return}}location.reload()}}},frames:function(i){var j=[];a(j,i);return j},intsToString:function(m){if(!m){return""}var n=[];for(var l=0,i=m.length;l=0?p.substring(m,l):p.substring(m)).trim();if(n.length==0){if(l<0){break}o.push(i)}else{o.push(zk.parseInt(n))}if(l<0){break}m=l+1}return o},mapToString:function(m,j,l){j=j||"=";l=l||" ";var k=[];for(var i in m){k.push(l,i,j,m[i])}k[0]="";return k.join("")},appendAttr:function(i,k,j){return k||j?" "+i+'="'+k+'"':""},fireSized:function(j,k){if(zUtl.isImageLoading()||zk.clientinfo){var i=arguments.callee;setTimeout(function(){return i(j,k)},20);return}j=h(j);if(!(k<0)){zWatch.fireDown("beforeSize",j,null,k>0)}zWatch.fireDown("onFitSize",j,{reverse:true});zWatch.fireDown("onSize",j)},fireShown:function(i,j){zWatch.fireDown("onShow",i);zUtl.fireSized(i,j)},loadImage:function(i){if(!e[i]){e[i]=true;d(i)}},isImageLoading:function(){for(var url in iMap){var img=iMap[url];if(img.complete){try{delete e[url];}catch(err){}try{delete iMap[url];}catch(err){}}}for(var i in e){return true}return false}};var e={};var iMap={};function d(j){var i=new Image(),k=function(){try{delete e[j];}catch(err){}try{delete iMap[j];}catch(err){}};i.onerror=i.onload=k;i.src=j}})();
\ No newline at end of file
diff --git a/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.src.js b/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.src.js
index accb6824aa..10dc460cf6 100644
--- a/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.src.js
+++ b/org.adempiere.ui.zk/WEB-INF/cwr/js/zk/utl.src.js
@@ -1,4 +1,17 @@
+/* util.js
+ Purpose:
+
+ Description:
+
+ History:
+ Tue Sep 30 09:02:06 2008, Created by tomyeh
+
+Copyright (C) 2008 Potix Corporation. All Rights Reserved.
+
+This program is distributed under LGPL Version 2.1 in the hope that
+it will be useful, but WITHOUT ANY WARRANTY.
+*/
(function () {
var _decs = {lt: '<', gt: '>', amp: '&', quot: '"'},
_encs = {};
@@ -6,20 +19,24 @@
_encs[_decs[v]] = v;
function _pathname(url) {
- var j = url.indexOf("//");
+ var j = url.indexOf('//');
if (j > 0) {
- j = url.indexOf("/", j + 2);
+ j = url.indexOf('/', j + 2);
if (j > 0) return url.substring(j);
}
}
function _frames(ary, w) {
-
+ //Note: the access of frames is allowed for any window (even if it connects other website)
ary.push(w);
for (var fs = w.frames, j = 0, l = fs.length; j < l; ++j)
_frames(ary, fs[j]);
}
-
+ /* Returns the onSize target of the given widget.
+ * The following code is dirty since it checks _hflexsz (which is implementation)
+ * FUTRE: consider to have zk.Widget.beforeSize to clean up _hflexsz and
+ * this method considers only if _hflex is min
+ */
function _onSizeTarget(wgt) {
var r1 = wgt, p1 = r1,
j1 = -1;
@@ -27,7 +44,7 @@
delete p1._hflexsz;
r1 = p1;
++j1;
- if (p1.ignoreFlexSize_('w'))
+ if (p1.ignoreFlexSize_('w')) //p1 will not affect its parent's flex size
break;
}
@@ -37,16 +54,60 @@
delete p2._vflexsz;
r2 = p2;
++j2;
- if (p2.ignoreFlexSize_('h'))
+ if (p2.ignoreFlexSize_('h')) //p2 will not affect its parent's flex size
break;
}
return j1 > 0 || j2 > 0 ? j1 > j2 ? r1 : r2: wgt;
}
-
-zUtl = {
-
-
+/** @class zUtl
+ * @import zk.Widget
+ * @import zk.xml.Utl
+ * The basic utilties.
+ * For more utilities, refer to {@link Utl}.
+ */
+zUtl = { //static methods
+ //Character
+ /**
+ * Returns whether the character is according to its opts.
+ * @param char cc the character
+ * @param Map opts the options.
+
+ Allowed Options
+
+
+ Name
+ Allowed Values
+ Description
+
+
+ digit
+ true, false
+ Specifies the character is digit only.
+
+
+ upper
+ true, false
+ Specifies the character is upper case only.
+
+
+ lower
+ true, false
+ Specifies the character is lower case only.
+
+
+ whitespace
+ true, false
+ Specifies the character is whitespace only.
+
+
+ opts[cc]
+ true, false
+ Specifies the character is allowed only.
+
+
+ * @return boolean
+ */
isChar: function (cc, opts) {
return (opts.digit && cc >= '0' && cc <= '9')
|| (opts.upper && cc >= 'A' && cc <= 'Z')
@@ -55,8 +116,19 @@ zUtl = {
|| opts[cc];
},
-
-
+ //HTML/XML
+ /** Parses the specifie text into a map.
+ * For example
+ *
+zUtl.parseMap("a=b,c=d");
+zUtl.parseMap("a='b c',c=de", ',', "'\"");
+
+ * @param String text the text to parse
+ * @param String separator the separator. If omitted, ','
+ * is assumed
+ * @param String quote the quote to handle. Ignored if omitted.
+ * @return Map the map
+ */
parseMap: function (text, separator, quote) {
var map = {};
if (text) {
@@ -85,7 +157,17 @@ zUtl = {
return map;
},
-
+ /** Encodes the string to a valid XML string.
+ * Refer to {@link Utl} for more XML utilities.
+ * @param String txt the text to encode
+ * @param Map opts [optional] the options. Allowd value:
+ *
+ * pre - whether to replace whitespace with
+ * multiline - whether to replace linefeed with <br/>
+ * maxlength - the maximal allowed length of the text
+ *
+ * @return String the encoded text.
+ */
encodeXML: function (txt, opts) {
txt = txt != null ? String(txt):'';
var tl = txt.length,
@@ -97,7 +179,7 @@ zUtl = {
var j = maxlength;
while (j > 0 && txt.charAt(j - 1) == ' ')
--j;
- opts.maxlength = 0;
+ opts.maxlength = 0; //no limit
return zUtl.encodeXML(txt.substring(0, j) + '...', opts);
}
@@ -109,12 +191,12 @@ zUtl = {
out.push(txt.substring(k, j), '&', enc, ';');
k = j + 1;
} else if (multiline && cc == '\n') {
- out.push(txt.substring(k, j), " \n");
+ out.push(txt.substring(k, j), ' \n');
k = j + 1;
} else if (pre && (cc == ' ' || cc == '\t')) {
- out.push(txt.substring(k, j), " ");
+ out.push(txt.substring(k, j), ' ');
if (cc == '\t')
- out.push(" ");
+ out.push(' ');
k = j + 1;
}
}
@@ -130,9 +212,13 @@ zUtl = {
out.push(txt.substring(k));
return out.join('');
},
-
+ /** Decodes the XML string into a normal string.
+ * For example, < is convert to <
+ * @param String txt the text to decode
+ * @return String the decoded string
+ */
decodeXML: function (txt) {
- var out = "";
+ var out = '';
if (!txt) return out;
var k = 0, tl = txt.length;
@@ -157,20 +243,42 @@ zUtl = {
k < tl ? out + txt.substring(k): out;
},
-
+ /** A shortcut of ' cellpadding="0" cellspacing="0" border="0"'
.
+ * @type String
+ */
cellps0: ' cellpadding="0" cellspacing="0" border="0"',
-
+ /** A shortcut of '<img style="height:0;width:0"/>'
.
+ * @type String
+ */
img0: ' ',
-
+ /** A shortcut of '<i style="height:0;width:0"/>'
.
+ * @type String
+ */
i0: ' ',
-
+ /** Returns a long value representing the current time (unit: miliseconds).
+ * @return long
+ * @deprecated As of release 5.0.6, replaced with jq.now().
+ */
now: jq.now,
-
-
+ /** Returns today.
+ * @param boolean full if true, returns the full time,
+ * else only returns year, month, and day.
+ * If omitted, false is assumed
+ * @return Date
+ */
+ /** Returns today.
+ * @param String fmt the time format, such as HH:mm:ss.SSS
+ * If a time element such as seconds not specified in the format, it will
+ * be considered as 0. For example, if the format is "HH:mm", then
+ * the returned object will be today, this hour and this minute, but
+ * the second and milliseconds will be zero.
+ * @return Date
+ * @since 5.0.6
+ */
today: function (fmt) {
var d = new Date(), hr = 0, min = 0, sec = 0, msec = 0;
- if (typeof fmt == "string") {
+ if (typeof fmt == 'string') {
var fmt0 = fmt.toLowerCase();
if (fmt0.indexOf('h') >= 0 || fmt0.indexOf('k') >= 0) hr = d.getHours();
if (fmt.indexOf('m') >= 0) min = d.getMinutes();
@@ -182,7 +290,20 @@ zUtl = {
hr, min, sec, msec);
},
-
+ /** Returns if one is ancestor of the other.
+ * It assumes the object has either a method called getParent
+ * or a field called parent
.
+ * A typical example is used to test the widgets ({@link Widget}).
+ *
+ * Notice that, if you want to test DOM elements, please use
+ * {@link jq#isAncestor} instead.
+ *
+ * @param Object p the parent. This method return true if p is null
+ or p is the same as c
+ * @param Object c the child
+ * @return boolean
+ * @see jq#isAncestor
+ */
isAncestor: function (p, c) {
if (!p) return true;
for (; c; c = c.getParent ? c.getParent(): c.parent)
@@ -191,14 +312,22 @@ zUtl = {
return false;
},
-
-
+ //progress//
+ /** Creates a message box to indicate something is being processed
+ * @param String id the ID of the DOM element being created
+ * @param String msg the message to shown
+ * @param boolean mask whether to show sem-transparent mask to prevent
+ * the user from accessing it.
+ * @param String icon the CSS class used to shown an icon in the box.
+ * Ignored if not specified.
+ * @see #destroyProgressbox
+ */
progressbox: function (id, msg, mask, icon, _opts) {
if (mask && zk.Page.contained.length) {
for (var c = zk.Page.contained.length, e = zk.Page.contained[--c]; e; e = zk.Page.contained[--c]) {
if (!e._applyMask)
e._applyMask = new zk.eff.Mask({
- id: e.uuid + "-mask",
+ id: e.uuid + '-mask',
message: msg,
anchor: e.$n()
});
@@ -208,7 +337,7 @@ zUtl = {
if (_opts && _opts.busy) {
zk.busy++;
- jq.focusOut();
+ jq.focusOut(); //Bug 2912533
}
var x = jq.innerX(), y = jq.innerY(),
@@ -230,13 +359,18 @@ zUtl = {
$txt = jq(idtxt, zk),
txt = $txt[0],
st = txt.style;
- if (mask)
+ if (mask) {
+ // old IE will get the auto value by default.
+ var zIndex = $txt.css('z-index');
+ if (zIndex == 'auto')
+ zIndex = 1;
n.z_mask = new zk.eff.FullMask({
mask: jq(idmsk, zk)[0],
- zIndex: $txt.css('z-index') - 1
+ zIndex: zIndex - 1
});
+ }
- if (mask && $txt.length) {
+ if (mask && $txt.length) { //center
st.left = jq.px((jq.innerWidth() - txt.offsetWidth) / 2 + x);
st.top = jq.px((jq.innerHeight() - txt.offsetHeight) / 2 + y);
} else {
@@ -249,19 +383,19 @@ zUtl = {
wdgap = width - zk(txt).offsetWidth(),
hghgap = height - zk(txt).offsetHeight();
- if (pos.indexOf("mouse") >= 0) {
+ if (pos.indexOf('mouse') >= 0) {
var offset = zk.currentPointer;
left = offset[0] + 10;
top = offset[1] + 10;
} else {
- if (pos.indexOf("left") >= 0) left = x;
- else if (pos.indexOf("right") >= 0) left = x + wdgap -1;
- else if (pos.indexOf("center") >= 0) left = x + wdgap / 2;
+ if (pos.indexOf('left') >= 0) left = x;
+ else if (pos.indexOf('right') >= 0) left = x + wdgap -1;
+ else if (pos.indexOf('center') >= 0) left = x + wdgap / 2;
else left = 0;
- if (pos.indexOf("top") >= 0) top = y;
- else if (pos.indexOf("bottom") >= 0) top = y + hghgap - 1;
- else if (pos.indexOf("center") >= 0) top = y + hghgap / 2;
+ if (pos.indexOf('top') >= 0) top = y;
+ else if (pos.indexOf('bottom') >= 0) top = y + hghgap - 1;
+ else if (pos.indexOf('center') >= 0) top = y + hghgap / 2;
else top = 0;
left = left < x ? x : left;
@@ -274,7 +408,9 @@ zUtl = {
$n.zk.cleanVisibility();
},
-
+ /** Removes the message box created by {@link #progressbox}.
+ * @param String id the ID of the DOM element of the message box
+ */
destroyProgressbox: function (id, _opts) {
if (_opts && _opts.busy && --zk.busy < 0)
zk.busy = 0;
@@ -291,8 +427,19 @@ zUtl = {
}
},
-
-
+ //HTTP//
+ /** Navigates to the specified URL.
+ * @param String url the URL to go to
+ * @param Map opts [optional] the options. Allowed values:
+ *
+ * target - the name of the target browser window. The same browswer
+ * window is assumed if omitted. You can use any value allowed in
+ * the target attribute of the HTML FORM tag, such as _self, _blank,
+ * _parent and _top.
+ * overwrite - whether load a new page in the current browser window.
+ * If true, the new page replaces the previous page's position in the history list.
+ *
+ */
go: function (url, opts) {
opts = opts || {};
if (opts.target) {
@@ -304,7 +451,7 @@ zUtl = {
location.href = url;
var j = url.indexOf('#');
-
+ //bug 3363687, only if '#" exist, has to reload()
if(j < 0)
return;
@@ -315,29 +462,48 @@ zUtl = {
if (j >= 0) pn = pn.substring(0, j);
if (pn != un)
return;
-
+ //fall thru (bug 2882149)
}
location.reload();
}
},
-
+ /** Returns all descendant frames of the given window.
+ * To retrieve all, invoke zUtl.frames(top)
.
+ * Notice: w is included in the returned array.
+ * If you want to exclude it, invoke zUtl.frames(w).$remove(w)
.
+ * @param Window w the browser window
+ * @return Array
+ * @since 5.0.4
+ */
frames: function (w) {
var ary = [];
_frames(ary, w);
return ary;
},
-
+ /** Converts an integer array to a string (separated by comma).
+ * @param int[] ary the integer array to convert.
+ * If null, an empty string is returned.
+ * @return String
+ * @see #stringToInts
+ */
intsToString: function (ary) {
- if (!ary) return "";
+ if (!ary) return '';
var sb = [];
for (var j = 0, k = ary.length; j < k; ++j)
sb.push(ary[j]);
return sb.join();
},
-
+ /** Converts a string separated by comma to an array of integers.
+ * @see #intsToString
+ * @param String text the string to convert.
+ * If null, null is returned.
+ * @param int defaultValue the default value used if the value
+ * is not specified. For example, zUtl.stringToInts("1,,3", 2) returns [1, 2, 3].
+ * @return int[]
+ */
stringToInts: function (text, defaultValue) {
if (text == null)
return null;
@@ -357,7 +523,13 @@ zUtl = {
}
return list;
},
-
+ /** Converts a map to a string
+ * @see #intsToString
+ * @param Map map the map to convert
+ * @param String assign the symbol for assignment. If omitted, '=' is assumed.
+ * @param String separator the symbol for separator. If omitted, ',' is assumed.
+ * @return String
+ */
mapToString: function (map, assign, separator) {
assign = assign || '=';
separator = separator || ' ';
@@ -367,47 +539,92 @@ zUtl = {
out[0] = '';
return out.join('');
},
-
-
+ /** Appends an attribute.
+ * Notice that the attribute won't be appended if val is empty or false.
+ * In other words, it is equivalent to
+ * val ? ' ' + nm + '="' + val + '"': ""
.
+ *
If you want to generate the attribute no matter what val is, use
+ * {@link #appendAttr(String, Object, boolean)}.
+ * @param String nm the name of the attribute
+ * @param Object val the value of the attribute
+ * @since 5.0.3
+ */
+ /** Appends an attribute.
+ * Notice that the attribute won't be appended.
+ * @param String nm the name of the attribute
+ * @param Object val the value of the attribute
+ * @param boolean force whether to append attribute no matter what value it is.
+ * If false (or omitted), it is the same as {@link #appendAttr(String, Object)}.
+ * @since 5.0.3
+ */
appendAttr: function (nm, val, force) {
- return val || force ? ' ' + nm + '="' + val + '"': "";
+ return val || force ? ' ' + nm + '="' + val + '"': '';
},
-
+ /** Fires beforeSize, onFitSize and onSize
+ * @param Widget wgt the widget which the zWatch event will be fired against.
+ * @param int bfsz the beforeSize mode:
+ *
+ * 0 (null/undefined/false): beforeSize sent normally.
+ * -1: beforeSize won't be sent.
+ * 1: beforeSize will be sent with an additional cleanup option,
+ * which will clean up the cached minimal size (if flex=min).
+ *
+ * @since 5.0.8
+ */
fireSized: function (wgt, bfsz) {
if (zUtl.isImageLoading() || zk.clientinfo) {
var f = arguments.callee;
setTimeout(function () {
return f(wgt, bfsz);
- }, 20);
+ }, 20);
return;
}
wgt = _onSizeTarget(wgt);
- if (!(bfsz < 0))
+ if (!(bfsz < 0)) //don't use >= (because bfsz might be undefined)
zWatch.fireDown('beforeSize', wgt, null, bfsz > 0);
zWatch.fireDown('onFitSize', wgt, {reverse: true});
zWatch.fireDown('onSize', wgt);
},
-
+ /** Fires onBeforeSize, onShow, onFitSize, and onSize
+ * @param Widget wgt the widget which the zWatch event will be fired against.
+ * @param int bfsz the beforeSize mode:
+ *
+ * 0 (null/undefined/false): beforeSize sent normally.
+ * -1: beforeSize won't be sent.
+ * 1: beforeSize will be sent with an additional cleanup option,
+ * which will clean up the cached minimal size (if flex=min).
+ *
+ * @since 5.0.8
+ */
fireShown: function (wgt, bfsz) {
zWatch.fireDown('onShow', wgt);
zUtl.fireSized(wgt, bfsz);
},
-
+ /**
+ * Loads an image before ZK client engine to calculate the widget's layout.
+ * @param String url the loading image's localation
+ * @since 6.0.0
+ */
loadImage: function (url) {
if (!_imgMap[url]) {
_imgMap[url] = true;
_loadImage(url);
}
},
-
+ /**
+ * Checks whether all the loading images are finish.
+ * @see #loadImage
+ * @since 6.0.0
+ */
isImageLoading: function () {
- for (var img in _imgObjectMap) {
+ for (var url in _imgObjectMap) {
+ var img = _imgObjectMap[url];
if (img.complete) {
try {
- delete _imgMap[img.src];
+ delete _imgMap[url];
} catch (err) {}
try {
- delete _imgObjectMap[img.src];
+ delete _imgObjectMap[url];
} catch (err) {}
}
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java
index 6380825ee1..50d9fa2c3d 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java
@@ -260,4 +260,8 @@ public class AtmosphereServerPush implements ServerPush {
return "[" + thread + ',' + nActive + ']';
}
}
+
+ @Override
+ public void resume() {
+ }
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
index 98b0b01b84..8b26228bbf 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
+++ b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
@@ -38,10 +38,6 @@ Copyright (C) 2007 Ashley G Ramdass (ADempiere WebUI).
-
-
-
-
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java
index 00d476554e..7b921b7484 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java
@@ -219,8 +219,8 @@ public class AdempiereWebUI extends Window implements EventListener, IWeb
HttpSession httpSess = (HttpSession) currSess.getNativeSession();
String x_Forward_IP = Executions.getCurrent().getHeader("X-Forwarded-For");
- MSession mSession = MSession.get (ctx, x_Forward_IP!=null ? x_Forward_IP : currSess.getRemoteAddr(),
- currSess.getRemoteHost(), httpSess.getId() );
+ MSession mSession = MSession.get (ctx, x_Forward_IP!=null ? x_Forward_IP : Executions.getCurrent().getRemoteAddr(),
+ Executions.getCurrent().getRemoteHost(), httpSess.getId() );
if (clientInfo.userAgent != null) {
mSession.setDescription(mSession.getDescription() + "\n" + clientInfo.toString());
mSession.saveEx();
@@ -373,11 +373,11 @@ public class AdempiereWebUI extends Window implements EventListener, IWeb
Env.getCtx().clear();
session.invalidate();
- if (desktopCache != null)
- desktopCache.removeDesktop(Executions.getCurrent().getDesktop());
-
//redirect to login page
Executions.sendRedirect("index.zul");
+
+ if (desktopCache != null)
+ desktopCache.removeDesktop(Executions.getCurrent().getDesktop());
}
public void logoutAfterTabDestroyed(){
Session session = logout0();
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java
index 3f127b3629..51b61c0841 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java
@@ -58,6 +58,7 @@ import org.compiere.model.DataStatusEvent;
import org.compiere.model.DataStatusListener;
import org.compiere.model.GridField;
import org.compiere.model.GridTab;
+import org.compiere.model.GridTable;
import org.compiere.model.GridWindow;
import org.compiere.model.I_AD_Preference;
import org.compiere.model.MLookup;
@@ -1280,6 +1281,10 @@ DataStatusListener, IADTabpanel, IdSpace, IFieldEditorContainer
if (listPanel.isVisible()) {
listPanel.updateListIndex();
listPanel.dynamicDisplay(col);
+ if (GridTable.DATA_REFRESH_MESSAGE.equals(e.getAD_Message()) ||
+ "Sorted".equals(e.getAD_Message())) {
+ Clients.resize(listPanel.getListbox());
+ }
}
}
@@ -1399,7 +1404,7 @@ DataStatusListener, IADTabpanel, IdSpace, IFieldEditorContainer
if (listPanel.isVisible()) {
listPanel.refresh(gridTab);
listPanel.scrollToCurrentRow();
- Clients.resize(listPanel);
+ Clients.resize(listPanel.getListbox());
} else {
listPanel.deactivate();
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java
index de637b5285..72593c923d 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java
@@ -72,7 +72,7 @@ import org.zkoss.zul.impl.XulElement;
public class GridTabRowRenderer implements RowRenderer, RowRendererExt, RendererCtrl, EventListener {
public static final String GRID_ROW_INDEX_ATTR = "grid.row.index";
- private static final String CELL_DIV_STYLE = "border: none; height: 100%; cursor: pointer; ";
+ private static final String CELL_DIV_STYLE = "height: 100%; cursor: pointer; ";
private static final String CELL_DIV_STYLE_ALIGN_CENTER = CELL_DIV_STYLE + "text-align:center; ";
private static final String CELL_DIV_STYLE_ALIGN_RIGHT = CELL_DIV_STYLE + "text-align:right; ";
@@ -400,12 +400,11 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
}
Cell cell = new Cell();
- cell.setWidth("28px");
cell.setTooltiptext(Msg.getMsg(Env.getCtx(), "Select"));
Checkbox selection = new Checkbox();
selection.setAttribute(GRID_ROW_INDEX_ATTR, rowIndex);
selection.setChecked(gridTab.isSelected(rowIndex));
- cell.setStyle("background-color: transparent !important;");
+ cell.setStyle("border: none;");
selection.addEventListener(Events.ON_CHECK, this);
if (!selection.isChecked()) {
@@ -418,8 +417,8 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
row.appendChild(cell);
cell = new Cell();
- cell.setWidth("18px");
cell.addEventListener(Events.ON_CLICK, this);
+ cell.setStyle("border: none;");
cell.setTooltiptext(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "EditRecord")));
row.appendChild(cell);
@@ -500,6 +499,7 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
row.setStyle("cursor:pointer");
row.addEventListener(Events.ON_CLICK, rowListener);
row.addEventListener(Events.ON_OK, rowListener);
+ row.setTooltiptext("Row " + (rowIndex+1));
if (isActive == null) {
Object isActiveValue = gridTab.getValue(rowIndex, "IsActive");
@@ -514,6 +514,7 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
if (isActive != null && !isActive.booleanValue()) {
LayoutUtils.addSclass("grid-inactive-row", row);
}
+
}
/**
@@ -523,14 +524,13 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
if (currentRow != null && currentRow.getParent() != null && currentRow != row) {
Cell cell = (Cell) currentRow.getChildren().get(1);
if (cell != null) {
- cell.setStyle("background-color: transparent");
cell.setSclass("row-indicator");
}
}
currentRow = row;
Cell cell = (Cell) currentRow.getChildren().get(1);
if (cell != null) {
- cell.setSclass("row-indicator-seld");
+ cell.setSclass("row-indicator-selected");
}
currentRowIndex = gridTab.getCurrentRow();
@@ -823,7 +823,7 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt
public void onEvent(Event event) throws Exception {
if (event.getTarget() instanceof Cell) {
Cell cell = (Cell) event.getTarget();
- if (cell.getSclass() != null && cell.getSclass().indexOf("row-indicator-seld") >= 0)
+ if (cell.getSclass() != null && cell.getSclass().indexOf("row-indicator-selected") >= 0)
Events.sendEvent(gridPanel, new Event(DetailPane.ON_EDIT_EVENT, gridPanel));
else
Events.sendEvent(event.getTarget().getParent(), event);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java
index e73840e1f7..122a891682 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java
@@ -168,7 +168,7 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
if (limit == null || !(limit.equals(Integer.toString(pageSize)))) {
Library.setProperty(CustomGridDataLoader.GRID_DATA_LOADER_LIMIT, Integer.toString(pageSize));
}
- }
+ }
//default true for better UI experience
modeless = MSysConfig.getBooleanValue(MSysConfig.ZK_GRID_EDIT_MODELESS, true);
@@ -181,15 +181,16 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
gridFooter.setStyle(HEADER_GRID_STYLE);
addEventListener("onSelectRow", this);
+ addEventListener("onCustomizeGrid", this);
}
protected void createListbox() {
- listbox = new Grid();
- listbox.setEmptyMessage(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "FindZeroRecords")));
+ listbox = new Grid();
listbox.setSizedByContent(false);
listbox.setVflex("1");
listbox.setHflex("1");
listbox.setSclass("adtab-grid");
+ listbox.setEmptyMessage(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Processing")));
}
public void setDetailPaneMode(boolean detailPaneMode) {
@@ -328,6 +329,8 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
} else {
showRecordsCount();
}
+ if (this.isVisible())
+ Clients.resize(listbox);
}
/**
@@ -361,6 +364,8 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
public void updateListIndex() {
if (gridTab == null || !gridTab.isOpen()) return;
+ updateEmptyMessage();
+
int rowIndex = gridTab.getCurrentRow();
if (pageSize > 0) {
if (paging.getTotalSize() != gridTab.getRowCount())
@@ -460,7 +465,7 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
}
org.zkoss.zul.Column selection = new Column();
- selection.setWidth("28px");
+ selection.setWidth("22px");
try{
selection.setSort("none");
} catch (Exception e) {}
@@ -472,7 +477,7 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
columns.appendChild(selection);
org.zkoss.zul.Column indicator = new Column();
- indicator.setWidth("18px");
+ indicator.setWidth("22px");
try {
indicator.setSort("none");
} catch (Exception e) {}
@@ -569,6 +574,8 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
private void render()
{
+ updateEmptyMessage();
+
listbox.addEventListener(Events.ON_CLICK, this);
updateModel();
@@ -597,6 +604,17 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
}
+ private void updateEmptyMessage() {
+ if (gridTab.getRowCount() == 0)
+ {
+ listbox.setEmptyMessage(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "FindZeroRecords")));
+ }
+ else
+ {
+ listbox.setEmptyMessage(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Processing")));
+ }
+ }
+
private void updateModel() {
listModel = new GridTableListModel((GridTable)tableModel, windowNo);
listModel.setPageSize(pageSize);
@@ -678,6 +696,7 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
listModel.setPage(pgNo);
onSelectedRowChange(0);
gridTab.clearSelection();
+ Clients.resize(listbox);
}
}
else if (event.getTarget() == selectAll)
@@ -703,6 +722,10 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
selectAll.setChecked(false);
}
}
+ else if (event.getName().equals("onCustomizeGrid"))
+ {
+ reInit();
+ }
}
private boolean isAllSelected() {
@@ -1040,18 +1063,25 @@ public class GridView extends Vbox implements EventListener, IdSpace, IFi
}
public void reInit() {
- this.setupFields(gridTab);
- if(listbox.getFrozen()!=null)
- {
- listbox.removeChild(listbox.getFrozen());
- }
- if (listbox.getColumns() != null) {
- listbox.removeChild(listbox.getColumns());
+ listbox.getChildren().clear();
+ listbox.detach();
+
+ if (paging != null) {
+ paging.detach();
+ paging = null;
}
+
+ renderer = null;
init = false;
- setupColumns();
- init = true;
- updateModel();
+
+ Grid tmp = listbox;
+ createListbox();
+ tmp.copyEventListeners(listbox);
+ insertBefore(listbox, gridFooter);
+
+ refresh(gridTab);
+ scrollToCurrentRow();
+ Clients.resize(listbox);
}
/**
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/HelpWindow.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/HelpWindow.java
index 2c2179a364..5ce3f3fe79 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/HelpWindow.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/HelpWindow.java
@@ -34,6 +34,7 @@ import org.compiere.util.Env;
import org.compiere.util.Msg;
import org.compiere.util.WebDoc;
import org.zkoss.zul.Center;
+import org.zkoss.zul.Div;
import org.zkoss.zul.Html;
public class HelpWindow extends Window {
@@ -65,8 +66,11 @@ public class HelpWindow extends Window {
centerPane.setAutoscroll(true);
borderlayout.appendChild(centerPane);
+ Div div = new Div();
+ centerPane.appendChild(div);
+ div.setStyle("width: 100%; height: 100%; overflow: auto;");
Html html = new Html();
- centerPane.appendChild(html);
+ div.appendChild(html);
WebDoc doc = WebDoc.create(true);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/graph/WPerformanceIndicator.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/graph/WPerformanceIndicator.java
index 1174fb354a..9e09dff158 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/graph/WPerformanceIndicator.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/graph/WPerformanceIndicator.java
@@ -163,6 +163,9 @@ public class WPerformanceIndicator extends Panel implements EventListener
if (width == 0)
return; // no space to render
int height = event.getHeight();
+ if (width == 0 && height == 0)
+ return;
+
//set normal height
if (height == 0) {
height = width > 300 ? width * 40 / 100 : width * 85 / 100;
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Grid.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Grid.java
index 7de51abd9e..3ecf136b1d 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Grid.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Grid.java
@@ -17,7 +17,15 @@
package org.adempiere.webui.component;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
import org.zkoss.zk.ui.IdSpace;
+import org.zkoss.zk.ui.event.Event;
+import org.zkoss.zk.ui.event.EventListener;
/**
*
@@ -28,9 +36,11 @@ import org.zkoss.zk.ui.IdSpace;
public class Grid extends org.zkoss.zul.Grid implements IdSpace
{
private static final long serialVersionUID = -4483759833677794926L;
-
- public Grid() {
+ private transient Map> listeners;
+
+ public Grid() {
super();
+ listeners = new HashMap>();
}
public void makeNoStrip() {
@@ -42,5 +52,73 @@ public class Grid extends org.zkoss.zul.Grid implements IdSpace
appendChild(rows);
return rows;
- }
+ }
+
+ @Override
+ public boolean addEventListener(int priority, String evtnm,
+ EventListener extends Event> listener) {
+ boolean b = super.addEventListener(priority, evtnm, listener);
+ if (b) {
+ final EventListenerInfo listenerInfo = new EventListenerInfo(priority, listener);
+ List list = listeners.get(evtnm);
+ if (list != null) {
+ for (Iterator it = list.iterator(); it.hasNext();) {
+ final EventListenerInfo li = it.next();
+ if (li.listener.equals(listener)) {
+ if (li.priority == priority)
+ return false; //nothing to do
+ it.remove(); //re-added later
+ break;
+ }
+ }
+
+ list.add(listenerInfo);
+ } else {
+ listeners.put(evtnm, list = new LinkedList());
+ list.add(listenerInfo);
+ }
+ }
+ return b;
+ }
+
+ @Override
+ public boolean removeEventListener(String evtnm,
+ EventListener extends Event> listener) {
+ boolean b = super.removeEventListener(evtnm, listener);
+ if (b) {
+ List list = listeners.get(evtnm);
+ if (list != null) {
+ for (Iterator it = list.iterator(); it.hasNext();) {
+ final EventListenerInfo li = it.next();
+ if (li.listener.equals(listener)) {
+ it.remove();
+ break;
+ }
+ }
+ }
+ }
+
+ return b;
+ }
+
+ public void copyEventListeners(Grid grid) {
+ for(String evtnm : listeners.keySet()) {
+ if (evtnm.equals("onInitModel"))
+ continue;
+ List list = listeners.get(evtnm);
+ for(EventListenerInfo info : list) {
+ grid.addEventListener(info.priority, evtnm, info.listener);
+ }
+ }
+ }
+
+ private static class EventListenerInfo {
+ private final int priority;
+ private final EventListener extends Event> listener;
+
+ private EventListenerInfo(int priority, EventListener extends Event> listener) {
+ this.priority = priority;
+ this.listener = listener;
+ }
+ }
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Group.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Group.java
index 4971aa5d1d..c66ece9929 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Group.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Group.java
@@ -13,6 +13,7 @@ import org.zkoss.zul.Div;
import org.zkoss.zul.Image;
import org.zkoss.zul.Label;
import org.zkoss.zul.Row;
+import org.zkoss.zul.Span;
public class Group extends org.zkoss.zul.Group {
/**
@@ -87,7 +88,7 @@ public class Group extends org.zkoss.zul.Group {
*
*/
private static final long serialVersionUID = -4070011056533999557L;
- private Image img;
+ private Span span;
private Label lbl;
private String title;
@@ -109,10 +110,10 @@ public class Group extends org.zkoss.zul.Group {
div.setZclass("z-group-header-body");
appendChild(div);
- img = new Image();
- img.setZclass("z-group-img");
- div.appendChild(img);
- img.addEventListener(Events.ON_CLICK, this);
+ span = new Span();
+ div.appendChild(span);
+ span.addEventListener(Events.ON_CLICK, this);
+ span.setZclass("z-group-icon");
lbl = new Label();
lbl.setStyle("cursor: pointer");
@@ -135,7 +136,7 @@ public class Group extends org.zkoss.zul.Group {
public void setOpen(boolean open) {
this.open = open;
- img.setSclass(this.open ? "z-group-img-open" : "z-group-img-close");
+ span.setSclass(this.open ? "z-group-icon-open" : "z-group-icon-close");
}
@Override
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/WListItemRenderer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/WListItemRenderer.java
index 52d34ba87b..105716c24c 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/WListItemRenderer.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/WListItemRenderer.java
@@ -507,6 +507,7 @@ public class WListItemRenderer implements ListitemRenderer, EventListene
header.setStyle("min-width: " + width + "px");
}
+ header.setHflex("true");
m_headers.add(header);
}
else
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java
index 0954b5cc50..d1723dab00 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java
@@ -58,7 +58,6 @@ public class Window extends org.zkoss.zul.Window
public Window()
{
super();
- setShadow(false);
}
/**
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java
index 25b1025223..37175c593c 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java
@@ -105,7 +105,7 @@ public class DashboardController implements EventListener {
public DashboardController() {
dashboardLayout = new Anchorlayout();
- dashboardLayout.setSclass("dashboard-layout slimScroll");
+ dashboardLayout.setSclass("dashboard-layout");
dashboardLayout.setVflex("1");
dashboardLayout.setHflex("1");
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DefaultDesktop.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DefaultDesktop.java
index 9f6cc44898..7aaf0df9d8 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DefaultDesktop.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DefaultDesktop.java
@@ -249,6 +249,9 @@ public class DefaultDesktop extends TabbedDesktop implements MenuListener, Seria
busyDialog.setShadow(false);
homeTab.appendChild(busyDialog);
+ // register as 0
+ registerWindow(homeTab);
+
BroadcastMessageWindow messageWindow = new BroadcastMessageWindow(pnlHead);
BroadcastMsgUtil.showPendingMessage(Env.getAD_User_ID(Env.getCtx()), messageWindow);
@@ -347,16 +350,12 @@ public class DefaultDesktop extends TabbedDesktop implements MenuListener, Seria
{
homeTab.getChildren().clear();
- //register as 0
- registerWindow(homeTab);
-
dashboardController.render(homeTab, this, true);
West w = layout.getWest();
w.getChildren().clear();
sideController.render(w, this, false);
- Clients.response(new AuScript("$('.slimScroll .z-anchorlayout-body').slimScroll({height: '100%',railVisible: true, alwaysVisible: false});"));
}
public void onEvent(Event event)
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WStringEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WStringEditor.java
index 606656ea6c..f2e62e26a0 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WStringEditor.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WStringEditor.java
@@ -120,7 +120,9 @@ public class WStringEditor extends WEditor implements ContextMenuListener
}
if (!tableEditor)
getComponent().setCols(displayLength);
- if (gridField.getDisplayType() == DisplayType.Text)
+ if (tableEditor)
+ getComponent().setMultiline(false);
+ else if (gridField.getDisplayType() == DisplayType.Text)
{
getComponent().setMultiline(true);
}
@@ -134,7 +136,7 @@ public class WStringEditor extends WEditor implements ContextMenuListener
}
else
getComponent().setMultiline(false);
- getComponent().setRows(gridField.getNumLines() <= 0 ? 1 : gridField.getNumLines());
+ getComponent().setRows(gridField.getNumLines() <= 0 || tableEditor ? 1 : gridField.getNumLines());
if (getComponent().getRows() > 1)
getComponent().setHeight("100%");
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/AbstractMenuPanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/AbstractMenuPanel.java
index 31df8170f7..2f39e8543a 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/AbstractMenuPanel.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/AbstractMenuPanel.java
@@ -212,7 +212,6 @@ public abstract class AbstractMenuPanel extends Panel implements EventListener
else if (event.getTarget().getId().equals(ConfirmPanel.A_CANCEL))
{
SessionManager.logoutSession();
- wndLogin.loginCancelled();
+ //wndLogin.loginCancelled();
}
}
@@ -490,7 +490,7 @@ public class ResetPasswordPanel extends Window implements EventListener
@Override
public void onCallback(Integer result) {
SessionManager.logoutSession();
- wndLogin.loginCancelled();
+ //wndLogin.loginCancelled();
}
});
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java
index 91864b9b24..3d94853fee 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/RolePanel.java
@@ -535,13 +535,13 @@ public class RolePanel extends Window implements EventListener, Deferrabl
} else {
ctxBeforeChangeRole = null;
SessionManager.logoutSession();
- wndLogin.loginCancelled();
+ //wndLogin.loginCancelled();
}
}
else if (ON_DEFER_LOGOUT.equals(event.getName()))
{
SessionManager.logoutSession();
- wndLogin.loginCancelled();
+ //wndLogin.loginCancelled();
}
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
index f6136ff8f8..1fdd418db6 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
@@ -265,9 +265,11 @@ public class WAttachment extends Window implements EventListener
bLoad.setImage(ThemeManager.getThemeResource("images/Import24.png"));
bLoad.setSclass("img-btn");
- bLoad.setAttribute("org.zkoss.zul.image.preload", Boolean.TRUE);
+ bLoad.setId("bLoad");
+// bLoad.setAttribute("org.zkoss.zul.image.preload", Boolean.TRUE);
bLoad.setTooltiptext(Msg.getMsg(Env.getCtx(), "Load"));
- bLoad.setUpload(AdempiereWebUI.getUploadSetting());
+// bLoad.setUpload(AdempiereWebUI.getUploadSetting());
+ bLoad.setUpload("true,accept=audio/*|video/*|image/*|MIME_type,native");
bLoad.addEventListener(Events.ON_UPLOAD, this);
bDelete.addEventListener(Events.ON_CLICK, this);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WDocActionPanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WDocActionPanel.java
index 2ed270bf31..0e4e7e0d8a 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WDocActionPanel.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WDocActionPanel.java
@@ -52,6 +52,7 @@ import org.compiere.wf.MWFActivity;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
+import org.zkoss.zul.Div;
import org.zkoss.zul.Label;
import org.zkoss.zul.Listbox;
import org.zkoss.zul.Listitem;
@@ -293,13 +294,15 @@ public class WDocActionPanel extends Window implements EventListener, Dia
rows.appendChild(rowLabel);
rows.appendChild(rowSpacer);
- vlayout.appendChild(confirmPanel);
- LayoutUtils.addSclass("dialog-footer", confirmPanel);
+ Div footer = new Div();
+ footer.setSclass("dialog-footer");
+ vlayout.appendChild(footer);
+ footer.appendChild(confirmPanel);
+ confirmPanel.setVflex("min");
this.setTitle(Msg.translate(Env.getCtx(), "DocAction"));
this.setWidth("410px");
this.setBorder("normal");
- this.setStyle("position: absolute; margin: 0; padding: 0");
this.setZindex(1000);
}
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java
index 3c011dfbb1..b197fa8baf 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/part/WindowContainer.java
@@ -72,6 +72,7 @@ public class WindowContainer extends AbstractUIPart
tabbox = new Tabbox();
tabbox.setSclass("desktop-tabbox");
tabbox.setId("desktop_tabbox");
+ tabbox.setMaximalHeight(true);
tabbox.addEventListener(ON_DEFER_SET_SELECTED_TAB, new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
@@ -82,8 +83,6 @@ public class WindowContainer extends AbstractUIPart
});
Tabpanels tabpanels = new Tabpanels();
- tabpanels.setVflex("1");
- tabpanels.setHflex("1");
Tabs tabs = new Tabs();
tabbox.appendChild(tabs);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/session/SessionContextListener.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/session/SessionContextListener.java
index 2a2ca7728c..d69ad71bbf 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/session/SessionContextListener.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/session/SessionContextListener.java
@@ -36,10 +36,7 @@ import org.zkoss.zk.ui.Execution;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.Session;
import org.zkoss.zk.ui.event.Event;
-import org.zkoss.zk.ui.event.EventThreadCleanup;
import org.zkoss.zk.ui.event.EventThreadInit;
-import org.zkoss.zk.ui.event.EventThreadResume;
-import org.zkoss.zk.ui.event.EventThreadSuspend;
import org.zkoss.zk.ui.sys.DesktopCache;
import org.zkoss.zk.ui.sys.DesktopCtrl;
import org.zkoss.zk.ui.sys.ServerPush;
@@ -56,7 +53,7 @@ import org.zkoss.zk.ui.util.ExecutionInit;
* @version $Revision: 0.10 $
*/
public class SessionContextListener implements ExecutionInit,
- ExecutionCleanup, EventThreadInit, EventThreadResume, EventThreadCleanup, EventThreadSuspend, DesktopCleanup, DesktopInit
+ ExecutionCleanup, EventThreadInit, DesktopCleanup, DesktopInit
{
public static final String SERVLET_SESSION_ID = "servlet.sessionId";
public static final String SESSION_CTX = "WebUISessionContext";
@@ -120,6 +117,7 @@ public class SessionContextListener implements ExecutionInit,
*
* @see ExecutionInit#init(Execution, Execution)
*/
+ @Override
public void init(Execution exec, Execution parent)
{
//in servlet thread
@@ -141,6 +139,7 @@ public class SessionContextListener implements ExecutionInit,
* @param errs
* @see ExecutionCleanup#cleanup(Execution, Execution, List)
*/
+ @Override
public void cleanup(Execution exec, Execution parent, List errs)
{
//in servlet thread
@@ -160,6 +159,7 @@ public class SessionContextListener implements ExecutionInit,
* @param evt
* @see EventThreadInit#prepare(Component, Event)
*/
+ @Override
public void prepare(Component comp, Event evt)
{
//in servlet thread
@@ -168,129 +168,22 @@ public class SessionContextListener implements ExecutionInit,
{
setupExecutionContextFromSession(Executions.getCurrent());
}
+
+ //set locale
+ Locales.setThreadLocal(Env.getLanguage(ServerContext.getCurrentInstance()).getLocale());
}
/**
- * copy event thread's ThreadLocal to servlet thread
- * @param comp
- * @param evt
- * @throws Exception
- * @see {@link EventThreadSuspend#afterSuspend(Component, Event)}
- */
- public void afterSuspend(Component comp, Event evt) throws Exception
- {
- //in servlet thread
- if (ServerContext.getCurrentInstance().isEmpty() || !isContextValid())
- {
- setupExecutionContextFromSession(Executions.getCurrent());
- }
- }
-
- /**
- * get from servlet thread's ThreadLocal
- * @param comp
- * @param evt
- * @see EventThreadResume#beforeResume(Component, Event)
- */
- public void beforeResume(Component comp, Event evt)
- {
- //in servlet thread
- //check is thread local context have been setup
- if (ServerContext.getCurrentInstance().isEmpty() || !isContextValid())
- {
- setupExecutionContextFromSession(Executions.getCurrent());
- }
- }
-
- /**
- * @param comp
- * @param evt
- * @see EventThreadResume#abortResume(Component, Event)
- */
- public void abortResume(Component comp, Event evt)
- {
- //in servlet thread
- }
-
- /**
- * copy event thread's ThreadLocal to servlet thread's ThreadLocal
- * @param comp
- * @param evt
- * @see EventThreadCleanup#complete(Component, Event)
- */
- public void complete(Component comp, Event evt) throws Exception
- {
- //in servlet thread
- if (ServerContext.getCurrentInstance().isEmpty() || !isContextValid())
- {
- setupExecutionContextFromSession(Executions.getCurrent());
- }
- }
-
- /**
- * copy servlet thread's ThreadLocal to event thread's ThreadLocal
* @param comp
* @param evt
* @see EventThreadInit#init(Component, Event)
*/
+ @Override
public boolean init(Component comp, Event evt)
{
- //in event processing thread
- if (ServerContext.getCurrentInstance().isEmpty() || !isContextValid())
- {
- setupExecutionContextFromSession(Executions.getCurrent());
- }
-
- //set locale
- Locales.setThreadLocal(Env.getLanguage(ServerContext.getCurrentInstance()).getLocale());
-
return true;
}
- /**
- * get from event thread's ThreadLocal
- * @param comp
- * @param evt
- * @param obj
- * @throws Exception
- * @see {@link EventThreadSuspend#beforeSuspend(Component, Event, Object)}
- */
- public void beforeSuspend(Component comp, Event evt, Object obj)
- throws Exception
- {
- //in event processing thread
- }
-
- /**
- * copy servlet thread's ThreadLocal to event thread's ThreadLocal
- * @param comp
- * @param evt
- * @see EventThreadResume#afterResume(Component, Event)
- */
- public void afterResume(Component comp, Event evt)
- {
- //in event processing thread
- if (ServerContext.getCurrentInstance().isEmpty() || !isContextValid())
- {
- setupExecutionContextFromSession(Executions.getCurrent());
- }
-
- //set locale
- Locales.setThreadLocal(Env.getLanguage(ServerContext.getCurrentInstance()).getLocale());
- }
-
- /**
- * get from event thread's ThreadLocal
- * @param comp
- * @param evt
- * @param errs
- * @see EventThreadCleanup#cleanup(Component, Event, List)
- */
- public void cleanup(Component comp, Event evt, List errs) throws Exception
- {
- //in event processing thread
- }
-
public static boolean isContextValid() {
Execution exec = Executions.getCurrent();
Properties ctx = ServerContext.getCurrentInstance();
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/FindWindow.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/FindWindow.java
index 1f4461e4f8..78368e367b 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/FindWindow.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/FindWindow.java
@@ -355,7 +355,6 @@ public class FindWindow extends Window implements EventListener, ValueCha
contentSimple.setStyle("width: 100%; position: relative");
contentSimple.makeNoStrip();
contentSimple.setHflex("1");
- contentSimple.setSizedByContent(true);
Columns columns = new Columns();
Column column = new Column();
@@ -441,7 +440,6 @@ public class FindWindow extends Window implements EventListener, ValueCha
confirmPanel.setPack("end");
advancedPanel = new Listbox();
- advancedPanel.setSizedByContent(true);
ListHead listhead = new ListHead();
listhead.setSizable(true);
@@ -505,6 +503,7 @@ public class FindWindow extends Window implements EventListener, ValueCha
South south = new South();
layout.appendChild(south);
south.appendChild(confirmPanel);
+ south.setVflex("min");
winAdvanced.setHeight("100%");
winAdvanced.setWidth("99%");
@@ -576,7 +575,7 @@ public class FindWindow extends Window implements EventListener, ValueCha
winAdvanced = new Window();
winLookupRecord = new Window();
Tabpanel tabPanel = new Tabpanel();
- tabPanel.setStyle("height: 100%; width: 99%; padding-right: 2px; margin: auto;");
+ tabPanel.setStyle("height: 100%; width: 100%; padding-right: 2px; margin: auto;");
tabPanel.appendChild(winLookupRecord);
tabPanel.setId("simpleSearch");
winMain.addTab(tabPanel, Msg.getMsg(Env.getCtx(), "Find").replaceAll("&", ""),false, true);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WPAttributeDialog.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WPAttributeDialog.java
index 0527c39010..50d04587b3 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WPAttributeDialog.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WPAttributeDialog.java
@@ -213,8 +213,8 @@ public class WPAttributeDialog extends Window implements EventListener
Center center = new Center();
center.setSclass("dialog-content");
center.setParent(mainLayout);
- centerPanel.setVflex("1");
- centerPanel.setHflex("1");
+ centerPanel.setVflex("min");
+ centerPanel.setHflex("min");
center.appendChild(centerPanel);
South south = new South();
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WRecordInfo.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WRecordInfo.java
index ba8643d008..17068806cb 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WRecordInfo.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WRecordInfo.java
@@ -98,6 +98,7 @@ public class WRecordInfo extends Window implements EventListener
this.setSizable(true);
this.setClosable(true);
this.setWidgetAttribute(AdempiereWebUI.WIDGET_INSTANCE_NAME, "recordInfo");
+ this.setSclass("popup-dialog");
try
{
@@ -180,6 +181,7 @@ public class WRecordInfo extends Window implements EventListener
}
//
South south = new South();
+ south.setSclass("dialog-footer");
south.setParent(layout);
south.appendChild(confirmPanel);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WTextEditorDialog.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WTextEditorDialog.java
index 5aeb684c68..575452470f 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WTextEditorDialog.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/WTextEditorDialog.java
@@ -87,11 +87,13 @@ public class WTextEditorDialog extends Window implements EventListener{
setWidth("800px");
setStyle("position: absolute;");
setSizable(false);
+ setSclass("popup-dialog");
Vlayout vbox = new Vlayout();
appendChild(vbox);
vbox.setWidth("100%");
vbox.setVflex("true");
+ vbox.setSclass("dialog-content");
tabbox = new Tabbox();
vbox.appendChild(tabbox);
@@ -136,18 +138,17 @@ public class WTextEditorDialog extends Window implements EventListener{
vbox.appendChild(new Separator());
+ Div footer = new Div();
+ footer.setSclass("dialog-footer");
ConfirmPanel confirmPanel = new ConfirmPanel(true);
- //Bug IDEMPIERE-1992 Create a Wrapper Div to Wrap ConfirmPanel,to prevent it from disappearing after user navigate to another window/tab
- Div confirmPanelWrapper = new Div();
- vbox.appendChild(confirmPanelWrapper);
- confirmPanelWrapper.appendChild(confirmPanel);
- //
+ footer.appendChild(confirmPanel);
confirmPanel.addButton(confirmPanel.createButton(ConfirmPanel.A_RESET));
confirmPanel.addActionListener(this);
+ appendChild(footer);
if (maxSize > 0) {
status = new Label();
- appendChild(status);
+ footer.appendChild(status);
updateStatus(text.length());
status.setStyle("margin-top:10px;");
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkJRViewer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkJRViewer.java
index c4eeafe702..1eecf9e532 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkJRViewer.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkJRViewer.java
@@ -152,7 +152,8 @@ public class ZkJRViewer extends Window implements EventListener, ITabOnCl
North north = new North();
layout.appendChild(north);
north.appendChild(toolbar);
-
+ north.setVflex("min");
+
Center center = new Center();
layout.appendChild(center);
iframe = new Iframe();
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkReportViewer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkReportViewer.java
index 2d0a8ee37a..0d144fc391 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkReportViewer.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/window/ZkReportViewer.java
@@ -357,6 +357,7 @@ public class ZkReportViewer extends Window implements EventListener, ITab
North north = new North();
layout.appendChild(north);
north.appendChild(toolBar);
+ north.setVflex("min");
Center center = new Center();
layout.appendChild(center);
diff --git a/org.adempiere.ui.zk/WEB-INF/tld/web/core.dsp.tld b/org.adempiere.ui.zk/WEB-INF/tld/web/core.dsp.tld
index 6a6208a2db..fb9d2979ae 100755
--- a/org.adempiere.ui.zk/WEB-INF/tld/web/core.dsp.tld
+++ b/org.adempiere.ui.zk/WEB-INF/tld/web/core.dsp.tld
@@ -509,6 +509,16 @@ Copyright (C) 2005 Potix Corporation. All Rights Reserved.
the browser code.
+
+ resolveThemeURL
+ org.zkoss.web.fn.ServletFns
+
+ java.lang.String resolveThemeURL(java.lang.String)
+
+
+ Resolves a URL to point to resource served by the current theme.
+
+
escapeXML
diff --git a/org.adempiere.ui.zk/WEB-INF/tld/web/theme.dsp.tld b/org.adempiere.ui.zk/WEB-INF/tld/web/theme.dsp.tld
index a93a73ccc5..fb4dd561f5 100755
--- a/org.adempiere.ui.zk/WEB-INF/tld/web/theme.dsp.tld
+++ b/org.adempiere.ui.zk/WEB-INF/tld/web/theme.dsp.tld
@@ -183,4 +183,14 @@ Copyright (C) 2012 Potix Corporation. All Rights Reserved.
Loads a specific theme properties and apply them into the request scope
]]>
+
+ getCurrentTheme
+ org.zkoss.web.fn.ThemeFns
+
+ java.lang.String getCurrentTheme()
+
+
+
diff --git a/org.adempiere.ui.zk/WEB-INF/tld/zk/core.dsp.tld b/org.adempiere.ui.zk/WEB-INF/tld/zk/core.dsp.tld
index 7928d5409d..640ff0c061 100755
--- a/org.adempiere.ui.zk/WEB-INF/tld/zk/core.dsp.tld
+++ b/org.adempiere.ui.zk/WEB-INF/tld/zk/core.dsp.tld
@@ -70,6 +70,18 @@ Copyright (C) 2005 Potix Corporation. All Rights Reserved.
+
+
+ isEditionValid
+ org.zkoss.zk.fn.ZkFns
+
+ boolean isEditionValid()
+
+
+ Returns the edition whether valid or invalid.
+
+
+
encodeWithZK
org.zkoss.zk.fn.ZkFns
diff --git a/org.adempiere.ui.zk/WEB-INF/web-2.5.xml b/org.adempiere.ui.zk/WEB-INF/web-2.5.xml
index 54132df97a..ce2e251ba3 100644
--- a/org.adempiere.ui.zk/WEB-INF/web-2.5.xml
+++ b/org.adempiere.ui.zk/WEB-INF/web-2.5.xml
@@ -122,7 +122,7 @@
js
- application/x-javascript
+ text/javascript
pdf
diff --git a/org.adempiere.ui.zk/WEB-INF/web.xml b/org.adempiere.ui.zk/WEB-INF/web.xml
index ab9772d62d..ee9e763c1c 100644
--- a/org.adempiere.ui.zk/WEB-INF/web.xml
+++ b/org.adempiere.ui.zk/WEB-INF/web.xml
@@ -1,10 +1,9 @@
-
+
iDempiere Web Client
-
AtmosphereServlet
org.atmosphere.cpr.AtmosphereServlet
@@ -32,7 +31,7 @@
AtmosphereServlet
/zkau/comet
-
+
@@ -84,9 +83,9 @@
update-uri
/zkau
-
+
compress
- false
+ false
1
@@ -104,10 +103,10 @@
org.zkoss.zk.au.http.DHtmlUpdateServlet
-
+
compress
- false
-
+ false
+
auEngine
@@ -156,7 +155,7 @@
js
- application/x-javascript
+ text/javascript
pdf
@@ -207,7 +206,7 @@
-
+
@@ -1195,7 +1217,7 @@
-
+
@@ -1595,6 +1617,14 @@
+
+
+
+
+
+
+
+
@@ -1941,6 +1971,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2067,6 +2137,7 @@
+
@@ -2299,11 +2370,27 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2355,7 +2442,7 @@
-
+
@@ -2432,6 +2519,7 @@
+
@@ -2864,6 +2952,9 @@
+
+
+
diff --git a/org.adempiere.ui.zk/build.properties b/org.adempiere.ui.zk/build.properties
index d5f688490c..aeb31e7006 100644
--- a/org.adempiere.ui.zk/build.properties
+++ b/org.adempiere.ui.zk/build.properties
@@ -1,4 +1,4 @@
-output.. = WEB-INF/classes/
+output.. = bin/
bin.includes = META-INF/,\
WEB-INF/,\
css/,\
@@ -54,5 +54,4 @@ src.includes = WEB-INF/classes/,\
theme/default/zul/calendar/divtab.zul
source.. = WEB-INF/src/
bin.excludes = WEB-INF/src/,\
- WEB-INF/web-2.5.xml,\
- WEB-INF/classes/
+ WEB-INF/web-2.5.xml
diff --git a/org.adempiere.ui.zk/js/jquery-patch.js b/org.adempiere.ui.zk/js/jquery-patch.js
deleted file mode 100644
index cc7fda845f..0000000000
--- a/org.adempiere.ui.zk/js/jquery-patch.js
+++ /dev/null
@@ -1,37 +0,0 @@
-//patch for jquery bug under firefox
-(function(undefined) {
-var rupper = /([A-Z]|^ms)/g;
-if ( document.defaultView && document.defaultView.getComputedStyle ) {
- var old = document.defaultView.getComputedStyle;
- getComputedStyle = function( elem, name ) {
- var ret, defaultView, computedStyle;
-
- if ( !(defaultView = elem.ownerDocument.defaultView) ) {
- return undefined;
- }
-
- if (name == undefined || name == null) {
- try {
- return old(elem, null);
- } catch (err) {
- return "";
- }
- }
-
- name = name.replace( rupper, "-$1" ).toLowerCase();
-
- try {
- if ( (computedStyle = old( elem, null )) ) {
- ret = computedStyle.getPropertyValue( name );
- if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) {
- ret = jQuery.style( elem, name );
- }
- }
- } catch (err) {
- return "";
- }
-
- return ret;
- };
-}
-})();
\ No newline at end of file
diff --git a/org.adempiere.ui.zk/js/jquery-ui-1.10.1.min.js b/org.adempiere.ui.zk/js/jquery-ui-1.10.1.min.js
deleted file mode 100644
index 6efcb160fc..0000000000
--- a/org.adempiere.ui.zk/js/jquery-ui-1.10.1.min.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/*! jQuery UI - v1.10.1 - 2013-02-17
-* http://jqueryui.com
-* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.draggable.js
-* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */
-
-(function(e,t){function i(t,n){var r,i,o,u=t.nodeName.toLowerCase();return"area"===u?(r=t.parentNode,i=r.name,!t.href||!i||r.nodeName.toLowerCase()!=="map"?!1:(o=e("img[usemap=#"+i+"]")[0],!!o&&s(o))):(/input|select|textarea|button|object/.test(u)?!t.disabled:"a"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return e.css(this,"visibility")==="hidden"}).length}var n=0,r=/^ui-id-\d+$/;e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:"1.10.1",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({_focus:e.fn.focus,focus:function(t,n){return typeof t=="number"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css("zIndex",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css("position");if(i==="absolute"||i==="relative"||i==="fixed"){s=parseInt(r.css("zIndex"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++n)})},removeUniqueId:function(){return this.each(function(){r.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),r=isNaN(n);return(r||n>=0)&&i(t,!r)}}),e("").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.css(t,"padding"+this))||0,r&&(n-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(n-=parseFloat(e.css(t,"margin"+this))||0)}),n}var i=r==="Width"?["Left","Right"]:["Top","Bottom"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?o["inner"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?o["outer"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}),e(" ").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(n){return arguments.length?t.call(this,e.camelCase(n)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,n,r){var i,s=e.ui[t].prototype;for(i in r)s.plugins[i]=s.plugins[i]||[],s.plugins[i].push([n,r[i]])},call:function(e,t,n){var r,i=e.plugins[t];if(!i||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11)return;for(r=0;r0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)}})})(jQuery);(function(e,t){var n=0,r=Array.prototype.slice,i=e.cleanData;e.cleanData=function(t){for(var n=0,r;(r=t[n])!=null;n++)try{e(r).triggerHandler("remove")}catch(s){}i(t)},e.widget=function(t,n,r){var i,s,o,u,a={},f=t.split(".")[0];t=t.split(".")[1],i=f+"-"+t,r||(r=n,n=e.Widget),e.expr[":"][i.toLowerCase()]=function(t){return!!e.data(t,i)},e[f]=e[f]||{},s=e[f][t],o=e[f][t]=function(e,t){if(!this._createWidget)return new o(e,t);arguments.length&&this._createWidget(e,t)},e.extend(o,s,{version:r.version,_proto:e.extend({},r),_childConstructors:[]}),u=new n,u.options=e.widget.extend({},u.options),e.each(r,function(t,r){if(!e.isFunction(r)){a[t]=r;return}a[t]=function(){var e=function(){return n.prototype[t].apply(this,arguments)},i=function(e){return n.prototype[t].apply(this,e)};return function(){var t=this._super,n=this._superApply,s;return this._super=e,this._superApply=i,s=r.apply(this,arguments),this._super=t,this._superApply=n,s}}()}),o.prototype=e.widget.extend(u,{widgetEventPrefix:s?u.widgetEventPrefix:t},a,{constructor:o,namespace:f,widgetName:t,widgetFullName:i}),s?(e.each(s._childConstructors,function(t,n){var r=n.prototype;e.widget(r.namespace+"."+r.widgetName,o,n._proto)}),delete s._childConstructors):n._childConstructors.push(o),e.widget.bridge(t,o)},e.widget.extend=function(n){var i=r.call(arguments,1),s=0,o=i.length,u,a;for(;s",options:{disabled:!1,create:null},_createWidget:function(t,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=n++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),r!==this&&(e.data(r,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===r&&this.destroy()}}),this.document=e(r.style?r.ownerDocument:r.document||r),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(n,r){var i=n,s,o,u;if(arguments.length===0)return e.widget.extend({},this.options);if(typeof n=="string"){i={},s=n.split("."),n=s.shift();if(s.length){o=i[n]=e.widget.extend({},this.options[n]);for(u=0;u=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery);(function(e,t){function h(e,t,n){return[parseFloat(e[0])*(l.test(e[0])?t/100:1),parseFloat(e[1])*(l.test(e[1])?n/100:1)]}function p(t,n){return parseInt(e.css(t,n),10)||0}function d(t){var n=t[0];return n.nodeType===9?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(n)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:n.preventDefault?{width:0,height:0,offset:{top:n.pageY,left:n.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,r=Math.max,i=Math.abs,s=Math.round,o=/left|center|right/,u=/top|center|bottom/,a=/[\+\-]\d+(\.[\d]+)?%?/,f=/^\w+/,l=/%$/,c=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var r,i,s=e(""),o=s.children()[0];return e("body").append(s),r=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,r===i&&(i=s[0].clientWidth),s.remove(),n=r-i},getScrollInfo:function(t){var n=t.isWindow?"":t.element.css("overflow-x"),r=t.isWindow?"":t.element.css("overflow-y"),i=n==="scroll"||n==="auto"&&t.width0?"right":"center",vertical:u<0?"top":o>0?"bottom":"middle"};lr(i(o),i(u))?h.important="horizontal":h.important="vertical",t.using.call(this,e,h)}),a.offset(e.extend(C,{using:u}))})},e.ui.position={fit:{left:function(e,t){var n=t.within,i=n.isWindow?n.scrollLeft:n.offset.left,s=n.width,o=e.left-t.collisionPosition.marginLeft,u=i-o,a=o+t.collisionWidth-s-i,f;t.collisionWidth>s?u>0&&a<=0?(f=e.left+u+t.collisionWidth-s-i,e.left+=u-f):a>0&&u<=0?e.left=i:u>a?e.left=i+s-t.collisionWidth:e.left=i:u>0?e.left+=u:a>0?e.left-=a:e.left=r(e.left-o,e.left)},top:function(e,t){var n=t.within,i=n.isWindow?n.scrollTop:n.offset.top,s=t.within.height,o=e.top-t.collisionPosition.marginTop,u=i-o,a=o+t.collisionHeight-s-i,f;t.collisionHeight>s?u>0&&a<=0?(f=e.top+u+t.collisionHeight-s-i,e.top+=u-f):a>0&&u<=0?e.top=i:u>a?e.top=i+s-t.collisionHeight:e.top=i:u>0?e.top+=u:a>0?e.top-=a:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var n=t.within,r=n.offset.left+n.scrollLeft,s=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,u=e.left-t.collisionPosition.marginLeft,a=u-o,f=u+t.collisionWidth-s-o,l=t.my[0]==="left"?-t.elemWidth:t.my[0]==="right"?t.elemWidth:0,c=t.at[0]==="left"?t.targetWidth:t.at[0]==="right"?-t.targetWidth:0,h=-2*t.offset[0],p,d;if(a<0){p=e.left+l+c+h+t.collisionWidth-s-r;if(p<0||p0){d=e.left-t.collisionPosition.marginLeft+l+c+h-o;if(d>0||i(d)a&&(v<0||v0&&(d=e.top-t.collisionPosition.marginTop+c+h+p-o,e.top+c+h+p>f&&(d>0||i(d)10&&i<11,t.innerHTML="",n.removeChild(t)}()})(jQuery);(function(e,t){e.widget("ui.draggable",e.ui.mouse,{version:"1.10.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){this.options.helper==="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(t){var n=this.options;return this.helper||n.disabled||e(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(e(n.iframeFix===!0?"iframe":n.iframeFix).each(function(){e("
").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var n=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,n.cursorAt&&this._adjustOffsetFromHelper(n.cursorAt),n.containment&&this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,n){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute");if(!n){var r=this._uiHash();if(this._trigger("drag",t,r)===!1)return this._mouseUp({}),!1;this.position=r.position}if(!this.options.axis||this.options.axis!=="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!=="x")this.helper[0].style.top=this.position.top+"px";return e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var n,r=this,i=!1,s=!1;e.ui.ddmanager&&!this.options.dropBehaviour&&(s=e.ui.ddmanager.drop(this,t)),this.dropped&&(s=this.dropped,this.dropped=!1),n=this.element[0];while(n&&(n=n.parentNode))n===document&&(i=!0);return!i&&this.options.helper==="original"?!1:(this.options.revert==="invalid"&&!s||this.options.revert==="valid"&&s||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){r._trigger("stop",t)!==!1&&r._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1)},_mouseUp:function(t){return e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){var n=!this.options.handle||!e(this.options.handle,this.element).length?!0:!1;return e(this.options.handle,this.element).find("*").addBack().each(function(){this===t.target&&(n=!0)}),n},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t])):n.helper==="clone"?this.element.clone().removeAttr("id"):this.element;return r.parents("body").length||r.appendTo(n.appendTo==="parent"?this.element[0].parentNode:n.appendTo),r[0]!==this.element[0]&&!/(fixed|absolute)/.test(r.css("position"))&&r.css("position","absolute"),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition==="absolute"&&this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()==="html"&&e.ui.ie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition==="relative"){var e=this.element.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,n,r,i=this.options;i.containment==="parent"&&(i.containment=this.helper[0].parentNode);if(i.containment==="document"||i.containment==="window")this.containment=[i.containment==="document"?0:e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,i.containment==="document"?0:e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(i.containment==="document"?0:e(window).scrollLeft())+e(i.containment==="document"?document:window).width()-this.helperProportions.width-this.margins.left,(i.containment==="document"?0:e(window).scrollTop())+(e(i.containment==="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(i.containment)&&i.containment.constructor!==Array){n=e(i.containment),r=n[0];if(!r)return;t=e(r).css("overflow")!=="hidden",this.containment=[(parseInt(e(r).css("borderLeftWidth"),10)||0)+(parseInt(e(r).css("paddingLeft"),10)||0),(parseInt(e(r).css("borderTopWidth"),10)||0)+(parseInt(e(r).css("paddingTop"),10)||0),(t?Math.max(r.scrollWidth,r.offsetWidth):r.offsetWidth)-(parseInt(e(r).css("borderLeftWidth"),10)||0)-(parseInt(e(r).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(r.scrollHeight,r.offsetHeight):r.offsetHeight)-(parseInt(e(r).css("borderTopWidth"),10)||0)-(parseInt(e(r).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=n}else i.containment.constructor===Array&&(this.containment=i.containment)},_convertPositionTo:function(t,n){n||(n=this.position);var r=t==="absolute"?1:-1,i=this.cssPosition!=="absolute"||this.scrollParent[0]!==document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,s=/(html|body)/i.test(i[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(this.cssPosition==="fixed"?-this.scrollParent.scrollTop():s?0:i.scrollTop())*r,left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(this.cssPosition==="fixed"?-this.scrollParent.scrollLeft():s?0:i.scrollLeft())*r}},_generatePosition:function(t){var n,r,i,s,o=this.options,u=this.cssPosition!=="absolute"||this.scrollParent[0]!==document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,a=/(html|body)/i.test(u[0].tagName),f=t.pageX,l=t.pageY;return this.originalPosition&&(this.containment&&(this.relative_container?(r=this.relative_container.offset(),n=[this.containment[0]+r.left,this.containment[1]+r.top,this.containment[2]+r.left,this.containment[3]+r.top]):n=this.containment,t.pageX-this.offset.click.leftn[2]&&(f=n[2]+this.offset.click.left),t.pageY-this.offset.click.top>n[3]&&(l=n[3]+this.offset.click.top)),o.grid&&(i=o.grid[1]?this.originalPageY+Math.round((l-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY,l=n?i-this.offset.click.top>=n[1]||i-this.offset.click.top>n[3]?i:i-this.offset.click.top>=n[1]?i-o.grid[1]:i+o.grid[1]:i,s=o.grid[0]?this.originalPageX+Math.round((f-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX,f=n?s-this.offset.click.left>=n[0]||s-this.offset.click.left>n[2]?s:s-this.offset.click.left>=n[0]?s-o.grid[0]:s+o.grid[0]:s)),{top:l-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(this.cssPosition==="fixed"?-this.scrollParent.scrollTop():a?0:u.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(this.cssPosition==="fixed"?-this.scrollParent.scrollLeft():a?0:u.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]!==this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(t,n,r){return r=r||this._uiHash(),e.ui.plugin.call(this,t,[n,r]),t==="drag"&&(this.positionAbs=this._convertPositionTo("absolute")),e.Widget.prototype._trigger.call(this,t,n,r)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,n){var r=e(this).data("ui-draggable"),i=r.options,s=e.extend({},n,{item:r.element});r.sortables=[],e(i.connectToSortable).each(function(){var n=e.data(this,"ui-sortable");n&&!n.options.disabled&&(r.sortables.push({instance:n,shouldRevert:n.options.revert}),n.refreshPositions(),n._trigger("activate",t,s))})},stop:function(t,n){var r=e(this).data("ui-draggable"),i=e.extend({},n,{item:r.element});e.each(r.sortables,function(){this.instance.isOver?(this.instance.isOver=0,r.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=!0),this.instance._mouseStop(t),this.instance.options.helper=this.instance.options._helper,r.options.helper==="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",t,i))})},drag:function(t,n){var r=e(this).data("ui-draggable"),i=this;e.each(r.sortables,function(){var s=!1,o=this;this.instance.positionAbs=r.positionAbs,this.instance.helperProportions=r.helperProportions,this.instance.offset.click=r.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(s=!0,e.each(r.sortables,function(){return this.instance.positionAbs=r.positionAbs,this.instance.helperProportions=r.helperProportions,this.instance.offset.click=r.offset.click,this!==o&&this.instance._intersectsWith(this.instance.containerCache)&&e.contains(o.instance.element[0],this.instance.element[0])&&(s=!1),s})),s?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=e(i).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return n.helper[0]},t.target=this.instance.currentItem[0],this.instance._mouseCapture(t,!0),this.instance._mouseStart(t,!0,!0),this.instance.offset.click.top=r.offset.click.top,this.instance.offset.click.left=r.offset.click.left,this.instance.offset.parent.left-=r.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=r.offset.parent.top-this.instance.offset.parent.top,r._trigger("toSortable",t),r.dropped=this.instance.element,r.currentItem=r.element,this.instance.fromOutside=r),this.instance.currentItem&&this.instance._mouseDrag(t)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",t,this.instance._uiHash(this.instance)),this.instance._mouseStop(t,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),r._trigger("fromSortable",t),r.dropped=!1)})}}),e.ui.plugin.add("draggable","cursor",{start:function(){var t=e("body"),n=e(this).data("ui-draggable").options;t.css("cursor")&&(n._cursor=t.css("cursor")),t.css("cursor",n.cursor)},stop:function(){var t=e(this).data("ui-draggable").options;t._cursor&&e("body").css("cursor",t._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,n){var r=e(n.helper),i=e(this).data("ui-draggable").options;r.css("opacity")&&(i._opacity=r.css("opacity")),r.css("opacity",i.opacity)},stop:function(t,n){var r=e(this).data("ui-draggable").options;r._opacity&&e(n.helper).css("opacity",r._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(){var t=e(this).data("ui-draggable");t.scrollParent[0]!==document&&t.scrollParent[0].tagName!=="HTML"&&(t.overflowOffset=t.scrollParent.offset())},drag:function(t){var n=e(this).data("ui-draggable"),r=n.options,i=!1;if(n.scrollParent[0]!==document&&n.scrollParent[0].tagName!=="HTML"){if(!r.axis||r.axis!=="x")n.overflowOffset.top+n.scrollParent[0].offsetHeight-t.pageY=0;c--){u=p.snapElements[c].left,a=u+p.snapElements[c].width,f=p.snapElements[c].top,l=f+p.snapElements[c].height;if(!(u-v=b.outerHeight()?n=!0:(c.stop(!0,!0).fadeIn("fast"),a.railVisible&&e.stop(!0,!0).fadeIn("fast"))}function l(){a.alwaysVisible||(w=setTimeout(function(){if((!a.disableFadeOut||!p)&&!t&&!u)c.fadeOut("slow"),e.fadeOut("slow")},1E3))}var p,t,u,w,y,s,j,x,A=30,n=!1,b=d(this);if(b.parent().hasClass("slimScrollDiv")){var k=b.scrollTop(),c=b.parent().find(".slimScrollBar"),e=b.parent().find(".slimScrollRail");r();m&&("scrollTo"in m?k=parseInt(a.scrollTo):"scrollBy"in m&&(k+=parseInt(a.scrollBy)),
-f(k,!1,!0))}else{a.height="auto"==a.height?b.parent().innerHeight():a.height;k=d("
").addClass(a.wrapperClass).css({position:"relative",overflow:"hidden",width:a.width,height:a.height});b.css({overflow:"hidden",width:a.width,height:a.height});var e=d("
").addClass(a.railClass).css({width:a.size,height:"100%",position:"absolute",top:0,display:a.alwaysVisible&&a.railVisible?"block":"none","border-radius":a.size,background:a.railColor,opacity:a.railOpacity,zIndex:90}),c=d("
").addClass(a.barClass).css({background:a.color,
-width:a.size,position:"absolute",top:0,opacity:a.opacity,display:a.alwaysVisible?"block":"none","border-radius":a.size,BorderRadius:a.size,MozBorderRadius:a.size,WebkitBorderRadius:a.size,zIndex:99}),z="right"==a.position?{right:a.distance}:{left:a.distance};e.css(z);c.css(z);b.wrap(k);b.parent().append(c);b.parent().append(e);c.draggable({axis:"y",containment:"parent",start:function(){u=!0},stop:function(){u=!1;l()},drag:function(){f(0,d(this).position().top,!1)}});e.hover(function(){q()},function(){l()});
-c.hover(function(){t=!0},function(){t=!1});b.hover(function(){p=!0;q();l()},function(){p=!1;l()});b.bind("touchstart",function(a){a.originalEvent.touches.length&&(y=a.originalEvent.touches[0].pageY)});b.bind("touchmove",function(b){b.originalEvent.preventDefault();b.originalEvent.touches.length&&f((y-b.originalEvent.touches[0].pageY)/a.touchScrollStep,!0)});var v=function(a){if(p){a=a||window.event;var b=0;a.wheelDelta&&(b=-a.wheelDelta/120);a.detail&&(b=a.detail/3);f(b,!0);a.preventDefault&&!n&&
-a.preventDefault();n||(a.returnValue=!1)}};(function(){window.addEventListener?(this.addEventListener("DOMMouseScroll",v,!1),this.addEventListener("mousewheel",v,!1)):document.attachEvent("onmousewheel",v)})();r();"bottom"==a.start?(c.css({top:b.outerHeight()-c.outerHeight()}),f(0,!0)):"object"==typeof a.start&&(f(d(a.start).position().top,null,!0),a.alwaysVisible||c.hide())}});return this}});jQuery.fn.extend({slimscroll:jQuery.fn.slimScroll})})(jQuery);
\ No newline at end of file
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/about.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/about.css.dsp
new file mode 100644
index 0000000000..464bbf7a61
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/about.css.dsp
@@ -0,0 +1,28 @@
+.about-trace-panel {
+}
+.about-info-panel {
+}
+.about-credit-panel {
+}
+.about-credit-panel-logo {
+}
+.about-credit-panel-sponsors {
+}
+.about-credit-panel-sponsors-header {
+}
+.about-credit-panel-sponsors-links {
+}
+.about-credit-panel-contributors {
+}
+.about-credit-panel-contributors-header {
+}
+.about-credit-panel-contributors-links {
+}
+.about-main-panel {
+}
+.about-main-panel-logo {
+}
+.about-main-panel-version {
+}
+.about-main-panel-links {
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp
new file mode 100644
index 0000000000..e6f6aded3b
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp
@@ -0,0 +1,246 @@
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+<%@ taglib uri="http://www.idempiere.org/dsp/web/util" prefix="u" %>
+<%-- breadcrumb --%>
+.breadcrumb-toolbar-button {
+ background-color: transparent;
+ display:inline-block;
+ width: 22px;
+ height: 22px;
+}
+.breadcrumb-toolbar-button img {
+ width: 22px;
+ height: 22px;
+}
+.breadcrumb-record-info {
+ font-size: 12px;
+}
+
+.adwindow-form > .z-grid-body {
+ background-color: #F9F9F9;
+}
+
+.adwindow-layout {
+ position:absolute;
+ border: none;
+ width: 100%;
+ height: 100%;
+ background-color: #F9F9F9;
+}
+
+.adwindow-layout .z-center {
+ border: none;
+}
+
+.adwindow-north {
+ min-height: 56px;
+ width: 100%;
+ padding: 0px;
+ margin: 0px;
+ border: none;
+}
+
+.adwindow-south {
+ height: 20px;
+ width: 100%;
+ padding: 0px;
+ margin: 0px;
+ border-top: 1px solid #C5C5C5 !important;
+}
+
+.adwindow-status {
+ min-height: 22px;
+}
+
+.adwindow-status-docinfo {
+ display: inline-block;
+ position: absolute;
+ right: 4px;
+}
+
+.docstatus-normal .z-label {
+ color: #6a6a6a;
+}
+
+.docstatus-error .z-label {
+ color: red;
+}
+
+.adwindow-status-docstatus {
+ display: inline-block;
+ float: left;
+ padding-left: 4px;
+}
+
+.adwindow-toolbar {
+ border: 0px;
+ padding: 2px 4px;
+ height: 26px;
+ background-image: none;
+ background-color: #fff;
+}
+
+.adwindow-breadcrumb {
+ height: 30px;
+ background-color: #FFF;
+ padding: 0px;
+ padding-left: 5px;
+ border-bottom: 1px solid #C5C5C5 !important;
+ clear: both;
+}
+
+.adwindow-detailpane {
+ width: 100%;
+ overflow-y: visible;
+}
+
+.adwindow-detailpane-tabbox .z-tab-selected span.z-tab-text {
+ cursor: pointer;
+}
+
+.adwindow-detailpane-tabbox .z-tab-selected span.z-tab-text:hover {
+ text-decoration: underline;
+}
+
+.adwindow-detailpane-tabpanel {
+ background-color: #fff
+}
+
+.adwindow-detailpane-toolbar {
+ border: none;
+}
+
+.adwindow-detailpane-toolbar .z-toolbar-body {
+ width: 100%;
+}
+
+.adwindow-detailpane-toolbar .z-toolbarbutton {
+ float: left;
+ display: inline-block;
+ padding: 0px;
+ padding-left: 1px;
+ width: 20px;
+}
+
+.adwindow-detailpane-toolbar .z-toolbarbutton img {
+ width: 16px;
+ height: 16px;
+}
+
+.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-normal,
+.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-error {
+ padding-left: 4px;
+ margin-top: 2px;
+}
+
+.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-normal .z-label,
+.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-error .z-label {
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
+}
+
+.adwindow-detailpane-message {
+ float: right;
+}
+
+.adwindow-detailpane-tabbox {
+ width: 99%;
+ margin: auto;
+ background-color: #D3D3D3;
+}
+
+.adwindow-detailpane-adtab-grid-south {
+ background-color: transparent;
+ position: absolute;
+ right: 0px;
+ top: 0px;
+ height: 24px;
+}
+
+.adwindow-detailpane-adtab-grid-south .z-paging {
+ padding: 0px !important;
+}
+
+.adwindow-detailpane-adtab-grid-south .z-paging .z-paging-inp {
+ height: 16px;
+ line-height: 16px;
+}
+
+.adwindow-gridview-detail {
+ height: 200px;
+}
+
+.adwindow-gridview-detail + .z-south-splitter {
+ border-top: 1px solid #C5C5C5;
+ border-bottom: 1px solid #C5C5C5;
+}
+
+.adwindow-gridview-detail .z-south-body {
+ padding-top: 1px;
+ background-color: #D3D3D3;
+}
+
+.adwindow-gridview-borderlayout {
+ position: absolute; height: 100%; width: 100%;
+}
+
+.adwindow-detailpane-sub-tab::before {
+ content: '';
+ position: absolute;
+ width: 0px;
+ height: 0px;
+ top: 6px;
+ left: 4px;
+ border-top: 5px dashed transparent;
+ border-left: 5px dashed #696969;
+ border-right: 5px dashed transparent;
+ border-bottom: 5px solid transparent;
+}
+
+<%-- ad tab --%>
+.adtab-content {
+ margin: 0;
+ padding: 0;
+ border: none;
+ position: relative;
+}
+
+.adtab-form {
+ border:none !important;
+ margin:0;
+ padding:0;
+}
+
+.adtab-grid {
+ margin-top: -1px;
+ border: none !important;
+}
+
+.adtab-grid-south {
+ border: none;
+ height: 30px;
+}
+
+.adtab-grid-south .z-paging {
+ border: none;
+ padding: 0;
+}
+
+.adtab-form-borderlayout {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+}
+
+.adtab-form-borderlayout .z-center {
+ background-color: #F9F9F9;
+}
+
+.adtab-form-borderlayout .z-south-collapsed:before {
+ content: '${u:cleanAmp(u:getMsg(u:getCtx(), "Detail"))}';
+ position: absolute;
+ font-size: 12px;
+ font-weight: bold;
+ text-align: center;
+ line-height: 12px;
+ left: 4px;
+ height: 12px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/application-menu.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/application-menu.css.dsp
new file mode 100644
index 0000000000..f825779245
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/application-menu.css.dsp
@@ -0,0 +1,113 @@
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+
+.menu-href {
+ font-size: 11px;
+ font-weight: normal;
+ color: #333 !important;
+ text-decoration: none !important;
+ padding-right: 4px;
+}
+
+.menu-href:hover, .menu-href:active {
+ text-decoration: underline !important;
+ color: blue !important;
+}
+
+.menu-href img {
+ padding: 2px;
+ padding-right: 4px;
+ width: 16px;
+ height: 16px;
+}
+
+.menu-href-newbtn {
+ height: 17px;
+ line-height: 10px;
+ padding: 1px 1px;
+ padding-bottom: 2px;
+ padding-left: 2px;
+ margin-bottom: 2px;
+}
+
+.menu-href-newbtn img {
+ width: 10px;
+ height: 10px;
+}
+
+.menu-href-newbtn .z-toolbarbutton-content {
+ height: 10px;
+ width: 10px;
+ display: inline-block;
+ line-height: 10px;
+}
+
+.tree-search-combo .z-comboitem-img img {
+ width: 16px;
+ height: 16px;
+}
+
+.menu-search-panel .z-comboitem-image {
+ padding-bottom:4px;
+}
+
+.menu-search-panel-container .z-panel-body {
+ background-color: transparent;
+}
+
+.menu-search-panel-container .z-panel-top .z-toolbar.z-toolbar-panel {
+ padding-bottom: 0px;
+ padding-top: 8px;
+}
+
+.menu-panel .z-toolbar-panel {
+ padding-right: 0;
+}
+
+.menu-panel {
+ width: 100% !important;
+ height: 100% !important;
+ position: relative !important;
+}
+
+.menu-panel .z-tree {
+ border: none !important;
+ width: 100%;
+}
+
+.menu-search-toggle-box {
+ display: inline-block;
+ border: 1px solid #ababab;
+}
+
+.menu-search-toggle-box .z-toolbarbutton-hover {
+ border: none;
+}
+
+.menu-search-toggle-off {
+ margin:0px;
+ padding: 1px 4px 1px 4px;
+ border-radius: 0px;
+}
+
+.menu-search-toggle-on {
+ background: #999999 !important;
+ -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) inset !important;
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) inset !important;
+ margin:0px !important;
+ padding: 1px 4px 1px 4px !important;
+ border-radius: 0px;
+}
+
+.menu-search-toggle-on img, .menu-search-toggle-off img {
+ height: 16px;
+ width: 16px;
+}
+
+.document-search-current-link {
+ background-image:url(${c:encodeThemeURL('~./zul/img/tree/item-sel.gif')});
+}
+
+.global-search-tabpanel {
+ width: 500px;
+}
+
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/borderlayout.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/borderlayout.css.dsp
new file mode 100644
index 0000000000..6190a94059
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/borderlayout.css.dsp
@@ -0,0 +1,53 @@
+.z-south-splitter, .z-west-splitter, .z-east-splitter, .z-north-splitter {
+ background: none !important;
+}
+
+.z-south-collapsed {
+ height: 24px;
+}
+
+.z-south-collapsed:hover, .z-east-collapsed:hover, .z-west-collapsed:hover, .z-north-collapsed:hover {
+ box-shadow:inset 0 0 8px rgba(197,197,197,0.5);
+}
+
+.z-south-collapsed .z-borderlayout-icon {
+ height: 12px;
+ line-height: 12px;
+}
+
+.z-west-collapsed {
+ cursor: pointer;
+ width: 24px;
+}
+
+.z-west-collapsed > .z-borderlayout-icon {
+ right: 0px;
+}
+
+.z-east-collapsed {
+ cursor: pointer;
+ width: 24px;
+}
+.z-east-collapsed > .z-borderlayout-icon {
+ left: 0px;
+}
+
+.z-borderlayout, .z-north, .z-center, .z-south {
+ border: none;
+}
+
+.z-east-splitter-button,
+.z-west-splitter-button,
+.z-north-splitter-button,
+.z-south-splitter-button {
+ filter: alpha(opacity=100); <%-- IE --%>
+ opacity: 1.0; <%-- Moz + FF --%>
+}
+
+.z-east-splitter-button-over,
+.z-west-splitter-button-over,
+.z-north-splitter-button-over,
+.z-south-splitter-button-over {
+ -webkit-filter: brightness(50%);
+ filter: brightness(50%);
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/button.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/button.css.dsp
new file mode 100644
index 0000000000..9d2139d2e6
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/button.css.dsp
@@ -0,0 +1,108 @@
+.z-button {
+ display: inline-block;
+ margin: 0px;
+ padding: 4px 20px;
+ font-size: 12px;
+ line-height: 20px;
+ text-align: center;
+ vertical-align: middle;
+ cursor: pointer;
+ background-color: #f5f5f5;
+ background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
+ background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
+ background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
+ background-repeat: repeat-x;
+ border: 1px solid #cccccc;
+ border-color: #e6e6e6 #e6e6e6 #bfbfbf;
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ border-bottom-color: #b3b3b3;
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+ zoom: 1;
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.z-button {
+ margin: 0px !important;
+}
+
+.z-button-hover,
+.z-button-focus,
+.z-button-click,
+.z-button-disabled {
+ color: #333333;
+ background-color: #e6e6e6;
+}
+
+.z-button-click {
+ background-color: #cccccc \9;
+}
+
+.z-button-hover,
+.z-button-focus {
+ color: #333333;
+ text-decoration: none;
+ background-position: 0 -15px;
+ -webkit-transition: background-position 0.1s linear;
+ -moz-transition: background-position 0.1s linear;
+ -o-transition: background-position 0.1s linear;
+ transition: background-position 0.1s linear;
+}
+
+.z-button-focus {
+ outline: 5px auto -webkit-focus-ring-color;
+}
+
+.z-button-click {
+ background-image: none;
+ outline: 0;
+ -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.z-button-disabled {
+ cursor: default;
+ background-image: none;
+ opacity: 0.65;
+ filter: alpha(opacity=65);
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+}
+
+.z-button.btn-small {
+ padding: 1px 5px;
+}
+
+.z-button-disabled {
+ color: black; cursor: default; opacity: .6; -moz-opacity: .6; -khtml-opacity: .6; filter: alpha(opacity=60);
+}
+
+.img-btn img {
+ height: 22px;
+ width: 22px;
+ background-color: transparent;
+}
+
+.txt-btn img, .small-img-btn img {
+ height: 16px;
+ width: 16px;
+ background-color: transparent;
+ vertical-align: middle;
+ display: inline-block;
+}
+
+.btn-sorttab {
+ box-shadow: 0px 0px 4px #bbb;
+ color: #555;
+ border: solid 1px #bbb;
+ text-shadow: 0px 1px 2px #888;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/desktop.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/desktop.css.dsp
new file mode 100644
index 0000000000..320b67b365
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/desktop.css.dsp
@@ -0,0 +1,233 @@
+<%-- header --%>
+.desktop-header-left {
+ margin: 0;
+ margin-left: 5px;
+ margin-top: 3px;
+ background-color: transparent !important;
+ border: none !important;
+}
+
+.desktop-header-right {
+ margin: 0;
+ margin-top: 3px;
+ padding-right: 5px;
+ background-color: transparent !important;
+ border: none !important;
+}
+
+.desktop-header {
+ background-color: #E4E4E4;
+ width: 100%;
+ height: 46px;
+ border-bottom: 1px solid #C5C5C5 !important;
+}
+
+.desktop-header-font {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10px;
+}
+
+.desktop-header-popup {
+ width: 800px;
+ border-radius: 3px;
+ border: 1px solid #d5d5d5;
+ border-right: 2px solid #d5d5d5;
+ border-bottom-width: 2px;
+ right: 1px;
+}
+
+.desktop-header-popup .desktop-header {
+ border: none;
+}
+
+.desktop-header-username {
+ padding-right: 6px;
+}
+
+.desktop-header-username:hover {
+ color: blue;
+ text-decoration: underline;
+}
+
+.desktop-user-panel {
+ float: right;
+}
+
+.desktop-layout {
+ position: absolute;
+ border: none;
+ background-color: #E4E4E4;
+}
+
+.desktop-tabbox {
+ padding-top: 0px;
+ background-color: #E4E4E4;
+}
+
+.desktop-tabbox .z-tab {
+ margin-right: 2px;
+}
+
+.desktop-tabbox .z-tab {
+ height: 24px;
+}
+
+.desktop-tabbox .z-tab-selected {
+ height: 25px;
+}
+
+.desktop-tabbox .z-tab-selected {
+ border-top: 2px solid #666;
+ border-top-left-radius: 5px 5px;
+ border-top-right-radius: 5px 5px;
+}
+
+.desktop-tabbox .z-tab .z-tab-text {
+ padding-top: 0px;
+ padding-bottom: 0px;
+}
+
+.desktop-north, .desktop-center {
+ border: none;
+}
+
+.desktop-center {
+ padding-top: 4px;
+ background-color: #E4E4E4;
+}
+
+.desktop-tabpanel {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ position: relative !important;
+ background-color: #FFFFFF
+}
+
+.desktop-left-column {
+ width: 200px;
+ border: none;
+ border-right: 1px solid #C5C5C5;
+ background-color: #E4E4E4;
+ padding-top: 4px;
+}
+
+.desktop-right-column {
+ width: 200px;
+ border: none;
+ border-left: 1px solid #C5C5C5;
+ background-color: #E4E4E4;
+ padding-top: 4px;
+}
+
+.desktop-left-column + .z-west-splitter, .desktop-left-column.z-west {
+ border-top: none;
+ border-right: 1px solid #c5c5c5;
+}
+
+.desktop-right-column + .z-east-splitter, .desktop-right-column.z-east {
+ border-top: none;
+ border-left: 1px solid #c5c5c5;
+}
+
+.desktop-left-column .z-west-body {
+ border-right: none;
+}
+
+.desktop-right-column .z-east-body {
+ border-left: none;
+}
+
+.desktop-layout > div > .z-west-collapsed, .desktop-layout > div > .z-east-collapsed {
+ border-top: none;
+}
+
+.desktop-left-column .z-anchorlayout, .desktop-right-column .z-anchorlayout {
+ overflow-x: hidden;
+}
+
+.z-anchorlayout { overflow:auto }
+
+.z-anchorchildren { overflow:visible }
+
+.desktop-hometab {
+ margin-left: 4px !important;
+}
+
+.desktop-tabbox .z-tabs .z-toolbar-tabs-body {
+ padding: 0px !important;
+ margin: 0px !important;
+}
+
+.desktop-tabbox .z-tabs .z-toolbar-tabs-body .z-toolbarbutton {
+ padding: 0px !important;
+ border: 1px solid transparent !important;
+ margin: 0px !important;
+}
+
+.desktop-tabbox .z-tabs .z-toolbar-tabs .z-toolbarbutton-hover {
+ border: none !important;
+ padding: 0px !important;
+ margin: 0px !important;
+}
+
+.desktop-tabbox .z-tabs .z-toolbar-tabs .z-toolbarbutton-hover .z-toolbarbutton-content {
+ background-image: none !important;
+ background-color:#DDD !important;
+ padding: 0px !important;
+ margin: 0px !important;
+ -webkit-box-shadow:inset 0px 0px 3px #CCC;
+ -moz-box-shadow:inset 0px 0px 3px #CCC;
+ -o-box-shadow:inset 0px 0px 3px #CCC;
+ -ms-box-shadow:inset 0px 0px 3px #CCC;
+ box-shadow:inset 0px 0px 3px #CCC;
+}
+
+.desktop-menu-popup {
+ z-index: 9999;
+ background-color: #fff;
+}
+
+.desktop-menu-toolbar {
+ background-color: #ffffff;
+ verticle-align: middle;
+ padding: 2px;
+ border-top: 1px solid #c5c5c5;
+}
+
+.desktop-home-tabpanel {
+ background-color: #FFFFFF;
+ width: 100% !important;
+}
+
+.link {
+ cursor:pointer;
+ padding: 2px 2px 4px 4px;
+ border: none !important;
+}
+
+.link.z-toolbarbutton:hover {
+ border: none !important;
+ background-image: none !important;
+ text-decoration: underline;
+}
+
+.link.z-toolbarbutton:hover span {
+ color: blue;
+}
+
+.desktop-home-tabpanel .z-panel-head {
+ background-color: #FFFFFF;
+}
+
+<%-- window container --%>
+.window-container-toolbar-btn .z-toolbarbutton-content img {
+ width: 22px;
+ height: 22px;
+}
+
+.window-container-toolbar-btn.context-help-btn .z-toolbarbutton-content img {
+ width: 16px;
+ height: 16px;
+ padding: 3px 3px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/field-editor.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/field-editor.css.dsp
new file mode 100644
index 0000000000..3c034eb5e4
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/field-editor.css.dsp
@@ -0,0 +1,178 @@
+.mandatory-decorator-text {
+ text-decoration: none; font-size: xx-small; vertical-align: top; color:red;
+}
+
+.editor-box {
+ display: inline-block;
+ border: none;
+ padding: 0px;
+ margin: 0px;
+ background-color: transparent;
+ position: relative;
+}
+
+.editor-input {
+ box-sizing: border-box;
+ -moz-box-sizing: border-box; /* Firefox */
+ display: inline-block;
+ padding-right: 22px;
+ width: 100%;
+ height: 21px;
+}
+
+.editor-input:focus {
+ border: 1px solid #0000ff;
+}
+
+.editor-input-disd {
+ padding-right: 0px !important;
+}
+
+.editor-button {
+ padding: 0px;
+ margin: 0px;
+ display: inline-block;
+ background-color: transparent;
+ background-image: none;
+ width: 20px;
+ height: 22px;
+ min-height: 22px;
+ border: none;
+ position: absolute;
+ right: 1px;
+ top: 2px;
+}
+
+.editor-button :hover {
+ -webkit-filter: contrast(1.5);
+ filter: contrast(150%);
+}
+
+.editor-button img {
+ vertical-align: top;
+ text-align: left;
+ width: 18px;
+ height: 18px;
+ padding: 1px 1px;
+}
+
+
+.editor-box .grid-editor-input.z-textbox {
+}
+
+.grid-editor-button {
+}
+
+.grid-editor-button img {
+}
+
+.number-box {
+ display: inline-block;
+ white-space:nowrap;
+}
+
+.number-box .grid-editor-input.z-decimalbox {
+}
+
+.datetime-box {
+ display: inline-block;
+ white-space:nowrap;
+}
+
+.datetime-box .z-datebox {
+ display: inline;
+}
+
+.datetime-box .z-timebox {
+ display: inline;
+}
+
+span.grid-combobox-editor {
+ width: 100% !important;
+ position: relative;
+}
+
+.grid-combobox-editor input {
+ width: 100% !important;
+ padding-right: 26px;
+ border-bottom-right-radius: 6px;
+ border-top-right-radius: 6px;
+ border-right: 0px;
+}
+
+.grid-combobox-editor.z-combobox-disabled input {
+ border-bottom-right-radius: 3px;
+ border-top-right-radius: 3px;
+ border-right: 1px solid #cfcfcf;
+ padding-right: 5px;
+}
+
+.grid-combobox-editor .z-combobox-button {
+ position: absolute;
+ right: 0px;
+ top: 1px;
+ border-bottom-right-radius: 3px;
+ border-top-right-radius: 3px;
+ border-bottom-left-radius: 0px;
+ border-top-left-radius: 0px;
+}
+
+.grid-combobox-editor input:focus {
+ border-right: 0px;
+}
+
+.grid-combobox-editor input:focus + .z-combobox-button {
+ border-left: 1px solid #0000ff;
+}
+
+<%-- payment rule --%>
+.payment-rule-editor {
+ display: inline-block;
+ border: none;
+ padding: 0px;
+ margin: 0px;
+ background-color: transparent;
+ position: relative;
+}
+.payment-rule-editor .z-combobox {
+ width: 100%;
+}
+.payment-rule-editor .z-combobox-input {
+ display: inline-block;
+ padding-right: 44px;
+ width: 100%;
+ height: 24px;
+ border-bottom-right-radius: 6px;
+ border-top-right-radius: 6px;
+ border-right: 0px;
+}
+.payment-rule-editor .z-combobox-input:focus {
+ border: 1px solid #0000ff;
+}
+.payment-rule-editor .z-combobox-input.editor-input-disd {
+ padding-right: 22px !important;
+}
+.payment-rule-editor .z-combobox-button {
+ position: absolute;
+ right: 0px;
+ top: 1px;
+}
+.payment-rule-editor .z-combobox .z-combobox-button-hover {
+ background-color: #ddd;
+ background-position: 0px 0px;
+}
+.payment-rule-editor .editor-button {
+ border-radius: 0px;
+ right: 24px;
+}
+
+<%-- chart --%>
+.chart-field {
+ padding: 10px;
+ border: 1px solid lightgray !important;
+}
+
+.field-label {
+ position: relative;
+ float: right;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/find-window.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/find-window.css.dsp
new file mode 100644
index 0000000000..3d32ec72a9
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/find-window.css.dsp
@@ -0,0 +1,15 @@
+.find-window {
+}
+.find-window-simple {
+}
+.find-window-advanced {
+}
+
+.find-window-simple .z-south .z-hbox, .find-window-advanced .z-south .z-hbox {
+ margin-top: 5px;
+}
+
+.find-window-simple .img-btn, .find-window-simple .img-btn.btn-ok.z-button, .find-window-simple .img-btn.btn-cancel.z-button,
+.find-window-advanced .img-btn, .find-window-advanced .img-btn.btn-ok.z-button, .find-window-advanced .img-btn.btn-cancel.z-button {
+ margin: 0 2px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/form.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/form.css.dsp
new file mode 100644
index 0000000000..c06b8627d1
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/form.css.dsp
@@ -0,0 +1,84 @@
+.form-label
+{
+ text-align: right;
+}
+
+.form-label-heading
+{
+ text-align: center;
+}
+
+.form-button {
+ width: 99%;
+}
+
+.form-button img {
+ width: 16px;
+ height: 16px;
+}
+
+<%-- confirm panel --%>
+.confirm-panel {
+ width: auto;
+ height: auto;
+ position: relative;
+ padding-left: 2px;
+ padding-right: 2px;
+}
+.confirm-panel-right {
+ float: right;
+}
+.confirm-panel-left {
+ float: left;
+}
+.confirm-panel-center{
+ padding-left: 5px;
+ float: left;
+}
+
+<%-- busy dialog --%>
+.busy-dialog {
+ cursor: wait;
+ background-color: transparent;
+}
+.busy-dialog-box {
+ background-color: transparent;
+ padding: 9px;
+}
+.busy-dialog-img {
+ height: 16px;
+ width: 16px;
+ background: transparent no-repeat center;
+ background-image: url(../images/progress3.gif) !important;
+ display: -moz-inline-box;
+ vertical-align: top;
+ display: inline-block;
+}
+.busy-dialog-label {
+ color: #363636;
+}
+
+<%-- status bar --%>
+.status {
+ width: 100%;
+ height: 20px;
+}
+.status-db {
+ padding-top: 0;
+ pdding-bottom: 0;
+ padding-left: 5px;
+ padding-right: 5px;
+ cursor: pointer;
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ border-left: solid 1px #9CBDFF;
+}
+.status-info {
+ padding-right: 10px;
+ border-left: solid 1px #9CBDFF;
+}
+.status-border {
+ border: solid 1px #9CBDFF;
+}
+
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/gadget.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/gadget.css.dsp
new file mode 100644
index 0000000000..0e0f793588
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/gadget.css.dsp
@@ -0,0 +1,196 @@
+.fav-new-btn {
+ margin-left: 4px;
+ margin-bottom: 3px;
+ padding-left: 1px;
+}
+
+.fav-new-btn img {
+ height: 16px;
+ width: 16px;
+}
+
+.z-panel-head {
+ background-image: none; background-color: #FFFFFF;
+}
+
+.z-panel {
+ border-radius: 3px;
+ border: 1px solid #d8d8d8;
+ border-bottom-width: 2px;
+}
+
+.z-panel-noborder {
+ border: none !important;
+}
+
+.z-panelchildren {
+ border: none;
+}
+
+.z-panel-head {
+ padding-bottom: 4px;
+ border: none;
+}
+
+.z-panel-head .z-panel-header {
+ padding: 0 0 2px 0;
+ color: #262626;
+ background: #F4F4F4;
+ font-weight: 300;
+ font-size: 13px;
+}
+
+.z-caption .z-caption-content {
+ padding: 0 0 2px 0;
+ color: #262626;
+ font-weight: 300;
+ font-size: 13px;
+ cursor: move;
+}
+
+.dashboard-layout {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+}
+
+.dashboard-widget {
+ margin-top: 4px;
+ margin-left: auto;
+ margin-right: auto;
+ position: relative;
+ width: 92%;
+}
+
+.dashboard-widget-max {
+ margin: auto;
+ width: auto;
+}
+
+.dashboard-widget.dashboard-widget-max > .z-panel-body > .z-panelchildren {
+ overflow: auto;
+}
+
+.dashboard-report-iframe {
+ min-height:300px;
+ border: 1px solid lightgray;
+ margin:auto;
+ width: 99%;
+ height: 90%;
+}
+
+.favourites-box {
+ width: 90%;
+ margin: auto;
+ padding: 5px 0px 5px 0px;
+}
+
+.favourites-box .z-vbox {
+ width: 100%;
+}
+
+.favourites-box .z-hbox {
+ padding: 2px 0px;
+ width: 100%;
+}
+
+.favourites-box .z-toolbar-start {
+ float: right;
+}
+
+.recentitems-box {
+ width: 90%;
+ margin: auto;
+ padding: 5px 0px 5px 0px;
+}
+
+.recentitems-box A {
+ display: block;
+ padding: 2px 0px;
+}
+
+.recentitems-box .z-toolbar-start {
+ float: right;
+}
+
+.views-box {
+ width: 90%;
+ margin: auto;
+ padding: 5px 0px 5px 0px;
+}
+
+.views-box .z-vbox {
+ width: 100%;
+}
+
+.views-box .z-toolbarbutton {
+ width: 100%;
+ padding: 2px 0px;
+}
+
+.views-box .link img {
+ height: 16px;
+ width: 16px;
+}
+
+.activities-box {
+ width: 90%;
+ margin: auto;
+ padding: 5px 0px 5px 0px;
+}
+
+.activities-box .z-vbox {
+ width: 100%;
+}
+
+.activities-box .z-button {
+ text-align: left;
+}
+
+.recentitems-box .z-toolbar, .favourites-box .z-toolbar {
+ margin-top: 5px;
+ margin-bottom: 5px;
+}
+
+<%-- performance indicator --%>
+.performance-indicator {
+ margin: auto;
+ position: relative;
+}
+.performance-indicator img {
+ display: block;
+ margin: auto;
+}
+.window-view-pi .performance-indicator img {
+}
+.performance-indicator-box {
+ background-color: #eee;
+ border: 1px solid #d8d8d8;
+ border-radius: 5px;
+ cursor: pointer;
+}
+.performance-indicator-title {
+ text-align: center;
+ background-color: #c8c8c8;
+ border: 1px solid #c8c8c8;
+ padding-top: 4px;
+ padding-bottom: 4px;
+}
+.performance-panel .z-grid {
+ border: none;
+ margin:0;
+ padding:0;
+ position: relative;
+ width: 100%;
+}
+
+.dashboard-widget.dashboard-widget-max .chart-gadget {
+ height: 100% !important;
+}
+
+.help-content
+{
+ padding: 5px;
+ font-size: 11px;
+ font-weight: normal;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/grid.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/grid.css.dsp
new file mode 100644
index 0000000000..6bef9c3cf6
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/grid.css.dsp
@@ -0,0 +1,101 @@
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+<%@ taglib uri="http://www.idempiere.org/dsp/web/util" prefix="u" %>
+.z-grid tbody tr.grid-inactive-row td.z-cell {
+ background-image: none !important;
+ background-color: #DCDAD4 !important;
+}
+
+.z-grid tbody tr.grid-inactive-row td.row-indicator-selected {
+ background-color: #DCDAD4 !important;
+ background-image: url(${c:encodeURL('/theme/default/images/EditRecord16.png')}) !important;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 16px 16px;
+ cursor: pointer;
+}
+
+.z-grid tbody tr.highlight td.z-cell {
+ background-color: #FFFFCC !important;
+ background-image: none !important;
+}
+
+.z-grid tbody tr.highlight td.row-indicator-selected {
+ background-color: #FFFFCC !important;
+ background-image: url(${c:encodeURL('/theme/default/images/EditRecord16.png')}) !important;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 16px 16px;
+ cursor: pointer;
+}
+
+.z-grid tbody tr.highlight td.row-indicator {
+ background-color: transparent !important;
+ background-image: none !important;
+}
+
+div.z-column-cnt, div.z-grid-header div.z-auxheader-cnt {
+ padding: 4px 2px 3px;
+}
+
+<%-- text overflow for grid cell --%>
+.z-cell > span.z-label {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ display: inline-block;
+ width: 100%;
+}
+
+.z-column-content, .z-listheader-content, .z-listcell-content {
+ padding: 2px 3px 1px;
+}
+
+.z-grid-body .z-cell {
+ padding: 2px 3px;
+}
+
+.z-row .z-cell, .z-listitem .z-listcell, .z-listitem.z-listitem-selected>.z-listcell {
+ border-left: 1px solid #cfcfcf;
+}
+
+.z-grid-emptybody td {
+ text-align: left;
+}
+
+.z-grid-body {
+ background-color: #FFF;
+}
+
+<%-- grid layout --%>
+.grid-layout {
+ border: none !important;
+ margin: 0 !important;
+ padding: 0 !important;
+ background-color: transparent !important;
+}
+.grid-layout .z-row-inner, .grid-layout .z-cell {
+ border: none !important;
+ background-color: transparent !important;
+}
+.grid-layout tr.z-row-over>td.z-row-inner, .grid-layout tr.z-row-over>.z-cell {
+ border: none !important;
+}
+.grid-layout tr.z-row-over>td.z-row-inner, .grid-layout tr.z-row-over>.z-cell {
+ background-image: none !important;
+}
+
+tbody.z-grid-empty-body td {
+ text-align: left;
+}
+
+tbody.z-listbox-empty-body td {
+ text-align: left;
+}
+
+div.z-listbox-body .z-listcell {
+ padding: 2px;
+}
+
+.z-listbox-autopaging .z-listcell-cnt {
+ height: 20px;
+}
+
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/group.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/group.css.dsp
new file mode 100644
index 0000000000..6c4666917f
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/group.css.dsp
@@ -0,0 +1,34 @@
+tr.z-group {
+ background: #E9F2FB repeat-x 0 0;
+ background-image: url(../images/group_bg.gif) !important;
+}
+
+.z-group-header .z-label {
+ font-family: Helvetica,Arial,sans-serif;
+ color: #333;
+ width: auto;
+ font-weight: bold;
+ font-size: 11px;
+}
+
+.z-group td.z-group-inner {
+ overflow: hidden !important;
+ border-bottom: 1px solid #CFCFCF !important;
+ border-top: 1px solid #CFCFCF !important;
+ padding: 4px 5px;
+}
+
+.z-group-icon {
+ display: inline-block;
+ font-family: FontAwesome;
+ font-weight: normal;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+.z-group-icon-close:before {
+ content: "\f0da";
+}
+.z-group-icon-open:before {
+ content: "\f0d7";
+}
\ No newline at end of file
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/help-window.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/help-window.css.dsp
new file mode 100644
index 0000000000..f119702d43
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/help-window.css.dsp
@@ -0,0 +1,93 @@
+.help-window {
+ position: relative;
+}
+.help-window-header {
+ padding: 10px 0 10px 20px;
+}
+.help-window-title {
+ color: #FF0000;
+}
+.help-window-description {
+}
+.help-window-help {
+}
+.help-window-tabs {
+ color: #0000CC;
+}
+.help-window-content {
+ border-top: 1px solid #ddd;
+}
+.help-window-content-l {
+}
+.help-window-content-r {
+ border-left: 1px solid #ddd;
+ padding: 5px;
+}
+.help-window-tab {
+ border-bottom: 1px solid #ddd;
+}
+.help-window-tab-header {
+ background-color: #E6E6FA;
+}
+.help-window-tab-name {
+ padding: 3px 15px !important;
+ color: #000066;
+}
+.help-window-tab-description {
+ padding: 3px !important;
+}
+.help-window-tab-help {
+}
+.help-window-fields {
+ border-bottom: 1px solid #ddd;
+ color: #6600CC;
+ padding: 5px 15px;
+}
+.help-window-fields-link {
+}
+.help-window-field {
+ border-bottom: 1px solid #ddd;
+ padding: 5px 15px;
+}
+.help-window-field-name {
+ color: #0000CC;
+}
+.help-window-field-description {
+}
+.help-window-field-help {
+}
+
+.help-window p, .help-window h3, .help-window h4, .help-window h5 {
+ display: inline;
+}
+
+.help-window-content-r a {
+ color: #3465a4 !important;
+ text-decoration: underline;
+}
+
+.help-window-content-r a:hover {
+ text-decoration: none;
+}
+
+.help-window-content-l a {
+ color: #000 !important;
+ text-decoration: none;
+}
+
+.help-window-content-l a:hover {
+ text-decoration: none;
+}
+
+.help-window-content-l td {
+ padding: 8px 20px;
+ border-bottom: 1px solid #ddd;
+}
+
+.help-window-tab td {
+ padding: 5px 15px 0 15px;
+}
+
+.help-window-content-l tr:hover td {
+ background-color: #eee;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/info-window.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/info-window.css.dsp
new file mode 100644
index 0000000000..109d179bf8
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/info-window.css.dsp
@@ -0,0 +1,31 @@
+.info-panel .z-window-overlapped, .info-panel .z-window-highlighted {
+ background-color: #F4F4F4 !important;
+}
+
+.info-panel .z-grid {
+ border: none !important;
+}
+
+.info-panel .z-center {
+}
+
+.info-panel .z-listbox {
+ width: 99% !important;
+ position: relative;
+ margin: auto;
+}
+
+.info-panel .z-south {
+ margin-top: 2px;
+ border-top: 1px solid #C5C5C5;
+ background-color: #F4F4F4;
+}
+
+.info-panel .z-window-highlighted .z-window-content {
+ padding: 0px;
+}
+
+.info-product-tabbedpane {
+ background-color: #FFFFFF;
+}
+
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/input-element.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/input-element.css.dsp
new file mode 100644
index 0000000000..c60a8182ff
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/input-element.css.dsp
@@ -0,0 +1,32 @@
+<%-- Combobox --%>
+.z-combobox-disabled {
+ color: black !important; cursor: default !important; opacity: 1; -moz-opacity: 1; -khtml-opacity: 1; filter: alpha(opacity=100);
+}
+
+.z-combobox-disabled * {
+ color: black !important; cursor: default !important;
+}
+
+.z-combobox-text-disabled {
+ background-color: #ECEAE4 !important;
+}
+.z-comboitem {
+ min-height:14px;
+}
+<%-- highlight focus form element --%>
+input:focus, textarea:focus, .z-combobox-input:focus, z-datebox-input:focus {
+ border: 1px solid #0000ff;
+ background: #FFFFCC;
+}
+
+.z-textbox-readonly, .z-intbox-readonly, .z-longbox-readonly, .z-doublebox-readonly,
+.z-decimalbox-readonly, .z-datebox-readonly, .z-timebox-readonly, .editor-input-disd,
+.z-textbox[readonly], .z-intbox[readonly], .z-longbox[readonly], .z-doublebox[readonly],
+.z-decimalbox[readonly], .z-datebox[readonly], .z-timebox[readonly] {
+ background-color: #F0F0F0;
+}
+
+<%-- workaround for http://jira.idempiere.com/browse/IDEMPIERE-692 --%>
+.z-combobox-popup {
+ max-height: 200px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/login.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/login.css.dsp
new file mode 100644
index 0000000000..57a4a84dbf
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/login.css.dsp
@@ -0,0 +1,81 @@
+.login-window {
+ background-color: #E5E5E5;
+}
+
+.login-window .z-window-content {
+ background-color: #E5E5E5;
+}
+
+.login-box-body {
+ width: 660px;
+ background-image: url(../images/login-box-bg.png);
+ background-repeat: repeat-y;
+ background-color: transparent;
+ z-index: 1;
+ padding: 0;
+ margin: 0;
+ text-align: center;
+ padding-bottom: 100px;
+}
+
+.login-box-header {
+ background-image: url(../images/login-box-header.png);
+ background-color: transparent;
+ z-index: 2;
+ height: 54px;
+ width: 660px;
+}
+
+.login-box-header-txt {
+ color: white !important;
+ font-weight: bold;
+ position: relative;
+ top: 30px;
+}
+
+.login-box-header-logo {
+ padding-top: 20px;
+ padding-bottom: 25px;
+}
+
+.login-box-footer {
+ background-image: url(../images/login-box-footer.png);
+ background-position: top right;
+ background-attachment: scroll;
+ background-repeat: repeat-y;
+ z-index: 2;
+ height: 110px;
+ width: 660px;
+}
+
+.login-box-footer .confirm-panel {
+ width: 600px !important;
+}
+
+.login-box-footer-pnl {
+ width: 604px;
+ margin-left: 10px;
+ margin-right: 10px;
+ padding-top: 40px !important;
+}
+
+.login-label {
+ color: black;
+ text-align: right;
+ width: 40%;
+}
+
+.login-field {
+ text-align: left;
+ width: 55%;
+}
+
+.login-btn {
+ padding: 4px 20px !important;
+}
+
+.login-east-panel, .login-west-panel {
+ width: 350px;
+ background-color: #E0EAF7;
+ position: relative;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/menu-tree.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/menu-tree.css.dsp
new file mode 100644
index 0000000000..8b32add3f8
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/menu-tree.css.dsp
@@ -0,0 +1,52 @@
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+<%@ taglib uri="http://www.idempiere.org/dsp/web/util" prefix="u" %>
+.menu-treecell-cnt {
+ border: 0; margin: 0; padding: 0;
+ font-family: ${c:property('org.zkoss.zul.theme.fontFamilyC')};
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
+ font-weight: normal;
+ overflow-x: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis !important;
+ cursor: pointer;
+}
+
+div.z-tree-body td.menu-tree-cell {
+ cursor: pointer;
+ padding: 0 2px;
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
+ font-weight: normal;
+ overflow: visible;
+}
+
+div.menu-tree-cell-cnt {
+ border: 0; margin: 0; padding: 0;
+ font-family: ${c:property('org.zkoss.zul.theme.fontFamilyC')};
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal;
+ white-space:nowrap
+}
+
+td.menu-tree-cell-disd * {
+ color: #C5CACB !important; cursor: default!important;
+}
+
+td.menu-tree-cell-disd a:visited, td.menu-tree-cell-disd a:hover {
+ text-decoration: none !important;
+ cursor: default !important;;
+ border-color: #D0DEF0 !important;
+}
+
+div.z-dottree-body td.menu-tree-cell {
+ cursor: pointer; padding: 0 2px;
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
+}
+
+div.z-filetree-body td.menu-tree-cell {
+ cursor: pointer; padding: 0 2px;
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
+}
+
+div.z-vfiletree-body td.menu-tree-cell {
+ cursor: pointer; padding: 0 2px;
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/setup-wizard.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/setup-wizard.css.dsp
new file mode 100644
index 0000000000..c7b530e15a
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/setup-wizard.css.dsp
@@ -0,0 +1,49 @@
+.tree-wsetupwizard-finished {
+ background-color: #90EE90;
+ margin-left:20px
+}
+
+.tree-wsetupwizard-skipped {
+ background-color: #00FF00;
+ margin-left:20px
+}
+
+.tree-wsetupwizard-delayed {
+ background-color: #0080FF;
+ margin-left:20px;
+}
+
+.tree-wsetupwizard-in-progress {
+ background-color: #FFFF33;
+ margin-left:20px;
+}
+
+.tree-wsetupwizard-pending {
+ background-color: #FFFF00;
+ margin-left:20px;
+}
+
+.tree-setupwizard-nostatus{
+ margin-left:20px;
+}
+
+.tree-wsetupwizard-finished-all {
+ background-color: #90EE90;
+}
+
+.progressmeter-setupwizard {
+background: #FFFF00 repeat-x 0 0 ;
+background-image: none;
+border: 1px solid #CFCFCF;
+text-align: left;
+height: 20px;
+overflow: hidden;
+}
+.progressmeter-setupwizard-img {
+display: inline-block;
+background: #90EE90;
+background-image: none;
+height: 20px;
+line-height: 0;
+font-size: 0;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/tab-editor.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/tab-editor.css.dsp
new file mode 100644
index 0000000000..22cde799a9
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/tab-editor.css.dsp
@@ -0,0 +1,14 @@
+.tab-editor-form {
+}
+
+.tab-editor-form-content {
+}
+
+.tab-editor-form-east-panel {
+}
+
+.tab-editor-form-center-panel {
+}
+
+.tab-editor-form-west-panel {
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/tab.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/tab.css.dsp
new file mode 100644
index 0000000000..1fe531a75c
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/tab.css.dsp
@@ -0,0 +1,16 @@
+.z-tab-close {
+ top:4px;
+ margin-right:2px;
+ padding-right:18px;
+}
+
+<%-- set color for text and label --%>
+.z-tab-selected .z-tab-text, .z-tab .z-tab-text, div.z-treefooter-content, div.z-treecell-content, div.z-treecol-content,
+.z-label, .z-toolbarbutton-content, tr.z-treerow, tr.z-treerow a, tr.z-treerow a:visited {
+ color: #333;
+ font-family: Helvetica,Arial,sans-serif;
+}
+
+.z-tab-button :hover {
+ color: blue;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/toolbar-popup.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/toolbar-popup.css.dsp
new file mode 100644
index 0000000000..62b44eb31c
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/toolbar-popup.css.dsp
@@ -0,0 +1,48 @@
+.toolbar-popup-window {
+ border-left: 1px solid #c5c5c5;
+ border-right: 1px solid #c5c5c5;
+}
+.toolbar-popup-window .z-window-content {
+ padding: 0px;
+}
+.toolbar-popup-window.z-window.z-window-noheader {
+ padding: 4px;
+ padding-bottom: 0px;
+}
+
+.toolbar-popup-window.process-buttons-popup .z-button {
+ white-space: nowrap;
+ width: 95%;
+ text-align: left;
+ margin: auto;
+}
+
+.toolbar-popup-window.process-buttons-popup .toolbar-popup-window-cnt {
+ padding: 8px;
+}
+
+.toolbar-popup-window::before {
+ border-bottom: 7px solid rgba(0, 0, 0, 0.2);
+ border-left: 7px solid transparent;
+ border-right: 7px solid transparent;
+ content: "";
+ display: inline-block;
+ left: 9px;
+ position: absolute;
+ top: -7px;
+}
+
+.toolbar-popup-window::after {
+ border-bottom: 6px solid #FFFFFF;
+ border-left: 6px solid transparent;
+ border-right: 6px solid transparent;
+ content: "";
+ display: inline-block;
+ left: 10px;
+ position: absolute;
+ top: -6px;
+}
+
+.toolbar-popup-window .dialog-footer {
+ padding: 4px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/toolbar.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/toolbar.css.dsp
new file mode 100644
index 0000000000..0d42998040
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/toolbar.css.dsp
@@ -0,0 +1,42 @@
+.z-toolbar.z-toolbar-tabs {
+ padding-top: 0px;
+}
+
+.toolbar {
+ padding: 0px;
+}
+
+.z-toolbarbutton-content {
+ padding: 0px;
+}
+
+.toolbar-button {
+ background-color: transparent;
+ display:inline-block;
+ margin-left: 1px;
+ margin-right: 1px;
+ width: 28px;
+ height: 28px;
+ padding: 1px;
+}
+
+.toolbar-button .z-toolbarbutton-content {
+ width: 24px;
+ height: 24px;
+ padding: 1px;
+ border: none;
+ display: inline-block;
+}
+
+.depressed img {
+ border-width: 1px;
+ border-color: #9CBDFF;
+ background-color: #C4DCFB;
+ padding: 0px 1px 0px 1px;
+}
+
+.disableFilter img {
+ opacity: 0.2;
+ filter: progid : DXImageTransform . Microsoft . Alpha(opacity = 20);
+ -moz-opacity: 0.2;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/tree.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/tree.css.dsp
new file mode 100644
index 0000000000..fc6d3f63a8
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/tree.css.dsp
@@ -0,0 +1,9 @@
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+.z-treecell-content {
+ font-family: ${c:property('org.zkoss.zul.theme.fontFamilyC')};
+ font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
+}
+
+.z-treecell-content {
+ padding: 2px 1px;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/window.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/window.css.dsp
new file mode 100644
index 0000000000..931835a7a8
--- /dev/null
+++ b/org.adempiere.ui.zk/theme/default/css/fragment/window.css.dsp
@@ -0,0 +1,119 @@
+div.wc-modal, div.wc-modal-none, div.wc-highlighted, div.wc-highlighted-none {
+ background-color: white;
+}
+
+.z-window-embedded .z-window-content {
+ border: none;
+}
+
+.z-window-embedded .z-window-header,
+.z-window-embedded .z-window-content {
+ background-image: none;
+}
+
+.z-modal-mask {
+ z-index: 1800 !important;
+}
+.z-window {
+ padding: 0px;
+}
+
+.z-window-embedded .z-window-content {
+ border: none;
+}
+
+.z-window-overlapped .z-window-content, .z-window-modal .z-window-content,
+.z-window-highlighted .z-window-content, .z-window-embedded .z-window-content {
+ border: none;
+}
+
+.z-window-header {
+ padding: 4px;
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px;
+ background-color: #484848;
+ border-color: #484848;
+}
+.z-window-embedded > .z-window-header {
+ border-radius: 0px;
+ background-color: transparent;
+}
+
+.z-window-overlapped, .z-window-popup, .z-window-modal, .z-window-highlighted,
+.embedded-dialog .z-window-embedded
+{
+ background-color: #fff;
+ margin: 0px;
+}
+
+.z-window-overlapped .z-window-header,
+.z-window-popup .z-window-header,
+.z-window-modal .z-window-header,
+.z-window-highlighted .z-window-header
+{
+ color: #fff;
+ font-weight: bold;
+}
+
+.z-window-header, .z-window-content {
+ background-image: none !important;
+}
+
+.z-window-modal-shadow, .z-window-overlapped-shadow, .z-window-popup-shadow, .z-window-embedded-shadow, .z-window-highlighted-shadow
+{
+ border-radius: 0px !important;
+}
+
+<%-- dialog --%>
+.embedded-dialog {
+ position: absolute;
+}
+
+.embedded-dialog .z-window-embedded-header {
+ color: #fff;
+ font-weight: bold;
+}
+
+.popup-dialog .z-window-overlapped .z-window-content, .popup-dialog .z-window-highlighted .z-window-content {
+ padding: 0px;
+ background-color: #f5f5f5;
+}
+.popup-dialog > .z-window-content, .info-panel > .z-window-content {
+ padding: 0px;
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+}
+.popup-dialog .dialog-content {
+ padding: 8px !important;
+ --margin-bottom: 20px !important;
+}
+
+.popup-dialog.z-window-overlapped .dialog-footer {
+ padding: 12px 15px 8px 15px !important;
+}
+
+.popup-dialog.z-window-highlighted .dialog-footer {
+ padding: 12px 15px 8px 15px !important;
+}
+
+.dialog-footer {
+ margin-bottom: 0;
+ background-color: #f5f5f5;
+ border-top: 1px solid #ddd;
+ -webkit-box-shadow: inset 0 1px 0 #ffffff;
+ -moz-box-shadow: inset 0 1px 0 #ffffff;
+ box-shadow: inset 0 1px 0 #ffffff;
+}
+
+.btn-ok {
+ font-weight: bold;
+}
+
+<%-- notification message --%>
+.z-notification .z-notification-content {
+ width: 400px;
+}
+
+.z-notification {
+ padding: 3px !important;
+}
diff --git a/org.adempiere.ui.zk/theme/default/css/theme.css.dsp b/org.adempiere.ui.zk/theme/default/css/theme.css.dsp
index c59de64820..379a96f3ef 100644
--- a/org.adempiere.ui.zk/theme/default/css/theme.css.dsp
+++ b/org.adempiere.ui.zk/theme/default/css/theme.css.dsp
@@ -13,2005 +13,71 @@ html,body {
overflow: hidden;
}
-<%-- login --%>
-.login-window {
- background-color: #E5E5E5;
-}
-
-.login-box-body {
- width: 660px;
- background-image: url(../images/login-box-bg.png);
- background-repeat: repeat-y;
- background-color: transparent;
- z-index: 1;
- padding: 0;
- margin: 0;
- text-align: center;
- padding-bottom: 100px;
-}
-
-.login-box-header {
- background-image: url(../images/login-box-header.png);
- background-color: transparent;
- z-index: 2;
- height: 54px;
- width: 660px;
-}
-
-.login-box-header-txt {
- color: white !important;
- font-weight: bold;
- position: relative;
- top: 30px;
-}
-
-.login-box-header-logo {
- padding-top: 20px;
- padding-bottom: 25px;
-}
-
-.login-box-footer {
- background-image: url(../images/login-box-footer.png);
- background-position: top right;
- background-attachment: scroll;
- background-repeat: repeat-y;
- z-index: 2;
- height: 110px;
- width: 660px;
-}
-
-.login-box-footer .confirm-panel {
- width: 600px !important;
-}
-
-.login-box-footer-pnl {
- width: 604px;
- margin-left: 10px;
- margin-right: 10px;
- padding-top: 40px !important;
-}
-
-.login-label {
- color: black;
- text-align: right;
- width: 40%;
-}
-
-.login-field {
- text-align: left;
- width: 55%;
-}
-
-.login-btn {
- padding: 4px 20px !important;
-}
-
-.login-east-panel, .login-west-panel {
- width: 350px;
- background-color: #E0EAF7;
- position: relative;
-}
-
-<%-- header --%>
-.desktop-header-left {
- margin: 0;
- margin-left: 5px;
- margin-top: 3px;
- background-color: transparent !important;
- border: none !important;
-}
-
-.desktop-header-right {
- margin: 0;
- margin-top: 3px;
- padding-right: 5px;
- background-color: transparent !important;
- border: none !important;
-}
-
-.desktop-header {
- background-color: #F4F4F4;
- width: 100%;
- height: 35px;
- border-bottom: 1px solid #C5C5C5;
-}
-
-.desktop-header-font {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10px;
-}
-
-.desktop-header-popup {
- width: 800px;
- border-radius: 3px;
- border: 1px solid #d5d5d5;
- border-right: 2px solid #d5d5d5;
- border-bottom-width: 2px;
- right: 1px;
-}
-
-.desktop-header-popup .desktop-header {
- border: none;
-}
-
-.menu-href {
- font-size: 11px;
- font-weight: normal;
- color: #333 !important;
- text-decoration: none !important;
- padding-right: 4px;
-}
-
-.menu-href:hover, .menu-href:active {
- text-decoration: underline !important;
- color: blue !important;
-}
-
-.menu-href img {
- padding: 2px;
- padding-right: 4px;
- width: 16px;
- height: 16px;
-}
-
-.menu-href-newbtn img {
- width: 10px;
- height: 10px;
-}
-
-.window-container-toolbar-btn .z-toolbarbutton-cnt img {
- width: 22px;
- height: 22px;
-}
-
-.window-container-toolbar-btn.context-help-btn .z-toolbarbutton-cnt img {
- width: 16px;
- height: 16px;
- padding: 3px 3px;
-}
-
-.tree-search-combo .z-comboitem-img img {
- width: 16px;
- height: 16px;
-}
-
-.fav-new-btn {
- margin-left: 4px;
-}
-
-.fav-new-btn img {
- height: 16px;
- width: 16px;
-}
-
-.disableFilter img {
- opacity: 0.2;
- filter: progid : DXImageTransform . Microsoft . Alpha(opacity = 20);
- -moz-opacity: 0.2;
-}
-
-.toolbar {
- padding: 0px;
-}
-
-.z-toolbarbutton-cnt {
- padding: 0px;
-}
-
-.toolbar-button {
- background-color: transparent;
- display:inline-block;
- margin-left: 1px;
- margin-right: 1px;
- width: 26px;
- height: 24px;
-}
-
-.breadcrumb-toolbar-button {
- background-color: transparent;
- display:inline-block;
- width: 22px;
- height: 22px;
-}
-
-.breadcrumb-toolbar-button img {
- width: 22px;
- height: 22px;
-}
-
-.breadcrumb-record-info {
- font-size: 12px;
-}
-
-.toolbar-button .z-toolbarbutton-body .z-toolbarbutton-cnt img {
- width: 22px;
- height: 22px;
- padding: 0px 1px 0px 1px;
- border-style: solid;
- border-width: 1px;
- border-color: transparent;
-}
-
-.depressed img {
- border-width: 1px;
- border-color: #9CBDFF;
- background-color: #C4DCFB;
- padding: 0px 1px 0px 1px;
-}
-
-<%-- button --%>
-.z-button .z-button-tl,
-.z-button .z-button-tr,
-.z-button .z-button-bl,
-.z-button .z-button-br
-{
- display: none;
- background: none !important;
-}
-
-.z-button .z-button-tm,
-.z-button .z-button-bm
-{
- display: none;
- background: none !important;
-}
-
-.z-button .z-button-cl,
-.z-button .z-button-cr
-{
- display: none;
- background: none !important;
-}
-
-.z-button .z-button-cm
-{
- background: none !important;
- border: none !important;
- margin: 0 !important;
- padding: 0 !important;
-}
-
-.z-button-os, .z-button {
- display: inline-block;
- margin: 0px;
- padding: 4px 20px;
- font-size: 12px;
- line-height: 20px;
- text-align: center;
- vertical-align: middle;
- cursor: pointer;
- background-color: #f5f5f5;
- background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
- background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
- background-repeat: repeat-x;
- border: 1px solid #cccccc;
- border-color: #e6e6e6 #e6e6e6 #bfbfbf;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- border-bottom-color: #b3b3b3;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- zoom: 1;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-
-.z-button {
- margin: 0px !important;
-}
-
-.z-button-os:hover, .z-button-over,
-.z-button-os:focus, .z-button-focus,
-.z-button-os:active, .z-button-clk,
-.z-button-os.active,
-.z-button-os.disabled, .z-button-disd,
-.z-button-os[disabled] {
- color: #333333;
- background-color: #e6e6e6;
-}
-
-.z-button-os:active, .z-button-clk,
-.z-button-os.active {
- background-color: #cccccc \9;
-}
-
-.z-button-os:hover, .z-button-over,
-.z-button-os:focus, .z-button-focus {
- color: #333333;
- text-decoration: none;
- background-position: 0 -15px;
- -webkit-transition: background-position 0.1s linear;
- -moz-transition: background-position 0.1s linear;
- -o-transition: background-position 0.1s linear;
- transition: background-position 0.1s linear;
-}
-
-.z-button-os:focus, .z-button-focus {
- outline: 5px auto -webkit-focus-ring-color;
-}
-
-.z-button-os.active, .z-button-clk,
-.z-button-os:active {
- background-image: none;
- outline: 0;
- -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-
-.z-button-os.disabled, .z-button-disd,
-.z-button-os[disabled] {
- cursor: default;
- background-image: none;
- opacity: 0.65;
- filter: alpha(opacity=65);
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
-}
-
-.img-btn img {
- height: 22px;
- width: 22px;
- background-color: transparent;
-}
-
-.txt-btn img, .small-img-btn img {
- height: 16px;
- width: 16px;
- background-color: transparent;
- vertical-align: middle;
- display: inline-block;
-}
-
-.z-button-os.btn-small {
- padding: 1px 5px;
-}
-
-.btn-sorttab {
- box-shadow: 0px 0px 4px #bbb;
- color: #555;
- border: solid 1px #bbb;
- text-shadow: 0px 1px 2px #888;
-}
-
-<%-- desktop --%>
-div.wc-modal, div.wc-modal-none, div.wc-highlighted, div.wc-highlighted-none {
- background-color: white;
-}
-
-.desktop-user-panel {
- text-align: right;
-}
-
-.desktop-layout {
- position: absolute;
- border: none;
- background-color: #E4E4E4;
-}
-
-.desktop-tabbox {
- padding-top: 0px;
- background-color: #E4E4E4;
-}
-
-.desktop-tabbox .z-tab {
- margin-right: 2px;
-}
-
-.desktop-tabbox .z-tab .z-tab-hl, .desktop-tabbox .z-tab .z-tab-hr,
-.desktop-tabbox .z-tab .z-tab-hm {
- height: 22px;
-}
-
-.desktop-tabbox .z-tab-seld .z-tab-hl, .desktop-tabbox .z-tab-seld .z-tab-hr,
-.desktop-tabbox .z-tab-seld .z-tab-hm {
- height: 21px;
-}
-
-.desktop-tabbox .z-tab-seld {
- border-top: 2px solid #666;
- border-top-left-radius: 5px 5px;
- border-top-right-radius: 5px 5px;
-}
-
-.desktop-north, .desktop-center {
- border: none;
-}
-
-.desktop-center {
- padding-top: 4px;
- background-color: #E4E4E4;
-}
-
-.desktop-tabpanel {
- margin: 0;
- padding: 0;
- border: 0;
- position: absolute !important;
- background-color: #FFFFFF
-}
-
-.menu-search-panel .z-comboitem-img {
- padding-bottom:4px;
-}
-
-.z-comboitem-img {
- vertical-align:top;
-}
-
-.z-combobox input {
- vertical-align:top;
-}
-
-.menu-panel .z-toolbar-panel {
- padding-right: 0;
-}
-
-.desktop-left-column {
- width: 200px;
- border: none;
- border-right: 1px solid #C5C5C5;
- background-color: #E4E4E4;
- padding-top: 4px;
-}
-
-.desktop-right-column {
- width: 200px;
- border: none;
- border-left: 1px solid #C5C5C5;
- background-color: #E4E4E4;
- padding-top: 4px;
-}
-
-.desktop-left-column + .z-west-splt {
- border-top: none;
- border-right: 1px solid #c5c5c5;
-}
-
-.desktop-right-column + .z-east-splt {
- border-top: none;
- border-left: 1px solid #c5c5c5;
-}
-
-.z-south-splt, .z-west-splt, .z-east-splt, .z-north-splt {
- background: none !important;
-}
-
-.desktop-left-column .z-west-body {
- border-right: none;
-}
-
-.desktop-right-column .z-east-body {
- border-left: none;
-}
-
-.desktop-left-column .z-west-header, .desktop-right-column .z-east-header {
- border-top: 1px solid #c5c5c5;
-}
-
-.desktop-left-column .z-anchorlayout-body, .desktop-right-column .z-anchorlayout-body {
- overflow-x: hidden;
-}
-
-.z-anchorlayout-body { overflow:auto }
-
-.z-anchorchildren { overflow:visible }
-
-.slimScroll .z-anchorlayout-body { overflow:hidden }
-
-.desktop-hometab {
- margin-left: 4px !important;
-}
-
-.desktop-tabbox .z-tabs .z-toolbar-tabs-body {
- padding: 0px !important;
- margin: 0px !important;
-}
-
-.desktop-tabbox .z-tabs .z-toolbar-tabs-body .z-toolbarbutton {
- padding: 0px !important;
- border: 1px solid transparent !important;
- margin: 0px !important;
-}
-
-.desktop-tabbox .z-tabs .z-toolbar-tabs .z-toolbarbutton-over .z-toolbarbutton-body {
- border: none !important;
- padding: 0px !important;
- margin: 0px !important;
-}
-
-.desktop-tabbox .z-tabs .z-toolbar-tabs .z-toolbarbutton-over .z-toolbarbutton-cnt {
- background-image: none !important;
- background-color:#DDD !important;
- padding: 0px !important;
- margin: 0px !important;
- -webkit-box-shadow:inset 0px 0px 3px #CCC;
- -moz-box-shadow:inset 0px 0px 3px #CCC;
- -o-box-shadow:inset 0px 0px 3px #CCC;
- -ms-box-shadow:inset 0px 0px 3px #CCC;
- box-shadow:inset 0px 0px 3px #CCC;
-}
-
-.desktop-menu-popup {
- z-index: 9999;
- background-color: #fff;
-}
-
-.desktop-menu-toolbar {
- background-color: #ffffff;
- verticle-align: middle;
- padding: 2px;
- border-top: 1px solid #c5c5c5;
-}
-
-.desktop-home-tabpanel {
- background-color: #FFFFFF;
- width: 99% !important;
-}
-
-.link {
- cursor:pointer;
-}
-
-.link.z-toolbarbutton-over {
- border: none;
- padding: 1px 0;
-}
-
-.link.z-toolbarbutton-over .z-toolbarbutton-body {
- border: none;
- padding: 0 1px;
-}
-
-.link.z-toolbarbutton-over .z-toolbarbutton-cnt {
- background-image: none;
- color: blue;
- text-decoration: underline;
-}
-
-<%-- dashlet --%>
-.z-panel-tl, .z-panel-tr,
-.z-panel-hr, .z-panel-hl,
-.z-panel-hm {
- background-image: none; background-color: #FFFFFF;
-}
-
-.z-panel {
- border-radius: 3px;
- border: 1px solid #d8d8d8;
- border-bottom-width: 2px;
-}
-
-.z-panel-noborder {
- border: none !important;
-}
-
-.z-panelchildren {
- border: none;
-}
-
-.z-panel-hl {
- padding-bottom: 4px;
- border-bottom: none;
-}
-
-.z-panel-hl .z-panel-header {
- padding: 0 0 2px 0;
- color: #262626;
- background: #F4F4F4;
- font-weight: 300;
- font-size: 13px;
-}
-
-.z-caption .z-caption-l, .z-caption .z-caption-r {
- padding: 0 0 2px 0;
- color: #262626;
- font-weight: 300;
- font-size: 13px;
- cursor: move;
-}
-
-.desktop-home-tabpanel .z-panel-tl, .desktop-home-tabpanel .z-panel-tr,
-.desktop-home-tabpanel .z-panel-hr, .desktop-home-tabpanel .z-panel-hl,
-.desktop-home-tabpanel .z-panel-hm {
- background-color: #FFFFFF;
-}
-
-.menu-panel {
- width: 100% !important;
- height: 100% !important;
- position: relative !important;
-}
-
-.menu-panel .z-tree {
- border: none !important;
- width: 100%;
-}
-
-.dashboard-layout {
- width: 100%;
- height: 100%;
- position: absolute;
-}
-
-.dashboard-widget {
- margin-top: 4px;
- margin-left: auto;
- margin-right: auto;
- position: relative;
- width: 92%;
-}
-
-.dashboard-widget-max {
- margin: auto;
- width: auto;
-}
-
-.dashboard-widget.dashboard-widget-max > .z-panel-body > .z-panelchildren {
- overflow: auto;
-}
-
-.dashboard-report-iframe {
- min-height:300px;
- border: 1px solid lightgray;
- margin:auto;
- width: 99%;
- height: 90%;
-}
-
-.favourites-box {
- width: 90%;
- margin: auto;
- padding: 5px 0px 5px 0px;
-}
-
-.favourites-box .z-vbox {
- width: 100%;
-}
-
-.favourites-box .z-hbox {
- padding: 2px 0px;
- width: 100%;
-}
-
-.favourites-box .z-toolbar-start {
- float: right;
-}
-
-.recentitems-box {
- width: 90%;
- margin: auto;
- padding: 5px 0px 5px 0px;
-}
-
-.recentitems-box A {
- display: block;
- padding: 2px 0px;
-}
-
-.recentitems-box .z-toolbar-start {
- float: right;
-}
-
-.views-box {
- width: 90%;
- margin: auto;
- padding: 5px 0px 5px 0px;
-}
-
-.views-box .z-vbox {
- width: 100%;
-}
-
-.views-box .z-toolbarbutton {
- width: 100%;
- padding: 2px 0px;
-}
-
-.views-box .link img {
- height: 16px;
- width: 16px;
-}
-
-.activities-box {
- width: 90%;
- margin: auto;
- padding: 5px 0px 5px 0px;
-}
-
-.activities-box .z-vbox {
- width: 100%;
-}
-
-.activities-box .z-button-os {
- text-align: left;
-}
-
-.recentitems-box .z-toolbar, .favourites-box .z-toolbar {
- margin-top: 5px;
- margin-bottom: 5px;
-}
-
-<%-- adwindow and form --%>
-.adwindow-form > .z-grid-body {
- background-color: #F9F9F9;
-}
-
-.adwindow-layout {
- position:absolute;
- border: none;
- width: 100%;
- height: 100%;
- background-color: #F9F9F9;
-}
-
-.adwindow-layout .z-center {
- border: none;
-}
-
-.adwindow-north {
- min-height: 56px;
- width: 100%;
- padding: 0px;
- margin: 0px;
- border: none;
-}
-
-.adwindow-south {
- height: 20px;
- width: 100%;
- padding: 0px;
- margin: 0px;
- border-top: 1px solid #C5C5C5 !important;
-}
-
-.adwindow-status {
- min-height: 22px;
-}
-
-.adwindow-status-docinfo {
- display: inline-block;
- float: right;
- padding-right: 4px;
-}
-
-.docstatus-normal .z-label {
- color: #6a6a6a;
-}
-
-.docstatus-error .z-label {
- color: red;
-}
-
-.adwindow-status-docstatus {
- display: inline-block;
- float: left;
- padding-left: 4px;
-}
-
-.adwindow-toolbar {
- border: 0px;
- padding: 2px 4px;
- height: 26px;
- background-image: none;
- background-color: #fff;
-}
-
-.adwindow-breadcrumb {
- height: 30px;
- background-color: #FFF;
- padding: 0px;
- padding-left: 5px;
- border-bottom: 1px solid #C5C5C5 !important;
- clear: both;
-}
-
-.adwindow-detailpane {
- width: 100%;
- overflow-y: visible;
-}
-
-.adwindow-detailpane-tabbox .z-tab-seld span.z-tab-text {
- cursor: pointer;
-}
-
-.adwindow-detailpane-tabbox .z-tab-seld span.z-tab-text:hover {
- text-decoration: underline;
-}
-
-.adwindow-detailpane-tabpanel {
- background-color: #fff
-}
-
-.adwindow-detailpane-toolbar {
- border: none;
-}
-
-.adwindow-detailpane-toolbar .z-toolbar-body {
- width: 100%;
-}
-
-.adwindow-detailpane-toolbar .z-toolbarbutton {
- float: left;
- display: inline-block;
-}
-
-.adwindow-detailpane-toolbar .z-toolbarbutton img {
- width: 16px;
- height: 16px;
-}
-
-.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-normal,
-.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-error {
- padding-left: 4px;
- margin-top: 2px;
-}
-
-.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-normal .z-label,
-.adwindow-detailpane-toolbar .z-toolbar-body .docstatus-error .z-label {
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
-}
-
-.adwindow-detailpane-message {
- float: right;
-}
-
-.adwindow-detailpane-tabbox {
- width: 99%;
- margin: auto;
- background-color: #D3D3D3;
-}
-
-.adwindow-detailpane-adtab-grid-south {
- background-color: transparent;
- position: absolute;
- right: 0px;
- top: 0px;
- height: 24px;
-}
-
-.adwindow-detailpane-adtab-grid-south .z-paging {
- padding: 0px !important;
-}
-
-.adwindow-detailpane-adtab-grid-south .z-paging .z-paging-inp {
- height: 16px;
- line-height: 16px;
-}
-
-.adwindow-gridview-detail {
- height: 200px;
-}
-
-.adwindow-gridview-detail + .z-south-splt {
- border-top: 1px solid #C5C5C5;
- border-bottom: 1px solid #C5C5C5;
-}
-
-.adwindow-gridview-detail .z-south-body {
- padding-top: 1px;
- background-color: #D3D3D3;
-}
-
-.adwindow-gridview-borderlayout {
- position: absolute; height: 100%; width: 100%;
-}
-
-<%-- ad tab --%>
-.adtab-content {
- margin: 0;
- padding: 0;
- border: none;
- position: relative;
-}
-
-.adtab-form {
- border:none !important;
- margin:0;
- padding:0;
-}
-
-.adtab-grid {
- margin-top: -1px;
- border: none !important;
-}
-
-.adtab-grid-south {
- border: none;
- height: 30px;
-}
-
-.adtab-grid-south .z-paging {
- border: none;
- padding: 0;
-}
-
-.adtab-form-borderlayout {
- width: 100%;
- height: 100%;
- position: absolute;
-}
-
-.adtab-form-borderlayout .z-center {
- background-color: #F9F9F9;
-}
-
-.adtab-form-borderlayout .z-south-colpsd:before {
- content: '${u:cleanAmp(u:getMsg(u:getCtx(), "Detail"))}';
- position: relative;
- font-size: 12px;
- font-weight: bold;
- top: 3px;
- left: 4px;
- z-index: -1;
-}
-
-.z-grid tbody tr.grid-inactive-row td.z-cell {
- background-image: none !important;
- background-color: #DCDAD4 !important;
-}
-
-.z-grid tbody tr.grid-inactive-row td.row-indicator-seld {
- background-color: transparent !important;
- background-image: url(${c:encodeURL('/theme/default/images/EditRecord16.png')}) !important;
- background-position: center;
- background-repeat: no-repeat;
- background-size: 16px 16px;
- cursor: pointer;
-}
-
-.z-grid tbody tr.highlight td.z-cell {
- background-color: #FFFFCC !important;
- background-image: none !important;
-}
-
-.z-grid tbody tr.highlight td.row-indicator-seld {
- background-color: transparent !important;
- background-image: url(${c:encodeURL('/theme/default/images/EditRecord16.png')}) !important;
- background-position: center;
- background-repeat: no-repeat;
- background-size: 16px 16px;
- cursor: pointer;
-}
-
-.z-grid tbody tr.highlight td.row-indicator {
- background-color: transparent !important;
- background-image: none !important;
-}
-
-div.z-column-cnt, div.z-grid-header div.z-auxheader-cnt {
- padding: 4px 2px 3px;
-}
-
-.form-label
-{
- text-align: right;
-}
-
-.form-label-heading
-{
- text-align: center;
-}
-
-<%-- status bar --%>
-.status {
- width: 100%;
- height: 20px;
-}
-
-.status-db {
- padding-top: 0;
- pdding-bottom: 0;
- padding-left: 5px;
- padding-right: 5px;
- cursor: pointer;
- width: 100%;
- height: 100%;
- margin: 0;
- border-left: solid 1px #9CBDFF;
-}
-
-.status-info {
- padding-right: 10px;
- border-left: solid 1px #9CBDFF;
-}
-
-.status-border {
- border: solid 1px #9CBDFF;
-}
-
-.form-button {
- width: 99%;
-}
-
-<%-- Combobox --%>
-.z-combobox-disd {
- color: black !important; cursor: default !important; opacity: 1; -moz-opacity: 1; -khtml-opacity: 1; filter: alpha(opacity=100);
-}
-
-.z-combobox-disd * {
- color: black !important; cursor: default !important;
-}
-
-.z-combobox-text-disd {
- background-color: #ECEAE4 !important;
-}
-
-<%-- Button --%>
-.z-button-disd {
- color: black; cursor: default; opacity: .6; -moz-opacity: .6; -khtml-opacity: .6; filter: alpha(opacity=60);
-}
-
-<%-- highlight focus form element --%>
-input:focus, textarea:focus, .z-combobox-inp:focus, z-datebox-inp:focus {
- border: 1px solid #0000ff;
-}
-
-.mandatory-decorator-text {
- text-decoration: none; font-size: xx-small; vertical-align: top; color:red;
-}
-<%-- menu tree cell --%>
-.menu-treecell-cnt div {
- border: 0; margin: 0; padding: 0;
- font-family: ${c:property('org.zkoss.zul.theme.fontFamilyC')};
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
- font-weight: normal;
- overflow-x: hidden;
- white-space: nowrap;
- text-overflow: ellipsis !important;
- cursor: pointer;
-}
-
-span.z-tree-tee, span.z-tree-last, span.z-tree-firstspacer {
- width:0px;
-}
-
-.z-west-colpsd {
- cursor: pointer;
- border-top: none;
-}
-
-.z-east-colpsd {
- cursor: pointer;
- border-top: none;
-}
-
-<%-- FOCUSED FIELD in different color --%>
-
-.z-textbox-focus, .z-textbox-focus input,
-.z-decimalbox-focus, .z-decimalbox-focus input,
-.z-intbox-focus, .z-intbox-focus input,
-.z-longbox-focus, .z-longbox-focus input,
-.z-doublebox-focus, .z-doublebox-focus input,
-.z-combobox-focus .z-combobox-inp,
-.z-checkbox-focus .z-checkbox-inp,
-.z-datebox-focus .z-datebox-inp,
-.z-timebox-focus .z-timebox-inp {
- background: #FFFFCC;
-}
-
-<%-- Editor --%>
-.editor-box {
- display: inline-block;
- border: none;
- padding: 0px;
- margin: 0px;
- background-color: transparent;
- position: relative;
-}
-
-.editor-input {
- box-sizing: border-box;
- -moz-box-sizing: border-box; /* Firefox */
- display: inline-block;
- padding-right: 22px;
- width: 100%;
- height: 21px;
-}
-
-.editor-input:focus {
- border: 1px solid #0000ff;
-}
-
-.editor-input-disd {
- padding-right: 0px !important;
-}
-
-.editor-button {
- padding: 0px;
- margin: 0px;
- display: inline-block;
- background-color: transparent;
- background-image: none;
- width: 19px;
- height: 18px;
- border: none;
- position: absolute;
- right: 2px;
- top: 1px;
-}
-
-.editor-button :hover {
- background-color: #ddd;
-}
-
-.editor-button img {
- vertical-align: top;
- text-align: left;
- width: 16px;
- height: 16px;
- padding: 1px 1px;
-}
-
-
-.editor-box .grid-editor-input.z-textbox {
-}
-
-.grid-editor-button {
-}
-
-.grid-editor-button img {
-}
-
-.number-box {
- display: inline-block;
- white-space:nowrap;
-}
-
-.number-box .grid-editor-input.z-decimalbox {
-}
-
-.datetime-box {
- display: inline-block;
- white-space:nowrap;
-}
-
-.datetime-box .z-datebox {
- display: inline;
-}
-
-.datetime-box .z-timebox {
- display: inline;
-}
-
-<%-- Group --%>
-tr.z-group {
- background: #E9F2FB repeat-x 0 0;
- background-image: url(../images/group_bg.gif) !important;
-}
-
-.z-group-header .z-label {
- font-family: Helvetica,Arial,sans-serif;
- color: #333;
- width: auto;
- font-weight: bold;
- font-size: 11px;
-}
-
-.z-group td.z-group-inner {
- overflow: hidden !important;
- border-bottom: 1px solid #CFCFCF !important;
- border-top: 1px solid #CFCFCF !important;
-}
-
<%-- Tablet --%>
.tablet-scrolling {
-webkit-overflow-scrolling: touch;
}
-<%-- Tab --%>
-.z-tab-close {
- top:4px;
- margin-right:2px;
-}
-
-.z-tab-hm-close {
- padding-right:18px;
-}
-
-<%-- set color for text and label --%>
-.z-tab-seld .z-tab-text, .z-tab .z-tab-text, div.z-treefooter-cnt, div.z-treecell-cnt, div.z-treecol-cnt,
-.z-label, .z-toolbarbutton-cnt, tr.z-treerow, tr.z-treerow a, tr.z-treerow a:visited {
- color: #333;
- font-family: Helvetica,Arial,sans-serif;
-}
-
-.z-textbox-readonly, .z-intbox-readonly, .z-longbox-readonly, .z-doublebox-readonly,
-.z-decimalbox-readonly, .z-datebox-readonly, .z-timebox-readonly, .editor-input-disd {
- background-color: #F0F0F0;
-}
-
-span.z-tab-text {
- height: 13px;
-}
-
-<%-- menu tree cell --%>
-div.z-tree-body td.menu-tree-cell {
- cursor: pointer;
- padding: 0 2px;
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')};
- font-weight: normal;
- overflow: visible;
-}
-
-div.menu-tree-cell-cnt {
- border: 0; margin: 0; padding: 0;
- font-family: ${c:property('org.zkoss.zul.theme.fontFamilyC')};
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal;
- white-space:nowrap
-}
-
-td.menu-tree-cell-disd * {
- color: #C5CACB !important; cursor: default!important;
-}
-
-td.menu-tree-cell-disd a:visited, td.menu-tree-cell-disd a:hover {
- text-decoration: none !important;
- cursor: default !important;;
- border-color: #D0DEF0 !important;
-}
-
-div.z-dottree-body td.menu-tree-cell {
- cursor: pointer; padding: 0 2px;
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
-}
-
-div.z-filetree-body td.menu-tree-cell {
- cursor: pointer; padding: 0 2px;
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
-}
-
-div.z-vfiletree-body td.menu-tree-cell {
- cursor: pointer; padding: 0 2px;
- font-size: ${c:property('org.zkoss.zul.theme.fontSizeM')}; font-weight: normal; overflow: visible;
-}
-
-div.simileAjax-bubble-container {
- z-index: 2800 !important;
-}
-
-.info-panel .z-window-overlapped-bl, .info-panel .z-window-highlighted-bl {
- background-color: #F4F4F4 !important;
-}
-
-.info-panel .z-grid {
- border: none !important;
-}
-
-.info-panel .z-center {
-}
-
-.info-panel .z-listbox {
- width: 99% !important;
- position: relative;
- margin: auto;
-}
-
-.info-panel .z-south {
- margin-top: 2px;
- border-top: 1px solid #C5C5C5;
- background-color: #F4F4F4;
-}
-
-.info-panel .z-window-highlighted-cnt {
- padding: 0px;
-}
-
-.z-borderlayout, .z-north, .z-center, .z-south {
- border: none;
-}
-
-.z-window-embedded-cnt, .z-window-embedded-cm {
- border: none;
-}
-
-.z-window-embedded-tl, .z-window-embedded-tr, .z-window-embedded-hl, .z-window-embedded-hr,
-.z-window-embedded-hm, .z-window-embedded-cl, .z-window-embedded-cr,
-.z-window-embedded-bl, .z-window-embedded-br {
- background-image: none;
-}
-
-.z-modal-mask {
- z-index: 1800 !important;
-}
-
-.grid-layout {
- border: none !important;
- margin: 0 !important;
- padding: 0 !important;
- background-color: transparent !important;
-}
-
-.grid-layout .z-row-inner, .grid-layout .z-cell {
- border: none !important;
- background-color: transparent !important;
-}
-
-.grid-layout tr.z-row-over>td.z-row-inner, .grid-layout tr.z-row-over>.z-cell {
- border: none !important;
-}
-
-.grid-layout tr.z-row-over>td.z-row-inner, .grid-layout tr.z-row-over>.z-cell {
- background-image: none !important;
-}
-
-.confirm-panel {
- width: auto;
- height: auto;
- position: relative;
- padding-left: 2px;
- padding-right: 2px;
-}
-
-.confirm-panel-right {
- float: right;
-}
-
-.confirm-panel-left {
- float: left;
-}
-
-.confirm-panel-center{
- padding-left: 5px;
- float: left;
-}
-
-.info-product-tabbedpane {
- background-color: #FFFFFF;
-}
-
-.field-label {
- position: relative;
- float: right;
-}
-
-tbody.z-grid-empty-body td {
- text-align: left;
-}
-
-tbody.z-listbox-empty-body td {
- text-align: left;
-}
-
-div.z-listbox-body .z-listcell {
- padding: 2px;
-}
-
-.z-listbox-autopaging .z-listcell-cnt {
- height: 20px;
-}
-
-<%-- notification message --%>
-.z-notification .z-notification-cl,
-.z-notification .z-notification-cnt {
- width: 400px;
-}
-
-.z-notification {
- padding: 3px !important;
-}
-
-<%-- toolbar popup dialog --%>
-.toolbar-popup-window .z-window-popup-cnt {
- margin-top: 6px;
-}
-
-.toolbar-popup-window.process-buttons-popup .z-button-os {
- white-space: nowrap;
- width: 95%;
- text-align: left;
- margin: auto;
-}
-
-.toolbar-popup-window-cnt {
-}
-
-.toolbar-popup-window::before {
- content: '';
- position: absolute;
- width: 0px;
- height: 0px;
- top: -7px;
- left: 6px;
- border-top: 7px dashed transparent;
- border-left: 7px dashed transparent;
- border-right: 7px dashed transparent;
- border-bottom: 7px solid #ACACAC;
-}
-
-.toolbar-popup-window-cnt::before {
- content: '';
- position: absolute;
- width: 0px;
- height: 0px;
- top: -5px;
- left: 7px;
- border-top: 6px dashed transparent;
- border-left: 6px dashed transparent;
- border-right: 6px dashed transparent;
- border-bottom: 6px solid #FFF;
-}
-
-.adwindow-detailpane-sub-tab::before {
- content: '';
- position: absolute;
- width: 0px;
- height: 0px;
- top: 6px;
- left: 4px;
- border-top: 5px dashed transparent;
- border-left: 5px dashed #696969;
- border-right: 5px dashed transparent;
- border-bottom: 5px solid transparent;
-}
-
-i.grid-combobox-editor {
- width: 99% !important;
- position: relative;
-}
-
-.grid-combobox-editor input {
- width: 100% !important;
- padding-right: 22px;
- box-sizing: border-box;
- -moz-box-sizing: border-box; /* Firefox */
- height: 21px;
-}
-
-.grid-combobox-editor .z-combobox-btn {
- position: absolute;
- right: 0px;
- top: 0px;
- border-radius: 0px 0px;
-}
-
-.grid-combobox-editor.z-combobox-focus .z-combobox-btn {
- border-left: 1px solid #0000ff;
-}
-
-.embedded-dialog {
- position: absolute;
-}
-
-.embedded-dialog .z-window-embedded-header {
- color: #fff;
- font-weight: bold;
-}
-
-.z-window-embedded-cnt {
- border: none;
-}
-
-.z-window-overlapped-cm, .z-window-modal-cm, .z-window-highlighted-cm, .z-window-embedded-cm {
- border: none;
-}
-
-.z-window-overlapped-tl, .z-window-popup-tl, .z-window-modal-tl, .z-window-highlighted-tl, .embedded-dialog .z-window-embedded-tl
-{
- display: none;
-}
-
-.z-window-overlapped-tr, .z-window-popup-tr, .z-window-modal-tr, .z-window-highlighted-tr, .embedded-dialog .z-window-embedded-tr
-{
- display: none;
-}
-
-.z-window-overlapped-hl, .z-window-popup-hl, .z-window-modal-hl, .z-window-highlighted-hl, .embedded-dialog .z-window-embedded-hl {
- padding-top: 3px;
-}
-
-.z-window-overlapped-tl, .z-window-popup-tl, .z-window-modal-tl, .z-window-highlighted-tl, .embedded-dialog .z-window-embedded-tl,
-.z-window-overlapped-tr, .z-window-popup-tr, .z-window-modal-tr, .z-window-highlighted-tr, .embedded-dialog .z-window-embedded-tr,
-.z-window-overlapped-hm, .z-window-popup-hm, .z-window-modal-hm, .z-window-highlighted-hm, .embedded-dialog .z-window-embedded-hm,
-.z-window-overlapped-hl, .z-window-popup-hl, .z-window-modal-hl, .z-window-highlighted-hl, .embedded-dialog .z-window-embedded-hl,
-.z-window-overlapped-hr, .z-window-popup-hr, .z-window-modal-hr, .z-window-highlighted-hr, .embedded-dialog .z-window-embedded-hr
-{
- background-color: #484848;
-}
-
-.z-window-overlapped-cl, .z-window-popup-cl, .z-window-modal-cl, .z-window-highlighted-cl, .embedded-dialog .z-window-embedded-cl
-{
- padding-left: 1px;
- border-left: 1px solid #c5c5c5;
-}
-
-.z-window-overlapped-cr, .z-window-popup-cr, .z-window-modal-cr, .z-window-highlighted-cr, .embedded-dialog .z-window-embedded-cr
-{
- padding-right: 1px;
- border-right: 1px solid #c5c5c5;
-}
-
-.z-window-overlapped-bl, .z-window-popup-bl, .z-window-modal-bl, .z-window-highlighted-bl, .embedded-dialog .z-window-embedded-bl
-{
- border-left: 1px solid #c5c5c5;
- border-right: 1px solid #c5c5c5;
- background-color: #fff;
- margin: 0px;
- padding-bottom: 3px;
-}
-
-.z-window-overlapped-br, .z-window-popup-br, .z-window-modal-br, .z-window-highlighted-br, .embedded-dialog .z-window-embedded-br
-{
- display: none;
-}
-
-.z-window-overlapped .z-window-overlapped-header,
-.z-window-popup .z-window-popup-header,
-.z-window-modal .z-window-modal-header,
-.z-window-highlighted .z-window-highlighted-header
-{
- color: #fff;
- font-weight: bold;
-}
-
-.z-window-overlapped, .z-window-modal, .z-window-highlighted
-{
- border-top: 1px solid #c5c5c5 !important;
- border-bottom: 1px solid #c5c5c5 !important;
-}
-
-.z-window-overlapped-hl, .z-window-popup-hl, .z-window-modal-hl, .z-window-highlighted-hl, .z-window-embedded-hl,
-.z-window-overlapped-hr, .z-window-popup-hr, .z-window-modal-hr, .z-window-highlighted-hr, .z-window-embedded-hr,
-.z-window-overlapped-hm, .z-window-popup-hm, .z-window-modal-hm, .z-window-highlighted-hm, .z-window-embedded-hm,
-.z-window-overlapped-cl, .z-window-popup-cl, .z-window-modal-cl, .z-window-highlighted-cl, .z-window-embedded-cl,
-.z-window-overlapped-cr, .z-window-popup-cr, .z-window-modal-cr, .z-window-highlighted-cr, .z-window-embedded-cr,
-.z-window-overlapped-tl, .z-window-popup-tl, .z-window-modal-tl, .z-window-highlighted-tl, .z-window-embedded-tl,
-.z-window-overlapped-tr, .z-window-popup-tr, .z-window-modal-tr, .z-window-highlighted-tr, .z-window-embedded-tr,
-.z-window-overlapped-bl, .z-window-popup-bl, .z-window-modal-bl, .z-window-highlighted-bl, .z-window-embedded-bl,
-.z-window-overlapped-br, .z-window-popup-br, .z-window-modal-br, .z-window-highlighted-br, .z-window-embedded-br
-{
- background-image: none !important;
-}
-
-.z-window-modal-shadow, .z-window-overlapped-shadow, .z-window-popup-shadow, .z-window-embedded-shadow, .z-window-highlighted-shadow
-{
- border-radius: 0px !important;
-}
-
-<%-- Splitter button --%>
-.z-east-splt-btn,
-.z-west-splt-btn,
-.z-north-splt-btn,
-.z-south-splt-btn {
- filter: alpha(opacity=100); <%-- IE --%>
- opacity: 1.0; <%-- Moz + FF --%>
-}
-
-.z-east-splt-btn-over,
-.z-west-splt-btn-over,
-.z-north-splt-btn-over,
-.z-south-splt-btn-over {
- -webkit-filter: brightness(50%);
- filter: brightness(50%);
-}
-
-.help-content
-{
- padding: 5px;
- font-size: 11px;
- font-weight: normal;
-}
-
-<%-- Tree nodes configurable on Setup Wizard --%>
-.tree-wsetupwizard-finished {
- background-color: #90EE90;
- margin-left:20px
-}
-
-.tree-wsetupwizard-skipped {
- background-color: #00FF00;
- margin-left:20px
-}
-
-.tree-wsetupwizard-delayed {
- background-color: #0080FF;
- margin-left:20px;
-}
-
-.tree-wsetupwizard-in-progress {
- background-color: #FFFF33;
- margin-left:20px;
-}
-
-.tree-wsetupwizard-pending {
- background-color: #FFFF00;
- margin-left:20px;
-}
-
-.tree-setupwizard-nostatus{
- margin-left:20px;
-}
-
-.tree-wsetupwizard-finished-all {
- background-color: #90EE90;
-}
-
-.progressmeter-setupwizard {
-background: #FFFF00 repeat-x 0 0 ;
-background-image: none;
-border: 1px solid #CFCFCF;
-text-align: left;
-height: 20px;
-overflow: hidden;
-}
-.progressmeter-setupwizard-img {
-display: inline-block;
-background: #90EE90;
-background-image: none;
-height: 20px;
-line-height: 0;
-font-size: 0;
-}
-
-.menu-search-toggle-box {
- display: inline-block;
- border: 1px solid #ababab;
-}
-
-.menu-search-toggle-box .z-toolbarbutton-over {
- border: none;
-}
-
-.menu-search-toggle-off {
- margin:0px;
- padding: 1px 4px 1px 4px;
-}
-
-.menu-search-toggle-on {
- background: #999999;
- -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) inset;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) inset;
- margin:0px;
- padding: 1px 4px 1px 4px;
-}
-
-.menu-search-toggle-on img, .menu-search-toggle-off img {
- height: 16px;
- width: 16px;
-}
-
-.document-search-current-link {
- background-image:url(${c:encodeThemeURL('~./zul/img/tree/item-sel.gif')});
-}
-
-.global-search-tabpanel {
- width: 500px;
-}
-
-<%-- workaround for http://jira.idempiere.com/browse/IDEMPIERE-692 --%>
-.z-combobox-pp {
- max-height: 200px;
-}
-
-<%-- dialog --%>
-.popup-dialog .z-window-overlapped-cnt, .popup-dialog .z-window-highlighted-cnt {
- padding: 0px;
-}
-
-.popup-dialog .z-window-overlapped-bl, .popup-dialog .z-window-highlighted-bl {
- background-color: #f5f5f5;
-}
-
-.popup-dialog .dialog-content {
- padding: 8px !important;
- margin-bottom: 20px !important;
-}
-
-.popup-dialog.z-window-overlapped .dialog-footer {
- padding: 12px 15px 8px 15px !important;
-}
-
-.popup-dialog.z-window-highlighted .dialog-footer {
- padding: 12px 15px 5px 15px !important;
-}
-
-.dialog-footer {
- margin-bottom: 0;
- background-color: #f5f5f5;
- border-top: 1px solid #ddd;
- -webkit-box-shadow: inset 0 1px 0 #ffffff;
- -moz-box-shadow: inset 0 1px 0 #ffffff;
- box-shadow: inset 0 1px 0 #ffffff;
-}
-
-.btn-ok {
- font-weight: bold;
-}
-
<%-- vbox fix for firefox and ie --%>
table.z-vbox > tbody > tr > td > table {
width: 100%;
}
-<%-- performance indicator --%>
-.performance-indicator {
- margin: auto;
- position: relative;
-}
-
-.performance-indicator img {
- display: block;
- margin: auto;
-}
-
-.window-view-pi .performance-indicator img {
-}
-
-.performance-indicator-box {
- background-color: #eee;
- border: 1px solid #d8d8d8;
- border-radius: 5px;
- cursor: pointer;
-}
-
-.performance-indicator-title {
- text-align: center;
- background-color: #c8c8c8;
- border: 1px solid #c8c8c8;
- padding-top: 4px;
- padding-bottom: 4px;
-}
-
-.performance-panel .z-grid {
- border: none;
- margin:0;
- padding:0;
- position: relative;
- width: 100%;
-}
-
-<%-- about dialog --%>
-.about-trace-panel {
-}
-.about-info-panel {
-}
-.about-credit-panel {
-}
-.about-credit-panel-logo {
-}
-.about-credit-panel-sponsors {
-}
-.about-credit-panel-sponsors-header {
-}
-.about-credit-panel-sponsors-links {
-}
-.about-credit-panel-contributors {
-}
-.about-credit-panel-contributors-header {
-}
-.about-credit-panel-contributors-links {
-}
-.about-main-panel {
-}
-.about-main-panel-logo {
-}
-.about-main-panel-version {
-}
-.about-main-panel-links {
-}
-
-<%-- busy dialog --%>
-.busy-dialog {
- cursor: wait;
- background-color: transparent;
-}
-
-.busy-dialog-box {
- background-color: transparent;
- padding: 9px;
-}
-
-.busy-dialog-img {
- height: 16px;
- width: 16px;
- background: transparent no-repeat center;
- background-image: url(../images/progress3.gif) !important;
- display: -moz-inline-box;
- vertical-align: top;
- display: inline-block;
-}
-
-.busy-dialog-label {
- color: #363636;
-}
-
-<%-- tab editor --%>
-.tab-editor-form {
-}
-.tab-editor-form-content {
-}
-.tab-editor-form-east-panel {
-}
-.tab-editor-form-center-panel {
-}
-.tab-editor-form-west-panel {
-}
-
<%-- workflow activity --%>
.workflow-activity-form {
}
-
.workflow-panel-table {
border: 0px;
}
-<%-- find window --%>
-.find-window {
-}
-.find-window-simple {
-}
-.find-window-advanced {
-}
-
-.find-window-simple .z-south .z-hbox, .find-window-advanced .z-south .z-hbox {
- margin-top: 5px;
-}
-
-.find-window-simple .img-btn, .find-window-simple .img-btn.btn-ok.z-button-os, .find-window-simple .img-btn.btn-cancel.z-button-os,
-.find-window-advanced .img-btn, .find-window-advanced .img-btn.btn-ok.z-button-os, .find-window-advanced .img-btn.btn-cancel.z-button-os {
- margin: 0 2px;
-}
-
<%-- payment form --%>
.payment-form-content {
}
-<%-- help window --%>
-.help-window {
-}
-.help-window-header {
- padding: 10px 0 10px 20px;
-}
-.help-window-title {
- color: #FF0000;
-}
-.help-window-description {
-}
-.help-window-help {
-}
-.help-window-tabs {
- color: #0000CC;
-}
-.help-window-content {
- border-top: 1px solid #ddd;
-}
-.help-window-content-l {
-}
-.help-window-content-r {
- border-left: 1px solid #ddd;
- padding: 5px;
-}
-.help-window-tab {
- border-bottom: 1px solid #ddd;
-}
-.help-window-tab-header {
- background-color: #E6E6FA;
-}
-.help-window-tab-name {
- padding: 3px 15px !important;
- color: #000066;
-}
-.help-window-tab-description {
- padding: 3px !important;
-}
-.help-window-tab-help {
-}
-.help-window-fields {
- border-bottom: 1px solid #ddd;
- color: #6600CC;
- padding: 5px 15px;
-}
-.help-window-fields-link {
-}
-.help-window-field {
- border-bottom: 1px solid #ddd;
- padding: 5px 15px;
-}
-.help-window-field-name {
- color: #0000CC;
-}
-.help-window-field-description {
-}
-.help-window-field-help {
-}
+
-.help-window p, .help-window h3, .help-window h4, .help-window h5 {
- display: inline;
-}
+
-.help-window-content-r a {
- color: #3465a4 !important;
- text-decoration: underline;
-}
+
-.help-window-content-r a:hover {
- text-decoration: none;
-}
+
-.help-window-content-l a {
- color: #000 !important;
- text-decoration: none;
-}
+
-.help-window-content-l a:hover {
- text-decoration: none;
-}
+
-.help-window-content-l td {
- padding: 8px 20px;
- border-bottom: 1px solid #ddd;
-}
+
+
+
-.help-window-tab td {
- padding: 5px 15px 0 15px;
-}
+
-.help-window-content-l tr:hover td {
- background-color: #eee;
-}
+
-<%-- payment rule --%>
-.payment-rule-editor {
- display: inline-block;
- border: none;
- padding: 0px;
- margin: 0px;
- background-color: transparent;
- position: relative;
-}
-.payment-rule-editor .z-combobox {
- width: 100%;
-}
-.payment-rule-editor .z-combobox-inp {
- box-sizing: border-box;
- -moz-box-sizing: border-box; /* Firefox */
- display: inline-block;
- padding-right: 44px;
- width: 100%;
- height: 21px;
-}
-.payment-rule-editor .z-combobox-inp:focus {
- border: 1px solid #0000ff;
-}
-.payment-rule-editor .z-combobox-inp.editor-input-disd {
- padding-right: 22px !important;
-}
-.payment-rule-editor .z-combobox-btn {
- padding: 0px;
- margin: 0px;
- display: inline-block;
- border: none;
- position: absolute;
- right: 22px;
- top: 1px;
-}
-.payment-rule-editor .z-combobox.no-button .z-combobox-btn {
- right: 1px;
-}
-.payment-rule-editor .z-combobox .z-combobox-btn-over {
- background-color: #ddd;
- background-position: 0px 0px;
-}
-.payment-rule-editor .editor-button {
- border-radius: 0px;
-}
-.payment-rule-editor .editor-button :hover {
- border-radius: 0px;
- background-color: #ddd;
-}
+
-<%-- chart --%>
-.chart-field {
- padding: 10px;
- border: 1px solid lightgray !important;
-}
-.dashboard-widget.dashboard-widget-max .chart-gadget {
- height: 100% !important;
-}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.ui.zk/theme/default/zul/desktop/header.zul b/org.adempiere.ui.zk/theme/default/zul/desktop/header.zul
index 3ee3c9f5dc..0479b56347 100644
--- a/org.adempiere.ui.zk/theme/default/zul/desktop/header.zul
+++ b/org.adempiere.ui.zk/theme/default/zul/desktop/header.zul
@@ -11,9 +11,9 @@
-
+
diff --git a/org.adempiere.ui/.classpath b/org.adempiere.ui/.classpath
index 74dea4d489..b179f6141a 100644
--- a/org.adempiere.ui/.classpath
+++ b/org.adempiere.ui/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.adempiere.ui/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.ui/.settings/org.eclipse.jdt.core.prefs
index d43f98f30f..f42de363af 100644
--- a/org.adempiere.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.ui/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Mon Aug 09 17:35:10 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.ui/META-INF/MANIFEST.MF b/org.adempiere.ui/META-INF/MANIFEST.MF
index 0e743766eb..2b30b4e2b3 100644
--- a/org.adempiere.ui/META-INF/MANIFEST.MF
+++ b/org.adempiere.ui/META-INF/MANIFEST.MF
@@ -1,12 +1,12 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: UI base
+Bundle-Name: iDempiere UI base
Bundle-SymbolicName: org.adempiere.ui;singleton:=true
-Bundle-Version: 2.1.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
+Bundle-Version: 3.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
org.apache.xerces;bundle-version="2.9.0",
- org.eclipse.equinox.app;bundle-version="1.3.0"
+ org.eclipse.equinox.app;bundle-version="1.3.200"
Export-Package: org.compiere.apps,
org.compiere.apps.form,
org.compiere.apps.wf,
diff --git a/org.adempiere.webstore-feature/feature.xml b/org.adempiere.webstore-feature/feature.xml
index 3abc00c7ad..b4e2e4455b 100644
--- a/org.adempiere.webstore-feature/feature.xml
+++ b/org.adempiere.webstore-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -17,32 +17,30 @@
-
-
-
-
+
+
+
+
+ version="3.0.0.qualifier"/>
+ version="3.0.0.qualifier"
+ fragment="true"/>
+ version="3.0.0.qualifier"
+ fragment="true"/>
diff --git a/org.adempiere.webstore.resource/.classpath b/org.adempiere.webstore.resource/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.adempiere.webstore.resource/.classpath
+++ b/org.adempiere.webstore.resource/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.adempiere.webstore.resource/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.webstore.resource/.settings/org.eclipse.jdt.core.prefs
index 4854712ad7..f42de363af 100644
--- a/org.adempiere.webstore.resource/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.webstore.resource/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Thu Dec 23 08:01:11 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.webstore.resource/META-INF/MANIFEST.MF b/org.adempiere.webstore.resource/META-INF/MANIFEST.MF
index e774e28af0..4da1b6e79d 100644
--- a/org.adempiere.webstore.resource/META-INF/MANIFEST.MF
+++ b/org.adempiere.webstore.resource/META-INF/MANIFEST.MF
@@ -1,9 +1,10 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Webstore Resource
+Bundle-Name: iDempiere Web Store Resources
Bundle-SymbolicName: org.adempiere.webstore.resource
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Vendor: Adempiere.org
-Fragment-Host: org.adempiere.webstore;bundle-version="2.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Fragment-Host: org.adempiere.webstore;bundle-version="3.0.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.compiere.wstore
+Jetty-WarPatchFragmentFolderPath: /
diff --git a/org.adempiere.webstore.resource/build.properties b/org.adempiere.webstore.resource/build.properties
index 04d426b80d..84d71a2110 100644
--- a/org.adempiere.webstore.resource/build.properties
+++ b/org.adempiere.webstore.resource/build.properties
@@ -2,6 +2,5 @@ source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\
- *.*,\
- WEB-INF/
+ *.*
diff --git a/org.adempiere.webstore.servlet/.classpath b/org.adempiere.webstore.servlet/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.adempiere.webstore.servlet/.classpath
+++ b/org.adempiere.webstore.servlet/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.adempiere.webstore.servlet/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.webstore.servlet/.settings/org.eclipse.jdt.core.prefs
index b79a851439..f42de363af 100644
--- a/org.adempiere.webstore.servlet/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.webstore.servlet/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Mon Jan 10 12:12:37 MYT 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.webstore.servlet/META-INF/MANIFEST.MF b/org.adempiere.webstore.servlet/META-INF/MANIFEST.MF
index 9a029e17a5..f57d9ac27d 100644
--- a/org.adempiere.webstore.servlet/META-INF/MANIFEST.MF
+++ b/org.adempiere.webstore.servlet/META-INF/MANIFEST.MF
@@ -1,14 +1,14 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Servlet
-Bundle-SymbolicName: org.adempiere.webstore.servlet;singleton:=true
-Bundle-Version: 2.1.0.qualifier
+Bundle-Name: iDempiere Web Store Servlets
+Bundle-SymbolicName: org.adempiere.webstore.servlet
+Bundle-Version: 3.0.0.qualifier
Bundle-Vendor: Adempiere.org
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Export-Package: org.compiere.wstore
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.eclipse.equinox.http.registry
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0"
Import-Package: javax.servlet,
+ javax.servlet.annotation;version="3.1.0",
javax.servlet.http,
javax.servlet.jsp,
javax.servlet.jsp.jstl.core,
@@ -16,3 +16,4 @@ Import-Package: javax.servlet,
org.apache.ecs,
org.apache.ecs.xhtml,
org.apache.taglibs.standard.tag.el.core
+Fragment-Host: org.adempiere.webstore;bundle-version="3.0.0"
diff --git a/org.adempiere.webstore.servlet/build.properties b/org.adempiere.webstore.servlet/build.properties
index e9863e281e..34d2e4d2da 100644
--- a/org.adempiere.webstore.servlet/build.properties
+++ b/org.adempiere.webstore.servlet/build.properties
@@ -1,5 +1,4 @@
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
- .,\
- plugin.xml
+ .
diff --git a/org.adempiere.webstore.servlet/plugin.xml b/org.adempiere.webstore.servlet/plugin.xml
deleted file mode 100644
index 70b4c6d3e4..0000000000
--- a/org.adempiere.webstore.servlet/plugin.xml
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/AdvertisementServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/AdvertisementServlet.java
index 293e61efe4..1ff288ac10 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/AdvertisementServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/AdvertisementServlet.java
@@ -22,6 +22,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -40,6 +41,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: AdvertisementServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="advertisementServlet",
+ urlPatterns = "/advertisementServlet"
+)
public class AdvertisementServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/AssetServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/AssetServlet.java
index 9b29896aa0..7e9a94e581 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/AssetServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/AssetServlet.java
@@ -28,6 +28,7 @@ import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -50,6 +51,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: AssetServlet.java,v 1.3 2006/09/16 08:32:33 comdivision Exp $
*/
+@WebServlet(
+ name="assetServlet",
+ urlPatterns = "/assetServlet"
+)
public class AssetServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/BasketServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/BasketServlet.java
index cf086ff438..f239166280 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/BasketServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/BasketServlet.java
@@ -25,6 +25,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -45,6 +46,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: BasketServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="basketServlet",
+ urlPatterns = "/basketServlet"
+)
public class BasketServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/CheckOutServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/CheckOutServlet.java
index 63893547d0..4fd5e0b882 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/CheckOutServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/CheckOutServlet.java
@@ -22,6 +22,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,6 +40,10 @@ import org.compiere.util.WebUser;
* @author Jorg Janke
* @version $Id: CheckOutServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="checkOutServlet",
+ urlPatterns = "/checkOutServlet"
+)
public class CheckOutServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/Click.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/Click.java
index 61ca7e48db..0de4a1ac76 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/Click.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/Click.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -46,6 +47,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: Click.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="clickServlet",
+ urlPatterns = "/click"
+)
public class Click extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/Counter.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/Counter.java
index 6a3ad9c0bf..f3242865e7 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/Counter.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/Counter.java
@@ -25,6 +25,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -41,6 +42,10 @@ import org.compiere.util.WebEnv;
* @author Jorg Janke
* @version $Id: Counter.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="counterServlet",
+ urlPatterns = "/counter"
+)
public class Counter extends HttpServlet implements Runnable
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/EMailServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/EMailServlet.java
index ac0dfafc7f..a8b0097f4e 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/EMailServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/EMailServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,6 +40,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: EMailServlet.java,v 1.4 2006/09/24 12:11:16 comdivision Exp $
*/
+@WebServlet(
+ name="emailServlet",
+ urlPatterns = "/emailServlet"
+)
public class EMailServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/ExpenseServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/ExpenseServlet.java
index d63596340f..38ae6ac6ba 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/ExpenseServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/ExpenseServlet.java
@@ -22,6 +22,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,6 +40,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: ExpenseServlet.java,v 1.3 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="expenseServlet",
+ urlPatterns = "/expenseServlet"
+)
public class ExpenseServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/InfoServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/InfoServlet.java
index 06adccf5cf..1fcde0da1b 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/InfoServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/InfoServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -44,6 +45,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: InfoServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="infoServlet",
+ urlPatterns = "/infoServlet"
+)
public class InfoServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/InvoiceServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/InvoiceServlet.java
index b9ae5eb270..606155e960 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/InvoiceServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/InvoiceServlet.java
@@ -27,6 +27,7 @@ import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -47,6 +48,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: InvoiceServlet.java,v 1.3 2006/09/16 08:32:34 comdivision Exp $
*/
+@WebServlet(
+ name="invoiceServlet",
+ urlPatterns = "/invoiceServlet"
+)
public class InvoiceServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/IssueReportServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/IssueReportServlet.java
index 27a64751f4..6f6e2df6a8 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/IssueReportServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/IssueReportServlet.java
@@ -25,6 +25,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -41,6 +42,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: IssueReportServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="issueReportServlet",
+ urlPatterns = "/issueReportServlet"
+)
public class IssueReportServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/LocationServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/LocationServlet.java
index 2bf06f040f..6b3aa08af4 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/LocationServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/LocationServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -42,6 +43,10 @@ import org.compiere.util.Util;
* @version $Id: LocationServlet.java,v 1.5 2006/07/30 00:53:21 jjanke Exp $
* @author Michael Judd BF [2728388] - fix potential CSS velnerability
*/
+@WebServlet(
+ name="locationServlet",
+ urlPatterns = "/locationServlet"
+)
public class LocationServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/LoginServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/LoginServlet.java
index 4277c9db77..3cf7d38ae9 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/LoginServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/LoginServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -45,6 +46,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: LoginServlet.java,v 1.6 2006/10/08 18:17:43 comdivision Exp $
*/
+@WebServlet(
+ name="loginServlet",
+ urlPatterns = "/loginServlet"
+)
public class LoginServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/NoteServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/NoteServlet.java
index 5f5fd239ed..fcc5acb49b 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/NoteServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/NoteServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -43,6 +44,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: NoteServlet.java,v 1.3 2006/09/16 08:32:34 comdivision Exp $
*/
+@WebServlet(
+ name="noteServlet",
+ urlPatterns = "/noteServlet"
+)
public class NoteServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/OrderServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/OrderServlet.java
index 94a3a4c619..1f5b642be9 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/OrderServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/OrderServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -48,6 +49,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: OrderServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="orderServlet",
+ urlPatterns = "/orderServlet"
+)
public class OrderServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/PaymentServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/PaymentServlet.java
index b96c94bef9..1db1d725b7 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/PaymentServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/PaymentServlet.java
@@ -24,6 +24,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -49,6 +50,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: PaymentServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="paymentServlet",
+ urlPatterns = "/paymentServlet"
+)
public class PaymentServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/ProductServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/ProductServlet.java
index 0bac7b5c6a..def6b7bb3c 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/ProductServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/ProductServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,6 +40,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: ProductServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="productServlet",
+ urlPatterns = "/productServlet"
+)
public class ProductServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RegistrationServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RegistrationServlet.java
index 1c5996f562..23fdb789c7 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RegistrationServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RegistrationServlet.java
@@ -24,6 +24,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -44,6 +45,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: RegistrationServlet.java,v 1.2 2006/07/30 00:53:21 jjanke Exp $
*/
+@WebServlet(
+ name="registrationServlet",
+ urlPatterns = "/registrationServlet"
+)
public class RegistrationServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RequestServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RequestServlet.java
index d9b8af435c..eb761cbe78 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RequestServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RequestServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -48,6 +49,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: RequestServlet.java,v 1.3 2006/09/16 08:32:34 comdivision Exp $
*/
+@WebServlet(
+ name="requestServlet",
+ urlPatterns = "/requestServlet"
+)
public class RequestServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RfQServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RfQServlet.java
index 85bea4f42d..f31b7b0106 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/RfQServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/RfQServlet.java
@@ -25,6 +25,7 @@ import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -47,6 +48,10 @@ import org.compiere.util.WebUtil;
* @author Jorg Janke
* @version $Id: RfQServlet.java,v 1.3 2006/09/16 08:32:34 comdivision Exp $
*/
+@WebServlet(
+ name="rfqServlet",
+ urlPatterns = "/rfqServlet"
+)
public class RfQServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/SearchServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/SearchServlet.java
index 48fd9ae0aa..45c82300c5 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/SearchServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/SearchServlet.java
@@ -26,6 +26,7 @@ import java.util.logging.Level;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -48,6 +49,10 @@ import org.compiere.util.WebUtil;
* @version $Id$
* @author Michael Judd BF [2728388] - fix potential CSS velnerability
*/
+@WebServlet(
+ name="searchServlet",
+ urlPatterns = "/searchServlet"
+)
public class SearchServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/UpdateServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/UpdateServlet.java
index 42e97a3cc6..a15dc6ed36 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/UpdateServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/UpdateServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,6 +40,10 @@ import org.compiere.util.WebUtil;
* @author Malachi de AElfweald
* @version $Id: UpdateServlet.java,v 1.6 2006/09/23 19:38:46 comdivision Exp $
*/
+@WebServlet(
+ name="updateServlet",
+ urlPatterns = "/updateServlet"
+)
public class UpdateServlet
extends HttpServlet
{
diff --git a/org.adempiere.webstore.servlet/src/org/compiere/wstore/WorkflowServlet.java b/org.adempiere.webstore.servlet/src/org/compiere/wstore/WorkflowServlet.java
index 9d8f7d7882..de81c36315 100644
--- a/org.adempiere.webstore.servlet/src/org/compiere/wstore/WorkflowServlet.java
+++ b/org.adempiere.webstore.servlet/src/org/compiere/wstore/WorkflowServlet.java
@@ -23,6 +23,7 @@ import java.util.logging.Level;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -44,6 +45,10 @@ import org.compiere.wf.MWFActivity;
* @author Jorg Janke
* @version $Id: WorkflowServlet.java,v 1.3 2006/09/16 08:32:34 comdivision Exp $
*/
+@WebServlet(
+ name="workflowServlet",
+ urlPatterns = "/workflowServlet"
+)
public class WorkflowServlet extends HttpServlet
{
/**
diff --git a/org.adempiere.webstore/.classpath b/org.adempiere.webstore/.classpath
index 6046c7a0d1..1fa3e6803d 100644
--- a/org.adempiere.webstore/.classpath
+++ b/org.adempiere.webstore/.classpath
@@ -1,7 +1,7 @@
-
+
-
+
diff --git a/org.adempiere.webstore/.settings/org.eclipse.jdt.core.prefs b/org.adempiere.webstore/.settings/org.eclipse.jdt.core.prefs
index 2b9a3705b5..f42de363af 100644
--- a/org.adempiere.webstore/.settings/org.eclipse.jdt.core.prefs
+++ b/org.adempiere.webstore/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Wed Jul 14 15:58:26 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.adempiere.webstore/META-INF/MANIFEST.MF b/org.adempiere.webstore/META-INF/MANIFEST.MF
index b66242f14f..7c7b0d4ed5 100644
--- a/org.adempiere.webstore/META-INF/MANIFEST.MF
+++ b/org.adempiere.webstore/META-INF/MANIFEST.MF
@@ -1,51 +1,49 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: org.adempiere.webstore
+Bundle-Name: iDempiere Web Store
Bundle-SymbolicName: org.adempiere.webstore;singleton:=true
-Bundle-Version: 2.1.0.qualifier
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.report.jasper.webapp;bundle-version="2.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Version: 3.0.0.qualifier
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.report.jasper.webapp;bundle-version="3.0.0",
+ org.eclipse.jdt.core.compiler.batch;bundle-version="3.8.2"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Web-ContextPath: wstore
-Import-Package: javax.servlet;version="2.5.0",
- javax.servlet.http;version="2.5.0",
- javax.servlet.jsp;version="2.1.0",
- javax.servlet.jsp.el;version="2.1.0",
- javax.servlet.jsp.jstl.core;version="1.1.2",
- javax.servlet.jsp.jstl.fmt;version="1.1.2",
- javax.servlet.jsp.jstl.sql;version="1.1.2",
- javax.servlet.jsp.jstl.tlv;version="1.1.2",
- javax.servlet.jsp.resources;version="2.1.0",
+Import-Package: javax.servlet;version="3.0.0",
+ javax.servlet.http;version="3.0.0",
+ javax.servlet.jsp;version="2.2.0",
+ javax.servlet.jsp.el;version="2.2.0",
+ javax.servlet.jsp.jstl.core;version="1.2.0",
+ javax.servlet.jsp.jstl.fmt;version="1.2.0",
+ javax.servlet.jsp.jstl.sql;version="1.2.0",
+ javax.servlet.jsp.jstl.tlv;version="1.2.0",
+ javax.servlet.jsp.resources;version="2.2.0",
javax.servlet.jsp.tagext;version="2.1.0",
- javax.servlet.resources;version="2.5.0",
+ javax.servlet.resources;version="3.0.0",
org.apache.ecs,
org.apache.ecs.filter,
org.apache.ecs.storage,
org.apache.ecs.xhtml,
org.apache.ecs.xml,
- org.apache.taglibs.standard;version="1.1.2",
- org.apache.taglibs.standard.extra.spath;version="1.1.2",
- org.apache.taglibs.standard.functions;version="1.1.2",
- org.apache.taglibs.standard.lang.jstl;version="1.1.2",
- org.apache.taglibs.standard.lang.jstl.parser;version="1.1.2",
- org.apache.taglibs.standard.lang.jstl.test;version="1.1.2",
- org.apache.taglibs.standard.lang.jstl.test.beans;version="1.1.2",
- org.apache.taglibs.standard.lang.support;version="1.1.2",
- org.apache.taglibs.standard.resources;version="1.1.2",
- org.apache.taglibs.standard.tag.common.core;version="1.1.2",
- org.apache.taglibs.standard.tag.common.fmt;version="1.1.2",
- org.apache.taglibs.standard.tag.common.sql;version="1.1.2",
- org.apache.taglibs.standard.tag.common.xml;version="1.1.2",
- org.apache.taglibs.standard.tag.el.core;version="1.1.2",
- org.apache.taglibs.standard.tag.el.fmt;version="1.1.2",
- org.apache.taglibs.standard.tag.el.sql;version="1.1.2",
- org.apache.taglibs.standard.tag.el.xml;version="1.1.2",
- org.apache.taglibs.standard.tag.rt.core;version="1.1.2",
- org.apache.taglibs.standard.tag.rt.fmt;version="1.1.2",
- org.apache.taglibs.standard.tag.rt.sql;version="1.1.2",
- org.apache.taglibs.standard.tag.rt.xml;version="1.1.2",
- org.apache.taglibs.standard.tei;version="1.1.2",
- org.apache.taglibs.standard.tlv;version="1.1.2",
+ org.apache.taglibs.standard;version="1.2.0",
+ org.apache.taglibs.standard.functions;version="1.2.0",
+ org.apache.taglibs.standard.lang.jstl;version="1.2.0",
+ org.apache.taglibs.standard.lang.jstl.parser;version="1.2.0",
+ org.apache.taglibs.standard.lang.support;version="1.2.0",
+ org.apache.taglibs.standard.resources;version="1.2.0",
+ org.apache.taglibs.standard.tag.common.core;version="1.2.0",
+ org.apache.taglibs.standard.tag.common.fmt;version="1.2.0",
+ org.apache.taglibs.standard.tag.common.sql;version="1.2.0",
+ org.apache.taglibs.standard.tag.common.xml;version="1.2.0",
+ org.apache.taglibs.standard.tag.el.core;version="1.2.0",
+ org.apache.taglibs.standard.tag.el.fmt;version="1.2.0",
+ org.apache.taglibs.standard.tag.el.sql;version="1.2.0",
+ org.apache.taglibs.standard.tag.el.xml;version="1.2.0",
+ org.apache.taglibs.standard.tag.rt.core;version="1.2.0",
+ org.apache.taglibs.standard.tag.rt.fmt;version="1.2.0",
+ org.apache.taglibs.standard.tag.rt.sql;version="1.2.0",
+ org.apache.taglibs.standard.tag.rt.xml;version="1.2.0",
+ org.apache.taglibs.standard.tei;version="1.2.0",
+ org.apache.taglibs.standard.tlv;version="1.2.0",
org.apache.xerces.dom;version="2.9.0",
org.apache.xerces.dom.events;version="2.9.0",
org.apache.xerces.dom3.as;version="2.9.0",
@@ -80,9 +78,12 @@ Import-Package: javax.servlet;version="2.5.0",
org.apache.xerces.xs;version="2.9.0",
org.apache.xerces.xs.datatypes;version="2.9.0",
org.apache.xml.serialize;version="2.9.0",
- org.eclipse.equinox.http.registry;version="1.0.0",
- org.eclipse.equinox.http.servlet;version="1.1.0",
- org.eclipse.equinox.servletbridge;version="1.1.0",
- org.osgi.framework;version="1.6.0",
+ org.compiere.wstore,
+ org.osgi.framework;version="1.7.0",
org.osgi.service.http;version="1.2.1"
Bundle-Activator: org.adempiere.webstore.Activator
+
+
+
+
+
diff --git a/org.adempiere.webstore.resource/WEB-INF/c.tld b/org.adempiere.webstore/WEB-INF/c.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/c.tld
rename to org.adempiere.webstore/WEB-INF/c.tld
diff --git a/org.adempiere.webstore.resource/WEB-INF/fmt.tld b/org.adempiere.webstore/WEB-INF/fmt.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/fmt.tld
rename to org.adempiere.webstore/WEB-INF/fmt.tld
diff --git a/org.adempiere.webstore.resource/WEB-INF/fn.tld b/org.adempiere.webstore/WEB-INF/fn.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/fn.tld
rename to org.adempiere.webstore/WEB-INF/fn.tld
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/footer.jspf b/org.adempiere.webstore/WEB-INF/jspf/footer.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/footer.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/footer.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/head.jspf b/org.adempiere.webstore/WEB-INF/jspf/head.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/head.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/head.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/header.jspf b/org.adempiere.webstore/WEB-INF/jspf/header.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/header.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/header.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/menu.jspf b/org.adempiere.webstore/WEB-INF/jspf/menu.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/menu.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/menu.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/page.jspf b/org.adempiere.webstore/WEB-INF/jspf/page.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/page.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/page.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/jspf/vendor.jspf b/org.adempiere.webstore/WEB-INF/jspf/vendor.jspf
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/jspf/vendor.jspf
rename to org.adempiere.webstore/WEB-INF/jspf/vendor.jspf
diff --git a/org.adempiere.webstore.resource/WEB-INF/sql.tld b/org.adempiere.webstore/WEB-INF/sql.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/sql.tld
rename to org.adempiere.webstore/WEB-INF/sql.tld
diff --git a/org.adempiere.webstore/WEB-INF/web.xml b/org.adempiere.webstore/WEB-INF/web.xml
index c7c3688d8a..48088c21de 100644
--- a/org.adempiere.webstore/WEB-INF/web.xml
+++ b/org.adempiere.webstore/WEB-INF/web.xml
@@ -1,8 +1,8 @@
-
+
/iD32.gif
@@ -17,27 +17,10 @@
#AD_Client_ID
1000000
-
- equinoxBridgeFilter
- org.eclipse.equinox.servletbridge.BridgeFilter
-
- HttpContext.ClassName
- org.adempiere.webstore.DefaultHttpContext
-
-
-
- equinoxBridgeFilter
- /*
-
-
- equinoxBridgeFilter
- *.jsp
-
-
diff --git a/org.adempiere.webstore.resource/WEB-INF/webStore.tld b/org.adempiere.webstore/WEB-INF/webStore.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/webStore.tld
rename to org.adempiere.webstore/WEB-INF/webStore.tld
diff --git a/org.adempiere.webstore.resource/WEB-INF/x.tld b/org.adempiere.webstore/WEB-INF/x.tld
similarity index 100%
rename from org.adempiere.webstore.resource/WEB-INF/x.tld
rename to org.adempiere.webstore/WEB-INF/x.tld
diff --git a/org.adempiere.tomcat.config/bin/.hgignore b/org.adempiere.webstore/bin/.hgignore
similarity index 100%
rename from org.adempiere.tomcat.config/bin/.hgignore
rename to org.adempiere.webstore/bin/.hgignore
diff --git a/org.adempiere.webstore/build.properties b/org.adempiere.webstore/build.properties
index 02ed860ca2..bfe6b1ee82 100644
--- a/org.adempiere.webstore/build.properties
+++ b/org.adempiere.webstore/build.properties
@@ -1,10 +1,8 @@
-output.. = build/
bin.includes = META-INF/,\
*.*,\
- WEB-INF/,\
- plugin.xml
+ WEB-INF/
bin.excludes = src/**,\
- build/**,\
+ bin/**,\
.settings/**,\
.classpath,\
.project,\
diff --git a/org.adempiere.webstore/plugin.xml b/org.adempiere.webstore/plugin.xml
deleted file mode 100644
index 6189a10cdd..0000000000
--- a/org.adempiere.webstore/plugin.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/org.adempiere.webstore/src/org/adempiere/webstore/DefaultHttpContext.java b/org.adempiere.webstore/src/org/adempiere/webstore/DefaultHttpContext.java
deleted file mode 100644
index 9c2c491d87..0000000000
--- a/org.adempiere.webstore/src/org/adempiere/webstore/DefaultHttpContext.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.adempiere.webstore;
-
-import java.io.IOException;
-import java.net.URL;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.osgi.service.http.HttpContext;
-
-public class DefaultHttpContext implements HttpContext {
-
- public DefaultHttpContext() {
- }
-
- @Override
- public boolean handleSecurity(HttpServletRequest request,
- HttpServletResponse response) throws IOException {
- // default behaviour assumes the container has already performed authentication
- return true;
- }
-
- @Override
- public URL getResource(String name) {
- return Activator.bundleContext.getBundle().getResource(name);
- }
-
- @Override
- public String getMimeType(String name) {
- return null;
- }
-
-}
diff --git a/org.apache.ecs/.classpath b/org.apache.ecs/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.apache.ecs/.classpath
+++ b/org.apache.ecs/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.apache.ecs/.settings/org.eclipse.jdt.core.prefs b/org.apache.ecs/.settings/org.eclipse.jdt.core.prefs
index a6abaa2b46..f42de363af 100644
--- a/org.apache.ecs/.settings/org.eclipse.jdt.core.prefs
+++ b/org.apache.ecs/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Mon Sep 27 12:11:10 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.apache.ecs/META-INF/MANIFEST.MF b/org.apache.ecs/META-INF/MANIFEST.MF
index f57fa4ef11..730989a2cb 100644
--- a/org.apache.ecs/META-INF/MANIFEST.MF
+++ b/org.apache.ecs/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Apache ECS
+Bundle-Name: Apache ECS Library
Bundle-SymbolicName: org.apache.ecs
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.apache.ecs.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.osgi.framework;version="1.3.0"
Export-Package: org.apache.ecs;uses:="org.apache.ecs.xhtml",
org.apache.ecs.filter;uses:="org.apache.ecs",
diff --git a/org.compiere.db.oracle.provider/.classpath b/org.compiere.db.oracle.provider/.classpath
index c40f083e0a..036bcb4b61 100644
--- a/org.compiere.db.oracle.provider/.classpath
+++ b/org.compiere.db.oracle.provider/.classpath
@@ -1,11 +1,11 @@
-
-
-
-
+
-
+
+
+
+
diff --git a/org.compiere.db.oracle.provider/.settings/org.eclipse.jdt.core.prefs b/org.compiere.db.oracle.provider/.settings/org.eclipse.jdt.core.prefs
index ef47a5f5a7..f42de363af 100644
--- a/org.compiere.db.oracle.provider/.settings/org.eclipse.jdt.core.prefs
+++ b/org.compiere.db.oracle.provider/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Mon Aug 23 18:48:06 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
index 190d7d55b1..daeed551d8 100644
--- a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
@@ -1,16 +1,16 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: OracleProvider
+Bundle-Name: iDempiere Oracle Provider
Bundle-SymbolicName: org.compiere.db.oracle.provider;singleton:=true
-Bundle-Version: 2.1.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.install;bundle-version="2.1.0"
+Bundle-Version: 3.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.install;bundle-version="3.0.0"
Bundle-ClassPath: .,
- ojdbc6.jar,
- c3p0-0.9.2.jar,
- c3p0-oracle-thin-extras-0.9.2.jar,
- mchange-commons-java-0.2.3.3.jar
+ ojdbc7.jar,
+ c3p0-0.9.5-pre9.jar,
+ c3p0-oracle-thin-extras-0.9.5-pre9.jar,
+ mchange-commons-java-0.2.8.jar
Import-Package: org.osgi.framework
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.adempiere.db.oracle.OracleBundleActivator
diff --git a/org.compiere.db.oracle.provider/build.properties b/org.compiere.db.oracle.provider/build.properties
index ff25cde9bf..da84e0fe36 100644
--- a/org.compiere.db.oracle.provider/build.properties
+++ b/org.compiere.db.oracle.provider/build.properties
@@ -2,10 +2,10 @@ output.. = bin/
bin.includes = META-INF/,\
.,\
plugin.xml,\
- ojdbc6.jar,\
+ ojdbc7.jar,\
OSGI-INF/oracleprovider.xml,\
OSGI-INF/,\
- c3p0-0.9.2.jar,\
- c3p0-oracle-thin-extras-0.9.2.jar,\
- mchange-commons-java-0.2.3.3.jar
+ c3p0-0.9.5-pre9.jar,\
+ c3p0-oracle-thin-extras-0.9.5-pre9.jar,\
+ mchange-commons-java-0.2.8.jar
source.. = src/
diff --git a/org.compiere.db.postgresql.provider/.classpath b/org.compiere.db.postgresql.provider/.classpath
index bb3bdddae8..d1f1933da9 100644
--- a/org.compiere.db.postgresql.provider/.classpath
+++ b/org.compiere.db.postgresql.provider/.classpath
@@ -1,10 +1,10 @@
-
-
-
-
+
+
+
+
diff --git a/org.compiere.db.postgresql.provider/.settings/org.eclipse.jdt.core.prefs b/org.compiere.db.postgresql.provider/.settings/org.eclipse.jdt.core.prefs
index a7464d29fe..f42de363af 100644
--- a/org.compiere.db.postgresql.provider/.settings/org.eclipse.jdt.core.prefs
+++ b/org.compiere.db.postgresql.provider/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Mon Aug 23 18:53:29 MYT 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
index 61c28c3fa3..6c2f088aaa 100644
--- a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
@@ -1,15 +1,15 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: PostgresqlProvider
+Bundle-Name: iDempiere Postgresql Provider
Bundle-SymbolicName: org.compiere.db.postgresql.provider;singleton:=true
-Bundle-Version: 2.1.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Version: 3.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ClassPath: .,
- postgresql-9.2-1004.jdbc4.jar,
- c3p0-0.9.2.jar,
- mchange-commons-java-0.2.3.3.jar
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.install;bundle-version="2.1.0"
+ postgresql-9.3-1102.jdbc41.jar,
+ c3p0-0.9.5-pre9.jar,
+ mchange-commons-java-0.2.8.jar
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.install;bundle-version="3.0.0"
Import-Package: junit.framework;version="3.8.2",
org.junit;version="4.8.1",
org.osgi.framework
diff --git a/org.compiere.db.postgresql.provider/build.properties b/org.compiere.db.postgresql.provider/build.properties
index c93322236d..7c9025d892 100644
--- a/org.compiere.db.postgresql.provider/build.properties
+++ b/org.compiere.db.postgresql.provider/build.properties
@@ -4,7 +4,7 @@ bin.includes = META-INF/,\
plugin.xml,\
OSGI-INF/pgprovider.xml,\
OSGI-INF/,\
- c3p0-0.9.2.jar,\
- mchange-commons-java-0.2.3.3.jar,\
- postgresql-9.2-1004.jdbc4.jar
+ c3p0-0.9.5-pre9.jar,\
+ mchange-commons-java-0.2.8.jar,\
+ postgresql-9.3-1102.jdbc41.jar
source.. = src/
diff --git a/org.compiere.db.provider-feature/feature.xml b/org.compiere.db.provider-feature/feature.xml
index f4244ec71f..c10d8093ce 100644
--- a/org.compiere.db.provider-feature/feature.xml
+++ b/org.compiere.db.provider-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -17,21 +17,21 @@
-
+
diff --git a/org.idempiere.eclipse.platform-feature/director.bat b/org.idempiere.eclipse.platform-feature/director.bat
index 48609805fa..bd9b3b5228 100644
--- a/org.idempiere.eclipse.platform-feature/director.bat
+++ b/org.idempiere.eclipse.platform-feature/director.bat
@@ -1,4 +1,4 @@
@Title ... p2 director
@Echo off
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true %1
+java -jar plugins/org.eclipse.equinox.launcher_1.*.jar -install director -configuration director/configuration -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true %1
diff --git a/org.idempiere.eclipse.platform-feature/director.sh b/org.idempiere.eclipse.platform-feature/director.sh
index c08b5d2283..23f74c6046 100644
--- a/org.idempiere.eclipse.platform-feature/director.sh
+++ b/org.idempiere.eclipse.platform-feature/director.sh
@@ -1,5 +1,5 @@
#!/bin/sh
#
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true $*
+java -jar plugins/org.eclipse.equinox.launcher_1.*.jar -install director -configuration director/configuration -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true $*
diff --git a/org.idempiere.eclipse.platform-feature/director/configuration/config.ini b/org.idempiere.eclipse.platform-feature/director/configuration/config.ini
index c91a1b66a0..7ff5db4119 100644
--- a/org.idempiere.eclipse.platform-feature/director/configuration/config.ini
+++ b/org.idempiere.eclipse.platform-feature/director/configuration/config.ini
@@ -1,7 +1,67 @@
-osgi.framework=file\:../plugins/org.eclipse.osgi_3.7.2.v20120110-1415.jar
+osgi.framework=file\:../plugins/org.eclipse.osgi_3.10.1.v20140909-1633.jar
+osgi.install.area=director
equinox.use.ds=true
-osgi.bundles=org.eclipse.core.net@start,org.eclipse.core.variables,org.eclipse.ant.core,org.eclipse.core.runtime@start,org.hamcrest.core,org.junit,org.apache.commons.collections,org.apache.ant,org.apache.commons.net,org.eclipse.equinox.app,org.eclipse.equinox.registry,org.eclipse.equinox.common@2:start,org.eclipse.core.contenttype,org.eclipse.core.jobs,org.eclipse.equinox.preferences,org.apache.commons.logging,org.eclipse.osgi.services,org.sat4j.core,org.sat4j.pb,org.eclipse.ecf,org.eclipse.ecf.filetransfer,org.eclipse.ecf.identity,org.eclipse.ecf.provider.filetransfer,org.eclipse.ecf.provider.filetransfer.httpclient,org.eclipse.ecf.provider.filetransfer.httpclient.ssl,org.eclipse.ecf.provider.filetransfer.ssl,org.eclipse.ecf.ssl,org.eclipse.equinox.ds@start,org.eclipse.equinox.event,org.eclipse.equinox.frameworkadmin,org.eclipse.equinox.frameworkadmin.equinox,org.eclipse.equinox.http.registry,org.eclipse.equinox.launcher,org.eclipse.equinox.p2.artifact.repository,org.eclipse.equinox.p2.console,org.eclipse.equinox.p2.core,org.eclipse.equinox.p2.director,org.eclipse.equinox.p2.director.app,org.eclipse.equinox.p2.engine,org.eclipse.equinox.p2.garbagecollector,org.eclipse.equinox.p2.jarprocessor,org.eclipse.equinox.p2.metadata,org.eclipse.equinox.p2.metadata.repository,org.eclipse.equinox.p2.ql,org.eclipse.equinox.p2.repository,org.eclipse.equinox.p2.touchpoint.eclipse,org.eclipse.equinox.p2.touchpoint.natives,org.eclipse.equinox.p2.transport.ecf,org.eclipse.equinox.security,org.eclipse.equinox.util,org.apache.commons.httpclient,org.eclipse.equinox.simpleconfigurator.manipulator,org.apache.commons.codec,org.eclipse.equinox.simpleconfigurator
+osgi.bundles=org.eclipse.core.net@start,\
+ org.eclipse.core.variables,\
+ org.eclipse.core.runtime@start,\
+ org.eclipse.core.contenttype,\
+ org.eclipse.core.jobs,\
+ org.eclipse.ant.core,\
+ org.eclipse.osgi.services,\
+ org.eclipse.equinox.app,\
+ org.eclipse.equinox.registry,\
+ org.eclipse.equinox.common@2:start,\
+ org.eclipse.equinox.preferences,\
+ org.eclipse.equinox.ds@start,\
+ org.eclipse.equinox.event,\
+ org.eclipse.equinox.frameworkadmin@start,\
+ org.eclipse.equinox.frameworkadmin.equinox,\
+ org.eclipse.equinox.http.registry,\
+ org.eclipse.equinox.launcher,\
+ org.eclipse.equinox.security,\
+ org.eclipse.equinox.util,\
+ org.eclipse.equinox.simpleconfigurator.manipulator,\
+ org.eclipse.equinox.simpleconfigurator@1\:start,\
+ org.eclipse.equinox.p2.artifact.repository,\
+ org.eclipse.equinox.p2.console,\
+ org.eclipse.equinox.p2.core,\
+ org.eclipse.equinox.p2.director,\
+ org.eclipse.equinox.p2.director.app,\
+ org.eclipse.equinox.p2.engine,\
+ org.eclipse.equinox.p2.garbagecollector,\
+ org.eclipse.equinox.p2.jarprocessor,\
+ org.eclipse.equinox.p2.metadata,\
+ org.eclipse.equinox.p2.metadata.repository,\
+ org.eclipse.equinox.p2.ql,\
+ org.eclipse.equinox.p2.repository,\
+ org.eclipse.equinox.p2.touchpoint.eclipse,\
+ org.eclipse.equinox.p2.touchpoint.natives,\
+ org.eclipse.equinox.p2.transport.ecf,\
+ org.eclipse.ecf,\
+ org.eclipse.ecf.filetransfer,\
+ org.eclipse.ecf.identity,\
+ org.eclipse.ecf.provider.filetransfer,\
+ org.eclipse.ecf.provider.filetransfer.httpclient4,\
+ org.eclipse.ecf.provider.filetransfer.httpclient4.ssl,\
+ org.eclipse.ecf.provider.filetransfer.ssl,\
+ org.eclipse.ecf.provider.filetransfer.httpclient4,\
+ org.sat4j.core,\
+ org.sat4j.pb,\
+ org.apache.commons.collections,\
+ org.apache.commons.net,\
+ org.apache.commons.codec,\
+ org.apache.commons.logging,\
+ org.apache.httpcomponents.httpclient,\
+ org.apache.httpcomponents.httpcore,\
+ org.apache.ant,\
+ org.hamcrest.core,\
+ org.junit,\
+ org.eclipse.osgi.compatibility.state,\
+ org.eclipse.osgi.compatibility.plugins,\
+ org.eclipse.osgi@start
osgi.framework.extensions=
osgi.bundles.defaultStartLevel=4
eclipse.p2.profile=DefaultProfile
-eclipse.p2.data.area=@config.dir/../../p2/
\ No newline at end of file
+eclipse.p2.data.area=@config.dir/../../p2/
+osgi.compatibility.bootdelegation=true
+osgi.noShutdown=false
diff --git a/org.idempiere.eclipse.platform-feature/feature.xml b/org.idempiere.eclipse.platform-feature/feature.xml
index 1b1ca217c1..859a517383 100644
--- a/org.idempiere.eclipse.platform-feature/feature.xml
+++ b/org.idempiere.eclipse.platform-feature/feature.xml
@@ -2,7 +2,7 @@
@@ -29,6 +29,34 @@
id="org.eclipse.equinox.executable"
version="0.0.0"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.idempiere.eclipse.platform-feature/update.bat b/org.idempiere.eclipse.platform-feature/update.bat
index 501fd8e2d5..d4c933b160 100644
--- a/org.idempiere.eclipse.platform-feature/update.bat
+++ b/org.idempiere.eclipse.platform-feature/update.bat
@@ -4,25 +4,38 @@
cd %~dp0
cp idempiere.ini idempiere.ini.sav
-if exist server.xml.sav del /q server.xml.sav
-if exist plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml (
- copy plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml server.xml.sav
- del /q plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml
-)
-if exist plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml (
- copy plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml server.xml.sav
- del /q plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml
-)
-if exist plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml (
- copy plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml server.xml.sav
+
+if exist jetty.xml.sav del /q jetty.xml.sav
+if exist jettyhome/etc/jetty.xml (
+ copy jettyhome/etc/jetty.xml jetty.xml.sav
)
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination %~dp0 -repository %1 -u org.adempiere.server.product
+if exist jetty-ssl.xml.sav del /q jetty-ssl.xml.sav
+if exist jettyhome/etc/jetty-ssl.xml (
+ copy jettyhome/etc/jetty-ssl.xml jetty-ssl.xml.sav
+)
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination %~dp0 -repository %1 -i org.adempiere.server.product
+if exist jetty-selector.xml.sav del /q jetty-selector.xml.sav
+if exist jettyhome/etc/jetty-selector.xml (
+ copy jettyhome/etc/jetty-selector.xml jetty-selector.xml.sav
+)
+
+java -jar plugins/org.eclipse.equinox.launcher_1.*.jar -install director -configuration director/configuration -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination $DESTINATION -repository $1 -u org.adempiere.server.product -i org.adempiere.server.product
cp idempiere.ini.sav idempiere.ini
-if exist server.xml.sav (
- copy server.xml.sav plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml
- del /q server.xml.sav
+
+if exist jetty.xml.sav (
+ copy jetty.xml.sav jettyhome/etc/jetty.xml
+ del /q jetty.xml.sav
)
+
+if exist jetty-ssl.xml.sav (
+ copy jetty-ssl.xml.sav jettyhome/etc/jetty-ssl.xml
+ del /q jetty-ssl.xml.sav
+)
+
+if exist jetty-selector.xml.sav (
+ copy jetty-selector.xml.sav jettyhome/etc/jetty-selector.xml
+ del /q jetty-selector.xml.sav
+)
+
diff --git a/org.idempiere.eclipse.platform-feature/update.sh b/org.idempiere.eclipse.platform-feature/update.sh
index 369176667b..bdc4855c4c 100644
--- a/org.idempiere.eclipse.platform-feature/update.sh
+++ b/org.idempiere.eclipse.platform-feature/update.sh
@@ -6,32 +6,51 @@ DESTINATION=$(pwd)
cp idempiere.ini idempiere.ini.sav
-if [ -f server.xml.sav ];
+if [ -f jetty.xml.sav ];
then
- rm -f server.xml.sav
+ rm -f jetty.xml.sav
fi
-if [ -f plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml ]
+if [ -f jettyhome/etc/jetty.xml ]
then
- cp plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml server.xml.sav
- rm plugins/org.adempiere.tomcat.config_1.0.0/META-INF/tomcat/server.xml
+ cp jettyhome/etc/jetty.xml jetty.xml.sav
fi
-if [ -f plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml ]
-then
- cp plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml server.xml.sav
- rm plugins/org.adempiere.tomcat.config_2.0.0/META-INF/tomcat/server.xml
-fi
-if [ -f plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml ]
-then
- cp plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml server.xml.sav
-fi
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination $DESTINATION -repository $1 -u org.adempiere.server.product
-java -Dosgi.noShutdown=false -Dosgi.compatibility.bootdelegation=true -Dosgi.install.area=director -jar plugins/org.eclipse.osgi_3.7.*.jar -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination $DESTINATION -repository $1 -i org.adempiere.server.product
+if [ -f jetty-ssl.xml.sav ];
+then
+ rm -f jetty-ssl.xml.sav
+fi
+if [ -f jettyhome/etc/jetty-ssl.xml ]
+then
+ cp jettyhome/etc/jetty-ssl.xml jetty-ssl.xml.sav
+fi
+
+if [ -f jetty-selector.xml.sav ];
+then
+ rm -f jetty-selector.xml.sav
+fi
+if [ -f jettyhome/etc/jetty-selector.xml ]
+then
+ cp jettyhome/etc/jetty-selector.xml jetty-selector.xml.sav
+fi
+
+java -jar plugins/org.eclipse.equinox.launcher_1.*.jar -install director -configuration director/configuration -application org.eclipse.equinox.p2.director -consoleLog -profileProperties org.eclipse.update.install.features=true -destination $DESTINATION -repository $1 -u org.adempiere.server.product -i org.adempiere.server.product
cp idempiere.ini.sav idempiere.ini
-if [ -f server.xml.sav ]
+
+if [ -f jetty.xml.sav ]
then
- cp server.xml.sav plugins/org.adempiere.tomcat.config_2.1.0/META-INF/tomcat/server.xml
- rm -f server.xml.sav
+ cp jetty.xml.sav jettyhome/etc/jetty.xml
+ rm -f jetty.xml.sav
fi
+if [ -f jetty-ssl.xml.sav ]
+then
+ cp jetty-ssl.xml.sav jettyhome/etc/jetty-ssl.xml
+ rm -f jetty-ssl.xml.sav
+fi
+
+if [ -f jetty-selector.xml.sav ]
+then
+ cp jetty-selector.xml.sav jettyhome/etc/jetty-selector.xml
+ rm -f jetty-selector.xml.sav
+fi
diff --git a/org.idempiere.felix.webconsole-feature/feature.xml b/org.idempiere.felix.webconsole-feature/feature.xml
index f38b192756..815cac71a2 100644
--- a/org.idempiere.felix.webconsole-feature/feature.xml
+++ b/org.idempiere.felix.webconsole-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
diff --git a/org.idempiere.felix.webconsole/.classpath b/org.idempiere.felix.webconsole/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.idempiere.felix.webconsole/.classpath
+++ b/org.idempiere.felix.webconsole/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.idempiere.felix.webconsole/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.felix.webconsole/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.idempiere.felix.webconsole/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.felix.webconsole/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF b/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
index 5d47554f2d..1f77088eb9 100644
--- a/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
+++ b/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Web Console
+Bundle-Name: iDempiere Felix Web Console
Bundle-SymbolicName: org.idempiere.felix.webconsole
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.felix.webconsole.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.servlet;version="2.5.0",
javax.servlet.http;version="2.5.0",
javax.servlet.jsp;version="2.1.0",
diff --git a/org.idempiere.fitnesse-feature/feature.xml b/org.idempiere.fitnesse-feature/feature.xml
index 756a60adab..e60d430e91 100644
--- a/org.idempiere.fitnesse-feature/feature.xml
+++ b/org.idempiere.fitnesse-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -20,28 +20,28 @@
id="org.idempiere.fitnesse.fixture"
download-size="0"
install-size="0"
- version="2.1.0.qualifier"
+ version="3.0.0.qualifier"
unpack="false"/>
diff --git a/org.idempiere.fitnesse.fixture/.classpath b/org.idempiere.fitnesse.fixture/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.idempiere.fitnesse.fixture/.classpath
+++ b/org.idempiere.fitnesse.fixture/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.idempiere.fitnesse.fixture/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.fitnesse.fixture/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.idempiere.fitnesse.fixture/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.fitnesse.fixture/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF b/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
index 349ad3eb99..70511912ae 100644
--- a/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
+++ b/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Fixture
+Bundle-Name: iDempiere Fitnesse Fixture
Bundle-SymbolicName: org.idempiere.fitnesse.fixture
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.fitnesse.fixture.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: fit,
fit.decorator,
fit.decorator.exceptions,
diff --git a/org.idempiere.fitnesse.server/.classpath b/org.idempiere.fitnesse.server/.classpath
index 0403b114dc..62b0413eb0 100644
--- a/org.idempiere.fitnesse.server/.classpath
+++ b/org.idempiere.fitnesse.server/.classpath
@@ -1,13 +1,13 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/org.idempiere.fitnesse.server/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.fitnesse.server/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.idempiere.fitnesse.server/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.fitnesse.server/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF b/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF
index b527165212..5ff2242a02 100644
--- a/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF
+++ b/org.idempiere.fitnesse.server/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Fitnesse Server
+Bundle-Name: iDempiere Fitnesse Server
Bundle-SymbolicName: org.idempiere.fitnesse.server
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.fitnesse.server.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.servlet;version="3.0.0",
javax.servlet.http;version="3.0.0",
org.adempiere.base,
diff --git a/org.idempiere.fitrecorder/.classpath b/org.idempiere.fitrecorder/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.idempiere.fitrecorder/.classpath
+++ b/org.idempiere.fitrecorder/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.idempiere.fitrecorder/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.fitrecorder/.settings/org.eclipse.jdt.core.prefs
index 2101193455..f42de363af 100644
--- a/org.idempiere.fitrecorder/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.fitrecorder/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Tue Jan 08 16:47:28 COT 2013
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.fitrecorder/META-INF/MANIFEST.MF b/org.idempiere.fitrecorder/META-INF/MANIFEST.MF
index d51ff8bbd3..cc9f48a6c8 100644
--- a/org.idempiere.fitrecorder/META-INF/MANIFEST.MF
+++ b/org.idempiere.fitrecorder/META-INF/MANIFEST.MF
@@ -1,13 +1,13 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Fitrecorder
+Bundle-Name: iDempiere Fitnesse Recorder
Bundle-SymbolicName: org.idempiere.fitrecorder;singleton:=true
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.adempiere.plugin.utils.AdempiereActivator
Import-Package: org.adempiere.base,
org.adempiere.plugin.utils,
org.compiere.model,
org.osgi.framework;version="1.3.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Service-Component: plugin.xml
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0"
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0"
diff --git a/org.idempiere.hazelcast.service-feature/feature.xml b/org.idempiere.hazelcast.service-feature/feature.xml
index d758228925..d2aa0dff95 100644
--- a/org.idempiere.hazelcast.service-feature/feature.xml
+++ b/org.idempiere.hazelcast.service-feature/feature.xml
@@ -2,7 +2,7 @@
+ version="3.0.0.qualifier">
[Enter Feature Description here.]
@@ -20,29 +20,28 @@
id="org.idempiere.hazelcast.service"
download-size="0"
install-size="0"
- version="2.1.0.qualifier"
+ version="3.0.0.qualifier"
unpack="false"/>
diff --git a/org.idempiere.hazelcast.service.config/.classpath b/org.idempiere.hazelcast.service.config/.classpath
index ad32c83a78..1fa3e6803d 100644
--- a/org.idempiere.hazelcast.service.config/.classpath
+++ b/org.idempiere.hazelcast.service.config/.classpath
@@ -1,6 +1,6 @@
-
+
diff --git a/org.idempiere.hazelcast.service.config/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.hazelcast.service.config/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.idempiere.hazelcast.service.config/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.hazelcast.service.config/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.hazelcast.service.config/META-INF/MANIFEST.MF b/org.idempiere.hazelcast.service.config/META-INF/MANIFEST.MF
index 800abc0668..b1bf97ca44 100644
--- a/org.idempiere.hazelcast.service.config/META-INF/MANIFEST.MF
+++ b/org.idempiere.hazelcast.service.config/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Hazelcast Service Configuration
+Bundle-Name: iDempiere Hazelcast Service Configuration
Bundle-SymbolicName: org.idempiere.hazelcast.service.config
-Bundle-Version: 2.1.0
-Fragment-Host: org.idempiere.hazelcast.service;bundle-version="2.1.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Version: 3.0.0
+Fragment-Host: org.idempiere.hazelcast.service;bundle-version="3.0.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
diff --git a/org.idempiere.hazelcast.service/.classpath b/org.idempiere.hazelcast.service/.classpath
index 6fe134c47c..cbe3901e69 100644
--- a/org.idempiere.hazelcast.service/.classpath
+++ b/org.idempiere.hazelcast.service/.classpath
@@ -1,8 +1,8 @@
-
-
-
+
+
+
diff --git a/org.idempiere.hazelcast.service/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.hazelcast.service/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.idempiere.hazelcast.service/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.hazelcast.service/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF b/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
index 60de70ad62..1d6bea5aa8 100644
--- a/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
+++ b/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: iDempiere Hazelcast Service
Bundle-SymbolicName: org.idempiere.hazelcast.service
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.hazelcast.service.Activator
Bundle-ActivationPolicy: lazy
Import-Package: javax.crypto,
@@ -26,7 +26,7 @@ Import-Package: javax.crypto,
org.w3c.dom
DynamicImport-Package: *
Bundle-ClassPath: .,
- hazelcast-2.4.jar,
- hazelcast-cloud-2.4.jar
+ hazelcast-3.3.1.jar,
+ hazelcast-cloud-3.3.1.jar
Service-Component: OSGI-INF/clusterservice.xml, OSGI-INF/cacheservice.xml, OSGI-INF/messageservice.xml
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
diff --git a/org.idempiere.hazelcast.service/build.properties b/org.idempiere.hazelcast.service/build.properties
index 8a0e604b69..bfe1e34e8b 100644
--- a/org.idempiere.hazelcast.service/build.properties
+++ b/org.idempiere.hazelcast.service/build.properties
@@ -1,10 +1,10 @@
output.. = bin/
bin.includes = META-INF/,\
.,\
- hazelcast-2.4.jar,\
- hazelcast-cloud-2.4.jar,\
OSGI-INF/clusterservice.xml,\
OSGI-INF/cacheservice.xml,\
OSGI-INF/messageservice.xml,\
- OSGI-INF/
+ OSGI-INF/,\
+ hazelcast-3.3.1.jar,\
+ hazelcast-cloud-3.3.1.jar
source.. = src/
diff --git a/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/ClusterServiceImpl.java b/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/ClusterServiceImpl.java
index 42988b5b28..4b7f48b1be 100644
--- a/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/ClusterServiceImpl.java
+++ b/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/ClusterServiceImpl.java
@@ -14,7 +14,9 @@
package org.idempiere.hazelcast.service;
import java.util.Collection;
+import java.util.HashMap;
import java.util.HashSet;
+import java.util.Map;
import java.util.Set;
import java.util.concurrent.Callable;
import java.util.concurrent.Future;
@@ -22,10 +24,8 @@ import java.util.concurrent.Future;
import org.idempiere.distributed.IClusterMember;
import org.idempiere.distributed.IClusterService;
-import com.hazelcast.core.DistributedTask;
import com.hazelcast.core.HazelcastInstance;
import com.hazelcast.core.Member;
-import com.hazelcast.core.MultiTask;
/**
* @author hengsin
@@ -43,7 +43,7 @@ public class ClusterServiceImpl implements IClusterService {
if (instance != null) {
Set members = instance.getCluster().getMembers();
for(Member member : members) {
- clusterMembers.add(new ClusterMember(member.getUuid(), member.getInetSocketAddress().getAddress(), member.getInetSocketAddress().getPort()));
+ clusterMembers.add(new ClusterMember(member.getUuid(), member.getSocketAddress().getAddress(), member.getSocketAddress().getPort()));
}
}
return clusterMembers;
@@ -57,7 +57,7 @@ public class ClusterServiceImpl implements IClusterService {
HazelcastInstance instance = Activator.getHazelcastInstance();
if (instance != null) {
Member member = instance.getCluster().getLocalMember();
- return new ClusterMember(member.getUuid(), member.getInetSocketAddress().getAddress(), member.getInetSocketAddress().getPort());
+ return new ClusterMember(member.getUuid(), member.getSocketAddress().getAddress(), member.getSocketAddress().getPort());
} else {
return null;
}
@@ -73,9 +73,7 @@ public class ClusterServiceImpl implements IClusterService {
Set members = instance.getCluster().getMembers();
for(Member member : members) {
if (member.getUuid().equals(clusterMember.getId())) {
- DistributedTask distributedTask = new DistributedTask(task, member);
- Activator.getHazelcastInstance().getExecutorService().execute(distributedTask);
- return distributedTask;
+ return Activator.getHazelcastInstance().getExecutorService("default").submitToMember(task, member);
}
}
}
@@ -85,9 +83,8 @@ public class ClusterServiceImpl implements IClusterService {
/* (non-Javadoc)
* @see org.idempiere.distributed.IClusterService#execute(java.util.concurrent.Callable, java.util.Collection)
*/
- @SuppressWarnings("unchecked")
@Override
- public Future> execute(Callable task,
+ public Map> execute(Callable task,
Collection clusterMembers) {
Set selectedIds = new HashSet();
for(IClusterMember clusterMember : clusterMembers) {
@@ -103,9 +100,13 @@ public class ClusterServiceImpl implements IClusterService {
}
}
if (selectedMembers.size() > 0) {
- MultiTask multiTask = new MultiTask(task, selectedMembers);
- Activator.getHazelcastInstance().getExecutorService().execute(multiTask);
- return multiTask;
+ Map> maps = Activator.getHazelcastInstance().getExecutorService("default").submitToMembers(task, selectedMembers);
+ Map> result = new HashMap>();
+ for(Member m : maps.keySet()) {
+ ClusterMember cm = new ClusterMember(m.getUuid(), m.getSocketAddress().getAddress(), m.getSocketAddress().getPort());
+ result.put(cm, maps.get(m));
+ }
+ return result;
}
}
return null;
diff --git a/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/TopicImpl.java b/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/TopicImpl.java
index 8f77d59794..c0918d16f4 100644
--- a/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/TopicImpl.java
+++ b/org.idempiere.hazelcast.service/src/org/idempiere/hazelcast/service/TopicImpl.java
@@ -48,7 +48,7 @@ public class TopicImpl implements ITopic {
@Override
public void subscribe(final ITopicSubscriber subscriber) {
TopicSubscriberAdapter adapter = new TopicSubscriberAdapter(subscriber);
- topic.addMessageListener(adapter);
+ adapter.setListenerId(topic.addMessageListener(adapter));
adapters.add(adapter);
}
@@ -58,7 +58,7 @@ public class TopicImpl implements ITopic {
for(TopicSubscriberAdapter adapter : adapters) {
if (adapter.subscriber == subscriber) {
found = adapter;
- topic.removeMessageListener(adapter);
+ topic.removeMessageListener(adapter.getListenerId());
break;
}
}
@@ -73,11 +73,20 @@ public class TopicImpl implements ITopic {
class TopicSubscriberAdapter implements MessageListener {
protected ITopicSubscriber subscriber;
+ private String listenerId;
protected TopicSubscriberAdapter(ITopicSubscriber subscriber) {
this.subscriber = subscriber;
}
+ public void setListenerId(String listenerId) {
+ this.listenerId = listenerId;
+ }
+
+ public String getListenerId() {
+ return listenerId;
+ }
+
@Override
public void onMessage(Message message) {
subscriber.onMessage(message.getMessageObject());
diff --git a/org.idempiere.ui.zk.selenium/.classpath b/org.idempiere.ui.zk.selenium/.classpath
index 121e527a93..fc99fa8cfa 100644
--- a/org.idempiere.ui.zk.selenium/.classpath
+++ b/org.idempiere.ui.zk.selenium/.classpath
@@ -1,7 +1,11 @@
-
-
+
+
+
+
+
+
diff --git a/org.idempiere.ui.zk.selenium/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.jdt.core.prefs
index 8000cd6ca6..7341ab1683 100644
--- a/org.idempiere.ui.zk.selenium/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.jdt.core.prefs
@@ -1,11 +1,11 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml
index bcfc325033..bc0009a455 100644
--- a/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/org.idempiere.ui.zk.selenium/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -1,4 +1,4 @@
-
+
diff --git a/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
index bdb01844a8..8f665334b9 100644
--- a/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
+++ b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Zk Selenium
+Bundle-Name: iDempiere Selenium Integration
Bundle-SymbolicName: org.idempiere.ui.zk.selenium
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.ui.zk.selenium.fitnesse.Activator
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: fit,
fit.decorator,
fit.decorator.exceptions,
diff --git a/org.idempiere.webservices/.classpath b/org.idempiere.webservices/.classpath
index 60efa061eb..89987628bf 100644
--- a/org.idempiere.webservices/.classpath
+++ b/org.idempiere.webservices/.classpath
@@ -1,27 +1,27 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.idempiere.webservices/.settings/org.eclipse.jdt.core.prefs b/org.idempiere.webservices/.settings/org.eclipse.jdt.core.prefs
index f287d53cf4..11f6e462df 100644
--- a/org.idempiere.webservices/.settings/org.eclipse.jdt.core.prefs
+++ b/org.idempiere.webservices/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.idempiere.webservices/META-INF/MANIFEST.MF b/org.idempiere.webservices/META-INF/MANIFEST.MF
index 1b52f9a2e2..0324633664 100644
--- a/org.idempiere.webservices/META-INF/MANIFEST.MF
+++ b/org.idempiere.webservices/META-INF/MANIFEST.MF
@@ -1,27 +1,27 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Webservices
+Bundle-Name: iDempiere Webservices
Bundle-SymbolicName: org.idempiere.webservices;singleton:=true
-Bundle-Version: 2.1.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Bundle-Activator: org.idempiere.webservices.Activator
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Service-Component: OSGI-INF/ws_modelfactory.xml
-Import-Package: javax.activation;version="1.1.1",
- javax.mail.internet;version="1.4.5",
+Import-Package: javax.activation,
+ javax.mail.internet;version="1.5",
javax.servlet;version="3.0.0",
javax.servlet.http;version="3.0.0",
- javax.xml.rpc;version="1.1.0.v20110517",
- javax.xml.rpc.encoding;version="1.1.0.v20110517",
- javax.xml.rpc.handler;version="1.1.0.v20110517",
- javax.xml.rpc.handler.soap;version="1.1.0.v20110517",
- javax.xml.rpc.holders;version="1.1.0.v20110517",
- javax.xml.rpc.server;version="1.1.0.v20110517",
- javax.xml.rpc.soap;version="1.1.0.v20110517",
+ javax.xml.rpc,
+ javax.xml.rpc.encoding,
+ javax.xml.rpc.handler,
+ javax.xml.rpc.handler.soap,
+ javax.xml.rpc.holders,
+ javax.xml.rpc.server,
+ javax.xml.rpc.soap,
javax.xml.soap;version="1.3.0",
net.sf.jasperreports.engine,
net.sf.jasperreports.engine.base,
net.sf.jasperreports.engine.util,
- org.apache.commons.codec.binary;version="1.3.0",
+ org.apache.commons.codec.binary,
org.apache.commons.logging;version="1.1.1",
org.apache.commons.logging.impl;version="1.1.1",
org.apache.xerces.dom;version="2.9.0",
@@ -59,8 +59,8 @@ Import-Package: javax.activation;version="1.1.1",
org.apache.xerces.xs.datatypes;version="2.9.0",
org.apache.xml.serialize;version="2.9.0",
org.osgi.framework;version="1.6.0"
-Require-Bundle: org.adempiere.base;bundle-version="2.1.0",
- org.adempiere.ui;bundle-version="2.1.0",
+Require-Bundle: org.adempiere.base;bundle-version="3.0.0",
+ org.adempiere.ui;bundle-version="3.0.0",
org.apache.ecs;bundle-version="1.0.0"
Bundle-ClassPath: .,
WEB-INF/lib/spring-osgi-extender-1.2.1.jar,
diff --git a/org.idempiere.webservices/build.properties b/org.idempiere.webservices/build.properties
index 065af45c6f..cdc72867c1 100644
--- a/org.idempiere.webservices/build.properties
+++ b/org.idempiere.webservices/build.properties
@@ -1,5 +1,5 @@
source.. = WEB-INF/src/
-output.. = WEB-INF/classes/
+output.. = bin/
bin.includes = META-INF/,\
.,\
WEB-INF/classes/,\
diff --git a/lib/org.apache.poi/.classpath b/org.slf4j.jdk14/.classpath
similarity index 64%
rename from lib/org.apache.poi/.classpath
rename to org.slf4j.jdk14/.classpath
index f2d414669d..3f22e67b98 100644
--- a/lib/org.apache.poi/.classpath
+++ b/org.slf4j.jdk14/.classpath
@@ -1,7 +1,8 @@
-
+
+
+
-
diff --git a/org.adempiere.report.jasper.font.demo/.project b/org.slf4j.jdk14/.project
similarity index 75%
rename from org.adempiere.report.jasper.font.demo/.project
rename to org.slf4j.jdk14/.project
index 6058b5acab..1c4df45d9d 100644
--- a/org.adempiere.report.jasper.font.demo/.project
+++ b/org.slf4j.jdk14/.project
@@ -1,15 +1,10 @@
- org.adempiere.report.jasper.font.demo
+ org.slf4j.jdk14
-
- org.eclipse.jdt.core.javabuilder
-
-
-
org.eclipse.pde.ManifestBuilder
diff --git a/org.adempiere.tomcat.config/.settings/org.eclipse.pde.core.prefs b/org.slf4j.jdk14/.settings/org.eclipse.pde.core.prefs
similarity index 74%
rename from org.adempiere.tomcat.config/.settings/org.eclipse.pde.core.prefs
rename to org.slf4j.jdk14/.settings/org.eclipse.pde.core.prefs
index 6391813d74..f29e940a00 100644
--- a/org.adempiere.tomcat.config/.settings/org.eclipse.pde.core.prefs
+++ b/org.slf4j.jdk14/.settings/org.eclipse.pde.core.prefs
@@ -1,4 +1,3 @@
-#Wed Jul 14 01:21:39 MYT 2010
eclipse.preferences.version=1
pluginProject.extensions=false
resolve.requirebundle=false
diff --git a/org.slf4j.jdk14/META-INF/MANIFEST.MF b/org.slf4j.jdk14/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..0f115b1331
--- /dev/null
+++ b/org.slf4j.jdk14/META-INF/MANIFEST.MF
@@ -0,0 +1,11 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: SLF4J with JDK logger
+Bundle-SymbolicName: org.slf4j.jdk14
+Bundle-Version: 1.7.2.qualifier
+Fragment-Host: org.slf4j.api;bundle-version="1.7.2"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Export-Package: org.slf4j.impl;version=1.7.2
+Import-Package: org.slf4j;version=1.7.2,
+ org.slf4j.spi;version=1.7.2,org.slf4j.helpers;version=1.7.2
+Bundle-ClassPath: slf4j-jdk14-1.7.2.jar
diff --git a/org.adempiere.tomcat.config/src/.hgignore b/org.slf4j.jdk14/bin/.hgignore
similarity index 100%
rename from org.adempiere.tomcat.config/src/.hgignore
rename to org.slf4j.jdk14/bin/.hgignore
diff --git a/org.slf4j.jdk14/build.properties b/org.slf4j.jdk14/build.properties
new file mode 100644
index 0000000000..815488f78a
--- /dev/null
+++ b/org.slf4j.jdk14/build.properties
@@ -0,0 +1,2 @@
+bin.includes = META-INF/,\
+ slf4j-jdk14-1.7.2.jar
diff --git a/org.slf4j.jdk14/readme.txt b/org.slf4j.jdk14/readme.txt
new file mode 100644
index 0000000000..88b8741f09
--- /dev/null
+++ b/org.slf4j.jdk14/readme.txt
@@ -0,0 +1,2 @@
+Need to repackage the slf4j-jdk14 bundle from maven here since the slf4j api bundle from orbit is with the org.slf4j.api
+symbolic name but the slf4j-jdk14 expect the slf4j.api symbolic name.
diff --git a/org.slf4j.jdk14/src/.hgignore b/org.slf4j.jdk14/src/.hgignore
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/org.w3c.dom.fragment/.classpath b/org.w3c.dom.fragment/.classpath
index 88f2aa7215..f67391337f 100644
--- a/org.w3c.dom.fragment/.classpath
+++ b/org.w3c.dom.fragment/.classpath
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/org.w3c.dom.fragment/.settings/org.eclipse.jdt.core.prefs b/org.w3c.dom.fragment/.settings/org.eclipse.jdt.core.prefs
index c537b63063..f42de363af 100644
--- a/org.w3c.dom.fragment/.settings/org.eclipse.jdt.core.prefs
+++ b/org.w3c.dom.fragment/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.w3c.dom.fragment/META-INF/MANIFEST.MF b/org.w3c.dom.fragment/META-INF/MANIFEST.MF
index 12dc5246d7..d3fb8ee3e9 100644
--- a/org.w3c.dom.fragment/META-INF/MANIFEST.MF
+++ b/org.w3c.dom.fragment/META-INF/MANIFEST.MF
@@ -1,11 +1,12 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Fragment
+Bundle-Name: W3c DOM Fragment
Bundle-SymbolicName: org.w3c.dom.fragment
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 3.0.0.qualifier
Fragment-Host: system.bundle; extension:=framework
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ClassPath: batik-ext.jar,
.
Export-Package: org.w3c.dom,
org.w3c.dom.events;version="3.0.0"
+
diff --git a/org.w3c.dom.fragment/bin/.hgignore b/org.w3c.dom.fragment/bin/.hgignore
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/org.zkoss.zk.library/.classpath b/org.zkoss.zk.library/.classpath
index 939a09a28f..54cf461987 100644
--- a/org.zkoss.zk.library/.classpath
+++ b/org.zkoss.zk.library/.classpath
@@ -1,35 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/org.zkoss.zk.library/.settings/org.eclipse.jdt.core.prefs b/org.zkoss.zk.library/.settings/org.eclipse.jdt.core.prefs
index cdae894b95..f42de363af 100644
--- a/org.zkoss.zk.library/.settings/org.eclipse.jdt.core.prefs
+++ b/org.zkoss.zk.library/.settings/org.eclipse.jdt.core.prefs
@@ -1,8 +1,7 @@
-#Wed Feb 15 15:47:05 MYT 2012
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/org.zkoss.zk.library/META-INF/MANIFEST.MF b/org.zkoss.zk.library/META-INF/MANIFEST.MF
index b1b071a5b0..89caf6d652 100644
--- a/org.zkoss.zk.library/META-INF/MANIFEST.MF
+++ b/org.zkoss.zk.library/META-INF/MANIFEST.MF
@@ -1,9 +1,9 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Library
+Bundle-Name: iDempiere Zk Library
Bundle-SymbolicName: org.zkoss.zk.library
-Bundle-Version: 6.0.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Version: 7.0.3.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: bsh,
bsh.classpath,
bsh.collection,
@@ -65,6 +65,52 @@ Import-Package: bsh,
javax.servlet.jsp.resources;version="2.2.0",
javax.servlet.jsp.tagext;version="2.2.0",
javax.servlet.resources;version="3.0.0",
+ net.sf.cglib.asm;version="3.1.0",
+ net.sf.cglib.asm.signature;version="3.1.0",
+ net.sf.cglib.beans;version="3.1.0",
+ net.sf.cglib.core;version="3.1.0",
+ net.sf.cglib.proxy;version="3.1.0",
+ net.sf.cglib.reflect;version="3.1.0",
+ net.sf.cglib.transform;version="3.1.0",
+ net.sf.cglib.transform.impl;version="3.1.0",
+ net.sf.cglib.util;version="3.1.0",
+ org.apache.html.dom;version="2.9.0",
+ org.apache.wml;version="2.9.0",
+ org.apache.wml.dom;version="2.9.0",
+ org.apache.xerces.dom;version="2.9.0",
+ org.apache.xerces.dom.events;version="2.9.0",
+ org.apache.xerces.dom3.as;version="2.9.0",
+ org.apache.xerces.impl;version="2.9.0",
+ org.apache.xerces.impl.dtd;version="2.9.0",
+ org.apache.xerces.impl.dtd.models;version="2.9.0",
+ org.apache.xerces.impl.dv;version="2.9.0",
+ org.apache.xerces.impl.dv.dtd;version="2.9.0",
+ org.apache.xerces.impl.dv.util;version="2.9.0",
+ org.apache.xerces.impl.dv.xs;version="2.9.0",
+ org.apache.xerces.impl.io;version="2.9.0",
+ org.apache.xerces.impl.msg;version="2.9.0",
+ org.apache.xerces.impl.validation;version="2.9.0",
+ org.apache.xerces.impl.xpath;version="2.9.0",
+ org.apache.xerces.impl.xpath.regex;version="2.9.0",
+ org.apache.xerces.impl.xs;version="2.9.0",
+ org.apache.xerces.impl.xs.identity;version="2.9.0",
+ org.apache.xerces.impl.xs.models;version="2.9.0",
+ org.apache.xerces.impl.xs.opti;version="2.9.0",
+ org.apache.xerces.impl.xs.traversers;version="2.9.0",
+ org.apache.xerces.impl.xs.util;version="2.9.0",
+ org.apache.xerces.jaxp;version="2.9.0",
+ org.apache.xerces.jaxp.datatype;version="2.9.0",
+ org.apache.xerces.jaxp.validation;version="2.9.0",
+ org.apache.xerces.parsers;version="2.9.0",
+ org.apache.xerces.util;version="2.9.0",
+ org.apache.xerces.xinclude;version="2.9.0",
+ org.apache.xerces.xni;version="2.9.0",
+ org.apache.xerces.xni.grammars;version="2.9.0",
+ org.apache.xerces.xni.parser;version="2.9.0",
+ org.apache.xerces.xpointer;version="2.9.0",
+ org.apache.xerces.xs;version="2.9.0",
+ org.apache.xerces.xs.datatypes;version="2.9.0",
+ org.apache.xml.serialize;version="2.9.0",
org.codehaus.groovy,
org.codehaus.groovy.ant,
org.codehaus.groovy.antlr,
@@ -97,81 +143,44 @@ Import-Package: bsh,
org.codehaus.groovy.vmplugin,
org.codehaus.groovy.vmplugin.v4,
org.codehaus.groovy.vmplugin.v5,
+ org.objectweb.asm;version="5.0.1",
+ org.objectweb.asm.commons;version="5.0.1",
+ org.objectweb.asm.signature;version="5.0.1",
+ org.objectweb.asm.tree;version="5.0.1",
org.osgi.framework;version="1.3.0",
- org.osgi.service.component;version="1.1.0"
+ org.osgi.service.component;version="1.1.0",
+ org.slf4j;version="1.6.1",
+ org.slf4j.helpers;version="1.6.1",
+ org.slf4j.spi;version="1.6.1"
Bundle-ClassPath: .,
- lib/asm.jar,
- lib/cglib.jar,
lib/commons-el.jar,
lib/commons-fileupload.jar,
lib/commons-io.jar,
lib/Filters.jar,
- lib/gmapsz.jar,
- lib/jruby.jar,
lib/js.jar,
lib/json_simple.jar,
lib/junit.jar,
lib/jxl.jar,
- lib/jython.jar,
lib/mvel.jar,
lib/ognl.jar,
- lib/timelinez.jar,
- lib/timeplotz.jar,
- lib/xercesImpl.jar,
- lib/zcommon.jar,
- lib/zhtml.jar,
- lib/zk.jar,
- lib/zkplus.jar,
- lib/zul.jar,
- lib/zweb.jar,
- lib/zel.jar,
- lib/zkbind.jar,
- lib/calendar.jar,
- lib/ckez.jar
-Export-Package: Lib,
- Lib.collections,
- Lib.compiler,
- Lib.distutils,
- Lib.distutils.command,
- Lib.distutils.tests,
- Lib.email,
- Lib.email.mime,
- Lib.encodings,
- Lib.logging,
- Lib.modjy,
- Lib.pawt,
- Lib.wsgiref,
- Lib.xml,
- Lib.xml.dom,
- Lib.xml.etree,
- Lib.xml.parsers,
- Lib.xml.sax,
- Lib.xml.sax.drivers2,
- bigdecimal,
- builtin,
- builtin.core_ext,
- builtin.java,
- builtin.javasupport,
- builtin.javasupport.core_ext,
- builtin.javasupport.proxy,
- builtin.javasupport.utilities,
- builtin.yaml,
- cgi,
- cgi.session,
- com.jhlabs.composite,
- com.jhlabs.image,
+ lib/jython-2.5.3.jar,
+ lib/zcommon-7.0.3.jar,
+ lib/zel-7.0.3.jar,
+ lib/zhtml-7.0.3.jar,
+ lib/zk-7.0.3.jar,
+ lib/zkbind-7.0.3.jar,
+ lib/zkplus-7.0.3.jar,
+ lib/zul-7.0.3.jar,
+ lib/zweb-7.0.3.jar,
+ lib/jruby-complete-1.7.15.jar,
+ lib/ckez-4.3.3.0.jar,
+ lib/gmapsz-3.0.3.jar,
+ lib/calendar-2.1.4.jar,
+ lib/timelinez-2.3.1_50.jar,
+ lib/timeplotz-1.1_50.jar
+Export-Package: com.jhlabs.image,
com.jhlabs.math,
com.jhlabs.vecmath,
- com.kenai.constantine,
- com.kenai.constantine.platform,
- com.kenai.constantine.platform.darwin,
- com.kenai.constantine.platform.freebsd,
- com.kenai.constantine.platform.linux,
- com.kenai.constantine.platform.openbsd,
- com.sun.jna,
- com.sun.jna.darwin,
- com.sun.jna.ptr,
- com.sun.jna.win32,
com.xhaus.modjy,
com.ziclix.python.sql,
com.ziclix.python.sql.connect,
@@ -184,24 +193,8 @@ Export-Package: Lib,
com.ziclix.python.sql.util,
common,
common.log,
- date,
- doc,
- drb,
- io,
- irb,
- irb.cmd,
- irb.ext,
- irb.lc,
- irb.lc.ja,
javatests,
jline,
- jruby,
- jruby.objectweb.asm,
- jruby.objectweb.asm.commons,
- jruby.objectweb.asm.signature,
- jruby.objectweb.asm.tree,
- jruby.objectweb.asm.tree.analysis,
- jruby.objectweb.asm.util,
junit.extensions,
junit.framework,
junit.runner,
@@ -221,18 +214,7 @@ Export-Package: Lib,
metainfo.xel,
metainfo.xml,
metainfo.zk,
- net,
- net.sf.cglib.asm,
- net.sf.cglib.asm.signature,
- net.sf.cglib.beans,
- net.sf.cglib.core,
- net.sf.cglib.proxy,
- net.sf.cglib.reflect,
- net.sf.cglib.transform,
- net.sf.cglib.transform.impl,
- net.sf.cglib.util,
ognl,
- optparse,
org.apache.commons.el,
org.apache.commons.el.parser,
org.apache.commons.fileupload;version="1.2.2",
@@ -241,84 +223,11 @@ Export-Package: Lib,
org.apache.commons.fileupload.servlet;version="1.2.2",
org.apache.commons.fileupload.util;version="1.2.2",
org.apache.commons.io;version="2.1.0",
+ org.apache.commons.io.comparator,
org.apache.commons.io.filefilter;version="2.1.0",
org.apache.commons.io.input;version="2.1.0",
+ org.apache.commons.io.monitor,
org.apache.commons.io.output;version="2.1.0",
- org.apache.html.dom,
- org.apache.wml,
- org.apache.wml.dom,
- org.apache.xerces.dom,
- org.apache.xerces.dom.events,
- org.apache.xerces.dom3.as,
- org.apache.xerces.impl,
- org.apache.xerces.impl.dtd,
- org.apache.xerces.impl.dtd.models,
- org.apache.xerces.impl.dv,
- org.apache.xerces.impl.dv.dtd,
- org.apache.xerces.impl.dv.util,
- org.apache.xerces.impl.dv.xs,
- org.apache.xerces.impl.io,
- org.apache.xerces.impl.msg,
- org.apache.xerces.impl.validation,
- org.apache.xerces.impl.xpath,
- org.apache.xerces.impl.xpath.regex,
- org.apache.xerces.impl.xs,
- org.apache.xerces.impl.xs.identity,
- org.apache.xerces.impl.xs.models,
- org.apache.xerces.impl.xs.opti,
- org.apache.xerces.impl.xs.traversers,
- org.apache.xerces.impl.xs.util,
- org.apache.xerces.jaxp,
- org.apache.xerces.jaxp.datatype,
- org.apache.xerces.jaxp.validation,
- org.apache.xerces.parsers,
- org.apache.xerces.util,
- org.apache.xerces.xinclude,
- org.apache.xerces.xni,
- org.apache.xerces.xni.grammars,
- org.apache.xerces.xni.parser,
- org.apache.xerces.xpointer,
- org.apache.xerces.xs,
- org.apache.xerces.xs.datatypes,
- org.apache.xml.serialize,
- org.dynalang.mop,
- org.dynalang.mop.beans,
- org.dynalang.mop.collections,
- org.dynalang.mop.impl,
- org.jcodings,
- org.jcodings.ascii,
- org.jcodings.constants,
- org.jcodings.exception,
- org.jcodings.specific,
- org.jcodings.unicode,
- org.jcodings.util,
- org.joda.time,
- org.joda.time.base,
- org.joda.time.chrono,
- org.joda.time.convert,
- org.joda.time.field,
- org.joda.time.format,
- org.joda.time.tz,
- org.joda.time.tz.data,
- org.joda.time.tz.data.Africa,
- org.joda.time.tz.data.America,
- org.joda.time.tz.data.America.Argentina,
- org.joda.time.tz.data.America.Indiana,
- org.joda.time.tz.data.America.Kentucky,
- org.joda.time.tz.data.America.North_Dakota,
- org.joda.time.tz.data.Antarctica,
- org.joda.time.tz.data.Asia,
- org.joda.time.tz.data.Atlantic,
- org.joda.time.tz.data.Australia,
- org.joda.time.tz.data.Etc,
- org.joda.time.tz.data.Europe,
- org.joda.time.tz.data.Indian,
- org.joda.time.tz.data.Pacific,
- org.joni,
- org.joni.ast,
- org.joni.bench,
- org.joni.constants,
- org.joni.exception,
org.jruby,
org.jruby.anno,
org.jruby.ast,
@@ -326,28 +235,20 @@ Export-Package: Lib,
org.jruby.ast.types,
org.jruby.ast.util,
org.jruby.ast.visitor,
- org.jruby.ast.visitor.rewriter,
- org.jruby.ast.visitor.rewriter.utils,
org.jruby.common,
org.jruby.compiler,
org.jruby.compiler.impl,
org.jruby.compiler.util,
- org.jruby.compiler.yarv,
- org.jruby.demo,
org.jruby.environment,
org.jruby.evaluator,
org.jruby.exceptions,
org.jruby.ext,
org.jruby.ext.ffi,
org.jruby.ext.ffi.io,
- org.jruby.ext.ffi.jna,
- org.jruby.ext.posix,
- org.jruby.ext.posix.util,
org.jruby.ext.socket,
org.jruby.gen,
org.jruby.internal.runtime,
org.jruby.internal.runtime.methods,
- org.jruby.java,
org.jruby.java.addons,
org.jruby.java.invokers,
org.jruby.java.proxies,
@@ -356,7 +257,6 @@ Export-Package: Lib,
org.jruby.javasupport.proxy,
org.jruby.javasupport.util,
org.jruby.lexer.yacc,
- org.jruby.libraries,
org.jruby.management,
org.jruby.parser,
org.jruby.platform,
@@ -374,7 +274,6 @@ Export-Package: Lib,
org.jruby.util.io,
org.jruby.util.string,
org.jruby.util.unsafe,
- org.jruby.yaml,
org.json.simple,
org.json.simple.parser,
org.junit,
@@ -385,12 +284,6 @@ Export-Package: Lib,
org.junit.runner.manipulation,
org.junit.runner.notification,
org.junit.runners,
- org.jvyamlb,
- org.jvyamlb.events,
- org.jvyamlb.exceptions,
- org.jvyamlb.nodes,
- org.jvyamlb.tokens,
- org.jvyamlb.util,
org.mozilla.classfile,
org.mozilla.javascript,
org.mozilla.javascript.continuations,
@@ -406,7 +299,6 @@ Export-Package: Lib,
org.mozilla.javascript.tools.idswitch,
org.mozilla.javascript.tools.jsc,
org.mozilla.javascript.tools.resources,
- org.mozilla.javascript.tools.shell,
org.mozilla.javascript.xml,
org.mozilla.javascript.xml.impl.xmlbeans,
org.mozilla.javascript.xmlimpl,
@@ -429,8 +321,6 @@ Export-Package: Lib,
org.mvel.tests.perftests,
org.mvel.tests.special,
org.mvel.util,
- org.objectweb.asm,
- org.objectweb.asm.signature,
org.python,
org.python.antlr,
org.python.antlr.adapter,
@@ -536,6 +426,9 @@ Export-Package: Lib,
org.zkoss.bind.converter.sys,
org.zkoss.bind.impl,
org.zkoss.bind.sys,
+ org.zkoss.bind.sys.debugger,
+ org.zkoss.bind.sys.debugger.impl,
+ org.zkoss.bind.sys.debugger.impl.info,
org.zkoss.bind.sys.tracker,
org.zkoss.bind.tracker.impl,
org.zkoss.bind.validator,
@@ -582,6 +475,7 @@ Export-Package: Lib,
org.zkoss.web.servlet.dsp.impl,
org.zkoss.web.servlet.http,
org.zkoss.web.servlet.xel,
+ org.zkoss.web.theme,
org.zkoss.web.util.resource,
org.zkoss.xel,
org.zkoss.xel.el,
@@ -648,48 +542,7 @@ Export-Package: Lib,
org.zkoss.zul.ext,
org.zkoss.zul.impl,
org.zkoss.zul.mesg,
- racc,
- rdoc,
- rdoc.dot,
- rdoc.generators,
- rdoc.generators.template.chm,
- rdoc.generators.template.html,
- rdoc.generators.template.xml,
- rdoc.markup,
- rdoc.markup.sample,
- rdoc.markup.simple_markup,
- rdoc.markup.test,
- rdoc.parsers,
- rdoc.ri,
- rexml,
- rexml.dtd,
- rexml.encodings,
- rexml.formatters,
- rexml.light,
- rexml.parsers,
- rexml.validation,
- rinda,
- rss,
- rss.maker,
- runit,
- runit.cui,
- shell,
- soap,
- soap.encodingstyle,
- soap.header,
- soap.mapping,
- soap.rpc,
- test,
- test.unit,
- test.unit.collector,
- test.unit.ui,
- test.unit.ui.console,
- test.unit.ui.fox,
- test.unit.ui.gtk,
- test.unit.ui.gtk2,
- test.unit.ui.tk,
- test.unit.util,
- uri,
+ org.zkoss.zul.theme,
web,
web.aud,
web.ckez.html,
@@ -748,6 +601,7 @@ Export-Package: Lib,
web.js.ckez.ext.CKeditor.skins.moono,
web.js.ckez.ext.CKeditor.skins.moono.images,
web.js.gmaps,
+ web.js.gmaps.css,
web.js.gmaps.ext,
web.js.timelinez,
web.js.timelinez.css,
@@ -792,42 +646,53 @@ Export-Package: Lib,
web.js.zul,
web.js.zul.box,
web.js.zul.box.css,
+ web.js.zul.box.less,
web.js.zul.box.mold,
web.js.zul.db,
web.js.zul.db.css,
+ web.js.zul.db.less,
web.js.zul.db.mold,
web.js.zul.fud,
web.js.zul.grid,
web.js.zul.grid.css,
+ web.js.zul.grid.less,
web.js.zul.grid.mold,
web.js.zul.inp,
web.js.zul.inp.css,
+ web.js.zul.inp.less,
web.js.zul.inp.mold,
web.js.zul.lang,
web.js.zul.layout,
web.js.zul.layout.css,
+ web.js.zul.layout.less,
web.js.zul.layout.mold,
web.js.zul.med,
web.js.zul.med.mold,
web.js.zul.menu,
web.js.zul.menu.css,
+ web.js.zul.menu.less,
web.js.zul.menu.mold,
web.js.zul.mesh,
web.js.zul.mesh.css,
+ web.js.zul.mesh.less,
web.js.zul.mesh.mold,
web.js.zul.sel,
web.js.zul.sel.css,
+ web.js.zul.sel.less,
web.js.zul.sel.mold,
web.js.zul.tab,
web.js.zul.tab.css,
+ web.js.zul.tab.less,
web.js.zul.tab.mold,
web.js.zul.utl,
web.js.zul.utl.mold,
web.js.zul.wgt,
web.js.zul.wgt.css,
+ web.js.zul.wgt.less,
web.js.zul.wgt.mold,
web.js.zul.wnd,
web.js.zul.wnd.css,
+ web.js.zul.wnd.less,
web.js.zul.wnd.mold,
web.zk,
web.zk.img,
@@ -851,16 +716,8 @@ Export-Package: Lib,
web.zul.img.tab,
web.zul.img.tree,
web.zul.img.wnd,
- webrick,
- webrick.httpauth,
- webrick.httpservlet,
- wsdl,
- wsdl.soap,
- wsdl.xmlSchema,
- xmlrpc,
- xsd,
- xsd.codegen,
- xsd.xmlparser
+ web.zul.less,
+ web.zul.less.font
Bundle-Activator: org.zkoss.zk.library.Activator
Bundle-ActivationPolicy: lazy
Eclipse-BuddyPolicy: registered
diff --git a/org.zkoss.zk.library/buckminster.cspex b/org.zkoss.zk.library/buckminster.cspex
new file mode 100644
index 0000000000..b254c4a602
--- /dev/null
+++ b/org.zkoss.zk.library/buckminster.cspex
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.zkoss.zk.library/build.properties b/org.zkoss.zk.library/build.properties
index a7896fa7f4..a55cd96547 100644
--- a/org.zkoss.zk.library/build.properties
+++ b/org.zkoss.zk.library/build.properties
@@ -1,32 +1,29 @@
output.. = bin/
bin.includes = META-INF/,\
.,\
- lib/asm.jar,\
- lib/cglib.jar,\
lib/commons-el.jar,\
lib/commons-fileupload.jar,\
lib/commons-io.jar,\
lib/Filters.jar,\
- lib/gmapsz.jar,\
- lib/jruby.jar,\
lib/js.jar,\
lib/json_simple.jar,\
lib/junit.jar,\
lib/jxl.jar,\
- lib/jython.jar,\
lib/mvel.jar,\
lib/ognl.jar,\
- lib/timelinez.jar,\
- lib/timeplotz.jar,\
- lib/xercesImpl.jar,\
- lib/zcommon.jar,\
- lib/zhtml.jar,\
- lib/zk.jar,\
- lib/zkplus.jar,\
- lib/zul.jar,\
- lib/zweb.jar,\
- lib/zel.jar,\
- lib/zkbind.jar,\
- lib/calendar.jar,\
- lib/ckez.jar
+ lib/jython-2.5.3.jar,\
+ lib/zcommon-7.0.3.jar,\
+ lib/zel-7.0.3.jar,\
+ lib/zhtml-7.0.3.jar,\
+ lib/zk-7.0.3.jar,\
+ lib/zkbind-7.0.3.jar,\
+ lib/zkplus-7.0.3.jar,\
+ lib/zul-7.0.3.jar,\
+ lib/zweb-7.0.3.jar,\
+ lib/jruby-complete-1.7.15.jar,\
+ lib/ckez-4.3.3.0.jar,\
+ lib/gmapsz-3.0.3.jar,\
+ lib/calendar-2.1.4.jar,\
+ lib/timelinez-2.3.1_50.jar,\
+ lib/timeplotz-1.1_50.jar
source.. = src/
diff --git a/org.zkoss.zk.library/copyjars.xml b/org.zkoss.zk.library/copyjars.xml
new file mode 100644
index 0000000000..e606fd5a29
--- /dev/null
+++ b/org.zkoss.zk.library/copyjars.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.zkoss.zk.library/copysources.xml b/org.zkoss.zk.library/copysources.xml
new file mode 100644
index 0000000000..d07f44e773
--- /dev/null
+++ b/org.zkoss.zk.library/copysources.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/org.zkoss.zk.library/lib/src/.hgignore b/org.zkoss.zk.library/lib/src/.hgignore
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/org.zkoss.zk.library/src/org/zkoss/util/resource/ClassLocator.java b/org.zkoss.zk.library/src/org/zkoss/util/resource/ClassLocator.java
index 52da037962..dbfbf19f9e 100644
--- a/org.zkoss.zk.library/src/org/zkoss/util/resource/ClassLocator.java
+++ b/org.zkoss.zk.library/src/org/zkoss/util/resource/ClassLocator.java
@@ -16,26 +16,28 @@ Copyright (C) 2005 Potix Corporation. All Rights Reserved.
*/
package org.zkoss.util.resource;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.util.Collections;
import java.util.Enumeration;
-import java.util.Iterator;
import java.util.LinkedHashMap;
+import java.util.Map;
import java.util.LinkedHashSet;
+import java.util.Set;
import java.util.LinkedList;
import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.Collections;
+import java.util.Iterator;
+import java.io.InputStream;
+import java.io.IOException;
+import java.net.URL;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.zkoss.util.CollectionsX;
+import org.zkoss.zk.library.Activator;
import org.zkoss.idom.Document;
import org.zkoss.idom.Element;
-import org.zkoss.idom.input.SAXBuilder;
import org.zkoss.idom.util.IDOMs;
-import org.zkoss.util.CollectionsX;
-import org.zkoss.util.logging.Log;
-import org.zkoss.zk.library.Activator;
+import org.zkoss.idom.input.SAXBuilder;
/**
* The locator searches the current thread's context class loader,
@@ -50,11 +52,11 @@ import org.zkoss.zk.library.Activator;
* @author tomyeh
*/
public class ClassLocator implements XMLResourcesLocator {
- private static final Log log = Log.lookup(ClassLocator.class);
-
+ private static final Logger log = LoggerFactory.getLogger(ClassLocator.class);
+
public ClassLocator() {
}
-
+
//XMLResourcesLocator//
public Enumeration getResources(String name) throws IOException {
List list = null;
@@ -94,14 +96,14 @@ public class ClassLocator implements XMLResourcesLocator {
final XMLResource xr = new XMLResource(url, elName, elDepends);
final XMLResource old = rcmap.put(xr.name, xr);
if (old != null)
- log.warning("Replicate resource: "+xr.name
+ log.warn("Replicate resource: "+xr.name
+"\nOverwrite "+old.url+"\nwith "+xr.url);
//it is possible if zcommon.jar is placed in both
//WEB-INF/lib and shared/lib, i.e., appear twice in the class path
//We overwrite because the order is the parent class loader first
//so WEB-INF/lib is placed after
}
-// if (rcmap.isEmpty() && log.debugable()) log.debug("No resouce is found for "+name);
+// if (rcmap.isEmpty() && log.isDebugEnabled()) log.debug("No resource is found for "+name);
final List rcs = new LinkedList(); //a list of Document
final Set resolving = new LinkedHashSet();
@@ -123,13 +125,13 @@ public class ClassLocator implements XMLResourcesLocator {
for (String nm: xr.depends) {
final XMLResource dep = rcmap.remove(nm);
if (dep != null) //not resolved yet
- resolveDependency(dep, rcs, rcmap, resolving); //recusrively
+ resolveDependency(dep, rcs, rcmap, resolving); //recursively
}
rcs.add(new Resource(xr.url, xr.document));
resolving.remove(xr.name);
- if (log.debugable()) log.debug("Adding resolved resource: "+xr.name);
+ if (log.isDebugEnabled()) log.debug("Adding resolved resource: "+xr.name);
}
/** Info used with getDependentXMLResource. */
private static class XMLResource {
@@ -140,7 +142,7 @@ public class ClassLocator implements XMLResourcesLocator {
private XMLResource(URL url, String elName, String elDepends)
throws IOException{
- if (log.debugable()) log.debug("Loading "+url);
+ if (log.isDebugEnabled()) log.debug("Loading "+url);
try {
this.document = new SAXBuilder(false, false, true).build(url);
} catch (Exception ex) {
@@ -160,7 +162,7 @@ public class ClassLocator implements XMLResourcesLocator {
} else {
this.depends = new LinkedList();
CollectionsX.parse(this.depends, deps, ',');
- if (log.finerable()) log.finer(this.name+" depends on "+this.depends);
+ if (log.isTraceEnabled()) log.trace(this.name+" depends on "+this.depends);
}
}
public String toString() {
diff --git a/org.zkoss.zk.library/src/org/zkoss/web/util/resource/ResourceCaches.java b/org.zkoss.zk.library/src/org/zkoss/web/util/resource/ResourceCaches.java
index f8682e22bb..903370a178 100644
--- a/org.zkoss.zk.library/src/org/zkoss/web/util/resource/ResourceCaches.java
+++ b/org.zkoss.zk.library/src/org/zkoss/web/util/resource/ResourceCaches.java
@@ -22,8 +22,9 @@ import java.net.URL;
import javax.servlet.ServletContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.zkoss.lang.SystemException;
-import org.zkoss.util.logging.Log;
import org.zkoss.web.servlet.Servlets;
/**
@@ -44,7 +45,7 @@ import org.zkoss.web.servlet.Servlets;
* @author tomyeh
*/
public class ResourceCaches {
- private static final Log log = Log.lookup(ResourceCaches.class);
+ private static final Logger log = LoggerFactory.getLogger(ResourceCaches.class);
/** Loads, parses and returns the resource of the specified URI,
* or null if not found. The parser is defined by the loader defined
@@ -61,7 +62,7 @@ public class ResourceCaches {
V get(ResourceCache cache, ServletContext ctx, String path, Object extra) {
//20050905: Tom Yeh
//We don't need to handle the default name if user specifies only a dir
- //because it is handled by the container directlys
+ //because it is handled by the container directly
//And, web developer has to specify in web.xml
URL url = null;
if (path == null || path.length() == 0) path = "/";
@@ -93,7 +94,7 @@ public class ResourceCaches {
Servlets.getExtendletContext(ctx, ctxpath.substring(1));
if (extctx != null) {
url = extctx.getResource(path);
-// if (log.debugable()) log.debug("Resolving "+path0+" to "+url);
+// if (log.isDebugEnabled()) log.debug("Resolving "+path0+" to "+url);
if (url == null)
return null;
try {
@@ -102,14 +103,14 @@ public class ResourceCaches {
final IOException ioex = getIOException(ex);
if (ioex == null)
throw SystemException.Aide.wrap(ex);
- log.warningBriefly("Unable to load "+url, ioex);
+ log.warn("Unable to load "+url, ioex);
}
return null;
}
ctx = ctx.getContext(ctxpath);
if (ctx == null) { //failed
-// if (log.debugable()) log.debug("Context not found: "+ctxpath);
+// if (log.isDebugEnabled()) log.debug("Context not found: "+ctxpath);
ctx = ctx0; path = path0;//restore
}
}
@@ -125,7 +126,7 @@ public class ResourceCaches {
final IOException ioex = getIOException(ex);
if (ioex == null)
throw SystemException.Aide.wrap(ex);
- log.warningBriefly("Unable to load "+flnm, ioex);
+ log.warn("Unable to load "+flnm, ioex);
}
return null;
}
@@ -142,7 +143,7 @@ public class ResourceCaches {
final IOException ioex = getIOException(ex);
if (ioex == null)
throw SystemException.Aide.wrap(ex);
- log.warningBriefly("Unable to load "+path, ioex);
+ log.warn("Unable to load "+path, ioex);
}
return null;
}
diff --git a/org.zkoss.zk.library/src/org/zkoss/zul/impl/GridDataLoader.java b/org.zkoss.zk.library/src/org/zkoss/zul/impl/GridDataLoader.java
new file mode 100644
index 0000000000..dc246a5ab0
--- /dev/null
+++ b/org.zkoss.zk.library/src/org/zkoss/zul/impl/GridDataLoader.java
@@ -0,0 +1,478 @@
+/* GridDataLoader.java
+{{IS_NOTE
+ Purpose:
+
+ Description:
+
+ History:
+ Oct 29, 2009 10:44:57 AM, Created by henrichen
+}}IS_NOTE
+
+Copyright (C) 2009 Potix Corporation. All Rights Reserved.
+
+{{IS_RIGHT
+ This program is distributed under GPL Version 3.0 in the hope that
+ it will be useful, but WITHOUT ANY WARRANTY.
+}}IS_RIGHT
+*/
+package org.zkoss.zul.impl;
+
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import org.zkoss.lang.Library;
+import org.zkoss.lang.Objects;
+import org.zkoss.xel.VariableResolver;
+
+import org.zkoss.zk.ui.Component;
+import org.zkoss.zk.ui.UiException;
+import org.zkoss.zk.ui.util.ForEachStatus;
+import org.zkoss.zk.ui.util.Template;
+import org.zkoss.zk.ui.ext.render.Cropper;
+import org.zkoss.zul.Grid;
+import org.zkoss.zul.Group;
+import org.zkoss.zul.GroupRendererExt;
+import org.zkoss.zul.Groupfoot;
+import org.zkoss.zul.Label;
+import org.zkoss.zul.ListModel;
+import org.zkoss.zul.Row;
+import org.zkoss.zul.RowRenderer;
+import org.zkoss.zul.RowRendererExt;
+import org.zkoss.zul.Rows;
+import org.zkoss.zul.event.ListDataEvent;
+import org.zkoss.zul.ext.GroupingInfo;
+import org.zkoss.zul.ext.Paginal;
+import org.zkoss.zul.impl.GroupsListModel.GroupDataInfo;
+
+/**
+ * Generic {@link Grid} data loader.
+ * @author henrichen
+ * @since 5.0.0
+ */
+public class GridDataLoader implements DataLoader, Cropper {
+ private Grid _grid;
+
+ //--DataLoader--//
+ public void init(Component owner, int offset, int limit) {
+ _grid = (Grid) owner;
+ }
+
+ public void reset() {
+ //do nothing
+ }
+
+ final public Component getOwner() {
+ return _grid;
+ }
+
+ public int getOffset() {
+ return 0;
+ }
+
+ public int getLimit() {
+ String limit = Library.getProperty("org.zkoss.zul.grid.DataLoader.limit");
+ if (limit != null) {
+ return Integer.parseInt(limit);
+ }
+ return 50;
+ }
+
+ public int getTotalSize() {
+ final Rows rows = _grid.getRows();
+ final ListModel model = _grid.getModel();
+ return model != null ? model.getSize() : rows != null ? rows.getVisibleItemCount() : 0;
+ }
+
+ private static int INVALIDATE_THRESHOLD = 10;
+ public void doListDataChange(ListDataEvent event) {
+ //when this is called _model is never null
+ final Rows rows = _grid.getRows();
+ final int newsz = event.getModel().getSize(), oldsz = rows.getChildren().size();
+ int min = event.getIndex0(), max = event.getIndex1(), cnt;
+
+ switch (event.getType()) {
+ case ListDataEvent.INTERVAL_ADDED:
+ cnt = newsz - oldsz;
+ if (cnt <= 0) {
+ syncModel(-1, -1); //out of sync, force sync
+ return;
+ //throw new UiException("Adding causes a smaller list?");
+ }
+ if ((oldsz <= 0 || cnt > INVALIDATE_THRESHOLD)
+ && !inPagingMold())
+ rows.invalidate();
+ //Invalidate rows to improve the performance since it is faster
+ //to remove a lot of individual rows. It is safer than invalidating
+ //the whole grid since header might have an input affecting the model
+ //(e.g., ZK-985: demo's data filter)
+ //The memory leak of IE is better with outer (Bug 3147518),
+ //and even better with _grid.invalidate() but better to solve ZK-985
+ if (min < 0)
+ if (max < 0) min = 0;
+ else min = max - cnt + 1;
+ if (min > oldsz) min = oldsz;
+
+ RowRenderer renderer = null;
+ final Component next =
+ min < oldsz ? rows.getChildren().get(min): null;
+ while (--cnt >= 0) {
+ if (renderer == null)
+ renderer = (RowRenderer) getRealRenderer();
+ rows.insertBefore(newUnloadedItem(renderer, min++), next);
+ }
+ break;
+
+ case ListDataEvent.INTERVAL_REMOVED:
+ cnt = oldsz - newsz;
+ if (cnt <= 0) {
+ syncModel(-1, -1); //out of sync, force sync
+ return;
+ //throw new UiException("Removal causes a larger list?");
+ }
+ if ((newsz <= 0 || cnt > INVALIDATE_THRESHOLD)
+ && !inPagingMold())
+ rows.invalidate();
+ //Invalidate rows to improve the performance see above
+
+ if (min >= 0) max = min + cnt - 1;
+ else if (max < 0) max = cnt - 1; //0 ~ cnt - 1
+ if (max > oldsz - 1) max = oldsz - 1;
+
+ //detach from end (due to groupfoot issue)
+ Component comp = rows.getChildren().get(max);
+ while (--cnt >= 0) {
+ Component p = comp.getPreviousSibling();
+ comp.detach();
+ comp = p;
+ }
+ break;
+
+ default: //CONTENTS_CHANGED
+ syncModel(min, max < 0 ? -1 : (max - min + 1));
+ }
+ }
+
+ /** Creates a new and unloaded row. */
+ protected Component newUnloadedItem(Object renderer, int index) {
+ final RowRenderer renderer0 = (RowRenderer) renderer;
+ final ListModel model = ((Grid)getOwner()).getModel();
+ Row row = null;
+ if (model instanceof GroupsListModel) {
+ final GroupsListModel gmodel = (GroupsListModel) model;
+ final GroupingInfo info = gmodel.getDataInfo(index);
+ switch(info.getType()){
+ case GroupDataInfo.GROUP:
+ row = newGroup(renderer0);
+ ((Group)row).setOpen(info.isOpen());
+ break;
+ case GroupDataInfo.GROUPFOOT:
+ row = newGroupfoot(renderer0);
+ break;
+ default:
+ row = newRow(renderer0);
+ }
+ }else{
+ row = newRow(renderer0);
+ }
+ ((LoadStatus)row.getExtraCtrl()).setLoaded(false);
+ ((LoadStatus)row.getExtraCtrl()).setIndex(index);
+
+ newUnloadedCell(renderer0, row);
+ return row;
+ }
+
+ private Row newRow(RowRenderer renderer) {
+ Row row = null;
+ if (renderer instanceof RowRendererExt)
+ row = ((RowRendererExt)renderer).newRow((Grid)getOwner());
+ if (row == null) {
+ row = new Row();
+ row.applyProperties();
+ }
+ return row;
+ }
+ private Group newGroup(RowRenderer renderer) {
+ Group group = null;
+ if (renderer instanceof GroupRendererExt)
+ group = ((GroupRendererExt)renderer).newGroup((Grid)getOwner());
+ if (group == null) {
+ group = new Group();
+ group.applyProperties();
+ }
+ return group;
+ }
+ private Groupfoot newGroupfoot(RowRenderer renderer) {
+ Groupfoot groupfoot = null;
+ if (renderer instanceof GroupRendererExt)
+ groupfoot = ((GroupRendererExt)renderer).newGroupfoot((Grid)getOwner());
+ if (groupfoot == null) {
+ groupfoot = new Groupfoot();
+ groupfoot.applyProperties();
+ }
+ return groupfoot;
+ }
+ private Component newUnloadedCell(RowRenderer renderer, Row row) {
+ Component cell = null;
+ if (renderer instanceof RowRendererExt)
+ cell = ((RowRendererExt)renderer).newCell(row);
+
+ if (cell == null) {
+ cell = newRenderLabel(null);
+ cell.applyProperties();
+ }
+ cell.setParent(row);
+ return cell;
+ }
+ /** Returns the label for the cell generated by the default renderer.
+ */
+ private static Label newRenderLabel(String value) {
+ final Label label =
+ new Label(value != null && value.length() > 0 ? value: " ");
+ label.setPre(true); //to make sure is generated, and then occupies some space
+ return label;
+ }
+
+ public Object getRealRenderer() {
+ final RowRenderer renderer = _grid.getRowRenderer();
+ return renderer != null ? renderer : _defRend;
+ }
+ private static final RowRenderer _defRend = new RowRenderer() {
+ public void render(final Row row, final Object data, final int index) {
+ final Rows rows = (Rows)row.getParent();
+ final Grid grid = (Grid)rows.getParent();
+ Template tm = getTemplate(grid, rows, "model");
+ GroupingInfo info = null;
+ if (row instanceof Group) {
+ final Template tm2 = getTemplate(grid, rows, "model:group");
+ if (tm2 != null)
+ tm = tm2;
+ if (grid.getModel() instanceof GroupsListModel) {
+ final GroupsListModel gmodel = (GroupsListModel) grid.getModel();
+ info = gmodel.getDataInfo(index);
+ }
+ } else if (row instanceof Groupfoot) {
+ final Template tm2 = getTemplate(grid, rows, "model:groupfoot");
+ if (tm2 != null)
+ tm = tm2;
+ }
+ if (tm == null) {
+ final Label label = newRenderLabel(Objects.toString(data));
+ label.applyProperties();
+ label.setParent(row);
+ row.setValue(data);
+ } else {
+ final GroupingInfo groupingInfo = info;
+ final Component[] items = tm.create(rows, row,
+ new VariableResolver() {
+ public Object resolveVariable(String name) {
+ if ("each".equals(name)) {
+ return data;
+ } else if ("forEachStatus".equals(name)) {
+ return new ForEachStatus() {
+
+ public ForEachStatus getPrevious() {
+ return null;
+ }
+
+ public Object getEach() {
+ return data;
+ }
+
+ public int getIndex() {
+ return index;
+ }
+
+ public Integer getBegin() {
+ return 0;
+ }
+
+ public Integer getEnd() {
+ return grid.getModel().getSize();
+ }
+ };
+ } else if ("groupingInfo".equals(name)) {
+ return groupingInfo;
+ } else {
+ return null;
+ }
+ }
+ }, null);
+ if (items.length != 1)
+ throw new UiException("The model template must have exactly one row, not "+items.length);
+
+ final Row nr = (Row)items[0];
+
+ //sync open state
+ if (nr instanceof Group && row instanceof Group) {
+ ((Group)nr).setOpen(((Group)row).isOpen());
+ }
+
+ if (nr.getValue() == null) //template might set it
+ nr.setValue(data);
+ row.setAttribute("org.zkoss.zul.model.renderAs", nr);
+ //indicate a new row is created to replace the existent one
+ row.detach();
+ }
+ }
+ };
+ private static Template getTemplate(Grid grid, Rows rows, String name) {
+ final Template tm = grid.getTemplate(name);
+ return tm != null ? tm: rows != null ? rows.getTemplate(name): null;
+ // Also allow model's template to be declared in Rows
+ }
+
+ public void syncModel(int offset, int limit) {
+ int min = offset;
+ int max = offset + limit - 1;
+
+ final ListModel model = _grid.getModel();
+ Rows rows = _grid.getRows();
+ final int newsz = model.getSize();
+ final int oldsz = rows != null ? rows.getChildren().size(): 0;
+ final Paginal pgi = _grid.getPaginal();
+ final boolean inPaging = inPagingMold();
+ final boolean shallInvalidated = //Bug 3147518: avoid memory leak
+ (min < 0 || min == 0) && (max < 0 || max >= newsz || max >= oldsz);
+
+ int newcnt = newsz - oldsz;
+ int atg = pgi != null ? _grid.getActivePage(): 0;
+ RowRenderer renderer = null;
+ Component next = null;
+ if (oldsz > 0) {
+ if (min < 0) min = 0;
+ else if (min > oldsz - 1) min = oldsz - 1;
+ if (max < 0) max = oldsz - 1;
+ else if (max > oldsz - 1) max = oldsz - 1;
+ if (min > max) {
+ int t = min; min = max; max = t;
+ }
+
+ int cnt = max - min + 1; //# of affected
+ if (rows != null) {
+ if (model instanceof GroupsListModel) {
+ //detach all from end to front since groupfoot
+ //must be detached before group
+ newcnt += cnt; //add affected later
+ if ((shallInvalidated || newcnt > INVALIDATE_THRESHOLD)
+ && !inPaging)
+ rows.invalidate();
+ //Invalidate rows to improve the performance see above
+
+ Component comp = rows.getChildren().get(max);
+ next = comp.getNextSibling();
+ while (--cnt >= 0) {
+ Component p = comp.getPreviousSibling();
+ comp.detach();
+ comp = p;
+ }
+ } else { //ListModel
+ int addcnt = 0;
+ Component row = rows.getChildren().get(min);
+ while (--cnt >= 0) {
+ next = row.getNextSibling();
+
+ if (cnt < -newcnt) { //if shrink, -newcnt > 0
+ row.detach(); //remove extra
+ } else if (((LoadStatus)((Row)row).getExtraCtrl()).isLoaded()) {
+ if (renderer == null)
+ renderer = (RowRenderer)getRealRenderer();
+ row.detach(); //always detach
+ rows.insertBefore(newUnloadedItem(renderer, min), next);
+ ++addcnt;
+ }
+ ++min;
+ row = next;
+ }
+
+ if ((shallInvalidated || addcnt > INVALIDATE_THRESHOLD || addcnt + newcnt > INVALIDATE_THRESHOLD)
+ && !inPaging)
+ rows.invalidate();
+ //Invalidate rows to improve the performance see above
+ }
+ }
+ } else {
+ min = 0;
+
+ //auto create but it means ... will fail
+ if (rows == null) {
+ rows = new Rows();
+ rows.setParent(_grid);
+ }
+ }
+
+ for (; --newcnt >= 0; ++min) {
+ if (renderer == null)
+ renderer = (RowRenderer) getRealRenderer();
+ rows.insertBefore(newUnloadedItem(renderer, min), next);
+ }
+
+ if (pgi != null) {
+ if (atg >= pgi.getPageCount())
+ atg = pgi.getPageCount() - 1;
+ pgi.setActivePage(atg);
+ if (pgi.getTotalSize() != newsz)
+ pgi.setTotalSize(newsz); //Bug ZK-1888 - Grid in paging mold doesn't change pages count
+ }
+ }
+
+ protected boolean inPagingMold() {
+ return "paging".equals(_grid.getMold());
+ }
+
+ public void updateModelInfo() {
+ // do nothing
+ }
+
+ public void setLoadAll(boolean b) {
+ //do nothing
+ }
+
+ //--Cropper--//
+ public boolean isCropper() {
+ return _grid != null &&
+ inPagingMold()
+ && _grid.getPageSize() <= getTotalSize();
+ //Single page is considered as not a cropper.
+ //isCropper is called after a component is removed, so
+ //we have to test >= rather than >
+ }
+
+ public Set extends Component> getAvailableAtClient() {
+ if (!isCropper())
+ return null;
+
+ final Paginal pgi = _grid.getPaginal();
+ int pgsz = pgi.getPageSize();
+ int ofs = pgi.getActivePage() * pgsz;
+ return getAvailableAtClient(ofs, pgsz);
+ }
+
+ protected Set extends Component> getAvailableAtClient(int offset, int limit) {
+ final Set avail = new LinkedHashSet(32);
+ final Rows rows = _grid.getRows();
+ Row row = (Row) rows.getFirstChild();
+ while(row != null) {
+ if (limit == 0) break;
+ if (row.isVisible()) {
+ if (--offset < 0) {
+ --limit;
+ avail.add(row);
+ }
+ }
+ if (row instanceof Group) {
+ final Group g = (Group) row;
+ if (!g.isOpen()) {
+ for (int j = 0, len = g.getItemCount(); j < len && row != null; j++)
+ row = (Row) row.getNextSibling();
+ }
+ }
+ if (row != null)
+ row = (Row) row.getNextSibling();
+ }
+ return avail;
+ }
+
+ public Component getCropOwner() {
+ return _grid;
+ }
+}