resque_ui 3.2.3 → 3.2.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+ var search_data = {"index":{"searchIndex":["object","resque","chainedjobwithstatus","failure","redis","job","jobwithstatus","status","worker","resquescheduler","resqueui","cap","engine","all_workers_in_pid_working()","clear()","completed()","continue()","counter()","counter()","counter_key()","enqueue()","enqueue()","farm_status()","filter_backtrace()","get_rake()","id()","incr_counter()","incr_counter()","ip()","local_ip()","name()","name()","new()","pause()","pause!()","pause_key()","pause_processing()","paused()","paused?()","paused?()","perform()","perform()","pids()","prune_dead_workers()","queue()","queues()","queues_in_pid()","quit()","quit()","restart()","restart()","safe_perform!()","schedule()","schedule=()","shutdown()","start()","start()","startup()","status()","status=()","status_ids()","thread()","throttle()","tick()","to_s()","unpause_processing()","unregister_worker()","work()","workers_in_pid()","working()"],"longSearchIndex":["object","resque","resque::chainedjobwithstatus","resque::failure","resque::failure::redis","resque::job","resque::jobwithstatus","resque::status","resque::worker","resquescheduler","resqueui","resqueui::cap","resqueui::engine","resque::worker#all_workers_in_pid_working()","resque::status::clear()","resque::chainedjobwithstatus#completed()","resque::worker#continue()","resque::jobwithstatus#counter()","resque::status::counter()","resque::status::counter_key()","resque::chainedjobwithstatus::enqueue()","resque::jobwithstatus::enqueue()","resquescheduler::farm_status()","resque::failure::redis#filter_backtrace()","object#get_rake()","resque::worker#id()","resque::jobwithstatus#incr_counter()","resque::status::incr_counter()","resque::worker#ip()","resque::worker#local_ip()","resque::chainedjobwithstatus#name()","resque::jobwithstatus#name()","resque::jobwithstatus::new()","resque::worker#pause()","resque::jobwithstatus#pause!()","resque::worker#pause_key()","resque::worker#pause_processing()","resque::worker#paused()","resque::status#paused?()","resque::worker#paused?()","resque::job#perform()","resque::jobwithstatus::perform()","resquescheduler::pids()","resque::worker#prune_dead_workers()","resque::worker#queue()","resque::worker#queues()","resque::worker#queues_in_pid()","resque::worker#quit()","resquescheduler::quit()","resque::worker#restart()","resquescheduler::restart()","resque::jobwithstatus#safe_perform!()","resquescheduler#schedule()","resquescheduler#schedule=()","resque::worker#shutdown()","resque::worker::start()","resquescheduler::start()","resque::worker#startup()","resque::worker#status()","resque::worker#status=()","resque::status::status_ids()","resque::worker#thread()","resque::throttle()","resque::jobwithstatus#tick()","resque::worker#to_s()","resque::worker#unpause_processing()","resque::worker#unregister_worker()","resque::worker#work()","resque::worker#workers_in_pid()","resque::worker::working()"],"info":[["Object","","Object.html","",""],["Resque","","Resque.html","",""],["Resque::ChainedJobWithStatus","","Resque/ChainedJobWithStatus.html","",""],["Resque::Failure","","Resque/Failure.html","",""],["Resque::Failure::Redis","","Resque/Failure/Redis.html","",""],["Resque::Job","","Resque/Job.html","",""],["Resque::JobWithStatus","","Resque/JobWithStatus.html","",""],["Resque::Status","","Resque/Status.html","",""],["Resque::Worker","","Resque/Worker.html","",""],["ResqueScheduler","","ResqueScheduler.html","",""],["ResqueUi","","ResqueUi.html","",""],["ResqueUi::Cap","","ResqueUi/Cap.html","",""],["ResqueUi::Engine","","ResqueUi/Engine.html","",""],["all_workers_in_pid_working","Resque::Worker","Resque/Worker.html#method-i-all_workers_in_pid_working","()",""],["clear","Resque::Status","Resque/Status.html#method-c-clear","(range_start = nil, range_end = nil)","<p>clear statuses from redis passing an optional range. See `statuses` for\ninfo about ranges\n"],["completed","Resque::ChainedJobWithStatus","Resque/ChainedJobWithStatus.html#method-i-completed","(*messages)",""],["continue","Resque::Worker","Resque/Worker.html#method-i-continue","()",""],["counter","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-counter","(counter)",""],["counter","Resque::Status","Resque/Status.html#method-c-counter","(counter, uuid)",""],["counter_key","Resque::Status","Resque/Status.html#method-c-counter_key","(counter, uuid)","<p>If multiple workers are running at once and you need an incrementer, you\ncan’t use the status’ num attribute …\n"],["enqueue","Resque::ChainedJobWithStatus","Resque/ChainedJobWithStatus.html#method-c-enqueue","(klass, options = {})",""],["enqueue","Resque::JobWithStatus","Resque/JobWithStatus.html#method-c-enqueue","(klass, options = {})","<p>Adds a job of type &lt;tt&gt;klass&lt;tt&gt; to the queue with\n&lt;tt&gt;options&lt;tt&gt;. Returns the …\n"],["farm_status","ResqueScheduler","ResqueScheduler.html#method-c-farm_status","()",""],["filter_backtrace","Resque::Failure::Redis","Resque/Failure/Redis.html#method-i-filter_backtrace","(backtrace)",""],["get_rake","Object","Object.html#method-i-get_rake","()",""],["id","Resque::Worker","Resque/Worker.html#method-i-id","()",""],["incr_counter","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-incr_counter","(counter)",""],["incr_counter","Resque::Status","Resque/Status.html#method-c-incr_counter","(counter, uuid)",""],["ip","Resque::Worker","Resque/Worker.html#method-i-ip","()",""],["local_ip","Resque::Worker","Resque/Worker.html#method-i-local_ip","()",""],["name","Resque::ChainedJobWithStatus","Resque/ChainedJobWithStatus.html#method-i-name","()",""],["name","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-name","()",""],["new","Resque::JobWithStatus","Resque/JobWithStatus.html#method-c-new","(uuid, worker = nil, options = {})","<p>Create a new instance with <code>uuid</code> and <code>options</code>\nOVERRIDE to add the worker attr\n"],["pause","Resque::Worker","Resque/Worker.html#method-i-pause","()",""],["pause!","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-pause-21","()","<p>Pause the current job, setting the status to ‘paused’\n"],["pause_key","Resque::Worker","Resque/Worker.html#method-i-pause_key","()","<p>When the worker gets the -USR2 signal, to_s may give a different value for\nthe thread and queue portion …\n"],["pause_processing","Resque::Worker","Resque/Worker.html#method-i-pause_processing","()","\n<pre>Stop processing jobs after the current one has completed (if we're\ncurrently running one).</pre>\n<p>OVERRIDE to …\n"],["paused","Resque::Worker","Resque/Worker.html#method-i-paused","()",""],["paused?","Resque::Status","Resque/Status.html#method-i-paused-3F","()","<p>The STATUSES constant is frozen, so we’ll just manually add the paused?\nmethod here\n"],["paused?","Resque::Worker","Resque/Worker.html#method-i-paused-3F","()","<p>are we paused? OVERRIDE so UI can tell if we’re paused\n"],["perform","Resque::Job","Resque/Job.html#method-i-perform","()","<p>Attempts to perform the work represented by this job instance. Calls\n#perform on the class given in the …\n"],["perform","Resque::JobWithStatus","Resque/JobWithStatus.html#method-c-perform","(uuid=nil, options = {})","<p>This is the method called by Resque::Worker when processing jobs. It\ncreates a new instance of the job …\n"],["pids","ResqueScheduler","ResqueScheduler.html#method-c-pids","()","<p>Returns an array of string pids of all the other workers on this machine.\nUseful when pruning dead workers …\n"],["prune_dead_workers","Resque::Worker","Resque/Worker.html#method-i-prune_dead_workers","()","<p>Looks for any workers which should be running on this server and, if\nthey’re not, removes them from …\n"],["queue","Resque::Worker","Resque/Worker.html#method-i-queue","()",""],["queues","Resque::Worker","Resque/Worker.html#method-i-queues","()","<p>OVERRIDE for multithreaded workers\n"],["queues_in_pid","Resque::Worker","Resque/Worker.html#method-i-queues_in_pid","()",""],["quit","Resque::Worker","Resque/Worker.html#method-i-quit","()",""],["quit","ResqueScheduler","ResqueScheduler.html#method-c-quit","(ips)",""],["restart","Resque::Worker","Resque/Worker.html#method-i-restart","()",""],["restart","ResqueScheduler","ResqueScheduler.html#method-c-restart","(ips)",""],["safe_perform!","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-safe_perform-21","()","<p>Run by the Resque::Worker when processing this job. It wraps the\n<code>perform</code> method ensuring that the final …\n"],["schedule","ResqueScheduler","ResqueScheduler.html#method-i-schedule","()","<p>Returns the schedule hash\n"],["schedule=","ResqueScheduler","ResqueScheduler.html#method-i-schedule-3D","(schedule_hash)",""],["shutdown","Resque::Worker","Resque/Worker.html#method-i-shutdown","()","\n<pre>Schedule this worker for shutdown. Will finish processing the\ncurrent job.</pre>\n<p>OVERRIDE for multithreaded …\n"],["start","Resque::Worker","Resque/Worker.html#method-c-start","(ips, queues)",""],["start","ResqueScheduler","ResqueScheduler.html#method-c-start","(ips)",""],["startup","Resque::Worker","Resque/Worker.html#method-i-startup","()","\n<pre>Runs all the methods needed when a worker begins its lifecycle.</pre>\n<p>OVERRIDE for multithreaded workers\n"],["status","Resque::Worker","Resque/Worker.html#method-i-status","()",""],["status=","Resque::Worker","Resque/Worker.html#method-i-status-3D","(status)",""],["status_ids","Resque::Status","Resque/Status.html#method-c-status_ids","(range_start = nil, range_end = nil)","\n<pre>Return the &lt;tt&gt;num&lt;/tt&gt; most recent status/job UUIDs in reverse chronological order.</pre>\n<p>override the gem …\n"],["thread","Resque::Worker","Resque/Worker.html#method-i-thread","()",""],["throttle","Resque","Resque.html#method-c-throttle","(queue, limit = 10000, sleep_for = 60)",""],["tick","Resque::JobWithStatus","Resque/JobWithStatus.html#method-i-tick","(*messages)","<p>sets the status of the job for the current iteration. You should use the\n<code>at</code> method if you have actual …\n"],["to_s","Resque::Worker","Resque/Worker.html#method-i-to_s","()","<p>The string representation is the same as the id for this worker instance.\nCan be used with `Worker.find …\n"],["unpause_processing","Resque::Worker","Resque/Worker.html#method-i-unpause_processing","()","\n<pre>Start processing jobs again after a pause</pre>\n<p>OVERRIDE to set remove redis key so UI knows it’s unpaused too …\n"],["unregister_worker","Resque::Worker","Resque/Worker.html#method-i-unregister_worker","()","<p>Unregisters ourself as a worker. Useful when shutting down. OVERRIDE to\nalso remove the pause key Would …\n"],["work","Resque::Worker","Resque/Worker.html#method-i-work","(interval = 5, &block)","\n<pre>This is the main workhorse method. Called on a Worker instance,\nit begins the worker life cycle.\n\nThe ...</pre>\n"],["workers_in_pid","Resque::Worker","Resque/Worker.html#method-i-workers_in_pid","()",""],["working","Resque::Worker","Resque/Worker.html#method-c-working","()","<p>logic for mappged_mget changed where it returns keys with nil values in\nlatest redis gem.\n"]]}}
@@ -0,0 +1,228 @@
1
+ Searcher = function(data) {
2
+ this.data = data;
3
+ this.handlers = [];
4
+ }
5
+
6
+ Searcher.prototype = new function() {
7
+ // search is performed in chunks of 1000 for non-blocking user input
8
+ var CHUNK_SIZE = 1000;
9
+ // do not try to find more than 100 results
10
+ var MAX_RESULTS = 100;
11
+ var huid = 1;
12
+ var suid = 1;
13
+ var runs = 0;
14
+
15
+ this.find = function(query) {
16
+ var queries = splitQuery(query);
17
+ var regexps = buildRegexps(queries);
18
+ var highlighters = buildHilighters(queries);
19
+ var state = { from: 0, pass: 0, limit: MAX_RESULTS, n: suid++};
20
+ var _this = this;
21
+
22
+ this.currentSuid = state.n;
23
+
24
+ if (!query) return;
25
+
26
+ var run = function() {
27
+ // stop current search thread if new search started
28
+ if (state.n != _this.currentSuid) return;
29
+
30
+ var results =
31
+ performSearch(_this.data, regexps, queries, highlighters, state);
32
+ var hasMore = (state.limit > 0 && state.pass < 4);
33
+
34
+ triggerResults.call(_this, results, !hasMore);
35
+ if (hasMore) {
36
+ setTimeout(run, 2);
37
+ }
38
+ runs++;
39
+ };
40
+ runs = 0;
41
+
42
+ // start search thread
43
+ run();
44
+ }
45
+
46
+ /* ----- Events ------ */
47
+ this.ready = function(fn) {
48
+ fn.huid = huid;
49
+ this.handlers.push(fn);
50
+ }
51
+
52
+ /* ----- Utilities ------ */
53
+ function splitQuery(query) {
54
+ return jQuery.grep(query.split(/(\s+|::?|\(\)?)/), function(string) {
55
+ return string.match(/\S/)
56
+ });
57
+ }
58
+
59
+ function buildRegexps(queries) {
60
+ return jQuery.map(queries, function(query) {
61
+ return new RegExp(query.replace(/(.)/g, '([$1])([^$1]*?)'), 'i')
62
+ });
63
+ }
64
+
65
+ function buildHilighters(queries) {
66
+ return jQuery.map(queries, function(query) {
67
+ return jQuery.map(query.split(''), function(l, i) {
68
+ return '\u0001$' + (i*2+1) + '\u0002$' + (i*2+2);
69
+ }).join('');
70
+ });
71
+ }
72
+
73
+ // function longMatchRegexp(index, longIndex, regexps) {
74
+ // for (var i = regexps.length - 1; i >= 0; i--){
75
+ // if (!index.match(regexps[i]) && !longIndex.match(regexps[i])) return false;
76
+ // };
77
+ // return true;
78
+ // }
79
+
80
+
81
+ /* ----- Mathchers ------ */
82
+
83
+ /*
84
+ * This record matches if the index starts with queries[0] and the record
85
+ * matches all of the regexps
86
+ */
87
+ function matchPassBeginning(index, longIndex, queries, regexps) {
88
+ if (index.indexOf(queries[0]) != 0) return false;
89
+ for (var i=1, l = regexps.length; i < l; i++) {
90
+ if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
91
+ return false;
92
+ };
93
+ return true;
94
+ }
95
+
96
+ /*
97
+ * This record matches if the longIndex starts with queries[0] and the
98
+ * longIndex matches all of the regexps
99
+ */
100
+ function matchPassLongIndex(index, longIndex, queries, regexps) {
101
+ if (longIndex.indexOf(queries[0]) != 0) return false;
102
+ for (var i=1, l = regexps.length; i < l; i++) {
103
+ if (!longIndex.match(regexps[i]))
104
+ return false;
105
+ };
106
+ return true;
107
+ }
108
+
109
+ /*
110
+ * This record matches if the index contains queries[0] and the record
111
+ * matches all of the regexps
112
+ */
113
+ function matchPassContains(index, longIndex, queries, regexps) {
114
+ if (index.indexOf(queries[0]) == -1) return false;
115
+ for (var i=1, l = regexps.length; i < l; i++) {
116
+ if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
117
+ return false;
118
+ };
119
+ return true;
120
+ }
121
+
122
+ /*
123
+ * This record matches if regexps[0] matches the index and the record
124
+ * matches all of the regexps
125
+ */
126
+ function matchPassRegexp(index, longIndex, queries, regexps) {
127
+ if (!index.match(regexps[0])) return false;
128
+ for (var i=1, l = regexps.length; i < l; i++) {
129
+ if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
130
+ return false;
131
+ };
132
+ return true;
133
+ }
134
+
135
+
136
+ /* ----- Highlighters ------ */
137
+ function highlightRegexp(info, queries, regexps, highlighters) {
138
+ var result = createResult(info);
139
+ for (var i=0, l = regexps.length; i < l; i++) {
140
+ result.title = result.title.replace(regexps[i], highlighters[i]);
141
+ result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
142
+ };
143
+ return result;
144
+ }
145
+
146
+ function hltSubstring(string, pos, length) {
147
+ return string.substring(0, pos) + '\u0001' + string.substring(pos, pos + length) + '\u0002' + string.substring(pos + length);
148
+ }
149
+
150
+ function highlightQuery(info, queries, regexps, highlighters) {
151
+ var result = createResult(info);
152
+ var pos = 0;
153
+ var lcTitle = result.title.toLowerCase();
154
+
155
+ pos = lcTitle.indexOf(queries[0]);
156
+ if (pos != -1) {
157
+ result.title = hltSubstring(result.title, pos, queries[0].length);
158
+ }
159
+
160
+ result.namespace = result.namespace.replace(regexps[0], highlighters[0]);
161
+ for (var i=1, l = regexps.length; i < l; i++) {
162
+ result.title = result.title.replace(regexps[i], highlighters[i]);
163
+ result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
164
+ };
165
+ return result;
166
+ }
167
+
168
+ function createResult(info) {
169
+ var result = {};
170
+ result.title = info[0];
171
+ result.namespace = info[1];
172
+ result.path = info[2];
173
+ result.params = info[3];
174
+ result.snippet = info[4];
175
+ return result;
176
+ }
177
+
178
+ /* ----- Searching ------ */
179
+ function performSearch(data, regexps, queries, highlighters, state) {
180
+ var searchIndex = data.searchIndex;
181
+ var longSearchIndex = data.longSearchIndex;
182
+ var info = data.info;
183
+ var result = [];
184
+ var i = state.from;
185
+ var l = searchIndex.length;
186
+ var togo = CHUNK_SIZE;
187
+ var matchFunc, hltFunc;
188
+
189
+ while (state.pass < 4 && state.limit > 0 && togo > 0) {
190
+ if (state.pass == 0) {
191
+ matchFunc = matchPassBeginning;
192
+ hltFunc = highlightQuery;
193
+ } else if (state.pass == 1) {
194
+ matchFunc = matchPassLongIndex;
195
+ hltFunc = highlightQuery;
196
+ } else if (state.pass == 2) {
197
+ matchFunc = matchPassContains;
198
+ hltFunc = highlightQuery;
199
+ } else if (state.pass == 3) {
200
+ matchFunc = matchPassRegexp;
201
+ hltFunc = highlightRegexp;
202
+ }
203
+
204
+ for (; togo > 0 && i < l && state.limit > 0; i++, togo--) {
205
+ if (info[i].n == state.n) continue;
206
+ if (matchFunc(searchIndex[i], longSearchIndex[i], queries, regexps)) {
207
+ info[i].n = state.n;
208
+ result.push(hltFunc(info[i], queries, regexps, highlighters));
209
+ state.limit--;
210
+ }
211
+ };
212
+ if (searchIndex.length <= i) {
213
+ state.pass++;
214
+ i = state.from = 0;
215
+ } else {
216
+ state.from = i;
217
+ }
218
+ }
219
+ return result;
220
+ }
221
+
222
+ function triggerResults(results, isLast) {
223
+ jQuery.each(this.handlers, function(i, fn) {
224
+ fn.call(this, results, isLast)
225
+ })
226
+ }
227
+ }
228
+
@@ -8,13 +8,11 @@
8
8
 
