seamless 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/bin/seamless +36 -0
  2. data/lib/seamless.rb +70 -0
  3. data/lib/seamless/active_record_extension.rb +11 -0
  4. data/lib/seamless/dispatcher.rb +45 -0
  5. data/lib/seamless/message_broker.rb +12 -0
  6. data/lib/seamless/message_broker_controller.rb +11 -0
  7. data/lib/seamless/messagebroker/inmemory_message_broker.rb +45 -0
  8. data/lib/seamless/migration.rb +8 -0
  9. data/lib/seamless/model.rb +94 -0
  10. data/lib/seamless/service.rb +186 -0
  11. data/seamless/seamless_generator.rb +181 -0
  12. data/seamless/templates/README +24 -0
  13. data/seamless/templates/admin.html +166 -0
  14. data/seamless/templates/application.rb +7 -0
  15. data/seamless/templates/css/global.css +333 -0
  16. data/seamless/templates/css/seamless-admin.css +281 -0
  17. data/seamless/templates/css/seamless.css +632 -0
  18. data/seamless/templates/environment.rb +65 -0
  19. data/seamless/templates/generate +25 -0
  20. data/seamless/templates/images/arch.png +0 -0
  21. data/seamless/templates/images/arrow_undo.png +0 -0
  22. data/seamless/templates/images/cell_phone.png +0 -0
  23. data/seamless/templates/images/confirm.png +0 -0
  24. data/seamless/templates/images/deny.png +0 -0
  25. data/seamless/templates/images/dialog_close.gif +0 -0
  26. data/seamless/templates/images/dialog_close_hover.gif +0 -0
  27. data/seamless/templates/images/email.png +0 -0
  28. data/seamless/templates/images/exclamation.png +0 -0
  29. data/seamless/templates/images/indicator.gif +0 -0
  30. data/seamless/templates/images/indicator2.gif +0 -0
  31. data/seamless/templates/images/seamless.gif +0 -0
  32. data/seamless/templates/images/shadow.gif +0 -0
  33. data/seamless/templates/images/shadowAlpha.png +0 -0
  34. data/seamless/templates/images/small_star.png +0 -0
  35. data/seamless/templates/images/table_add.png +0 -0
  36. data/seamless/templates/images/table_delete.png +0 -0
  37. data/seamless/templates/images/table_edit.png +0 -0
  38. data/seamless/templates/images/table_go.png +0 -0
  39. data/seamless/templates/images/table_refresh.png +0 -0
  40. data/seamless/templates/images/tag.png +0 -0
  41. data/seamless/templates/images/warning.png +0 -0
  42. data/seamless/templates/images/wizard.gif +0 -0
  43. data/seamless/templates/images/work_phone.png +0 -0
  44. data/seamless/templates/index.html +171 -0
  45. data/seamless/templates/js/seamless-admin.js +255 -0
  46. data/seamless/templates/js/seamless.js +2755 -0
  47. data/seamless/templates/message_broker.rb +6 -0
  48. data/seamless/templates/message_broker_helper.rb +2 -0
  49. data/seamless/templates/robots.txt +2 -0
  50. data/seamless/templates/routes.rb +18 -0
  51. data/seamless/templates/seamless.xml +5 -0
  52. data/seamless/templates/server +4 -0
  53. data/seamless/templates/test_service.rb +13 -0
  54. data/service/USAGE +21 -0
  55. data/service/service_generator.rb +59 -0
  56. data/service/templates/service.rb +14 -0
  57. metadata +122 -0
