rwdruby 1.05

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. data/Readme.txt +462 -0
  2. data/bin/rwdruby +19 -0
  3. data/code/01rwdcore/01rwdcore.rb +29 -0
  4. data/code/01rwdcore/02helptexthashbegin.rb +4 -0
  5. data/code/01rwdcore/03helptexthash.rb +23 -0
  6. data/code/01rwdcore/04helptextend.rb +6 -0
  7. data/code/01rwdcore/jumplinkcommand.rb +26 -0
  8. data/code/01rwdcore/openhelpwindow.rb +31 -0
  9. data/code/01rwdcore/returntomain.rb +10 -0
  10. data/code/01rwdcore/rundocuments.rb +10 -0
  11. data/code/01rwdcore/runeditconfiguration.rb +10 -0
  12. data/code/01rwdcore/runhelpabout.rb +10 -0
  13. data/code/01rwdcore/runopentinkerdocument.rb +7 -0
  14. data/code/01rwdcore/rwdtinkerversion.rb +22 -0
  15. data/code/01rwdcore/rwdwindowreturn.rb +9 -0
  16. data/code/01rwdcore/selectiontab.rb +9 -0
  17. data/code/01rwdcore/setuphelpaboutoptions.rb +13 -0
  18. data/code/01rwdcore/setuptinkerdocuments.rb +6 -0
  19. data/code/01rwdcore/test_cases.rb +109 -0
  20. data/code/01rwdcore/test_harness.rb +13 -0
  21. data/code/01rwdcore/uploadreturns.rb +62 -0
  22. data/code/dd0viewphoto/dd0viewphoto.rb +3 -0
  23. data/code/superant.com.rwdshell/0runrefreshacpi.rb +7 -0
  24. data/code/superant.com.rwdshell/0uninstallapplet.rb +16 -0
  25. data/code/superant.com.rwdshell/changescriptname.rb +16 -0
  26. data/code/superant.com.rwdshell/clearrubyscreendisplay.rb +7 -0
  27. data/code/superant.com.rwdshell/clearscriptscreendisplay.rb +9 -0
  28. data/code/superant.com.rwdshell/deletescriptrecord.rb +20 -0
  29. data/code/superant.com.rwdshell/helptexthashshell.rb +31 -0
  30. data/code/superant.com.rwdshell/listrubyscripts.rb +13 -0
  31. data/code/superant.com.rwdshell/listscripts.rb +13 -0
  32. data/code/superant.com.rwdshell/loadconfigurationrecord.rb +26 -0
  33. data/code/superant.com.rwdshell/loadconfigurationvariables.rb +14 -0
  34. data/code/superant.com.rwdshell/loadrubyscriptrecord.rb +20 -0
  35. data/code/superant.com.rwdshell/loadscriptrecord.rb +20 -0
  36. data/code/superant.com.rwdshell/openhelpwindowshell.rb +33 -0
  37. data/code/superant.com.rwdshell/playrubyscript.rb +23 -0
  38. data/code/superant.com.rwdshell/playscript.rb +23 -0
  39. data/code/superant.com.rwdshell/refresh.rb +19 -0
  40. data/code/superant.com.rwdshell/refreshacpi.rb +16 -0
  41. data/code/superant.com.rwdshell/rubyeval.rb +28 -0
  42. data/code/superant.com.rwdshell/runrwdshellbackwindow.rb +10 -0
  43. data/code/superant.com.rwdshell/runrwdshellwindow.rb +12 -0
  44. data/code/superant.com.rwdshell/rwdtinkerversion.rb +10 -0
  45. data/code/superant.com.rwdshell/savechangedscript.rb +19 -0
  46. data/code/superant.com.rwdshell/saveconfigurationrecord.rb +18 -0
  47. data/code/superant.com.rwdshell/saverubyrecord.rb +19 -0
  48. data/code/superant.com.rwdshell/shelleval.rb +20 -0
  49. data/code/superant.com.rwdshell/test_cases.rb +45 -0
  50. data/code/superant.com.rwdshell/viewrubyscript.rb +18 -0
  51. data/code/superant.com.rwdshell/viewscript.rb +18 -0
  52. data/code/superant.com.rwdtinkerbackwindow/diagnostictab.rb +19 -0
  53. data/code/superant.com.rwdtinkerbackwindow/helptexthashtinkerwin2.rb +61 -0
  54. data/code/superant.com.rwdtinkerbackwindow/initiateapplets.rb +240 -0
  55. data/code/superant.com.rwdtinkerbackwindow/installgemapplet.rb +34 -0
  56. data/code/superant.com.rwdtinkerbackwindow/installremotegem.rb +20 -0
  57. data/code/superant.com.rwdtinkerbackwindow/listgemdirs.rb +12 -0
  58. data/code/superant.com.rwdtinkerbackwindow/listgemzips.rb +53 -0
  59. data/code/superant.com.rwdtinkerbackwindow/listinstalledfiles.rb +12 -0
  60. data/code/superant.com.rwdtinkerbackwindow/listzips.rb +27 -0
  61. data/code/superant.com.rwdtinkerbackwindow/loadconfigurationrecord.rb +22 -0
  62. data/code/superant.com.rwdtinkerbackwindow/loadconfigurationvariables.rb +14 -0
  63. data/code/superant.com.rwdtinkerbackwindow/network.rb +87 -0
  64. data/code/superant.com.rwdtinkerbackwindow/openappletname.rb +19 -0
  65. data/code/superant.com.rwdtinkerbackwindow/openhelpwindowtinkerwin2.rb +38 -0
  66. data/code/superant.com.rwdtinkerbackwindow/remotegemlist.rb +24 -0
  67. data/code/superant.com.rwdtinkerbackwindow/removeapplet.rb +46 -0
  68. data/code/superant.com.rwdtinkerbackwindow/removeappletvariables.rb +52 -0
  69. data/code/superant.com.rwdtinkerbackwindow/runremoteinstall.rb +11 -0
  70. data/code/superant.com.rwdtinkerbackwindow/runrwdtinkerbackwindow.rb +15 -0
  71. data/code/superant.com.rwdtinkerbackwindow/rwdtinkerwin2version.rb +13 -0
  72. data/code/superant.com.rwdtinkerbackwindow/saveconfigurationrecord.rb +19 -0
  73. data/code/superant.com.rwdtinkerbackwindow/viewappletcontents.rb +22 -0
  74. data/code/superant.com.rwdtinkerbackwindow/viewgemappletcontents.rb +24 -0
  75. data/code/zz0applicationend/zz0end.rb +4 -0
  76. data/configuration/language.dist +8 -0
  77. data/configuration/rwdapplicationidentity.dist +3 -0
  78. data/configuration/rwdtinker.dist +18 -0
  79. data/configuration/rwdwruby-1.05.dist +24 -0
  80. data/configuration/tinkerwin2variables.dist +17 -0
  81. data/gui/00coreguibegin/applicationguitop.rwd +4 -0
  82. data/gui/frontwindow0/cc0openphoto.rwd +22 -0
  83. data/gui/frontwindowselections/00selectiontabbegin.rwd +11 -0
  84. data/gui/frontwindowselections/jumplinkcommands.rwd +15 -0
  85. data/gui/frontwindowselections/wwselectionend.rwd +3 -0
  86. data/gui/frontwindowtdocuments/00documentbegin.rwd +6 -0
  87. data/gui/frontwindowtdocuments/tinkerdocuments.rwd +14 -0
  88. data/gui/frontwindowtdocuments/zzdocumentend.rwd +8 -0
  89. data/gui/helpaboutbegin/zzzrwdlasttab.rwd +6 -0
  90. data/gui/helpaboutbegin/zzzzhelpscreenstart.rwd +3 -0
  91. data/gui/helpaboutbegin/zzzzzzhelpabouttab.rwd +15 -0
  92. data/gui/helpaboutzend/helpscreenend.rwd +3 -0
  93. data/gui/helpaboutzend/zhelpscreenstart2.rwd +3 -0
  94. data/gui/helpaboutzend/zzzzhelpabout2.rwd +15 -0
  95. data/gui/helpaboutzend/zzzzhelpscreen2end.rwd +3 -0
  96. data/gui/tinkerbackwindows/superant.com.ashellscripts/1appname.rwd +5 -0
  97. data/gui/tinkerbackwindows/superant.com.ashellscripts/1rwdrubyeval.rwd +14 -0
  98. data/gui/tinkerbackwindows/superant.com.ashellscripts/2listplayscripts.rwd +17 -0
  99. data/gui/tinkerbackwindows/superant.com.ashellscripts/2listscripts.rwd +25 -0
  100. data/gui/tinkerbackwindows/superant.com.ashellscripts/3editscripts.rwd +26 -0
  101. data/gui/tinkerbackwindows/superant.com.ashellscripts/4scriptutilities.rwd +24 -0
  102. data/gui/tinkerbackwindows/superant.com.ashellscripts/6rwdshelleval.rwd +15 -0
  103. data/gui/tinkerbackwindows/superant.com.ashellscripts/98jumplinkcommands.rwd +17 -0
  104. data/gui/tinkerbackwindows/superant.com.ashellscripts/zbackend.rwd +6 -0
  105. data/gui/tinkerbackwindows/superant.com.refreshacpi/1appname.rwd +4 -0
  106. data/gui/tinkerbackwindows/superant.com.refreshacpi/2rwdrefresh.rwd +14 -0
  107. data/gui/tinkerbackwindows/superant.com.refreshacpi/3rwdacpirefresh.rwd +14 -0
  108. data/gui/tinkerbackwindows/superant.com.refreshacpi/81jumplinkcommands.rwd +17 -0
  109. data/gui/tinkerbackwindows/superant.com.refreshacpi/z9end.rwd +6 -0
  110. data/gui/tinkerbackwindows/superant.com.refreshwindow/rwdrefresh.rwd +13 -0
  111. data/gui/tinkerbackwindows/superant.com.refreshwindow/rwdrefreshacpi.rwd +11 -0
  112. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/1appname.rwd +5 -0
  113. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/44listplayscripts.rwd +19 -0
  114. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/45listscripts.rwd +25 -0
  115. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/46editscriptrecord.rwd +30 -0
  116. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/92viewconfiguration.rwd +32 -0
  117. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/94rwddiagnostics.rwd +16 -0
  118. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/98jumplinkcommands.rwd +17 -0
  119. data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/zbackend.rwd +6 -0
  120. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/1appname.rwd +5 -0
  121. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/40rwdlistzips.rwd +41 -0
  122. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/45installremotezip.rwd +44 -0
  123. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/50rwdlistapplets.rwd +44 -0
  124. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/60editconfiguration.rwd +30 -0
  125. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/70rwddiagnostics.rwd +29 -0
  126. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/81jumplinkcommands.rwd +17 -0
  127. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/9backend.rwd +6 -0
  128. data/gui/tinkerbackwindows/superant.com.tinkerhelpwindow/1appname.rwd +31 -0
  129. data/gui/tinkerbackwindows/superant.com.tinkerhelpwindow/9end.rwd +4 -0
  130. data/gui/tinkerbackwindows/superant.com.versionwindow/1appname.rwd +19 -0
  131. data/gui/tinkerbackwindows/superant.com.versionwindow/helpaboutwindow.rwd +17 -0
  132. data/gui/zzcoreguiend/yy9rwdend.rwd +4 -0
  133. data/init.rb +277 -0
  134. data/installed/rwdrubydata1.inf +6 -0
  135. data/installed/rwdwruby-1.05.inf +13 -0
  136. data/installed/temp.rb +1 -0
  137. data/lang/en/rwdcore/languagefile.rb +58 -0
  138. data/lang/es/rwdcore/languagefile-es.rb +62 -0
  139. data/lang/fr/rwdcore/languagefile.rb +64 -0
  140. data/lang/jp/rwdcore/languagefile.rb +72 -0
  141. data/lang/nl/rwdcore/languagefile.rb +75 -0
  142. data/lib/rconftool.rb +380 -0
  143. data/lib/rwd/browser.rb +123 -0
  144. data/lib/rwd/ftools.rb +174 -0
  145. data/lib/rwd/mime.rb +328 -0
  146. data/lib/rwd/net.rb +866 -0
  147. data/lib/rwd/ruby.rb +889 -0
  148. data/lib/rwd/rwd.rb +1942 -0
  149. data/lib/rwd/sgml.rb +236 -0
  150. data/lib/rwd/thread.rb +63 -0
  151. data/lib/rwd/tree.rb +371 -0
  152. data/lib/rwd/xml.rb +101 -0
  153. data/lib/zip/ioextras.rb +114 -0
  154. data/lib/zip/stdrubyext.rb +111 -0
  155. data/lib/zip/tempfile_bugfixed.rb +195 -0
  156. data/lib/zip/zip.rb +1378 -0
  157. data/lib/zip/zipfilesystem.rb +558 -0
  158. data/lib/zip/ziprequire.rb +61 -0
  159. data/rwd_files/HowTo_Ruby.txt +311 -0
  160. data/rwd_files/HowTo_Tinker.txt +471 -0
  161. data/rwd_files/HowTo_TinkerWin2.txt +202 -0
  162. data/rwd_files/Readme.txt +57 -0
  163. data/rwd_files/RubyWebDialogs.html +6 -0
  164. data/rwd_files/favicon.ico +0 -0
  165. data/rwd_files/rdoc-style.css +175 -0
  166. data/rwd_files/rwdapplications.html +54 -0
  167. data/rwd_files/tinker.png +0 -0
  168. data/rwdconfig.dist +21 -0
  169. data/rwdruby.rb +1 -0
  170. data/tests/RubyGauge.rb +179 -0
  171. data/tests/checkdepends.sh +4 -0
  172. data/tests/cleancnf.sh +6 -0
  173. data/tests/makedist-rwdwruby.rb +56 -0
  174. data/tests/makedist.rb +66 -0
  175. data/tests/rdep.rb +354 -0
  176. data/tests/totranslate.lang +93 -0
  177. data/zips/rwdwaddresses-1.05.zip +0 -0
  178. data/zips/rwdwcalc-0.61.zip +0 -0
  179. data/zips/rwdwfoldeditor-0.02.zip +0 -0
  180. data/zips/rwdwgutenberg-0.09.zip +0 -0
  181. data/zips/rwdwruby-1.05.zip +0 -0
  182. data/zips/rwdwschedule-1.04.zip +0 -0
  183. data/zips/temp.rb +1 -0
  184. data/zips/wrubyslippers-1.06.zip +0 -0
  185. metadata +245 -0