9
9
  /* Base Green is: #6C8C22 */
10
10
 
11
- *{ padding: 0; margin: 0; }
11
+ * { padding: 0; margin: 0; }
12
12
 
13
13
  body {
14
14
  background: #efefef;
15
15
  font: 14px "Helvetica Neue", Helvetica, Tahoma, sans-serif;
16
- }
17
- body.class, body.module, body.file {
18
16
  margin-left: 40px;
19
17
  }
20
18
  body.file-popup {
@@ -44,23 +42,27 @@ pre {
44
42
  padding: 0.5em 0;
45
43
  }
46
44
 
47
-
48
45
  /* @group Generic Classes */
49
46
 
50
47
  .initially-hidden {
51
48
  display: none;
52
49
  }
53
50
 
54
- .quicksearch-field {
51
+ #search-field {
55
52
  width: 98%;
56
- background: #ddd;
57
- border: 1px solid #aaa;
53
+ background: #eee;
54
+ border: none;
58
55
  height: 1.5em;
59
56
  -webkit-border-radius: 4px;
60
57
  }
61
- .quicksearch-field:focus {
58
+ #search-field:focus {
62
59
  background: #f1edba;
63
60
  }
61
+ #search-field:-moz-placeholder,
62
+ #search-field::-webkit-input-placeholder {
63
+ font-weight: bold;
64
+ color: #666;
65
+ }
64
66
 