@@ -0,0 +1,281 @@
1
+ body
2
+ {
3
+ color:#444;
4
+ background-color:#444;
5
+ }
6
+ #logo
7
+ {
8
+ float:right;
9
+ margin-left:10px;
10
+ margin-right:10px;
11
+ }
12
+ #form
13
+ {
14
+ margin:20px;
15
+ padding:10px;
16
+ background-color: #fff;
17
+ border:1px solid #444;
18
+ position:relative;
19
+ min-height: 450px;
20
+ }
21
+ h2
22
+ {
23
+ font-weight:bold;
24
+ font-size:32px;
25
+ margin-bottom:15px;
26
+ }
27
+ textarea
28
+ {
29
+ width:100%;
30
+ height:100px;
31
+ margin-top:10px;
32
+ margin-bottom:10px;
33
+ border:1px solid #aaa;
34
+ font-size: 18px;
35
+ padding:3px;
36
+ }
37
+ textarea:focus
38
+ {
39
+ background-color:#ffffcc;
40
+ }
41
+ #banner
42
+ {
43
+ background-color:#850001;
44
+ border-bottom:1px solid #000;
45
+ height:60px;
46
+ }
47
+ #header
48
+ {
49
+ background-color:#444;
50
+ height:10px;
51
+ }
52
+ #intro
53
+ {
54
+ margin-top:20px;
55
+ margin-bottom:20px;
56
+ font-family: Georgia, sans-serif;
57
+ font-size: 18px;
58
+ }
59
+
60
+ #titlebar
61
+ {
62
+ position: relative;
63
+ border-bottom: 1px dotted #999;
64
+ height:34px;
65
+ }
66
+
67
+ #title
68
+ {
69
+ position: absolute;
70
+ top:4px;
71
+ left:10px;
72
+ font-size: large;
73
+ }
74
+
75
+ #search
76
+ {
77
+ position: absolute;
78
+ right:140px;
79
+ top:4px;
80
+ font-size: smaller;
81
+ }
82
+
83
+ #search_bar
84
+ {
85
+ position:relative;
86
+ width:260px;
87
+ margin:0;
88
+ padding:0;
89
+ }
90
+
91
+ #search_bar_title
92
+ {
93
+ position:absolute;
94
+ left:50px;
95
+ top:4px;
96
+ }
97
+
98
+ #search_bar_field
99
+ {
100
+ position:absolute;
101
+ right:40px;
102
+ top:0;
103
+ }
104
+ #search_indicator
105
+ {
106
+ position:absolute;
107
+ right:18px;
108
+ top:2px;
109
+ }
110
+ #search input
111
+ {
112
+ border:1px solid #aaa;
113
+ border-top:1px solid #666;
114
+ padding:4px;
115
+ width:120px;
116
+ }
117
+
118
+ #table_selector select
119
+ {
120
+ border:1px solid #aaa;
121
+ padding:4px;
122
+ min-width: 100px;
123
+ }
124
+
125
+ #search input:focus
126
+ {
127
+ background-color: #ffffcc;
128
+ }
129
+
130
+ #search img
131
+ {
132
+ margin-left:5px;
133
+ }
134
+
135
+ #results
136
+ {
137
+ position: relative;
138
+ height:20px;
139
+ margin-top:4px;
140
+ margin-left: 12px;
141
+ }
142
+
143
+ #search_results
144
+ {
145
+ position: absolute;
146
+ font-size:x-small;
147
+ color:#999;
148
+ top:5px;
149
+ left:0px;
150
+ }
151
+
152
+ #table_operations
153
+ {
154
+ position: absolute;
155
+ top:5px;
156
+ right:10px;
157
+ }
158
+
159
+ #table_operations img
160
+ {
161
+ margin-left:8px;
162
+ cursor:pointer;
163
+ }
164
+
165
+ #table_selector
166
+ {
167
+ position: absolute;
168
+ right:10px;
169
+ top:4px;
170
+ font-size: smaller;
171
+ }
172
+
173
+ #search_results_table_container
174
+ {
175
+ margin:10px;
176
+ margin-top:15px;
177
+ }
178
+
179
+ #search_results_table
180
+ {
181
+ width:100%;
182
+ }
183
+
184
+ #search_results_table th
185
+ {
186
+ padding:4px;
187
+ font-weight: bold;
188
+ background-color: #aaa;
189
+ border:1px solid #aaa;
190
+ color:#333;
191
+ border-bottom:2px solid #999;
192
+ }
193
+
194
+ #search_results_table td
195
+ {
196
+ padding:5px;
197
+ border:1px dotted #cac;
198
+ cursor:pointer;
199
+ }
200
+
201
+ td.odd
202
+ {
203
+ background-color: #eef;
204
+ }
205
+
206
+ td.selected
207
+ {
208
+ background-color: #ffffcc;
209
+ }
210
+
211
+ table.record
212
+ {
213
+ width:100%;
214
+ }
215
+
216
+ table.record td.label
217
+ {
218
+ font-weight: bold;
219
+ width:170px;
220
+ background-color:#eee;
221
+ }
222
+
223
+ table.record td.display
224
+ {
225
+ margin:7px;
226
+ padding:5px;
227
+ font-size:14px;
228
+ border-bottom:1px dotted #bcb;
229
+ }
230
+
231
+ table.record td.value input[type=checkbox]
232
+ {
233
+ margin:7px;
234
+ padding:5px;
235
+ font-size:14px;
236
+ }
237
+
238
+ table.record td.value input[type=text]
239
+ {
240
+ border:1px solid #ccc;
241
+ border-left:1px solid #aaa;
242
+ border-top:1px solid #aaa;
243
+ width:400px;
244
+ margin:4px;
245
+ padding:5px;
246
+ font-size:14px;
247
+ }
248
+
249
+ table.record td.value input[type=text]:focus
250
+ {
251
+ background-color: #ffffcc;
252
+ }
253
+
254
+ #save_button
255
+ {
256
+ margin-top:10px;
257
+ }
258
+
259
+ .editSuccess
260
+ {
261
+ width:300px;
262
+ padding: 5px;
263
+ border-style: solid;
264
+ border-width: 1px;
265
+ border-color: #F0C000;
266
+ background-color: #FFFFCE;
267
+ margin-bottom:30px;
268
+ float:right;
269
+ }
270
+
271
+ .editFailure
272
+ {
273
+ width:400px;
274
+ padding: 5px;
275
+ border-style: solid;
276
+ border-width: 1px;
277
+ border-color: #c00;
278
+ background-color: #fcc;
279
+ margin-bottom:30px;
280
+ float:right;
281
+ }
@@ -0,0 +1,632 @@
1
+ /**
2
+ * Seam(less) Web Application Framework
3
+ *
4
+ * Copyright (c) 2006 Hakano, Inc. All Rights Reserved.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ *
9
+ * You may obtain a copy of the License at
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing,
13
+ * software distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ *
18
+ */
19
+
20
+ /**
21
+ * Seamless table widget built-in styles
22
+ */
23
+
24
+ .seamless_table_cell {
25
+ border-bottom: 1px dotted #ccc;
26
+ border-right: 1px dotted #ccc;
27
+ padding: 1px;
28
+ font-weight: normal;
29
+ cursor:pointer;
30
+ }
31
+
32
+ .seamless_table_row_even {
33
+ background-color: #fff;
34
+ }
35
+
36
+ .seamless_table_row_odd {
37
+ background-color: #EEEEFF;
38
+ }
39
+
40
+ .seamless_table_cell_selected {
41
+ background-color: #ffffcc;
42
+ color: #000;
43
+ }
44
+
45
+ .seamless_table_status {
46
+ cursor: wait;
47
+ filter: alpha( opacity = 70 );
48
+ -moz-opacity: 0.7;
49
+ opacity: 0.7;
50
+ padding:10px;
51
+ border:2px solid #888;
52
+ background-color:#eee;
53
+ z-index:999;
54
+ position:absolute;
55
+ width:130px;
56
+ height:20px;
57
+ }
58
+
59
+ .seamless_table_row_disabled {
60
+ cursor: wait;
61
+ filter: alpha( opacity = 60 );
62
+ -moz-opacity: 0.6;
63
+ opacity: 0.6;
64
+ }
65
+
66
+ .seamless_table_header_row {
67
+ border: 1px solid #ccc;
68
+ border-bottom: none;
69
+ }
70
+
71
+ .seamless_table_header {
72
+ background-color: #eee;
73
+ }
74
+
75
+ .seamless_table_header th {
76
+ padding: 1px;
77
+ border-right: 1px dotted #ccc;
78
+ }
79
+
80
+
81
+ /**
82
+ * autocomplete widget styles
83
+ */
84
+
85
+ div.autocomplete
86
+ {
87
+ width: 100px;
88
+ background: #fff;
89
+ display: inline;
90
+ z-index:5000;
91
+ }
92
+
93
+ div.autocomplete ul
94
+ {
95
+ border: 1px solid #888;
96
+ margin: 0;
97
+ padding: 0;
98
+ width: 100%;
99
+ list-style-type: none;
100
+ }
101
+
102
+ div.autocomplete ul li
103
+ {
104
+ margin: 0;
105
+ padding: 3px;
106
+ position: relative;
107
+ }
108
+
109
+ div.autocomplete ul li.selected
110
+ {
111
+ background-color: #ffc;
112
+ }
113
+
114
+ div.autocomplete ul li>span
115
+ {
116
+ position: absolute;
117
+ right: 5px;
118
+ top:4px;
119
+ font-size: x-small;
120
+ color: #555;
121
+ text-align: left;
122
+ }
123
+
124
+ div.autocomplete ul strong.highlight
125
+ {
126
+ color: #800;
127
+ margin: 0;
128
+ padding: 0;
129
+ }
130
+
131
+ /**
132
+ * modal dialog
133
+ */
134
+
135
+ #overlay {
136
+ position: absolute;
137
+ top: 0;
138
+ left: 0;
139
+ z-index: 90;
140
+ width: 100%;
141
+ height: 500px;
142
+ background-color: #222;
143
+ filter: alpha( opacity = 60 );
144
+ -moz-opacity: 0.6;
145
+ opacity: 0.6;
146
+ }
147
+
148
+ #modaldialog_shadow {
149
+ background: url( ../images/shadowAlpha.png ) no-repeat bottom right !important;
150
+ background: url( ../images/shadow.gif ) no-repeat bottom right;
151
+ position: absolute;
152
+ margin: 0;
153
+ padding: 0;
154
+ }
155
+
156
+ #modaldialog {
157
+ background-color: #fff;
158
+ z-index: 100;
159
+ position: absolute;
160
+ width: 450px;
161
+ height: 300px;
162
+ padding: 4px;
163
+ border: 2px solid #999;
164
+ }
165
+
166
+ #modaldialog_container {
167
+ position: relative;
168
+ }
169
+
170
+ #modaldialog_imagebar {
171
+ position: absolute;
172
+ top: 0px;
173
+ right: 0px;
174
+ cursor: pointer;
175
+ }
176
+
177
+ #modaldialog_content {
178
+ position: absolute;
179
+ top: 18px;
180
+ left: 0px;
181
+ right: 0px;
182
+ bottom: 0px;
183
+ font-family: Verdana, Tahoma, Arial, sans-serif;
184
+ font-size: 90%;
185
+ }
186
+
187
+ #modaldialog_buttonbar {
188
+ position: absolute;
189
+ left: 0px;
190
+ right: 0px;
191
+ width: 100%;
192
+ height: 20px;
193
+ margin-left: auto;
194
+ margin-right: auto;
195
+ }
196
+
197
+ .modaldialog_button {
198
+ border-right: 1px solid #999;
199
+ border-bottom: 1px solid #999;
200
+ border-top: 1px solid #ddd;
201
+ border-left: 1px solid #ddd;
202
+ background-color: #eee;
203
+ width: 80px;
204
+ height: 22px;
205
+ cursor: pointer;
206
+ font-family: Verdana, Tahoma, Arial, sans-serif;
207
+ font-size: 11px;
208
+ text-align: center;
209
+ }
210
+
211
+ /**
212
+ * main styles for syntax highlighter
213
+ */
214
+
215
+ .dp-highlighter {
216
+ font-family: "Courier New", Courier, mono;
217
+ font-size: 12px;
218
+ background-color:#000;
219
+ color:#99FF00;
220
+ width: 99%;
221
+ overflow: auto;
222
+ margin: 18px 0px 18px 0px;
223
+ padding-top:10px;
224
+ padding-bottom:10px;
225
+ }
226
+
227
+ .dp-highlighter .bar {
228
+ padding-left: 45px;
229
+ }
230
+
231
+ .dp-highlighter.collapsed .bar, .dp-highlighter.nogutter .bar {
232
+ padding-left: 0px;
233
+ }
234
+
235
+ .dp-highlighter ol {
236
+ margin: 0px 0px 1px 45px; /* 1px bottom margin seems to fix occasional Firefox scrolling */
237
+ padding: 0px;
238
+ color: #2B91AF;
239
+ list-style-image:none;
240
+ }
241
+
242
+ .dp-highlighter.nogutter ol {
243
+ list-style-type: none;
244
+ margin-left: 0px;
245
+ list-style-image:none;
246
+ }
247
+
248
+ .dp-highlighter ol li, .dp-highlighter .columns div {
249
+ padding-left: 10px;
250
+ line-height: 14px;
251
+ }
252
+
253
+ .dp-highlighter.nogutter ol li, .dp-highlighter.nogutter .columns div {
254
+ border: 0;
255
+ list-style-image:none;
256
+ }
257
+
258
+ .dp-highlighter .columns {
259
+ color: gray;
260
+ overflow: hidden;
261
+ width: 100%;
262
+ }
263
+
264
+ .dp-highlighter .columns div {
265
+ padding-bottom: 5px;
266
+ }
267
+
268
+ .dp-highlighter ol li.alt {
269
+ /* background-color: #f8f8f8;*/
270
+ }
271
+
272
+ .dp-highlighter ol li span {
273
+ color: #fff;
274
+ }
275
+
276
+ /* Adjust some properties when collapsed */
277
+
278
+ .dp-highlighter.collapsed ol {
279
+ margin: 0px;
280
+ }
281
+
282
+ .dp-highlighter.collapsed ol li {
283
+ display: none;
284
+ }
285
+
286
+ /* Additional modifications when in print-view */
287
+
288
+ .dp-highlighter.printing {
289
+ border: none;
290
+ }
291
+
292
+ .dp-highlighter.printing .tools {
293
+ display: none !important;
294
+ }
295
+
296
+ .dp-highlighter.printing li {
297
+ display: list-item !important;
298
+ }
299
+
300
+ /* Styles for the tools */
301
+
302
+ .dp-highlighter .tools {
303
+ padding: 3px 8px 3px 10px;
304
+ border-bottom: 1px solid #2B91AF;
305
+ font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif;
306
+ color: silver;
307
+ }
308
+
309
+ .dp-highlighter.collapsed .tools {
310
+ border-bottom: 0;
311
+ }
312
+
313
+ .dp-highlighter .tools a {
314
+ font-size: 9px;
315
+ color: gray;
316
+ text-decoration: none;
317
+ margin-right: 10px;
318
+ }
319
+
320
+ .dp-highlighter .tools a:hover {
321
+ color: red;
322
+ text-decoration: underline;
323
+ }
324
+
325
+ /* About dialog styles */
326
+
327
+ .dp-about {
328
+ background-color: #fff;
329
+ margin: 0px;
330
+ padding: 0px;
331
+ }
332
+
333
+ .dp-about table {
334
+ width: 100%;
335
+ height: 100%;
336
+ font-size: 11px;
337
+ font-family: Tahoma, Verdana, Arial, sans-serif !important;
338
+ }
339
+
340
+ .dp-about td {
341
+ padding: 10px;
342
+ vertical-align: top;
343
+ }
344
+
345
+ .dp-about .copy {
346
+ border-bottom: 1px solid #ACA899;
347
+ height: 95%;
348
+ }
349
+
350
+ .dp-about .title {
351
+ color: red;
352
+ font-weight: bold;
353
+ }
354
+
355
+ .dp-about .para {
356
+ margin: 0 0 4px 0;
357
+ }
358
+
359
+ .dp-about .footer {
360
+ background-color: #ECEADB;
361
+ border-top: 1px solid #fff;
362
+ text-align: right;
363
+ }
364
+
365
+ .dp-about .close {
366
+ font-size: 11px;
367
+ font-family: Tahoma, Verdana, Arial, sans-serif !important;
368
+ background-color: #ECEADB;
369
+ width: 60px;
370
+ height: 22px;
371
+ }
372
+
373
+ /* Language specific styles */
374
+
375
+ .dp-c {
376
+ }
377
+
378
+ .dp-c .comment {
379
+ color: #c00;
380
+ }
381
+
382
+ .dp-c .string {
383
+ color: #f0c;
384
+ }
385
+
386
+ .dp-c .preprocessor {
387
+ color: gray;
388
+ }
389
+
390
+ .dp-c .keyword {
391
+ color: #069;
392
+ }
393
+
394
+ .dp-c .vars {
395
+ color: #6cf;
396
+ }
397
+
398
+ .dp-vb {
399
+ }
400
+
401
+ .dp-vb .comment {
402
+ color: green;
403
+ }
404
+
405
+ .dp-vb .string {
406
+ color: blue;
407
+ }
408
+
409
+ .dp-vb .preprocessor {
410
+ color: gray;
411
+ }
412
+
413
+ .dp-vb .keyword {
414
+ color: blue;
415
+ }
416
+
417
+ .dp-sql {
418
+ }
419
+
420
+ .dp-sql .comment {
421
+ color: green;
422
+ }
423
+
424
+ .dp-sql .string {
425
+ color: red;
426
+ }
427
+
428
+ .dp-sql .keyword {
429
+ color: blue;
430
+ }
431
+
432
+ .dp-sql .func {
433
+ color: #ff1493;
434
+ }
435
+
436
+ .dp-sql .op {
437
+ color: #808080;
438
+ }
439
+
440
+ .dp-xml {
441
+ color:#808080;
442
+ }
443
+
444
+ .dp-xml .cdata {
445
+ color: #808080;
446
+ }
447
+
448
+ .dp-xml .comments {
449
+ color: #0f0;
450
+ }
451
+
452
+ .dp-xml .tag {
453
+ color: #999;
454
+ }
455
+
456
+ .dp-xml .tag-name {
457
+ color: #6BCFF7;
458
+ }
459
+
460
+ .dp-xml .attribute {
461
+ color: #FFD500;
462
+ }
463
+
464
+ .dp-xml .attribute-value {
465
+ color: #99FF00;
466
+ }
467
+
468
+ .dp-delphi {
469
+ }
470
+
471
+ .dp-delphi .comment {
472
+ color: #008200;
473
+ font-style: italic;
474
+ }
475
+
476
+ .dp-delphi .string {
477
+ color: blue;
478
+ }
479
+
480
+ .dp-delphi .number {
481
+ color: blue;
482
+ }
483
+
484
+ .dp-delphi .directive {
485
+ color: #008284;
486
+ }
487
+
488
+ .dp-delphi .keyword {
489
+ font-weight: bold;
490
+ color: navy;
491
+ }
492
+
493
+ .dp-delphi .vars {
494
+ color: #000;
495
+ }
496
+
497
+ .dp-py {
498
+ }
499
+
500
+ .dp-py .comment {
501
+ color: green;
502
+ }
503
+
504
+ .dp-py .string {
505
+ color: red;
506
+ }
507
+
508
+ .dp-py .docstring {
509
+ color: green;
510
+ }
511
+
512
+ .dp-py .keyword {
513
+ color: blue;
514
+ font-weight: bold;
515
+ }
516
+
517
+ .dp-py .builtins {
518
+ color: #ff1493;
519
+ }
520
+
521
+ .dp-py .magicmethods {
522
+ color: #808080;
523
+ }
524
+
525
+ .dp-py .exceptions {
526
+ color: brown;
527
+ }
528
+
529
+ .dp-py .types {
530
+ color: brown;
531
+ font-style: italic;
532
+ }
533
+
534
+ .dp-py .commonlibs {
535
+ color: #8A2BE2;
536
+ font-style: italic;
537
+ }
538
+
539
+ .dp-rb {
540
+ }
541
+
542
+ .dp-rb .comment {
543
+ color: #c00;
544
+ }
545
+
546
+ .dp-rb .string {
547
+ color: #f0c;
548
+ }
549
+
550
+ .dp-rb .symbol {
551
+ color: #02b902;
552
+ }
553
+
554
+ .dp-rb .keyword {
555
+ color: #069;
556
+ }
557
+
558
+ .dp-rb .variable {
559
+ color: #6cf;
560
+ }
561
+
562
+ .dp-css {
563
+ }
564
+
565
+ .dp-css .comment {
566
+ color: green;
567
+ }
568
+
569
+ .dp-css .string {
570
+ color: red;
571
+ }
572
+
573
+ .dp-css .keyword {
574
+ color: blue;
575
+ }
576
+
577
+ .dp-css .colors {
578
+ color: darkred;
579
+ }
580
+
581
+ .dp-css .vars {
582
+ color: #d00;
583
+ }
584
+
585
+ .dp-j {
586
+ }
587
+
588
+ .dp-j .comment {
589
+ color:#00ff00;
590
+ }
591
+
592
+ .dp-j .string {
593
+ color: rgb( 42, 0, 255 );
594
+ }
595
+
596
+ .dp-j .keyword {
597
+ color: rgb( 127, 0, 85 );
598
+ }
599
+
600
+ .dp-j .annotation {
601
+ color: #646464;
602
+ }
603
+
604
+ .dp-j .number {
605
+ color: #C00000;
606
+ }
607
+
608
+ .dp-cpp {
609
+ }
610
+
611
+ .dp-cpp .comment {
612
+ color: #e00;
613
+ }
614
+
615
+ .dp-cpp .string {
616
+ color: red;
617
+ }
618
+
619
+ .dp-cpp .preprocessor {
620
+ color: #CD00CD;
621
+ font-weight: bold;
622
+ }
623
+
624
+ .dp-cpp .keyword {
625
+ color: #5697D9;
626
+ font-weight: bold;
627
+ }
628
+
629
+ .dp-cpp .datatypes {
630
+ color: #2E8B57;
631
+ font-weight: bold;
632
+ }