2
testCompile { extendsFrom compile }
3
toolsCompile { extendsFrom compile }
10
compileClasspath = sourceSets.main.output + sourceSets.test.output + configurations.toolsCompile + configurations.testCompile
16
compile module('net.jcip:jcip-annotations:1.0') {
20
compile project(path: ":trident")
21
compile project(path: ":laf-widget", transitive: false)
22
compile project(path: ":laf-plugin", transitive: false)
23
testCompile group: 'com.jgoodies', name: 'forms', version: '1.2.0'
24
testCompile group: 'org.swinglabs.swingx', name: 'swingx-core', version: '1.6.3'
25
toolsCompile group: 'org.easytesting', name: 'fest-swing', version: '1.2.1'
26
toolsCompile group: 'asm', name: 'asm-all', version: '2.2.3'
29
task augmentation(dependsOn: classes) {
30
description = "Performs code augmentaiton for the laf-plugin and laf-widget libraries on the substance jar classes"
33
def augmentClassPath = configurations.toolsCompile.asPath
35
ant.taskdef(name: 'delegate-augment', classname: "org.pushingpixels.lafwidget.ant.AugmentTask", classpath: augmentClassPath)
36
ant.taskdef(name: 'delegate-update-augment', classname: "org.pushingpixels.lafwidget.ant.AugmentUpdateTask", classpath: augmentClassPath)
37
ant.taskdef(name: 'laf-augment', classname: "org.pushingpixels.lafwidget.ant.AugmentMainTask", classpath: augmentClassPath)
38
ant.taskdef(name: 'icon-ghosting-augment', classname: "org.pushingpixels.lafwidget.ant.AugmentIconGhostingTask", classpath: augmentClassPath)
39
ant.taskdef(name: 'container-ghosting-augment', classname: "org.pushingpixels.lafwidget.ant.AugmentContainerGhostingTask", classpath: augmentClassPath)
41
def verboseAugmentation = false
43
// Delegate augmentation
44
ant.'delegate-update-augment'(verbose: verboseAugmentation, pattern: ".*UI\u002Eclass") {
45
classpathset(dir: sourceSets.main.output.classesDir)
48
ant.'delegate-augment'(verbose: verboseAugmentation, pattern: ".*UI\u002Eclass") {
49
classpathset(dir: sourceSets.main.output.classesDir)
52
// Icon ghosting augmentation
53
ant.'icon-ghosting-augment'(verbose: verboseAugmentation) {
54
classpathset(dir: sourceSets.main.output.classesDir)
55
iconghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceButtonUI", methodName: "paintIcon")
56
iconghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceToggleButtonUI", methodName: "paintIcon")
59
// Container ghosting augmentation
60
ant.'container-ghosting-augment'(verbose: verboseAugmentation) {
61
classpathset(dir: sourceSets.main.output.classesDir)
62
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceDesktopPaneUI", toInjectAfterOriginal: "true")
63
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceMenuBarUI", toInjectAfterOriginal: "true")
64
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceMenuUI", toInjectAfterOriginal: "true")
65
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstancePanelUI", toInjectAfterOriginal: "true")
66
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceScrollBarUI", toInjectAfterOriginal: "true")
67
containerghosting(className: "org.pushingpixels.substance.internal.ui.SubstanceToolBarUI", toInjectAfterOriginal: "true")
73
dependsOn augmentation
74
dependsOn toolsClasses
78
"Substance-Distribution": "Full",
79
"Substance-Version": version,
80
"Substance-VersionName": versionKey,
86
task liteJar(type: Jar) {
87
dependsOn augmentation
88
dependsOn toolsClasses
92
from sourceSets.main.output
93
exclude 'org/pushingpixels/substance/internal/contrib/randelshofer/**'
94
exclude 'org/pushingpixels/substance/internal/contrib/xoetrope/**'
95
exclude 'org/pushingpixels/substance/internal/ui/SubstanceColorChooserUI*'
96
exclude 'org/pushingpixels/lafwidget/ant/**'
100
"Substance-Distribution": "Lite",
101
"Substance-Version": version,
102
"Substance-VersionName": versionKey,
107
task testJar(type: Jar) {
110
from sourceSets.test.output
114
"Substance-Version": version,
115
"Substance-VersionName": versionKey,
120
task testLiteJar(type: Jar) {
121
classifier = 'tst-lite'
123
from sourceSets.test.output
127
"Substance-Version": version,
128
"Substance-VersionName": versionKey,
134
task toolsJar(type: Jar) {
136
from sourceSets.tools.output
139
"Substance-Version": version,
140
"Substance-VersionName": versionKey,
145
task distroJar(type: Jar) {
146
dependsOn toolsJar, liteJar, testJar, testLiteJar, jar
151
include "gradle.properties"
152
include "build.gradle"
174
configurePOM(repositories.mavenInstaller.pom)
177
private def configurePOM(def pom) {
178
configureBasePom(pom)
181
description "A fork of @kirilcool's substance project"
182
url "http://insubstantial.github.com/insubstantial/substance/"
186
url 'http://www.opensource.org/licenses/bsd-license.php'
188
comments "Does not cover the Xoetrope Color Wheel"
191
name 'Mozilla Public License 1.1'
192
url 'http://www.opensource.org/licenses/mozilla1.1'
194
comments "Covers the Xoetrope Color Wheel"
199
// deal with a gradle bug where transitive=false is not passed into the generated POM
200
pom.whenConfigured {cpom ->
201
cpom.dependencies.each {dep ->
202
switch (dep.artifactId) {
203
case 'jcip-annotations':
204
dep.scope = 'provided'
207
dep.classifier = 'swing'
216
task jitterbug(type: JavaExec) {
217
main = 'tools.jitterbug.JitterbugEditor'
218
debug = Boolean.valueOf(System.getProperty('debug', 'false'))
219
classpath = sourceSets.tools.compileClasspath + sourceSets.tools.runtimeClasspath
222
task testCheck(type: JavaExec) {
224
debug = Boolean.valueOf(System.getProperty('debug', 'true'))
225
classpath = sourceSets.test.runtimeClasspath
228
task testFoo(type: JavaExec) {
230
debug = Boolean.valueOf(System.getProperty('debug', 'false'))
231
classpath = sourceSets.test.runtimeClasspath
233
task testTridentLeakSnippet(type: JavaExec) {
234
main = 'TridentLeakSnippet'
235
debug = Boolean.valueOf(System.getProperty('debug', 'false'))
236
classpath = sourceSets.test.runtimeClasspath