1 <project name=
"x-slice-impl">
3 <target name=
"-load-sass-page"
4 depends=
"-generate-slicer-bootstrap,
5 -generate-slicer-manifest">
6 <x-run-if-true value=
"${package.sass.fashion}">
8 <x-is-false value=
"${package.sass.rhino}"/>
10 <x-get-relative-path from=
"${build.web.root}"
11 to=
"${package.example.fashion.html}"
12 property=
"package.example.fashion.html.relative"/>
13 <property name=
"example.page.url"
14 value=
"http://localhost:${build.web.port}/${package.example.fashion.html.relative}"/>
15 <x-sass-page page=
"${package.example.fashion.html}"
16 url=
"${example.page.url}"
17 refId=
"package.web.server"/>
24 Uses the compiler to generate a special theme-only scss file containing
25 rules for all framework / package / app components. This is then used
26 by the slicer example page to capture theme sprites
28 <target name=
"-compile-slicer-sass" depends=
"-init-compiler">
29 <local name=
"package.example.scss.tmp"/>
30 <property name=
"package.example.scss.tmp" value=
"${package.example.scss}.tmp"/>
32 path=
"${build.out.resources.dir}"
33 property=
"image.search.path"/>
35 <x-compile refid=
"${compiler.ref.id}">
38 package-${package.name}-all
48 -variable=$image-search-path:'${image.search.path}'
49 -variable=$theme-name: '${theme.name}' !default
50 -output=${package.example.scss.tmp}
51 -forward=${package.sass.dynamic}
54 package-${package.name}-all
58 -output=${package.example.out.ruby}
64 <filesmatch file1=
"${package.example.scss.tmp}" file2=
"${package.example.scss}"/>
67 <copy file=
"${package.example.scss.tmp}" tofile=
"${package.example.scss}" overwrite=
"true"/>
74 Compiles the scss file for the theme slicer page
76 <target name=
"-compass-compile-slicer-css" depends=
"-compile-slicer-sass">
79 <x-is-true value=
"${package.sass.fashion}"/>
83 dir=
"${package.example.build.dir}"
84 trace=
"${compass.compile.trace}"
85 boring=
"${compass.compile.boring}"
86 force=
"${compass.compile.force}"
87 sassdir=
"${package.example.build.dir}"
88 cssdir=
"${package.example.build.dir}"
89 config=
"${package.example.compass.config}"/>
95 Compiles the scss file for the theme slicer page
97 <target name=
"-fashion-compile-slicer-css" depends=
"-compile-slicer-sass">
99 <x-is-true value=
"${package.sass.fashion}"/>
102 <x-is-true value=
"${package.sass.rhino}"/>
104 <x-fashion-compile file=
"${package.example.build.dir}"
105 tofile=
"${package.example.build.dir}"/>
108 <x-sass-build input=
"${package.example.build.dir}"
109 output=
"${package.example.build.dir}"
110 refId=
"package.web.server"/>
117 <target name=
"-generate-slicer-manifest" depends=
"-compass-compile-slicer-css" if=
"framework.isV5">
118 <condition property=
"remove.slicer.css.bootstrap.entries" value=
"true">
120 <x-is-true value=
"${package.sass.fashion}"/>
121 <x-is-false value=
"${package.sass.rhino}"/>
124 <property name=
"remove.slicer.css.bootstrap.entries" value=
"false"/>
126 <x-compile refid=
"${compiler.ref.id}">
129 -removeBootstrapCssEntries=${remove.slicer.css.bootstrap.entries}
130 -cssFile=${package.example.css}
131 -basePath=${bootstrap.base.path}
132 -out=${bootstrap.example.json}
135 -operation=microloader
136 -microloaderPath=${build.slicer.microloader.file}
137 -bootPath=${build.boot.file}
138 -out=${bootstrap.example.js}
143 <target name=
"-generate-slicer-bootstrap" depends=
"-init-compiler" unless=
"framework.isV5">
145 <local name=
"relpath"/>
146 <x-get-relative-path from=
"${bootstrap.base.path}"
147 to=
"${framework.packages.dir}"
150 <local name=
"override.tpl"/>
151 <local name=
"override.tpl.type"/>
153 <property name=
"override.tpl.type" value=
"tpl"/>
154 <property name=
"override.tpl" value='Ext.Loader.loadScriptFile(
"{0}", Ext.emptyFn);'
/>
156 <x-bootstrap file=
"${bootstrap.example.js}"
157 basedir=
"${bootstrap.base.path}"
159 includeCoreFiles=
"true"
160 overrideTpl=
"${override.tpl}"
161 overrideTplType=
"${override.tpl.type}"
162 overrideExcludeTags=
"">
166 "${relpath}/ext-theme-base/sass/example/manifest.js",
167 "${relpath}/ext-theme-base/sass/example/shortcuts.js",
174 <target name=
"-update-slicer-css">
176 from=
"${package.example.dir}"
177 to=
"${package.example.css}"
178 property=
"package.example.css.path"
181 <!--update the app's example to point to the build output-->
182 <echo file=
"${package.example.dir}/example.css">
184 * This file is generated by Sencha Cmd and should NOT be edited. It redirects
185 * to the most recently built CSS file for the application to allow theme.html
186 * to load properly for image slicing (required to support non-CSS3 browsers
187 * such as IE9 and below).
189 @import '${package.example.css.path}';
194 <target name=
"-capture-theme-image"
195 depends=
"-generate-slicer-bootstrap,-generate-slicer-manifest,-update-slicer-css">
198 <x-is-false value=
"${package.sass.fashion}"/>
199 <x-is-true value=
"${package.sass.rhino}"/>
202 <echo>Capture theme image to ${build.dir}/theme-capture.png
</echo>
203 <x-sencha-command dir=
"${package.dir}">
207 -page=${package.example.theme.html}
208 -image=${build.capture.png}
209 -manifest=${build.capture.json}
216 <target name=
"-capture-sass-page-image">
219 <x-is-true value=
"${package.sass.fashion}"/>
220 <x-is-false value=
"${package.sass.rhino}"/>
223 <echo>Capture theme image to ${build.capture.png}
</echo>
224 <x-capture-slicer-data manifestPath=
"${build.capture.json}"
225 imagePath=
"${build.capture.png}"
226 refId=
"package.web.server"/>
231 <target name=
"-slice-theme-images" depends=
"-capture-theme-image">
232 <echo>Slicing theme images to ${build.resources.dir}
</echo>
233 <x-sencha-command dir=
"${package.dir}">
237 ${build.slice.options}
238 -image=${build.capture.png}
239 -manifest=${build.capture.json}
240 -out=${build.resources.dir}
245 <target name=
"-slice-sass-page"
246 depends=
"-load-sass-page,
248 -fashion-compile-slicer-css,
249 -capture-sass-page-image,
250 -slice-theme-images"/>
252 <target name=
"-fashion-slice-images" depends=
"-slice-sass-page"></target>
253 <target name=
"-compass-slice-images" depends=
"-slice-theme-images"></target>
256 <target name=
"-slice-package-images">
258 <x-is-true value=
"${package.sass.fashion}"/>
260 <x-ant-call target=
"-fashion-slice-images"/>
263 <x-ant-call target=
"-compass-slice-images"/>
268 <target name=
"-before-slice"/>
269 <target name=
"-after-slice"/>
270 <target name=
"-slice"
271 depends=
"-slice-package-images"/>