65
67
  .missing-docs {
66
68
  font-size: 120%;
@@ -86,28 +88,8 @@ pre {
86
88
 
87
89
  /* @end */
88
90
 
89
-
90
91
  /* @group Index Page, Standalone file pages */
91
- body.indexpage {
92
- margin: 1em 3em;
93
- }
94
- body.indexpage p,
95
- body.indexpage div,
96
- body.file p {
97
- margin: 1em 0;
98
- }
99
-
100
- .indexpage .rdoc-list p, .file .rdoc-list p {
101
- margin: 0em 0;
102
- }
103
-
104
- .indexpage ol,
105
- .file #documentation ol {
106
- line-height: 160%;
107
- }
108
-
109
- .indexpage ul,
110
- .file #documentation ul {
92
+ .indexpage ul {
111
93
  line-height: 160%;
112
94
  list-style: none;
113
95
  }
@@ -116,25 +98,16 @@ body.file p {
116
98
  font-size: 16px;
117
99
  }
118
100
 
119
- .indexpage li,
120
- .file #documentation li {
101
+ .indexpage li {
121
102
  padding-left: 20px;
122
103
  }
123
104
 
124
- .indexpage ol,
125
- .file #documentation ol {
126
- margin-left: 20px;
127
- }
128
-
129
- .indexpage ol > li,
130
- .file #documentation ol > li {
131
- padding-left: 0;
132
- }
133
-
134
- .indexpage ul > li,
135
- .file #documentation ul > li {
105
+ .indexpage ul > li {
136
106
  background: url(images/bullet_black.png) no-repeat left 4px;
137
107
  }