@@ -0,0 +1,18 @@
1
+ # this method adds a new address record
2
+ def saverwdshellconfiguration
3
+ require 'fileutils'
4
+ rwdshellname = "rwdwruby-" + RwdRubyVersion + ".cnf"
5
+ newname = rwdshellname # grab the filename to create
6
+ newdata =@a_rshellconfiguration
7
+
8
+ begin # exception trapped block
9
+ fileName = File.join( ConfigurationDir, newname )
10
+ fd = File.open(fileName,"w")
11
+ fd.print(newdata) # save the record info to the file
12
+ fd.close
13
+ @newrshellconfigurationresult=newdata # show the record info in the browser
14
+ rescue SystemCallError, StandardError
15
+ $stderr.print "system call error: " + $!
16
+ end # exception rescue
17
+
18
+ end
@@ -0,0 +1,19 @@
1
+
2
+ def saverubyrecord # this method adds a new script file
3
+ require 'fileutils'
4
+ if @a_rubyscriptfilename
5
+ newdata =@a_rubyscriptrecord.to_s
6
+ fullnewname = @a_rubyscriptfilename.to_s + ".rb"
7
+ begin # exception trapped block
8
+ fileName = File.join( $shellscript_directory, fullnewname )
9
+ fd = File.open(fileName,"w")
10
+ fd.print(newdata) # save the record info to the file
11
+ fd.close
12
+ @newrubyresult=newdata # show the record info in the browser
13
+
14
+
15
+ rescue
16
+ @newrubyresult = "\n" + "system error in createnew method"
17
+ end # exception rescue
18
+ end
19
+ end # end of createnew
@@ -0,0 +1,20 @@
1
+
2
+
3
+ def shelleval
4
+
5
+ commandtext = "%s " % [@a_shelleval]
6
+
7
+ begin # exception trapped block
8
+ commandtextnext = File.join($shellscript_directory,commandtext)
9
+
10
+
11
+ @result =`#{commandtext}`
12
+
13
+ rescue SystemCallError, StandardError
14
+ $stderr.print "system call error: " + $!
15
+ end # exception rescue
16
+
17
+ end
18
+
19
+
20
+
@@ -0,0 +1,45 @@
1
+ # test harness
2
+
3
+
4
+ require 'test/unit/testcase'
5
+ require 'test/unit/assertions'
6
+
7
+ def rwdshell_all_tests
8
+ print "in rwdshell all tests\n"
9
+ $testrwdshelltestcase = TestSuite.new
10
+ test_runrwdshell
11
+ end
12
+
13
+ def test_runrwdshell
14
+
15
+
16
+ begin
17
+ testasserts = 0
18
+ print "Starting rwdshell tests!\n"
19
+ runselectiontab
20
+ assert_equal("selectiontab",@rwd_tab) ; testasserts += 1
21
+ runrwdschedulemenu10
22
+ assert_equal("viewrwdscheduleconfiguration",@rwd_tab) ; testasserts += 1
23
+ loadrwdscheduleconfiguration
24
+ assert_equal("rwdschedule.cnf",@a_schconfigurationfilename) ; testasserts += 1
25
+
26
+ $stderr.print "tests completed succesfully!\n"
27
+ $stderr.print testasserts, " asserts performed\n"
28
+
29
+ rescue NotImplementedError, Exception
30
+ $stderr.print $!
31
+
32
+ end
33
+
34
+ end
35
+
36
+
37
+
38
+ def teststobedown
39
+ runtinkerhelpabout
40
+ assert_equal("rwdtinkerhelpwindow",@rwd_tab) ; testasserts += 1
41
+ end
42
+
43
+
44
+
45
+
@@ -0,0 +1,18 @@
1
+ def viewrubyscript
2
+ require 'fileutils'
3
+ $currentscriptname = "%s" % [@a_rubyscriptfilename]
4
+
5
+ begin # exception trapped block
6
+ fileName = $shellscript_directory+ "/" + $currentrubyscriptname + ".rb"
7
+
8
+ fd = File.open(fileName,"r")
9
+ @displayrubyscripttext = " "
10
+ while ! fd.eof?
11
+ @displayrubyscripttext = fd.read
12
+ end
13
+ fd.close
14
+ rescue
15
+ @displayrubyscripttext = "\n" + "error"
16
+ end # exception rescue
17
+
18
+ end
@@ -0,0 +1,18 @@
1
+ def viewscript
2
+ require 'fileutils'
3
+ $currentscriptname = "%s" % [@a_scriptfilename]
4
+
5
+ begin # exception trapped block
6
+ fileName = $shellscript_directory + "/" + $currentscriptname + ".sh"
7
+
8
+ fd = File.open(fileName,"r")
9
+ @displayscripttext = " "
10
+ while ! fd.eof?
11
+ @displayscripttext = fd.read
12
+ end
13
+ fd.close
14
+ rescue
15
+ @displayscripttext = "\n" + "error"
16
+ end # exception rescue
17
+
18
+ end
@@ -0,0 +1,19 @@
1
+ # Application RwdTinker orginally (c) 2004 Steven Gibson under GPL.
2
+ # This application is a framework for writing programs from RubyWebDialogs
3
+ # For information see http://www.rubyforge.net/projects/rwdapplications
4
+
5
+ require 'resolv'
6
+ require 'date'
7
+
8
+ # return the platform information
9
+ def runviewplatform
10
+ @platformdisplay = "Platform is " + RUBY_PLATFORM + "\n"
11
+ @platformdisplay = @platformdisplay + "Ruby Version " + VERSION + "\n"
12
+ @platformdisplay = @platformdisplay + "rwdtinker version " + RwdTinkerVersion + "\n"
13
+ @platformdisplay = @platformdisplay + "program directory " + $progdir + "\n"
14
+ @platformdisplay = @platformdisplay + "hostname " + Resolv.getname(Resolv.getaddress("localhost")) + "\n"
15
+ @platformdisplay = @platformdisplay + "application name " + $rwdapplicationidentity + "\n"
16
+ @platformdisplay = @platformdisplay + "Date " + Date.today().to_s
17
+
18
+ end
19
+
@@ -0,0 +1,61 @@
1
+ # help text files used by context sensitive help
2
+
3
+ Helptext.update( :tinkerwin2_help => " You can view the list of applets you can install
4
+ by clicking on the list files button
5
+
6
+ You can download an applet created by someone else
7
+
8
+ put the file in the zips directory
9
+
10
+ rwdtinker applets packaged as RubyGems can be used if you have RubyGems installed.
11
+ You can download rwdtinker gems at the 'Install Remote Applets' tab
12
+ to install applets you need the ruby zlib library installed
13
+ ",
14
+ :applet_viewing => "You can get a list of all installed applets by clicking the 'listfiles button'
15
+ To see the text of a install file
16
+ Type in the name of the file you want.
17
+
18
+ type it without the inf ending
19
+ rwdapplet-0.1
20
+
21
+ Then click the 'View Installed File' button
22
+
23
+ If it finds the file it will open it. It displays the text the search box.
24
+
25
+ You can uninstall applets on this screen",
26
+
27
+ :applet_installation => " You can download an applet created by someone else\n
28
+ put the file in the zips directory\n
29
+
30
+ click on the 'list zips' tab\n
31
+ click on 'list applets available for installing'\n
32
+
33
+ chose the applet you want\n
34
+ click on 'install applet'\n
35
+ If all goes well the applet should be installed.\n
36
+ You will need to restart rwdtinker to see the new screens
37
+ to install applets you need the ruby zlib library installed",
38
+
39
+ :applet_tinkerbackeditconfiguration => " You can edit the configuration
40
+
41
+ Remember to reload the configuration variables if you want your
42
+ changes used.",
43
+ :remotegemapplet_install => " To download and install use the 'Install Remote Applets'
44
+
45
+ First click on 'List applets in the Remote GEM Repository available for downloading'
46
+ then go to the very bottom to click on the applet you want
47
+ then on the top click 'install remote Gem applet package'
48
+
49
+ This installs the package in the Gem system
50
+ You still need to install it into rwdtinker - do that in the 'List Zips' tab
51
+
52
+ For this feature to work, you need
53
+ RubyGems installed
54
+ Variables set correctly in the tinerwin2.cnf file
55
+ $xpcommand, $gemdirectory_withgemfiles and $geminstalled_directory
56
+ the defaults as shipped will normally be for a Debian Linux system
57
+ On Debian Linux, you would usually need to be running rwdtinker as root in order to install RubyGems
58
+
59
+ You can view the list of rwdtinker applets you have installed already by clicking 'view already installed GEM applets'
60
+ "
61
+ )
@@ -0,0 +1,240 @@
1
+
2
+ #***********************************************************************
3
+ #* Rwd/Tinker -- A Ruby program for the RudyWebDialog.
4
+ #* Copyright (c) 2004 - 2005 by Steven Gibson. All Rights Reserved.
5
+ #*
6
+ #* This library is free software; you can redistribute it and/or
7
+ #* modify it under the terms of the GNU General Public
8
+ #* License as published by the Free Software Foundation; either
9
+ #* .
10
+ #*
11
+ #* These files are distributed in the hope that they will be useful,
12
+ #* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ #* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ #* General Public License for more details.
15
+ #*
16
+ #* You should have received a copy of the GNU General Public
17
+ #* License along with these files; if not, write to the Free Software
18
+ #* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
+ #*
20
+ #* For further information please contact the author by e-mail
21
+ #* at "smalllinux@gmail.com".
22
+ #***********************************************************************/
23
+
24
+
25
+
26
+ # integrate the new configuration files
27
+ def initiateapplet(nametextlocal)
28
+
29
+ debuginitiate = 0
30
+
31
+ if $DEBUG
32
+ $stderr.puts "starting config load with: #{nametextlocal}"
33
+ end
34
+
35
+
36
+ Dir.chdir($progdir ) #changes the current working directory
37
+
38
+ @confignew = "configuration/" + "#{nametextlocal}.cnf"
39
+ @configdist = "configuration/" + "#{nametextlocal}.dist"
40
+ Rconftool::install(@configdist,@confignew)
41
+
42
+ begin
43
+
44
+ configfileload = File.open(@configdist){|f| f.read}
45
+
46
+ eval configfileload #load config file
47
+
48
+
49
+
50
+ rescue
51
+
52
+ if $DEBUG
53
+ $stderr.puts "error in initiateapplets - config load"
54
+ end
55
+ debuginitiate += 1
56
+ end
57
+ $tempdoc = " "
58
+
59
+ Dir.chdir($progdir) # change back to top program directory
60
+
61
+ # build the English Language hash file from the parts
62
+ languagehashvariable = 'Message.update('
63
+ startlangdir = File.join(LangDir,"en")
64
+ #get a list of the files and subdirectories on the starting directory only
65
+ alanghash = Array.new(Dir[startlangdir].entries.sort)
66
+ #loop through the list, ignore the files and add all new directories found
67
+ alanghash.each do |x|
68
+ #if a directory...
69
+ if(test(?d,x))
70
+ # add to the original list of directories
71
+ @@tmproot = x + "/**"
72
+ #adds the new ones to the array
73
+ blanghash = Dir[@@tmproot].entries.sort
74
+ blanghash.each do |x|
75
+ if(test(?d,x))
76
+ alanghash.push(x) #appends to the end of the array...
77
+ end
78
+ end
79
+ end
80
+ end
81
+ alanghash.each do |x|
82
+ #if it is a file...
83
+ if(!test(?d,x))
84
+ alanghash.delete(x)
85
+ else #it is a directory...
86
+ findfiles(x + "/**")
87
+ end
88
+ end
89
+
90
+
91
+ #writes the contents of doc into the languagehashvariable
92
+
93
+
94
+ languagehashvariable = languagehashvariable + $tempdoc + ' :rwdtinker => "Rwdtinker" ) ;'
95
+
96
+ # END of en Lang building
97
+ $tempdoc = " "
98
+ Dir.chdir($progdir) # change back to top program directory
99
+
100
+ # build the local Language hash file from the parts
101
+ startlangdir = File.join(LangDir,$lang)
102
+ #get a list of the files and subdirectories on the starting directory only
103
+ alanghash = Array.new(Dir[startlangdir].entries.sort)
104
+ #loop through the list, ignore the files and add all new directories found
105
+ alanghash.each do |x|
106
+ #if a directory...
107
+ if(test(?d,x))
108
+ # add to the original list of directories
109
+ @@tmproot = x + "/**"
110
+ #adds the new ones to the array
111
+ blanghash = Dir[@@tmproot].entries.sort
112
+ blanghash.each do |x|
113
+ if(test(?d,x))
114
+ alanghash.push(x) #appends to the end of the array...
115
+ end
116
+ end
117
+ end
118
+ end
119
+ alanghash.each do |x|
120
+ #if it is a file...
121
+ if(!test(?d,x))
122
+ alanghash.delete(x)
123
+ else #it is a directory...
124
+ findfiles(x + "/**")
125
+ end
126
+ end
127
+
128
+
129
+ #writes the contents of doc into the variable
130
+
131
+ languagehashvariable = languagehashvariable + " Message.update(" + $tempdoc + ' :rwdtinker => "Rwdtinker" ) '
132
+
133
+
134
+
135
+ $tempdoc = " "
136
+
137
+ Dir.chdir($progdir) # change back to top program directory
138
+
139
+ temp = eval( languagehashvariable )
140
+
141
+
142
+ tempguistorage = $rwd_gui_tinker # if gui load fails restore old
143
+ begin # error trap
144
+
145
+ # build the actual GUI from the gui parts
146
+ $tempdoc = " "
147
+ #get a list of the files and subdirectories on the starting directory only
148
+ a = Array.new(Dir[GuiDir].entries.sort)
149
+ #loop through the list, ignore the files and add all new directories found
150
+ a.each do |x|
151
+ #if a directory...
152
+ if(test(?d,x))
153
+ #use this new dir find to add to the original list of directories
154
+ @@root = x + "/**"
155
+ #adds the new ones to the array
156
+ b = Dir[@@root].entries.sort
157
+ b.each do |x|
158
+ if(test(?d,x))
159
+ a.push(x) #appends to the end of the array...
160
+ end
161
+ end
162
+ end
163
+ end
164
+ a.each do |x|
165
+ #if it is a file...
166
+ if(!test(?d,x))
167
+ a.delete(x)
168
+
169
+ else #it is a directory...
170
+ loadguifile(x + "/**")
171
+
172
+
173
+ end
174
+ end
175
+
176
+ $rwd_gui_tinker = $tempdoc
177
+
178
+
179
+ rescue
180
+ $rwd_gui_tinker = tempguistorage # restore old gui
181
+ if $DEBUG
182
+ $stderr.puts "error in initiateapplets - gui building"
183
+ end
184
+
185
+ debuginitiate += 1
186
+ end
187
+
188
+ begin # error trap
189
+ # now load in the code files
190
+
191
+ $tempdoc = ""
192
+ tempcodeinstallline = ""
193
+
194
+ @fileName = "installed/" + nametextlocal + ".inf"
195
+
196
+ tmpfilearray = File.readlines(@fileName)
197
+
198
+ tmpfilearray.each do |line|
199
+
200
+ tempcodeinstallline = line.chomp
201
+ if tempcodeinstallline.include?('code/')
202
+ findfiles(tempcodeinstallline + "/**")
203
+ tempcoderesult = eval( $tempdoc ) # read the program code and evaluate
204
+ end
205
+ end
206
+
207
+
208
+ rescue
209
+ if $DEBUG
210
+ $stderr.puts "error in initiateapplets - code building"
211
+ end
212
+ debuginitiate += 1
213
+
214
+
215
+ end
216
+
217
+ setuphelpaboutoptions # update the help about list
218
+ setuptinkerdocuments # update the document pull down list
219
+ runhelpwindow # update the help menu
220
+ showjumplinkoptions # update the application link menu
221
+ runrwdtinkerbackwindow # back to applet window
222
+
223
+ # resultend = tempcodeinstallline .index("\n",resultstart)
224
+ tempresult = @fileName
225
+
226
+ return " applet loading successful " + tempresult
227
+
228
+
229
+
230
+ if debuginitiate > 0
231
+ return " initiateapplet .."
232
+ else
233
+ return " initiateapplet success"
234
+ end
235
+
236
+ end
237
+
238
+
239
+
240
+