rwdhypernote 0.10 → 0.11
Sign up to get free protection for your applications and to get access to all the features.
- data/Notes/changes.lnk +0 -0
- data/Notes/changes.txt +0 -0
- data/Notes/hypernote/hypernote01.html +0 -0
- data/Notes/hypernote/hypernote02.txt +0 -0
- data/Notes/rwdtinker/RwdtinkerProgrammingQuickStart.htm +0 -0
- data/Notes/rwdtinker/RwdtinkerProgrammingQuickStart.lnk +0 -0
- data/Notes/rwdtinker/newnote.txt +0 -0
- data/Notes/rwdtinker/rwdtinker.html +0 -0
- data/Readme.txt +6 -0
- data/bin/rwdhypernote +0 -0
- data/code/01rwdcore/01rwdcore.rb +0 -0
- data/code/01rwdcore/02helptexthashbegin.rb +0 -0
- data/code/01rwdcore/03helptexthash.rb +0 -0
- data/code/01rwdcore/04helptextend.rb +0 -0
- data/code/01rwdcore/jumplinkcommand.rb +0 -0
- data/code/01rwdcore/openhelpwindow.rb +0 -0
- data/code/01rwdcore/returntomain.rb +0 -0
- data/code/01rwdcore/rundocuments.rb +0 -0
- data/code/01rwdcore/runeditconfiguration.rb +0 -0
- data/code/01rwdcore/runhelpabout.rb +0 -0
- data/code/01rwdcore/runopentinkerdocument.rb +0 -0
- data/code/01rwdcore/rwdtinkerversion.rb +0 -0
- data/code/01rwdcore/rwdwindowreturn.rb +0 -0
- data/code/01rwdcore/selectiontab.rb +0 -0
- data/code/01rwdcore/setuphelpaboutoptions.rb +0 -0
- data/code/01rwdcore/setuptinkerdocuments.rb +0 -0
- data/code/01rwdcore/test_cases.rb +0 -0
- data/code/01rwdcore/test_harness.rb +0 -0
- data/code/01rwdcore/uploadreturns.rb +0 -0
- data/code/superant.com.hypernote/archivehypernote.rb +0 -0
- data/code/superant.com.hypernote/changehypernotename.rb +0 -0
- data/code/superant.com.hypernote/clearhypernotescreendisplay.rb +0 -0
- data/code/superant.com.hypernote/clearlinkscreendisplay.rb +0 -0
- data/code/superant.com.hypernote/copyfilename.rb +0 -0
- data/code/superant.com.hypernote/createnewnote.rb +0 -0
- data/code/superant.com.hypernote/createnewnotehtml.rb +0 -0
- data/code/superant.com.hypernote/deletehypernoterecord.rb +0 -0
- data/code/superant.com.hypernote/helptexthashrwdhypernote.rb +0 -0
- data/code/superant.com.hypernote/hyperlinkcreatelinkfile.rb +0 -0
- data/code/superant.com.hypernote/jumplinkupdate.rb +0 -0
- data/code/superant.com.hypernote/listdirectories.rb +0 -2
- data/code/superant.com.hypernote/listhypernotelinks.rb +0 -0
- data/code/superant.com.hypernote/listhypernotes.rb +0 -0
- data/code/superant.com.hypernote/listlinknotes.rb +0 -0
- data/code/superant.com.hypernote/loadconfigurationrecord.rb +0 -0
- data/code/superant.com.hypernote/loadconfigurationvariables.rb +0 -0
- data/code/superant.com.hypernote/loadhtmlnoterecord.rb +0 -0
- data/code/superant.com.hypernote/loadhtmlnoterecord2.rb +0 -0
- data/code/superant.com.hypernote/loadlinksrecord.rb +0 -0
- data/code/superant.com.hypernote/loadnoterecord.rb +0 -0
- data/code/superant.com.hypernote/openhelpwindowrwdhyernote.rb +0 -0
- data/code/superant.com.hypernote/returntomain.rb +0 -0
- data/code/superant.com.hypernote/runwrdhypernotetxtwindow.rb +0 -0
- data/code/superant.com.hypernote/rwdhypernotereloadhtml.rb +0 -0
- data/code/superant.com.hypernote/rwdhypernoteresetdir.rb +0 -0
- data/code/superant.com.hypernote/rwdtinkerversion.rb +0 -0
- data/code/superant.com.hypernote/saveconfigurationrecord.rb +0 -0
- data/code/superant.com.hypernote/savehtmlhypernoterecord.rb +0 -0
- data/code/superant.com.hypernote/savehypernoterecord.rb +0 -0
- data/code/superant.com.hypernote/savelinkrecord.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/controlclient.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/diagnostictab.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/helptexthashtinkerwin2.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/installapplet.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/installgemapplet.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/installremotegem.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/listgemdirs.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/listgemzips.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/listinstalledfiles.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/listzips.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/loadconfigurationrecord.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/loadconfigurationvariables.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/network.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/openappletname.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/openhelpwindowtinkerwin2.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/remotegemlist.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/removeapplet.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/runremoteinstall.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/runrwdtinkerbackwindow.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/rwdtinkerwin2version.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/saveconfigurationrecord.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/viewappletcontents.rb +0 -0
- data/code/superant.com.rwdtinkerbackwindow/viewgemappletcontents.rb +0 -0
- data/code/zz0applicationend/zz0end.rb +0 -0
- data/configuration/language.dist +0 -0
- data/configuration/rwdapplicationidentity.dist +0 -0
- data/configuration/rwdhypernote.dist +2 -2
- data/configuration/rwdtinker.dist +0 -0
- data/configuration/tinkerwin2variables.dist +0 -0
- data/ev/browser.rb +24 -10
- data/ev/ftools.rb +23 -19
- data/ev/mime.rb +328 -0
- data/ev/net.rb +154 -38
- data/ev/ruby.rb +96 -26
- data/ev/rwd.rb +162 -89
- data/ev/sgml.rb +1 -1
- data/ev/thread.rb +0 -0
- data/ev/tree.rb +33 -5
- data/ev/xml.rb +97 -0
- data/extras/rconftool.rb +0 -0
- data/extras/zip/ioextras.rb +0 -0
- data/extras/zip/stdrubyext.rb +0 -0
- data/extras/zip/tempfile_bugfixed.rb +0 -0
- data/extras/zip/zip.rb +0 -0
- data/extras/zip/zipfilesystem.rb +0 -0
- data/extras/zip/ziprequire.rb +0 -0
- data/gui/00coreguibegin/applicationguitop.rwd +0 -0
- data/gui/frontwindow0/superant.com.hypernote/10htmlnote.rwd +0 -0
- data/gui/frontwindow0/superant.com.hypernote/15editnote.rwd +0 -0
- data/gui/frontwindow0/superant.com.hypernote/25html2note.rwd +0 -0
- data/gui/frontwindow0/superant.com.hypernote/67viewconfiguration.rwd +0 -0
- data/gui/frontwindowselectionbegin/selectiontabbegin/00selectiontabbegin.rwd +0 -0
- data/gui/frontwindowselections/superant.com.rwdtinkerwin2selectiontab/jumplinkcommands.rwd +0 -0
- data/gui/frontwindowselectionzend/viewselectionzend/wwselectionend.rwd +0 -0
- data/gui/frontwindowselectionzend/viewselectionzend/zzdocumentbegin.rwd +0 -0
- data/gui/frontwindowtdocuments/superant.com.documents/tinkerdocuments.rwd +0 -0
- data/gui/helpaboutbegin/superant.com.helpaboutbegin/zzdocumentend.rwd +0 -0
- data/gui/helpaboutbegin/superant.com.helpaboutbegin/zzzrwdlasttab.rwd +0 -0
- data/gui/helpaboutbegin/superant.com.helpaboutbegin/zzzzhelpscreenstart.rwd +0 -0
- data/gui/helpaboutinstalled/superant.com.tinkerhelpabout/helpabouttab.rwd +0 -0
- data/gui/helpaboutzend/superant.com.helpaboutend/helpscreenend.rwd +0 -0
- data/gui/helpaboutzend/superant.com.helpaboutend/zhelpscreenstart2.rwd +0 -0
- data/gui/helpaboutzend/superant.com.helpaboutend/zzzzhelpabout2.rwd +0 -0
- data/gui/helpaboutzend/superant.com.helpaboutend/zzzzhelpscreen2end.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/00appname.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/10viewnote.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/20editlinks.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/30noteutilities.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/67viewconfiguration.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/81jumplinkcommands.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.hypernotetxt/9backend.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/1appname.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/40rwdlistzips.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/45installremotezip.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/50rwdlistapplets.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/60editconfiguration.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/70rwddiagnostics.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/75rwdcontrol.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/81jumplinkcommands.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/9backend.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerhelpwindow/1appname.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.tinkerhelpwindow/9end.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.versionwindow/1appname.rwd +0 -0
- data/gui/tinkerbackwindows/superant.com.versionwindow/helpaboutwindow.rwd +0 -0
- data/gui/zzcoreguiend/tinkerapplicationguiend/yy9rwdend.rwd +0 -0
- data/init.rb +0 -0
- data/lang/en/rwdcore/languagefile.rb +0 -0
- data/lang/es/rwdcore/languagefile-es.rb +0 -0
- data/lang/jp/rwdcore/languagefile.rb +0 -0
- data/lang/nl/rwdcore/languagefile.rb +0 -0
- data/lib/temp.rb +0 -0
- data/rwd_files/HowTo_HyperNote.txt +0 -0
- data/rwd_files/HowTo_Tinker.txt +0 -0
- data/rwd_files/HowTo_TinkerWin2.txt +0 -0
- data/rwd_files/Readme.txt +0 -0
- data/rwd_files/RubyWebDialogs.html +0 -0
- data/rwd_files/favicon.ico +0 -0
- data/rwd_files/rdoc-style.css +0 -0
- data/rwd_files/rwdapplications.html +0 -0
- data/rwd_files/tinker.png +0 -0
- data/rwdconfig.dist +0 -0
- data/tests/checkdepends.sh +0 -0
- data/tests/cleancnf.sh +0 -0
- data/tests/makedist.rb +0 -0
- data/tests/rdep.rb +0 -0
- data/tests/totranslate.lang +0 -0
- data/zips/rwdahelloworld-0.5.zip +0 -0
- metadata +226 -211
data/ev/rwd.rb
CHANGED
@@ -15,6 +15,7 @@ rescue LoadError
|
|
15
15
|
end
|
16
16
|
|
17
17
|
$rwd_exit = ARGV.include?("--rwd-exit") # Hack ???
|
18
|
+
$rwd_exit = true if defined?(REQUIRE2LIB)
|
18
19
|
$rwd_debug = ($rwd_debug or $DEBUG or false)
|
19
20
|
$rwd_border = ($rwd_border or 0)
|
20
21
|
$rwd_dir = Dir.pwd
|
@@ -27,10 +28,12 @@ end
|
|
27
28
|
|
28
29
|
RWDEmptyline = "..."
|
29
30
|
|
31
|
+
#module RWD
|
32
|
+
|
30
33
|
rcfile = nil
|
31
|
-
s = ENV["HOME"] ; s =
|
32
|
-
s = ENV["USERPROFILE"] ; s =
|
33
|
-
s = ENV["windir"] ; s =
|
34
|
+
s = ENV["HOME"] ; s = File.expand_path(".rwdrc", s) unless s.nil? ; rcfile = s if (not s.nil? and rcfile.nil? and File.file?(s))
|
35
|
+
s = ENV["USERPROFILE"] ; s = File.expand_path("rwd.cfg", s) unless s.nil? ; rcfile = s if (not s.nil? and rcfile.nil? and File.file?(s))
|
36
|
+
s = ENV["windir"] ; s = File.expand_path("rwd.cfg", s) unless s.nil? ; rcfile = s if (not s.nil? and rcfile.nil? and File.file?(s))
|
34
37
|
|
35
38
|
AL = "align='left'"
|
36
39
|
AC = "align='center'"
|
@@ -51,9 +54,9 @@ ENV["RWDBROWSER"] = (ENV["RWDBROWSER"] or defaultbrowser) or puts "No browser fo
|
|
51
54
|
ENV["RWDPORTS"] = (ENV["RWDPORTS"] or "7701-7709")
|
52
55
|
ENV["RWDTHEME"] = (ENV["RWDTHEME"] or "DEFAULT")
|
53
56
|
|
54
|
-
trap("INT") {puts "Terminating..." ; exit}
|
57
|
+
#trap("INT") {puts "Terminating..." ; exit}
|
55
58
|
|
56
|
-
$SAFE =
|
59
|
+
$SAFE = 0
|
57
60
|
|
58
61
|
class IE
|
59
62
|
def initialize(url)
|
@@ -93,7 +96,7 @@ class Array
|
|
93
96
|
a = [emptyline].concat(self)
|
94
97
|
end
|
95
98
|
|
96
|
-
a.numsort.collect{|s| "<option>#{s.to_html}</option>" }.join("\n")
|
99
|
+
a.numsort.collect{|s| "<option>#{s.to_s.to_html}</option>" }.join("\n")
|
97
100
|
end
|
98
101
|
|
99
102
|
def rwd_method(method)
|
@@ -109,17 +112,32 @@ class Array
|
|
109
112
|
return res
|
110
113
|
end
|
111
114
|
|
112
|
-
def rwd_row(key=nil, value=nil)
|
115
|
+
def rwd_row(key=nil, value=nil, bold=false)
|
113
116
|
res = ""
|
114
117
|
|
115
118
|
res = res + "<row valign='top'>"
|
116
119
|
res = res + "<radio name='#{key.to_html}' value='#{value.to_html}'/>" unless key.nil?
|
117
|
-
res = res + self.collect{|s| "<p align='left'>#{s.to_html}</p>"}.join("")
|
120
|
+
res = res + self.collect{|s| "<p align='#{(s.kind_of?(Numeric) or s =~ /^\d+\.\d+$/) ? "right" : "left"}'>#{"<b>" if bold}#{s.to_s.to_html}#{"</b>" if bold}</p>"}.join("")
|
118
121
|
res = res + "</row>"
|
119
122
|
|
120
123
|
return res
|
121
124
|
end
|
122
125
|
|
126
|
+
def rwd_table(headers=nil, highlightrows=[])
|
127
|
+
res = ""
|
128
|
+
|
129
|
+
highlightrows = [highlightrows].flatten
|
130
|
+
|
131
|
+
n = -1
|
132
|
+
|
133
|
+
res = res + "<table>"
|
134
|
+
res = res + headers.rwd_row(nil, nil, true) unless headers.nil?
|
135
|
+
res = res + self.collect{|a| a.rwd_row(nil, nil, highlightrows.include?(n+=1))}.join("")
|
136
|
+
res = res + "</table>"
|
137
|
+
|
138
|
+
return res
|
139
|
+
end
|
140
|
+
|
123
141
|
def rwd_headers(emptyfield=false)
|
124
142
|
res = ""
|
125
143
|
|
@@ -131,7 +149,7 @@ class Array
|
|
131
149
|
return res
|
132
150
|
end
|
133
151
|
|
134
|
-
def rwd_form(prefix, values, twoparts=0, options={})
|
152
|
+
def rwd_form(prefix, values=[], twoparts=0, options={})
|
135
153
|
res = []
|
136
154
|
|
137
155
|
res << "<table>"
|
@@ -151,7 +169,7 @@ class Array
|
|
151
169
|
s = ""
|
152
170
|
|
153
171
|
s << "<text name='#{name}'"
|
154
|
-
s << " value='#{values[n].to_html}'" if n < values.length
|
172
|
+
s << " value='#{values[n].to_s.to_html}'" if n < values.length
|
155
173
|
s << "/>"
|
156
174
|
|
157
175
|
res << s
|
@@ -266,8 +284,8 @@ class OpenTag
|
|
266
284
|
template = $rwd_html_1
|
267
285
|
template = $rwd_html_PDA_1 if pda
|
268
286
|
|
269
|
-
res <<(template(template, args))
|
270
|
-
when "p" then
|
287
|
+
res << (template(template, args))
|
288
|
+
when "p" then res << "<p #{align}>"
|
271
289
|
when "pre" then res << "<pre #{align}>"
|
272
290
|
when "big" then res << "<p #{align}><big>"
|
273
291
|
when "small" then res << "<p #{align}><small>"
|
@@ -308,10 +326,10 @@ class OpenTag
|
|
308
326
|
when "hidden" then res << "<p #{align}><input name='#{@args["name"]}' value='#{value1}' type='hidden'>"
|
309
327
|
when "text"
|
310
328
|
maxlength = ""
|
311
|
-
|
329
|
+
maxlength = "maxlength='%s'" % @args["maxlength"] if @args.include?("maxlength")
|
312
330
|
size = ""
|
313
|
-
size
|
314
|
-
|
331
|
+
size = "size='%s'" % @args["size"] if @args.include?("size")
|
332
|
+
size = "size='%s'" % 10 if pda
|
315
333
|
res << "<p #{align}><input name='#{@args["name"]}' value='#{value1}' type='text' #{maxlength} #{size}>"
|
316
334
|
oneormorefields << "true"
|
317
335
|
when "textarea"
|
@@ -341,7 +359,7 @@ class OpenTag
|
|
341
359
|
end
|
342
360
|
oneormorefields << "true"
|
343
361
|
when "select"
|
344
|
-
|
362
|
+
res << "<select #{align} name='#{@args["name"]}' width='#{@args["width"]} size='#{@args["size"]}'>" # ??? Misschien nog iets met 'multiple'?
|
345
363
|
name = @args["name"]
|
346
364
|
$select = varshtml[name]
|
347
365
|
oneormorefields << "true"
|
@@ -481,7 +499,7 @@ class OpenTag
|
|
481
499
|
template = $rwd_html_2
|
482
500
|
template = $rwd_html_PDA_2 if pda
|
483
501
|
|
484
|
-
res <<(template(template, args))
|
502
|
+
res << (template(template, args))
|
485
503
|
when "p" then res << "</p>"
|
486
504
|
when "pre" then res << "</pre>"
|
487
505
|
when "big" then res << "</big></p>"
|
@@ -556,10 +574,15 @@ class OpenTag
|
|
556
574
|
end
|
557
575
|
|
558
576
|
logo = nil
|
559
|
-
logo = File.expand_path(vars["logo"], $rwd_files)
|
560
|
-
logo = nil
|
577
|
+
logo = File.expand_path(vars["logo"], $rwd_files) if vars.include?("logo")
|
578
|
+
logo = nil unless logo.nil? or File.file?(logo)
|
579
|
+
|
580
|
+
watermark = nil
|
581
|
+
watermark = File.expand_path(vars["watermark"], $rwd_files) if vars.include?("watermark")
|
582
|
+
watermark = nil unless watermark.nil? or File.file?(watermark)
|
561
583
|
|
562
584
|
a["LOGO"] = "" unless not logo.nil?
|
585
|
+
a["WATERMARK"] = "" unless not watermark.nil?
|
563
586
|
|
564
587
|
a["HELPBUTTON"] = (not (vars["nohelpbutton"]))
|
565
588
|
a["BACKBUTTONS"] = (not (vars["nobackbuttons"]))
|
@@ -620,10 +643,12 @@ class RWDWindow
|
|
620
643
|
tree = XML.new(rwd)
|
621
644
|
|
622
645
|
tree.parse(OpenTag, "window") do |type, obj|
|
646
|
+
$rwd_appvars.each{|k, v| obj.args[k] = v}
|
623
647
|
@@windows[rwd][obj.args["name"]] = obj.to_h
|
624
648
|
end
|
625
649
|
|
626
650
|
tree.parse(OpenTag, "helpwindow") do |type, obj|
|
651
|
+
$rwd_appvars.each{|k, v| obj.args[k] = v}
|
627
652
|
@@helpwindows[rwd][obj.args["name"]] = obj.to_h
|
628
653
|
end
|
629
654
|
end
|
@@ -639,6 +664,8 @@ class RWDWindow
|
|
639
664
|
firstaction = ""
|
640
665
|
html = []
|
641
666
|
|
667
|
+
vars = vars.deep_dup
|
668
|
+
|
642
669
|
vars.each do |key, value|
|
643
670
|
if not key.empty?
|
644
671
|
if value.respond_to? "to_s"
|
@@ -731,7 +758,7 @@ end
|
|
731
758
|
|
732
759
|
class RWDDone < RWDWindow
|
733
760
|
def initialize(exitbrowser)
|
734
|
-
super("<window title='RWD Message' nobackbuttons noclosebutton><p>Done.</p><horizontal><close/>#{exitbrowser ? "" : "<button caption='Again'/>"}</horizontal>#{exitbrowser ? "<closewindow/>" : ""}</window>")
|
761
|
+
super("<window title='RWD Message' nobackbuttons noclosebutton><p>Done.</p><i>(Some browsers don't close,<br>because of security reasons.)</i><horizontal><close/>#{exitbrowser ? "" : "<button caption='Again'/>"}</horizontal>#{exitbrowser ? "<closewindow/>" : ""}</window>")
|
735
762
|
end
|
736
763
|
end
|
737
764
|
|
@@ -742,6 +769,14 @@ class RWDialog
|
|
742
769
|
@rwd_history = []
|
743
770
|
@rwd_ignore_vars = []
|
744
771
|
@rwd_call_after_back = []
|
772
|
+
@rwd_time = Time.now
|
773
|
+
|
774
|
+
$rwd_appvars = {} if $rwd_appvars.nil?
|
775
|
+
XML.new(xml).parse(OpenTag, "application") do |type, obj|
|
776
|
+
obj.args.deep_dup.each do |k, v|
|
777
|
+
$rwd_appvars[k] = v
|
778
|
+
end
|
779
|
+
end
|
745
780
|
end
|
746
781
|
|
747
782
|
def self.file(rwdfile, *args)
|
@@ -765,9 +800,14 @@ class RWDialog
|
|
765
800
|
port = port.to_i
|
766
801
|
|
767
802
|
@rwd_server = RWDServer.new(self, port, io, auth, realm)
|
803
|
+
|
804
|
+
self
|
768
805
|
end
|
769
806
|
|
770
807
|
def render(res, path, post, download, downloadfile, pda, sessionid)
|
808
|
+
# Avoid a timeout.
|
809
|
+
|
810
|
+
@rwd_time = Time.now
|
771
811
|
|
772
812
|
# Initialize some vars.
|
773
813
|
|
@@ -778,7 +818,7 @@ class RWDialog
|
|
778
818
|
help = false
|
779
819
|
back = false
|
780
820
|
tab = ""
|
781
|
-
@rwd_msgtype = nil
|
821
|
+
@rwd_msgtype = nil if @rwd_progress_thread.nil?
|
782
822
|
@rwd_download = nil
|
783
823
|
@rwd_download_file = nil
|
784
824
|
|
@@ -819,6 +859,8 @@ class RWDialog
|
|
819
859
|
@rwd_action = "rwd_back"
|
820
860
|
end
|
821
861
|
|
862
|
+
@rwd_history = [["main", [], "main", ""]] if @rwd_history.empty?
|
863
|
+
|
822
864
|
if @rwd_action =~ /^rwd_tab_/
|
823
865
|
@rwd_tab = @rwd_action.sub(/^rwd_tab_/, "")
|
824
866
|
@rwd_history[-1][3] = @rwd_tab
|
@@ -840,6 +882,7 @@ class RWDialog
|
|
840
882
|
@rwd_history = []
|
841
883
|
when "rwd_quit"
|
842
884
|
done = true
|
885
|
+
else
|
843
886
|
end
|
844
887
|
|
845
888
|
# History stuff
|
@@ -883,6 +926,15 @@ class RWDialog
|
|
883
926
|
a = [@rwd_action, @rwd_args, @rwd_window, @rwd_tab]
|
884
927
|
|
885
928
|
@rwd_history.push a if (@rwd_history[-1] != a or not @rwd_msgtype.nil?)
|
929
|
+
|
930
|
+
if @rwd_window == "rwd_back"
|
931
|
+
@rwd_history.pop
|
932
|
+
@rwd_history.pop
|
933
|
+
@rwd_action = (@rwd_history[-1] or [nil, nil, nil])[0]
|
934
|
+
@rwd_args = (@rwd_history[-1] or [nil, nil, nil])[1]
|
935
|
+
@rwd_window = (@rwd_history[-1] or [nil, nil, nil])[2]
|
936
|
+
@rwd_tab = (@rwd_history[-1] or [nil, nil, nil])[3]
|
937
|
+
end
|
886
938
|
end
|
887
939
|
end
|
888
940
|
|
@@ -911,12 +963,13 @@ class RWDialog
|
|
911
963
|
download << @rwd_download
|
912
964
|
downloadfile << @rwd_download_file
|
913
965
|
else
|
914
|
-
if not @
|
915
|
-
res <<
|
916
|
-
res << RWDError.new(@rwd_msg).render(pda) if @rwd_msgtype == "error"
|
966
|
+
if not @rwd_progress_thread.nil?
|
967
|
+
res << RWDProgressBar.new(@rwd_progress_refresh, @rwd_progress_progress).render(pda, @rwd_refresh_action)
|
917
968
|
else
|
918
|
-
if not @
|
919
|
-
res <<
|
969
|
+
if not @rwd_msgtype.nil?
|
970
|
+
res << RWDMessage.new(@rwd_msg).render(pda) if @rwd_msgtype == "message"
|
971
|
+
res << RWDError.new(@rwd_msg).render(pda) if @rwd_msgtype == "error"
|
972
|
+
res << @rwd_msg if @rwd_msgtype == "text"
|
920
973
|
else
|
921
974
|
puts "Window: #{@rwd_window}" if $rwd_debug
|
922
975
|
puts "Tab: #{@rwd_tab}" if $rwd_debug
|
@@ -944,6 +997,11 @@ class RWDialog
|
|
944
997
|
@rwd_msgtype = "error"
|
945
998
|
end
|
946
999
|
|
1000
|
+
def text(msg)
|
1001
|
+
@rwd_msg = "<html><body><pre>#{msg}</pre></body></html>"
|
1002
|
+
@rwd_msgtype = "text"
|
1003
|
+
end
|
1004
|
+
|
947
1005
|
def progressbar(refresh, *progress)
|
948
1006
|
@rwd_progress_refresh = (refresh or 1)
|
949
1007
|
@rwd_progress_progress = []
|
@@ -984,6 +1042,23 @@ class RWDialog
|
|
984
1042
|
def exitbrowser
|
985
1043
|
@rwd_exitbrowser = true
|
986
1044
|
end
|
1045
|
+
|
1046
|
+
def timeout(timeout, interval=1)
|
1047
|
+
@rwd_timeout = timeout
|
1048
|
+
|
1049
|
+
unless @rwd_timeout_thread
|
1050
|
+
@rwd_timeout_thread =
|
1051
|
+
Thread.new do
|
1052
|
+
loop do
|
1053
|
+
if Time.now - @rwd_time > @rwd_timeout
|
1054
|
+
$stderr.puts "Exiting due to timeout (#{@rwd_timeout} seconds)."
|
1055
|
+
exit 1
|
1056
|
+
end
|
1057
|
+
sleep interval
|
1058
|
+
end
|
1059
|
+
end
|
1060
|
+
end
|
1061
|
+
end
|
987
1062
|
end
|
988
1063
|
|
989
1064
|
class RWDLogin < RWDialog
|
@@ -1040,7 +1115,7 @@ class Sessions
|
|
1040
1115
|
end
|
1041
1116
|
end
|
1042
1117
|
|
1043
|
-
class
|
1118
|
+
class RWDSession < Hash
|
1044
1119
|
attr_reader :sessionid
|
1045
1120
|
attr_reader :lastaccess
|
1046
1121
|
attr_reader :authenticated
|
@@ -1055,9 +1130,7 @@ class Session < Hash
|
|
1055
1130
|
def touch
|
1056
1131
|
@lastaccess = Time.now
|
1057
1132
|
end
|
1058
|
-
end
|
1059
1133
|
|
1060
|
-
class RWDSession < Session
|
1061
1134
|
def render(res, path, post, download, downloadfile, pda)
|
1062
1135
|
done = self["object"].render(res, path, post, download, downloadfile, pda, @sessionid)
|
1063
1136
|
|
@@ -1093,18 +1166,13 @@ class RWDServer
|
|
1093
1166
|
browser = ENV["RWDBROWSER"].dup
|
1094
1167
|
url = "http://localhost:%s/" % [port]
|
1095
1168
|
|
1096
|
-
if cygwin?
|
1097
|
-
browser.gsub!(/\\/, "/")
|
1098
|
-
browser.gsub!(/ /, "\\ ")
|
1099
|
-
end
|
1100
|
-
|
1101
1169
|
re = /[$%]1\b/
|
1102
1170
|
command = "%s \"%s\"" % [browser, url]
|
1103
1171
|
command = browser.gsub(re, url) if browser =~ re
|
1104
1172
|
|
1105
1173
|
command.gsub!(/%port%/, port.to_s)
|
1106
1174
|
|
1107
|
-
system(command) or puts "Starting of the browser failed, or the browser terminated abnormally.\nCommand => #{command}"
|
1175
|
+
system(command) or $stderr.puts "Starting of the browser failed, or the browser terminated abnormally.\nCommand => #{command}"
|
1108
1176
|
#end
|
1109
1177
|
|
1110
1178
|
puts "The browser has terminated."
|
@@ -1120,8 +1188,10 @@ class RWDServer
|
|
1120
1188
|
|
1121
1189
|
HTTPServer.serve(portio, (not auth.nil?)) do |req, resp|
|
1122
1190
|
threadlimiter.wait do
|
1123
|
-
|
1124
|
-
|
1191
|
+
vars = {}
|
1192
|
+
req.vars.each do |k, v|
|
1193
|
+
vars[k] = v.join("\t")
|
1194
|
+
end
|
1125
1195
|
pad = (req.request.path or "/")
|
1126
1196
|
|
1127
1197
|
if auth.kind_of? String
|
@@ -1152,7 +1222,7 @@ class RWDServer
|
|
1152
1222
|
end
|
1153
1223
|
|
1154
1224
|
if oldsessionid.nil? or oldsessionid.empty?
|
1155
|
-
if not auth.nil? and not auth.empty? and not session.authenticated and pad
|
1225
|
+
if not auth.nil? and not auth.empty? and not session.authenticated and pad !~ /^\/rwd_/
|
1156
1226
|
|
1157
1227
|
# Check authentication
|
1158
1228
|
|
@@ -1290,6 +1360,10 @@ $rwd_html["DEFAULT"] = "
|
|
1290
1360
|
<style type='text/css'>
|
1291
1361
|
<!--
|
1292
1362
|
|
1363
|
+
body {
|
1364
|
+
background : url(%WATERMARK%) white center center no-repeat fixed;
|
1365
|
+
}
|
1366
|
+
|
1293
1367
|
a {
|
1294
1368
|
text-decoration : none;
|
1295
1369
|
}
|
@@ -1380,22 +1454,22 @@ $rwd_html["DEFAULT"] = "
|
|
1380
1454
|
<table align='center' border='0' cellspacing='0' cellpadding='0'>
|
1381
1455
|
|
1382
1456
|
<tr align='center'>
|
1383
|
-
<td align='center'
|
1384
|
-
<td align='center'
|
1385
|
-
<td align='center'
|
1386
|
-
<td align='center'
|
1457
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1458
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1459
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1460
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1387
1461
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1388
1462
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1389
1463
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1390
|
-
<td align='center'
|
1391
|
-
<td align='center'
|
1392
|
-
<td align='center'
|
1393
|
-
<td align='center'
|
1464
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1465
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1466
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1467
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1394
1468
|
</tr>
|
1395
1469
|
|
1396
1470
|
<tr align='center'>
|
1397
|
-
<td align='center'
|
1398
|
-
<td align='center'
|
1471
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1472
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1399
1473
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1400
1474
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1401
1475
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1403,12 +1477,12 @@ $rwd_html["DEFAULT"] = "
|
|
1403
1477
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1404
1478
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1405
1479
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1406
|
-
<td align='center'
|
1407
|
-
<td align='center'
|
1480
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1481
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1408
1482
|
</tr>
|
1409
1483
|
|
1410
1484
|
<tr align='center'>
|
1411
|
-
<td align='center'
|
1485
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1412
1486
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1413
1487
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1414
1488
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1418,11 +1492,11 @@ $rwd_html["DEFAULT"] = "
|
|
1418
1492
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1419
1493
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1420
1494
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1421
|
-
<td align='center'
|
1495
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1422
1496
|
</tr>
|
1423
1497
|
|
1424
1498
|
<tr align='center'>
|
1425
|
-
<td align='center'
|
1499
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1426
1500
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1427
1501
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1428
1502
|
<td align='center' bgcolor='#EEEEEE'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1432,7 +1506,7 @@ $rwd_html["DEFAULT"] = "
|
|
1432
1506
|
<td align='center' bgcolor='#EEEEEE'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1433
1507
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1434
1508
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1435
|
-
<td align='center'
|
1509
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1436
1510
|
</tr>
|
1437
1511
|
|
1438
1512
|
<tr align='center'>
|
@@ -1521,7 +1595,7 @@ $rwd_html["DEFAULT"] = "
|
|
1521
1595
|
</tr>
|
1522
1596
|
|
1523
1597
|
<tr align='center'>
|
1524
|
-
<td align='center'
|
1598
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1525
1599
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1526
1600
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1527
1601
|
<td align='center' bgcolor='#EEEEEE'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1531,11 +1605,11 @@ $rwd_html["DEFAULT"] = "
|
|
1531
1605
|
<td align='center' bgcolor='#EEEEEE'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1532
1606
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1533
1607
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1534
|
-
<td align='center'
|
1608
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1535
1609
|
</tr>
|
1536
1610
|
|
1537
1611
|
<tr align='center'>
|
1538
|
-
<td align='center'
|
1612
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1539
1613
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1540
1614
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1541
1615
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1545,12 +1619,12 @@ $rwd_html["DEFAULT"] = "
|
|
1545
1619
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1546
1620
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1547
1621
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1548
|
-
<td align='center'
|
1622
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1549
1623
|
</tr>
|
1550
1624
|
|
1551
1625
|
<tr align='center'>
|
1552
|
-
<td align='center'
|
1553
|
-
<td align='center'
|
1626
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1627
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1554
1628
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1555
1629
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1556
1630
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
@@ -1558,22 +1632,22 @@ $rwd_html["DEFAULT"] = "
|
|
1558
1632
|
<td align='center' bgcolor='white'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1559
1633
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1560
1634
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1561
|
-
<td align='center'
|
1562
|
-
<td align='center'
|
1635
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1636
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1563
1637
|
</tr>
|
1564
1638
|
|
1565
1639
|
<tr align='center'>
|
1566
|
-
<td align='center'
|
1567
|
-
<td align='center'
|
1568
|
-
<td align='center'
|
1569
|
-
<td align='center'
|
1640
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1641
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1642
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1643
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1570
1644
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1571
1645
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1572
1646
|
<td align='center' bgcolor='black'><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1573
|
-
<td align='center'
|
1574
|
-
<td align='center'
|
1575
|
-
<td align='center'
|
1576
|
-
<td align='center'
|
1647
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1648
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1649
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1650
|
+
<td align='center' ><img src='rwd_pixel.gif' height='1' width='1'></td>
|
1577
1651
|
</tr>
|
1578
1652
|
|
1579
1653
|
</table>
|
@@ -1602,6 +1676,10 @@ $rwd_html["WINDOWSLOOKALIKE"] = "
|
|
1602
1676
|
<style type='text/css'>
|
1603
1677
|
<!--
|
1604
1678
|
|
1679
|
+
body {
|
1680
|
+
background : url(%WATERMARK%) white center center no-repeat fixed;
|
1681
|
+
}
|
1682
|
+
|
1605
1683
|
a {
|
1606
1684
|
text-decoration : none;
|
1607
1685
|
}
|
@@ -1824,26 +1902,21 @@ $rwd_html["PDA"] = "
|
|
1824
1902
|
"
|
1825
1903
|
|
1826
1904
|
$rwd_pixel = "
|
1827
|
-
|
1828
|
-
|
1829
|
-
GRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygo
|
1830
|
-
KCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3
|
1831
|
-
Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZG
|
1832
|
-
RkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVV
|
1833
|
-
VVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2Rk
|
1834
|
-
ZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNz
|
1835
|
-
c3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKC
|
1836
|
-
goODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGR
|
1837
|
-
kZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn6Cg
|
1838
|
-
oKGhoaKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+v
|
1839
|
-
r7CwsLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5ubq6uru7u7y8vL29vb6+
|
1840
|
-
vr+/v8DAwMHBwcLCwsPDw8TExMXFxcbGxsfHx8jIyMnJycrKysvLy8zMzM3N
|
1841
|
-
zc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY2NnZ2dra2tvb29zc
|
1842
|
-
3N3d3d7e3t/f3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr
|
1843
|
-
6+zs7O3t7e7u7u/v7/Dw8PHx8fLy8vPz8/T09PX19fb29vf39/j4+Pn5+fr6
|
1844
|
-
+vv7+/z8/P39/f7+/v///yH+FUNyZWF0ZWQgd2l0aCBUaGUgR0lNUAAh+QQB
|
1845
|
-
CgD/ACwAAAAAAQABAAAIBAD/BQQAOw==
|
1905
|
+
R0lGODlhAQABAMIAAAAAAP///+7u7kREiP///////////////yH5BAEKAAMA
|
1906
|
+
LAAAAAABAAEAAAMCOAkAOw==
|
1846
1907
|
".unpack("m").shift
|
1847
1908
|
|
1909
|
+
$rwd_logo = "
|
1910
|
+
R0lGODlhEAAQAMIAAAAAAP///+7u7kREiP///////////////yH5BAEKAAQA
|
1911
|
+
LAAAAAAQABAAAANCSErQ/k21QKulrIrNu8heuAGUcJ0BuQVD676DasK0zNKv
|
1912
|
+
jefB+oo6l6AxBAx7M2HRePQph5xga0RsJqfELPI2DSUAADs=
|
1913
|
+
".unpack("m").shift
|
1914
|
+
|
1915
|
+
|
1848
1916
|
$rwd_html_1, $rwd_html_2 = $rwd_html[ENV["RWDTHEME"]].split(/^\s*%BODY%\s*\r*$/)
|
1849
1917
|
$rwd_html_PDA_1, $rwd_html_PDA_2 = $rwd_html["PDA"].split(/^\s*%BODY%\s*\r*$/)
|
1918
|
+
|
1919
|
+
#end
|
1920
|
+
#
|
1921
|
+
#class RWDialog < RWD::RWDialog
|
1922
|
+
#end
|
data/ev/sgml.rb
CHANGED
data/ev/thread.rb
CHANGED
File without changes
|