108
+ .indexpage li.method {
109
+ background: url(images/plugin.png) no-repeat left 4px;
110
+ }
138
111
  .indexpage li.module {
139
112
  background: url(images/package.png) no-repeat left 4px;
140
113
  }
@@ -144,36 +117,37 @@ body.file p {
144
117
  .indexpage li.file {
145
118
  background: url(images/page_white_text.png) no-repeat left 4px;
146
119
  }
147
- .file li p,
148
- .indexpage li p {
149
- margin: 0 0;
120
+ .indexpage li li {
121
+ background: url(images/tag_blue.png) no-repeat left 4px;
122
+ }
123
+ .indexpage li .toc-toggle {
124
+ width: 16px;
125
+ height: 16px;
126
+ background: url(images/add.png) no-repeat;
127
+ }
128
+
129
+ .indexpage li .toc-toggle.open {
130
+ background: url(images/delete.png) no-repeat;
150
131
  }
151
132
 
152
133
  /* @end */
153
134
 
154
135
  /* @group Top-Level Structure */
155
136
 
156
- .class #metadata,
157
- .file #metadata,
158
- .module #metadata {
137
+ #metadata {
159
138
  float: left;
160
139
  width: 260px;
161
140
  }
162
141
 
163
- .class #documentation,
164
- .file #documentation,
165
- .module #documentation {
142
+ #documentation {
166
143
  margin: 2em 1em 5em 300px;
167
144
  min-width: 340px;
168
145
  }
