deckrb 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/README.md +84 -25
  2. data/bin/deck +3 -4
  3. data/lib/deck/rack_app.rb +39 -7
  4. data/lib/deck/slide.rb +9 -2
  5. data/lib/deck/slide_deck.rb +10 -13
  6. data/lib/deck/version.rb +1 -1
  7. data/public/coderay.css +84 -0
  8. data/public/deck.js/GPL-license.txt +278 -0
  9. data/public/deck.js/MIT-license.txt +21 -0
  10. data/public/deck.js/README.md +57 -0
  11. data/public/deck.js/core/deck.core.css +404 -0
  12. data/public/deck.js/core/deck.core.html +39 -0
  13. data/public/deck.js/core/deck.core.js +498 -0
  14. data/public/deck.js/core/deck.core.scss +447 -0
  15. data/public/deck.js/extensions/goto/deck.goto.css +41 -0
  16. data/public/deck.js/extensions/goto/deck.goto.html +7 -0
  17. data/public/deck.js/extensions/goto/deck.goto.js +134 -0
  18. data/public/deck.js/extensions/goto/deck.goto.scss +46 -0
  19. data/public/deck.js/extensions/hash/deck.hash.css +13 -0
  20. data/public/deck.js/extensions/hash/deck.hash.html +2 -0
  21. data/public/deck.js/extensions/hash/deck.hash.js +129 -0
  22. data/public/deck.js/extensions/hash/deck.hash.scss +15 -0
  23. data/public/deck.js/extensions/menu/deck.menu.css +47 -0
  24. data/public/deck.js/extensions/menu/deck.menu.js +187 -0
  25. data/public/deck.js/extensions/menu/deck.menu.scss +58 -0
  26. data/public/deck.js/extensions/navigation/deck.navigation.css +43 -0
  27. data/public/deck.js/extensions/navigation/deck.navigation.html +3 -0
  28. data/public/deck.js/extensions/navigation/deck.navigation.js +91 -0
  29. data/public/deck.js/extensions/navigation/deck.navigation.scss +56 -0
  30. data/public/deck.js/extensions/scale/deck.scale.css +16 -0
  31. data/public/deck.js/extensions/scale/deck.scale.js +156 -0
  32. data/public/deck.js/extensions/scale/deck.scale.scss +17 -0
  33. data/public/deck.js/extensions/status/deck.status.css +18 -0
  34. data/public/deck.js/extensions/status/deck.status.html +6 -0
  35. data/public/deck.js/extensions/status/deck.status.js +95 -0
  36. data/public/deck.js/extensions/status/deck.status.scss +22 -0
  37. data/public/deck.js/extensions/theme-picker/deck.theme-picker.css +55 -0
  38. data/public/deck.js/extensions/theme-picker/deck.theme-picker.js +13 -0
  39. data/public/deck.js/introduction/index.html +221 -0
  40. data/public/deck.js/introduction/index.rb +101 -0
  41. data/public/deck.js/jquery-1.7.min.js +4 -0
  42. data/public/deck.js/modernizr.custom.js +4 -0
  43. data/public/deck.js/test/fixtures/complex.html +24 -0
  44. data/public/deck.js/test/fixtures/empty.html +19 -0
  45. data/public/deck.js/test/fixtures/iframe_simple.html +10 -0
  46. data/public/deck.js/test/fixtures/iframes.html +32 -0
  47. data/public/deck.js/test/fixtures/nesteds.html +36 -0
  48. data/public/deck.js/test/fixtures/standard.html +42 -0
  49. data/public/deck.js/test/index.html +39 -0
  50. data/public/deck.js/test/lib/jasmine-html.js +190 -0
  51. data/public/deck.js/test/lib/jasmine-jquery.js +288 -0
  52. data/public/deck.js/test/lib/jasmine.css +166 -0
  53. data/public/deck.js/test/lib/jasmine.js +2477 -0
  54. data/public/deck.js/test/settings.js +3 -0
  55. data/public/deck.js/test/spec.core.js +434 -0
  56. data/public/deck.js/test/spec.goto.js +119 -0
  57. data/public/deck.js/test/spec.hash.js +81 -0
  58. data/public/deck.js/test/spec.menu.js +66 -0
  59. data/public/deck.js/test/spec.navigation.js +51 -0
  60. data/public/deck.js/test/spec.scale.js +57 -0
  61. data/public/deck.js/test/spec.status.js +58 -0
  62. data/public/deck.js/themes/style/neon.css +114 -0
  63. data/public/deck.js/themes/style/neon.scss +139 -0
  64. data/public/deck.js/themes/style/swiss.css +75 -0
  65. data/public/deck.js/themes/style/swiss.scss +91 -0
  66. data/public/deck.js/themes/style/web-2.0.css +205 -0
  67. data/public/deck.js/themes/style/web-2.0.scss +236 -0
  68. data/public/deck.js/themes/transition/fade.css +44 -0
  69. data/public/deck.js/themes/transition/fade.scss +70 -0
  70. data/public/deck.js/themes/transition/horizontal-slide.css +79 -0
  71. data/public/deck.js/themes/transition/horizontal-slide.scss +94 -0
  72. data/public/deck.js/themes/transition/vertical-slide.css +97 -0
  73. data/public/deck.js/themes/transition/vertical-slide.scss +116 -0
  74. data/public/favicon.ico +0 -0
  75. data/spec/rack_app_spec.rb +101 -33
  76. data/spec/slide_deck_spec.rb +6 -7
  77. data/spec/slide_spec.rb +19 -0
  78. metadata +95 -16
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2011 Caleb Troughton
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,57 @@
1
+ #deck.js
2
+
3
+ A JavaScript library for building modern HTML presentations. deck.js is flexible enough to let advanced CSS and JavaScript authors craft highly customized decks, but also provides templates and themes for the HTML novice to build a standard slideshow.
4
+
5
+ ## Dependencies (included in this repository)
6
+
7
+ - [jQuery](http://jquery.com)
8
+ - [Modernizr](http://modernizr.com)
9
+
10
+ ## Documentation
11
+
12
+ Check out the [documentation page](http://imakewebthings.github.com/deck.js/docs) for more information on the methods, events, and options available in core and all the included extensions. A sample standard slide deck is included in the package under the `introduction` folder. You can also [view that sample deck](http://imakewebthings.github.com/deck.js/introduction) online to play with the available style and transition themes.
13
+
14
+ ## Extensions, Themes, and Related Projects
15
+
16
+ Take a look at [the wiki](https://github.com/imakewebthings/deck.js/wiki) for lists of extensions, themes, and other related goodies. If you have a publicly available project of your own, feel free to add to the list.
17
+
18
+ ## Tests & Support
19
+
20
+ Unit tests are written with [Jasmine](http://pivotal.github.com/jasmine/) and [jasmine-jquery](https://github.com/velesin/jasmine-jquery). You can [run them here](http://imakewebthings.github.com/deck.js/test).
21
+
22
+ deck.js has been tested with jQuery 1.6+ and works in IE7+, Chrome, FF, Safari, and Opera. The more capable browsers receive greater enhancements, but a basic cutaway slideshow will work for all browsers listed above. Please don't give your presentations in IE6.
23
+
24
+ For any questions or general discussion about deck.js please direct your attention to the [mailing list](http://groups.google.com/group/deckjs) (uses Google groups.) If you would like to report a bug, please see the [issues page](https://github.com/imakewebthings/deck.js/issues).
25
+
26
+ ## Known Bug(s)
27
+
28
+ There is an issue with certain builds of Chrome that result in a solid blue background and generally broken decks. This is a bug in Chrome ([Issue 91518](http://code.google.com/p/chromium/issues/detail?id=91518)) that stems from hardware acceleration of 3d transforms. Current workarounds:
29
+
30
+ - Use a different browser. This problem doesn't exist in Safari, FF, Opera.
31
+ - Disable hardware compositing by setting `--disable-accelerated-compositing` in the Chrome loading options
32
+ - Replace instances of `translate3d` with `translate` in the CSS of your decks (though this will slow down performance on iOS devices and Safari.)
33
+
34
+ ## Printing
35
+
36
+ Core includes stripped down black and white print styles for the standard slide template that is suitable for handouts.
37
+
38
+ ## Awesome Contributors
39
+
40
+ - [jbuck](https://github.com/jbuck)
41
+ - [cykod](https://github.com/cykod)
42
+ - [dougireton](https://github.com/dougireton)
43
+ - [awirick](https://github.com/awirick)
44
+ - Daniel Knittl-Frank
45
+
46
+ If you would like to contribute a patch to deck.js please do as much as you can of the following:
47
+
48
+ - Add or amend Jasmine tests.
49
+ - Add inline documentation.
50
+ - If the standard snippet of an extension changes, please change it in both the introduction deck and the snippet html in the extension folder.
51
+ - If the API changes, it would be awesome to receive a parallel pull request to the gh-pages branch which updates the public-facing documentation.
52
+
53
+ ## License
54
+
55
+ Copyright (c) 2011 Caleb Troughton
56
+
57
+ Dual licensed under the [MIT license](https://github.com/imakewebthings/deck.js/blob/master/MIT-license.txt) and [GPL license](https://github.com/imakewebthings/deck.js/blob/master/GPL-license.txt).
@@ -0,0 +1,404 @@
1
+ html {
2
+ height: 100%;
3
+ }
4
+
5
+ .deck-container {
6
+ position: relative;
7
+ height: 100%;
8
+ width: 70%;
9
+ margin: 0 auto;
10
+ padding: 0 48px;
11
+ font-size: 16px;
12
+ line-height: 1.25;
13
+ overflow: hidden;
14
+ /* Resets and base styles from HTML5 Boilerplate */
15
+ /* End HTML5 Boilerplate adaptations */
16
+ }
17
+ .js .deck-container {
18
+ visibility: hidden;
19
+ }
20
+ .ready .deck-container {
21
+ visibility: visible;
22
+ }
23
+ .touch .deck-container {
24
+ -webkit-text-size-adjust: none;
25
+ }
26
+ .deck-container div, .deck-container span, .deck-container object, .deck-container iframe,
27
+ .deck-container h1, .deck-container h2, .deck-container h3, .deck-container h4, .deck-container h5, .deck-container h6, .deck-container p, .deck-container blockquote, .deck-container pre,
28
+ .deck-container abbr, .deck-container address, .deck-container cite, .deck-container code, .deck-container del, .deck-container dfn, .deck-container em, .deck-container img, .deck-container ins, .deck-container kbd, .deck-container q, .deck-container samp,
29
+ .deck-container small, .deck-container strong, .deck-container sub, .deck-container sup, .deck-container var, .deck-container b, .deck-container i, .deck-container dl, .deck-container dt, .deck-container dd, .deck-container ol, .deck-container ul, .deck-container li,
30
+ .deck-container fieldset, .deck-container form, .deck-container label, .deck-container legend,
31
+ .deck-container table, .deck-container caption, .deck-container tbody, .deck-container tfoot, .deck-container thead, .deck-container tr, .deck-container th, .deck-container td,
32
+ .deck-container article, .deck-container aside, .deck-container canvas, .deck-container details, .deck-container figcaption, .deck-container figure,
33
+ .deck-container footer, .deck-container header, .deck-container hgroup, .deck-container menu, .deck-container nav, .deck-container section, .deck-container summary,
34
+ .deck-container time, .deck-container mark, .deck-container audio, .deck-container video {
35
+ margin: 0;
36
+ padding: 0;
37
+ border: 0;
38
+ font-size: 100%;
39
+ font: inherit;
40
+ vertical-align: baseline;
41
+ }
42
+ .deck-container article, .deck-container aside, .deck-container details, .deck-container figcaption, .deck-container figure,
43
+ .deck-container footer, .deck-container header, .deck-container hgroup, .deck-container menu, .deck-container nav, .deck-container section {
44
+ display: block;
45
+ }
46
+ .deck-container blockquote, .deck-container q {
47
+ quotes: none;
48
+ }
49
+ .deck-container blockquote:before, .deck-container blockquote:after, .deck-container q:before, .deck-container q:after {
50
+ content: "";
51
+ content: none;
52
+ }
53
+ .deck-container ins {
54
+ background-color: #ff9;
55
+ color: #000;
56
+ text-decoration: none;
57
+ }
58
+ .deck-container mark {
59
+ background-color: #ff9;
60
+ color: #000;
61
+ font-style: italic;
62
+ font-weight: bold;
63
+ }
64
+ .deck-container del {
65
+ text-decoration: line-through;
66
+ }
67
+ .deck-container abbr[title], .deck-container dfn[title] {
68
+ border-bottom: 1px dotted;
69
+ cursor: help;
70
+ }
71
+ .deck-container table {
72
+ border-collapse: collapse;
73
+ border-spacing: 0;
74
+ }
75
+ .deck-container hr {
76
+ display: block;
77
+ height: 1px;
78
+ border: 0;
79
+ border-top: 1px solid #ccc;
80
+ margin: 1em 0;
81
+ padding: 0;
82
+ }
83
+ .deck-container input, .deck-container select {
84
+ vertical-align: middle;
85
+ }
86
+ .deck-container select, .deck-container input, .deck-container textarea, .deck-container button {
87
+ font: 99% sans-serif;
88
+ }
89
+ .deck-container pre, .deck-container code, .deck-container kbd, .deck-container samp {
90
+ font-family: monospace, sans-serif;
91
+ }
92
+ .deck-container a {
93
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
94
+ }
95
+ .deck-container a:hover, .deck-container a:active {
96
+ outline: none;
97
+ }
98
+ .deck-container ul, .deck-container ol {
99
+ margin-left: 2em;
100
+ vertical-align: top;
101
+ }
102
+ .deck-container ol {
103
+ list-style-type: decimal;
104
+ }
105
+ .deck-container nav ul, .deck-container nav li {
106
+ margin: 0;
107
+ list-style: none;
108
+ list-style-image: none;
109
+ }
110
+ .deck-container small {
111
+ font-size: 85%;
112
+ }
113
+ .deck-container strong, .deck-container th {
114
+ font-weight: bold;
115
+ }
116
+ .deck-container td {
117
+ vertical-align: top;
118
+ }
119
+ .deck-container sub, .deck-container sup {
120
+ font-size: 75%;
121
+ line-height: 0;
122
+ position: relative;
123
+ }
124
+ .deck-container sup {
125
+ top: -0.5em;
126
+ }
127
+ .deck-container sub {
128
+ bottom: -0.25em;
129
+ }
130
+ .deck-container textarea {
131
+ overflow: auto;
132
+ }
133
+ .ie6 .deck-container legend, .ie7 .deck-container legend {
134
+ margin-left: -7px;
135
+ }
136
+ .deck-container input[type="radio"] {
137
+ vertical-align: text-bottom;
138
+ }
139
+ .deck-container input[type="checkbox"] {
140
+ vertical-align: bottom;
141
+ }
142
+ .ie7 .deck-container input[type="checkbox"] {
143
+ vertical-align: baseline;
144
+ }
145
+ .ie6 .deck-container input {
146
+ vertical-align: text-bottom;
147
+ }
148
+ .deck-container label, .deck-container input[type="button"], .deck-container input[type="submit"], .deck-container input[type="image"], .deck-container button {
149
+ cursor: pointer;
150
+ }
151
+ .deck-container button, .deck-container input, .deck-container select, .deck-container textarea {
152
+ margin: 0;
153
+ }
154
+ .deck-container input:invalid, .deck-container textarea:invalid {
155
+ border-radius: 1px;
156
+ -moz-box-shadow: 0px 0px 5px red;
157
+ -webkit-box-shadow: 0px 0px 5px red;
158
+ box-shadow: 0px 0px 5px red;
159
+ }
160
+ .deck-container input:invalid .no-boxshadow, .deck-container textarea:invalid .no-boxshadow {
161
+ background-color: #f0dddd;
162
+ }
163
+ .deck-container button {
164
+ width: auto;
165
+ overflow: visible;
166
+ }
167
+ .ie7 .deck-container img {
168
+ -ms-interpolation-mode: bicubic;
169
+ }
170
+ .deck-container, .deck-container select, .deck-container input, .deck-container textarea {
171
+ color: #444;
172
+ }
173
+ .deck-container a {
174
+ color: #607890;
175
+ }
176
+ .deck-container a:hover, .deck-container a:focus {
177
+ color: #036;
178
+ }
179
+ .deck-container a:link {
180
+ -webkit-tap-highlight-color: #fff;
181
+ }
182
+ .deck-container.deck-loading {
183
+ display: none;
184
+ }
185
+
186
+ .slide {
187
+ width: auto;
188
+ min-height: 100%;
189
+ position: relative;
190
+ }
191
+ .slide h1 {
192
+ font-size: 4.5em;
193
+ }
194
+ .slide h1, .slide .vcenter {
195
+ font-weight: bold;
196
+ text-align: center;
197
+ padding-top: 1em;
198
+ max-height: 100%;
199
+ }
200
+ .csstransforms .slide h1, .csstransforms .slide .vcenter {
201
+ padding: 0 48px;
202
+ position: absolute;
203
+ left: 0;
204
+ right: 0;
205
+ top: 50%;
206
+ -webkit-transform: translate(0, -50%);
207
+ -moz-transform: translate(0, -50%);
208
+ -ms-transform: translate(0, -50%);
209
+ -o-transform: translate(0, -50%);
210
+ transform: translate(0, -50%);
211
+ }
212
+ .slide .vcenter h1 {
213
+ position: relative;
214
+ top: auto;
215
+ padding: 0;
216
+ -webkit-transform: none;
217
+ -moz-transform: none;
218
+ -ms-transform: none;
219
+ -o-transform: none;
220
+ transform: none;
221
+ }
222
+ .slide h2 {
223
+ font-size: 2.25em;
224
+ font-weight: bold;
225
+ padding-top: .5em;
226
+ margin: 0 0 .66666em 0;
227
+ border-bottom: 3px solid #888;
228
+ }
229
+ .slide h3 {
230
+ font-size: 1.4375em;
231
+ font-weight: bold;
232
+ margin-bottom: .30435em;
233
+ }
234
+ .slide h4 {
235
+ font-size: 1.25em;
236
+ font-weight: bold;
237
+ margin-bottom: .25em;
238
+ }
239
+ .slide h5 {
240
+ font-size: 1.125em;
241
+ font-weight: bold;
242
+ margin-bottom: .2222em;
243
+ }
244
+ .slide h6 {
245
+ font-size: 1em;
246
+ font-weight: bold;
247
+ }
248
+ .slide img, .slide iframe, .slide video {
249
+ display: block;
250
+ max-width: 100%;
251
+ }
252
+ .slide video, .slide iframe, .slide img {
253
+ display: block;
254
+ margin: 0 auto;
255
+ }
256
+ .slide p, .slide blockquote, .slide iframe, .slide img, .slide ul, .slide ol, .slide pre, .slide video {
257
+ margin-bottom: 1em;
258
+ }
259
+ .slide pre {
260
+ white-space: pre;
261
+ white-space: pre-wrap;
262
+ word-wrap: break-word;
263
+ padding: 1em;
264
+ border: 1px solid #888;
265
+ }
266
+ .slide em {
267
+ font-style: italic;
268
+ }
269
+ .slide li {
270
+ padding: .25em 0;
271
+ vertical-align: middle;
272
+ }
273
+
274
+ .deck-before, .deck-previous, .deck-next, .deck-after {
275
+ position: absolute;
276
+ left: -999em;
277
+ top: -999em;
278
+ }
279
+
280
+ .deck-current {
281
+ z-index: 2;
282
+ }
283
+
284
+ .slide .slide {
285
+ visibility: hidden;
286
+ position: static;
287
+ min-height: 0;
288
+ }
289
+
290
+ .deck-child-current {
291
+ position: static;
292
+ z-index: 2;
293
+ }
294
+ .deck-child-current .slide {
295
+ visibility: hidden;
296
+ }
297
+ .deck-child-current .deck-previous, .deck-child-current .deck-before, .deck-child-current .deck-current {
298
+ visibility: visible;
299
+ }
300
+
301
+ body.deck-container {
302
+ overflow: visible;
303
+ }
304
+
305
+ @media screen and (max-device-width: 480px) {
306
+ /* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
307
+ }
308
+ @media print {
309
+ * {
310
+ background: transparent !important;
311
+ color: black !important;
312
+ text-shadow: none !important;
313
+ filter: none !important;
314
+ -ms-filter: none !important;
315
+ -webkit-box-reflect: none !important;
316
+ -moz-box-reflect: none !important;
317
+ -webkit-box-shadow: none !important;
318
+ -moz-box-shadow: none !important;
319
+ box-shadow: none !important;
320
+ }
321
+ * :before, * :after {
322
+ display: none !important;
323
+ }
324
+
325
+ a, a:visited {
326
+ color: #444 !important;
327
+ text-decoration: underline;
328
+ }
329
+
330
+ a[href]:after {
331
+ content: " (" attr(href) ")";
332
+ }
333
+
334
+ abbr[title]:after {
335
+ content: " (" attr(title) ")";
336
+ }
337
+
338
+ .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
339
+ content: "";
340
+ }
341
+
342
+ pre, blockquote {
343
+ border: 1px solid #999;
344
+ page-break-inside: avoid;
345
+ }
346
+
347
+ thead {
348
+ display: table-header-group;
349
+ }
350
+
351
+ tr, img {
352
+ page-break-inside: avoid;
353
+ }
354
+
355
+ @page {
356
+ margin: 0.5cm;
357
+ }
358
+
359
+ p, h2, h3 {
360
+ orphans: 3;
361
+ widows: 3;
362
+ }
363
+
364
+ h2, h3 {
365
+ page-break-after: avoid;
366
+ }
367
+
368
+ .slide {
369
+ position: static !important;
370
+ visibility: visible !important;
371
+ display: block !important;
372
+ -webkit-transform: none !important;
373
+ -moz-transform: none !important;
374
+ -o-transform: none !important;
375
+ -ms-transform: none !important;
376
+ transform: none !important;
377
+ opacity: 1 !important;
378
+ }
379
+
380
+ h1, .vcenter {
381
+ -webkit-transform: none !important;
382
+ -moz-transform: none !important;
383
+ -o-transform: none !important;
384
+ -ms-transform: none !important;
385
+ transform: none !important;
386
+ padding: 0 !important;
387
+ position: static !important;
388
+ }
389
+
390
+ .deck-container > .slide {
391
+ page-break-after: always;
392
+ }
393
+
394
+ .deck-container {
395
+ width: 100% !important;
396
+ height: auto !important;
397
+ padding: 0 !important;
398
+ display: block !important;
399
+ }
400
+
401
+ script {
402
+ display: none;
403
+ }
404
+ }