169
146
 
170
- .file #metadata {
171
- margin: 0.8em;
172
- }
173
-
174
147
  #validator-badges {
175
148
  clear: both;
176
149
  margin: 1em 1em 2em;
150
+ font-size: smaller;
177
151
  }
178
152
 
179
153
  /* @end */
@@ -184,7 +158,7 @@ body.file p {
184
158
  -moz-border-radius: 5px;
185
159
  -webkit-border-radius: 5px;
186
160
  border: 1px solid #aaa;
187
- margin: 0 8px 16px;
161
+ margin: 0 8px 8px;
188
162
  font-size: 90%;
189
163
  overflow: hidden;
190
164
  }
@@ -210,6 +184,10 @@ body.file p {
210
184
  list-style: none;
211
185
  }
212
186
 
187
+ #file-metadata {
188
+ margin-top: 2em;
189
+ }
190
+
213
191
  #file-metadata ul {
214
192
  padding-left: 28px;
215
193
  list-style-image: url(images/page_green.png);
@@ -237,14 +215,15 @@ ul.link-list .type {
237
215
 
238
216
  /* @end */
239
217
 
218
+ /* @group Class Metadata Section */
219
+ #class-metadata {
220
+ margin-top: 2em;
221
+ }
222
+ /* @end */
240
223
 
241
224
  /* @group Project Metadata Section */
242
225
  #project-metadata {
243
- margin-top: 3em;
244
- }
245
-
246
- .file #project-metadata {
247
- margin-top: 0em;
226
+ margin-top: 2em;
248
227
  }
249
228
 
250
229
  #project-metadata .section {
@@ -254,33 +233,14 @@ ul.link-list .type {
254
233
  border-bottom: 1px solid #aaa;
255
234
  position: relative;
256
235
  }
257
- #project-metadata h3.section-header .search-toggle {
258
- position: absolute;
259
- right: 5px;
260
- }
261
-
262
236
 
263
237
  #project-metadata form {
264
238
  color: #777;
265
239
  background: #ccc;
266
- padding: 8px 8px 16px;
267
- border-bottom: 1px solid #bbb;
268
- }
269
- #project-metadata fieldset {
270
- border: 0;
271
- }
272
-
273
- #no-class-search-results {
274
- margin: 0 auto 1em;
275
- text-align: center;
276
- font-size: 14px;
277
- font-weight: bold;
278
- color: #aaa;
279
240
  }
280
241
 
281
242
  /* @end */
282
243
 
283
-
284
244
  /* @group Documentation Section */
285
245
  .description {
286
246
  font-size: 100%;
@@ -295,34 +255,44 @@ ul.link-list .type {
295
255
  margin: 0;
296
256
  }
297
257
 
258
+ .description ol,
298
259
  .description ul {
299
260
  margin-left: 1.5em;
300
261
  }
262
+ .description ol li,
301
263
  .description ul li {
302
264
  line-height: 1.4em;
303
265
  }
304
266
 
305
- .description dl,
306
- #documentation dl {
267
+ .note-list {
268
+ margin: 8px 0;
269
+ }
270
+
271
+ .label-list {
307
272
  margin: 8px 1.5em;
308
273
  border: 1px solid #ccc;
309
274
  }
310
- .description dl {
275
+ .description .label-list {
311
276
  font-size: 14px;
312
277
  }
313
278
 
314
- .description dt,
315
- #documentation dt {
279
+ .note-list dt {
280
+ font-weight: bold;
281
+ }
282
+ .note-list dd {
283
+ padding: 0 12px;
284
+ }
285
+
286
+ .label-list dt {
316
287
  padding: 2px 4px;
317
288
  font-weight: bold;
318
289
  background: #ddd;
319
290
  }
320
- .description dd,
321
- #documentation dd {
291
+ .label-list dd {
322
292
  padding: 2px 12px;
323
293
  }
324
- .description dd + dt,
325
- #documentation dd + dt {
294
+ .label-list dd + dt,
295
+ .note-list dd + dt {
326
296
  margin-top: 0.7em;
327
297
  }
328
298
 
@@ -331,8 +301,8 @@ ul.link-list .type {
331
301
  }
332
302
 
333
303
  #documentation h2.section-header {
334
- margin-top: 2em;
335
- padding: 0.75em 0.5em;
304
+ margin-top: 1em;
305
+ padding: 0.25em 0.5em;
336
306
  background: #ccc;
337
307
  color: #333;
338
308
  font-size: 175%;
@@ -341,8 +311,25 @@ ul.link-list .type {
341
311
  -webkit-border-radius: 3px;
342
312
  }
343
313
 
314
+ .documentation-section-title {
315
+ position: relative;
316
+ }
317
+ .documentation-section-title .section-click-top {
318
+ position: absolute;
319
+ top: 6px;
320
+ right: 12px;
321
+ font-size: 10px;
322
+ color: #9b9877;
323
+ visibility: hidden;
324
+ padding-right: 0.5px;
325
+ }
326
+
327
+ .documentation-section-title:hover .section-click-top {
328
+ visibility: visible;
329
+ }
330
+
344
331
  #documentation h3.section-header {
345
- margin-top: 2em;
332
+ margin-top: 1em;
346
333
  padding: 0.25em 0.5em;
347
334
  background-color: #dedede;
348
335
  color: #333;
@@ -429,7 +416,7 @@ ul.link-list .type {
429
416
  line-height: 20px;
430
417
  background: url(images/zoom.png) no-repeat right top;
431
418
  }
432
- #documentation .method-detail:hover .method-click-advice {
419
+ #documentation .method-heading:hover .method-click-advice {
433
420
  visibility: visible;
434
421
  }
435
422
 
@@ -455,14 +442,14 @@ ul.link-list .type {
455
442
  cursor: default;
456
443
  }
457
444
  #documentation .method-description p {
458
- padding: 0;
459
- }
460
- #documentation .method-description p + p {
461
445
  margin-bottom: 0.5em;
462
446
  }
463
447
  #documentation .method-description ul {
464
448
  margin-left: 1.5em;
465
449
  }
450
+ pre {
451
+ margin: 0.5em 0;
452
+ }
466
453
 
467
454
  #documentation .attribute-method-heading {
468
455
  background: url(images/tag_green.png) no-repeat left bottom;
@@ -481,283 +468,76 @@ ul.link-list .type {
481
468
 
482
469
  /* @end */
483
470
 
484
-
485
-
486
471
  /* @group Source Code */
487
472
 
488
- div.method-source-code {
473
+ pre {
474
+ overflow: auto;
489
475
  background: #262626;
490
- color: #efefef;
491
- margin: 1em;
492
- padding: 0.5em;
476
+ color: white;
493
477
  border: 1px dashed #999;
494
- overflow: hidden;
478
+ padding: 0.5em;
495
479
  }
496
480
 
497
- div.method-source-code pre {
498
- background: inherit;
499
- padding: 0;
500
- color: white;
501
- overflow: auto;
481
+ .description pre {
482
+ margin: 0 0.4em;
502
483
  }
503
484
 
504
- /* @group Ruby keyword styles */
505
-
506
485
  .ruby-constant { color: #7fffd4; background: transparent; }
507
486
  .ruby-keyword { color: #00ffff; background: transparent; }
508
487
  .ruby-ivar { color: #eedd82; background: transparent; }
509
488
  .ruby-operator { color: #00ffee; background: transparent; }
510
489
  .ruby-identifier { color: #ffdead; background: transparent; }
511
490
  .ruby-node { color: #ffa07a; background: transparent; }
512
- .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
491
+ .ruby-comment { color: #dc0000; font-weight: bold; background: transparent; }
513
492
  .ruby-regexp { color: #ffa07a; background: transparent; }
514
493
  .ruby-value { color: #7fffd4; background: transparent; }
515
494
 
516
495
  /* @end */
517
- /* @end */
518
-
519
496
 
520
- /* @group File Popup Contents */
521
497
 
522
- .file #metadata,
523
- .file-popup #metadata {
498
+ /* @group search results */
499
+ #search-results h1 {
500
+ font-size: 1em;
501
+ font-weight: normal;
502
+ text-shadow: none;
524
503
  }
525
504
 
526
- .file-popup dl {
527
- font-size: 80%;
528
- padding: 0.75em;
529
- background-color: #dedede;
530
- color: #333;
531
- border: 1px solid #bbb;
532
- -moz-border-radius: 3px;
533
- -webkit-border-radius: 3px;
534
- }
535
- .file dt {
536
- font-weight: bold;
537
- padding-left: 22px;
538
- line-height: 20px;
539
- background: url(images/page_white_width.png) no-repeat left top;
540
- }
541
- .file dt.modified-date {
542
- background: url(images/date.png) no-repeat left top;
543
- }
544
- .file dt.requires {
545
- background: url(images/plugin.png) no-repeat left top;
546
- }
547
- .file dt.scs-url {
548
- background: url(images/wrench.png) no-repeat left top;
549
- }
550
-
551
- .file dl dd {
552
- margin: 0 0 1em 0;
553
- }
554
- .file #metadata dl dd ul {
555
- list-style: circle;
556
- margin-left: 20px;
557
- padding-top: 0;
558
- }
559
- .file #metadata dl dd ul li {
560
- }
561
-
562
-
563
- .file h2 {
564
- margin-top: 2em;
565
- padding: 0.75em 0.5em;
566
- background-color: #dedede;
567
- color: #333;
568
- font-size: 120%;
569
- border: 1px solid #bbb;
570
- -moz-border-radius: 3px;
571
- -webkit-border-radius: 3px;
572
- }
573
-
574
- /* @end */
575
-
576
-
577
-
578
-
579
- /* @group ThickBox Styles */
580
- #TB_window {
581
- font: 12px Arial, Helvetica, sans-serif;
582
- color: #333333;
583
- }
584
-
585
- #TB_secondLine {
586
- font: 10px Arial, Helvetica, sans-serif;
587
- color:#666666;
588
- }
589
-
590
- #TB_window :link,
591
- #TB_window :visited { color: #666666; }
592
- #TB_window :link:hover,
593
- #TB_window :visited:hover { color: #000; }
594
- #TB_window :link:active,
595
- #TB_window :visited:active { color: #666666; }
596
- #TB_window :link:focus,
597
- #TB_window :visited:focus { color: #666666; }
598
-
599
- #TB_overlay {
600
- position: fixed;
601
- z-index:100;
602
- top: 0px;
603
- left: 0px;
604
- height:100%;
605
- width:100%;
606
- }
607
-
608
- .TB_overlayMacFFBGHack {background: url(images/macFFBgHack.png) repeat;}
609
- .TB_overlayBG {
610
- background-color:#000;
611
- filter:alpha(opacity=75);
612
- -moz-opacity: 0.75;
613
- opacity: 0.75;
614
- }
615
-
616
- * html #TB_overlay { /* ie6 hack */
617
- position: absolute;
618
- height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
619
- }
620
-
621
- #TB_window {
622
- position: fixed;
623
- background: #ffffff;
624
- z-index: 102;
625
- color:#000000;
626
- display:none;
627
- border: 4px solid #525252;
628
- text-align:left;
629
- top:50%;
630
- left:50%;
631
- }
632
-
633
- * html #TB_window { /* ie6 hack */
634
- position: absolute;
635
- margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
636
- }
637
-
638
- #TB_window img#TB_Image {
639
- display:block;
640
- margin: 15px 0 0 15px;
641
- border-right: 1px solid #ccc;
642
- border-bottom: 1px solid #ccc;
643
- border-top: 1px solid #666;
644
- border-left: 1px solid #666;
645
- }
646
-
647
- #TB_caption{
648
- height:25px;
649
- padding:7px 30px 10px 25px;
650
- float:left;
651
- }
652
-
653
- #TB_closeWindow{
654
- height:25px;
655
- padding:11px 25px 10px 0;
656
- float:right;
657
- }
658
-
659
- #TB_closeAjaxWindow{
660
- padding:7px 10px 5px 0;
661
- margin-bottom:1px;
662
- text-align:right;
663
- float:right;
664
- }
665
-
666
- #TB_ajaxWindowTitle{
667
- float:left;
668
- padding:7px 0 5px 10px;
669
- margin-bottom:1px;
670
- font-size: 22px;
671
- }
672
-
673
- #TB_title{
674
- background-color: #6C8C22;
675
- color: #dedede;
676
- height:40px;
677
- }
678
- #TB_title :link,
679
- #TB_title :visited {
680
- color: white !important;
681
- border-bottom: 1px dotted #dedede;
682
- }
683
-
684
- #TB_ajaxContent{
685
- clear:both;
686
- padding:2px 15px 15px 15px;
687
- overflow:auto;
688
- text-align:left;
689
- line-height:1.4em;
690
- }
691
-
692
- #TB_ajaxContent.TB_modal{
693
- padding:15px;
505
+ #search-results .current {
506
+ background: #ccc;
507
+ border-bottom: 1px solid transparent;
694
508
  }
695
509
 
696
- #TB_ajaxContent p{
697
- padding:5px 0px 5px 0px;
510
+ #search-results li {
511
+ list-style: none;
512
+ border-bottom: 1px solid #aaa;
513
+ -moz-border-radius: 4px;
514
+ -webkit-border-radius: 4px;
515
+ border-radius: 4px;
516
+ margin-bottom: 0.5em;
698
517
  }
699
518
 
700
- #TB_load{
701
- position: fixed;
702
- display:none;
703
- height:13px;
704
- width:208px;
705
- z-index:103;
706
- top: 50%;
707
- left: 50%;
708
- margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
519
+ #search-results li:last-child {
520
+ border-bottom: none;
521
+ margin-bottom: 0;
709
522
  }
710
523
 
711
- * html #TB_load { /* ie6 hack */
712
- position: absolute;
713
- margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
524
+ #search-results li p {
525
+ padding: 0;
526
+ margin: 0.5em;
714
527
  }
715
528
 
716
- #TB_HideSelect{
717
- z-index:99;
718
- position:fixed;
719
- top: 0;
720
- left: 0;
721
- background-color:#fff;
722
- border:none;
723
- filter:alpha(opacity=0);
724
- -moz-opacity: 0;
725
- opacity: 0;
726
- height:100%;
727
- width:100%;
529
+ #search-results .search-namespace {
530
+ font-weight: bold;
728
531
  }
729
532
 
730
- * html #TB_HideSelect { /* ie6 hack */
731
- position: absolute;
732
- height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
533
+ #search-results li em {
534
+ background: yellow;
535
+ font-style: normal;
733
536
  }
734
537
 
735
- #TB_iframeContent{
736
- clear:both;
737
- border:none;
738
- margin-bottom:-1px;
739
- margin-top:1px;
740
- _margin-bottom:1px;
538
+ #search-results pre {
539
+ margin: 0.5em;
741
540
  }
742
541
 
743
542
  /* @end */
744
543
 
745
- /* @group Debugging Section */
746
-
747
- #debugging-toggle {
748
- text-align: center;
749
- }
750
- #debugging-toggle img {
751
- cursor: pointer;
752
- }
753
-
754
- #rdoc-debugging-section-dump {
755
- display: none;
756
- margin: 0 2em 2em;
757
- background: #ccc;
758
- border: 1px solid #999;
759
- }
760
-
761
-
762
-
763
- /* @end */