rhodes 3.1.0.beta.2 → 3.1.0.beta.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. data/CHANGELOG +1 -1
  2. data/Manifest.txt +26 -1
  3. data/Rakefile +12 -12
  4. data/doc/connect-to-web-services.txt +7 -1
  5. data/doc/css-framework.txt +3 -3
  6. data/doc/device-caps.txt +24 -23
  7. data/doc/generator.txt +4 -2
  8. data/doc/standard-css.txt +17 -42
  9. data/doc/tutorial.txt +23 -29
  10. data/doc/ui.txt +99 -79
  11. data/lib/extensions/barcode/Android.mk +17 -0
  12. data/lib/extensions/barcode/ext/barcode/platform/android/jni/src/barcode.cpp +27 -11
  13. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/CaptureActivity.java +2 -1
  14. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/rhomobile/barcode/Barcode.java +5 -6
  15. data/lib/extensions/nfc/Android.mk +18 -0
  16. data/lib/extensions/nfc/ext/nfc/platform/android/jni/src/nfc.cpp +9 -16
  17. data/platform/android/Rhodes/jni/Android.mk +25 -314
  18. data/platform/android/Rhodes/jni/rainbow_stab.cpp +31 -0
  19. data/platform/android/Rhodes/jni/src/bluetooth.cpp +5 -9
  20. data/platform/android/Rhodes/jni/src/camera.cpp +5 -12
  21. data/platform/android/Rhodes/jni/src/fileapi.cpp +8 -7
  22. data/platform/android/Rhodes/jni/src/mapview.cpp +29 -13
  23. data/platform/android/Rhodes/jni/src/nativebar.cpp +3 -2
  24. data/platform/android/Rhodes/jni/src/webview.cpp +2 -2
  25. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +2 -0
  26. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +8 -2
  27. data/platform/android/build/android.rake +1 -1
  28. data/platform/android/build/androidcommon.rb +12 -1
  29. data/platform/iphone/Classes/Bluetooth/Bluetooth.m +6 -2
  30. data/platform/iphone/Classes/Camera/PickImageDelegate.m +3 -3
  31. data/platform/iphone/Classes/DateTimePickerDelegate.m +3 -1
  32. data/platform/iphone/Classes/MapView/MapAnnotation.m +2 -1
  33. data/platform/iphone/Classes/SplitView/RightViewController.m +3 -1
  34. data/platform/iphone/Classes/TabbedMainView.m +3 -1
  35. data/platform/iphone/rbuild/iphone.rake +5 -3
  36. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist +2 -4
  37. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
  38. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/accessible/libqtaccessiblewidgets.dylib +0 -0
  39. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqgenericbearer.dylib +0 -0
  40. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqcncodecs.dylib +0 -0
  41. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqjpcodecs.dylib +0 -0
  42. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqkrcodecs.dylib +0 -0
  43. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqtwcodecs.dylib +0 -0
  44. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/graphicssystems/libqtracegraphicssystem.dylib +0 -0
  45. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/phonon_backend/libphonon_qt7.dylib +0 -0
  46. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libtcpserver.dylib +0 -0
  47. data/platform/shared/common/Android.mk +35 -0
  48. data/platform/shared/common/RhodesApp.cpp +17 -14
  49. data/platform/shared/common/map/ESRIMapEngine.cpp +4 -1
  50. data/platform/shared/curl/Android.mk +88 -0
  51. data/platform/shared/db/Android.mk +12 -0
  52. data/platform/shared/db/DBResult.h +1 -1
  53. data/platform/shared/json/Android.mk +18 -0
  54. data/platform/shared/logging/Android.mk +13 -0
  55. data/platform/shared/logging/RhoLogConf.cpp +1 -3
  56. data/platform/shared/net/Android.mk +19 -0
  57. data/platform/shared/qt/rhodes/QtMainWindow.cpp +7 -2
  58. data/platform/shared/qt/rhodes/QtMainWindow.h +1 -0
  59. data/platform/shared/qt/rhodes/QtMainWindow.ui +12 -0
  60. data/platform/shared/qt/rhodes/RhoSimulator.h +33 -0
  61. data/platform/shared/qt/rhodes/rhodes.pro +134 -133
  62. data/platform/shared/ruby/Android.mk +118 -0
  63. data/platform/shared/rubyext/Android.mk +15 -0
  64. data/platform/shared/sqlite/Android.mk +9 -0
  65. data/platform/shared/statistic/Android.mk +9 -0
  66. data/platform/shared/sync/Android.mk +14 -0
  67. data/platform/shared/unzip/Android.mk +9 -0
  68. data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
  69. data/platform/wm/build/wm.rake +1 -1
  70. data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +3 -1
  71. data/rakefile.rb +12 -12
  72. data/res/generators/templates/application/app/Settings/login.erb +2 -2
  73. data/res/generators/templates/application/app/index.bb.erb +12 -17
  74. data/res/generators/templates/application/app/layout.erb +1 -15
  75. data/res/generators/templates/application/public/css/blackberry.css +17 -17
  76. data/res/generators/templates/application/public/css/jqmobile-patch.css +22 -0
  77. data/res/generators/templates/application/public/js/jqmobile-patch.js +28 -14
  78. data/res/generators/templates/model/edit.erb +1 -1
  79. data/res/generators/templates/model/new.erb +1 -1
  80. data/rhodes.gemspec +2 -2
  81. metadata +34 -25
  82. data/platform/android/Rhodes/AndroidManifest.full.xml +0 -101
data/CHANGELOG CHANGED
@@ -1,5 +1,5 @@
1
1
  ## 3.1
2
- * Symbian support
2
+ * Symbian support(Beta)
3
3
  * Android: support latest SDK and NDK r6
4
4
  * Blackberry 7.0 support
5
5
  * Barcode: real time barcode reader for Android
data/Manifest.txt CHANGED
@@ -52,6 +52,7 @@ lib/build/compileERB/default.rb
52
52
  lib/build/compileRB/compileRB.rb
53
53
  lib/build/jake.rb
54
54
  lib/build/rhodes-build.rb
55
+ lib/extensions/barcode/Android.mk
55
56
  lib/extensions/barcode/ext/barcode/platform/android/additional_files/res/drawable/cancel_icon.png
56
57
  lib/extensions/barcode/ext/barcode/platform/android/additional_files/res/drawable/ok_icon.png
57
58
  lib/extensions/barcode/ext/barcode/platform/android/additional_files/res/drawable/retake_icon.png
@@ -659,6 +660,7 @@ lib/extensions/net-http/uri/ldap.rb
659
660
  lib/extensions/net-http/uri/ldaps.rb
660
661
  lib/extensions/net-http/uri/mailto.rb
661
662
  lib/extensions/net-http/uri.rb
663
+ lib/extensions/nfc/Android.mk
662
664
  lib/extensions/nfc/ext/build
663
665
  lib/extensions/nfc/ext/build.bat
664
666
  lib/extensions/nfc/ext/nfc/platform/android/additional_files/res/xml/filter_nfc.xml
@@ -908,7 +910,6 @@ platform/android/build/libsqlite_build.files
908
910
  platform/android/build/libstlport_build.files
909
911
  platform/android/build/RhodesGEN_build.files
910
912
  platform/android/build/RhodesSRC_build.files
911
- platform/android/Rhodes/AndroidManifest.full.xml
912
913
  platform/android/Rhodes/AndroidManifest.xml
913
914
  platform/android/Rhodes/default.properties
914
915
  platform/android/Rhodes/gen/com/rhomobile/rhodes/R.java
@@ -941,6 +942,7 @@ platform/android/Rhodes/jni/include/rhodes/RhoClassFactory.h
941
942
  platform/android/Rhodes/jni/include/rhodes/rhocryptimpl.h
942
943
  platform/android/Rhodes/jni/include/rhodes/sslimpl.h
943
944
  platform/android/Rhodes/jni/include/rhodes.h
945
+ platform/android/Rhodes/jni/rainbow_stab.cpp
944
946
  platform/android/Rhodes/jni/rhocaps.inc
945
947
  platform/android/Rhodes/jni/src/alert.cpp
946
948
  platform/android/Rhodes/jni/src/bluetooth.cpp
@@ -1909,11 +1911,20 @@ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtWebKit.fram
1909
1911
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist
1910
1912
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator
1911
1913
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PkgInfo
1914
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/accessible/libqtaccessiblewidgets.dylib
1915
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqgenericbearer.dylib
1916
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqcncodecs.dylib
1917
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqjpcodecs.dylib
1918
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqkrcodecs.dylib
1919
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqtwcodecs.dylib
1920
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/graphicssystems/libqtracegraphicssystem.dylib
1912
1921
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqgif.dylib
1913
1922
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqico.dylib
1914
1923
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqjpeg.dylib
1915
1924
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqmng.dylib
1916
1925
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtiff.dylib
1926
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/phonon_backend/libphonon_qt7.dylib
1927
+ platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libtcpserver.dylib
1917
1928
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Resources/empty.lproj
1918
1929
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Resources/qt.conf
1919
1930
  platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Resources/rho.icns
@@ -2007,6 +2018,7 @@ platform/osx/Rhodes Launcher/rhorunner.app/Settings.bundle/en.lproj/Root.strings
2007
2018
  platform/osx/Rhodes Launcher/rhorunner.app/Settings.bundle/Root.plist
2008
2019
  platform/osx/Rhodes Launcher/unzipbundle.rb
2009
2020
  platform/osx/Rhodes Launcher/version.plist
2021
+ platform/shared/common/Android.mk
2010
2022
  platform/shared/common/app_build_capabilities.h
2011
2023
  platform/shared/common/app_build_configs.c
2012
2024
  platform/shared/common/app_build_configs.h
@@ -2067,6 +2079,7 @@ platform/shared/common/ThreadQueue.cpp
2067
2079
  platform/shared/common/ThreadQueue.h
2068
2080
  platform/shared/common/Tokenizer.cpp
2069
2081
  platform/shared/common/Tokenizer.h
2082
+ platform/shared/curl/Android.mk
2070
2083
  platform/shared/curl/include/curl/curl.h
2071
2084
  platform/shared/curl/include/curl/curlbuild.h
2072
2085
  platform/shared/curl/include/curl/curlrules.h
@@ -2221,6 +2234,7 @@ platform/shared/curl/lib/url.c
2221
2234
  platform/shared/curl/lib/url.h
2222
2235
  platform/shared/curl/lib/urldata.h
2223
2236
  platform/shared/curl/lib/version.c
2237
+ platform/shared/db/Android.mk
2224
2238
  platform/shared/db/DBAdapter.cpp
2225
2239
  platform/shared/db/DBAdapter.h
2226
2240
  platform/shared/db/DBAttrManager.cpp
@@ -2230,6 +2244,7 @@ platform/shared/db/DBResult.h
2230
2244
  platform/shared/db/res/db/syncdb.schema
2231
2245
  platform/shared/db/res/db/syncdb.triggers
2232
2246
  platform/shared/db/res/db/syncdb_java.triggers
2247
+ platform/shared/json/Android.mk
2233
2248
  platform/shared/json/arraylist.c
2234
2249
  platform/shared/json/arraylist.h
2235
2250
  platform/shared/json/AUTHORS
@@ -2254,6 +2269,7 @@ platform/shared/json/linkhash.h
2254
2269
  platform/shared/json/printbuf.c
2255
2270
  platform/shared/json/printbuf.h
2256
2271
  platform/shared/json/RJSONTokener.c
2272
+ platform/shared/logging/Android.mk
2257
2273
  platform/shared/logging/RhoATLTrace.h
2258
2274
  platform/shared/logging/RhoLog.cpp
2259
2275
  platform/shared/logging/RhoLog.h
@@ -2267,6 +2283,7 @@ platform/shared/logging/test/logconf.txt
2267
2283
  platform/shared/logging/test/main.cpp
2268
2284
  platform/shared/logging/test/TestLog.cpp
2269
2285
  platform/shared/logging/test/TestPlainLog.c
2286
+ platform/shared/net/Android.mk
2270
2287
  platform/shared/net/AsyncHttp.cpp
2271
2288
  platform/shared/net/AsyncHttp.h
2272
2289
  platform/shared/net/CompatWince.cpp
@@ -2334,6 +2351,7 @@ platform/shared/qt/rhodes/QtWebInspector.ui
2334
2351
  platform/shared/qt/rhodes/resources/rho.icns
2335
2352
  platform/shared/qt/rhodes/resources/rho.ico
2336
2353
  platform/shared/qt/rhodes/rhodes.pro
2354
+ platform/shared/qt/rhodes/RhoSimulator.h
2337
2355
  platform/shared/qt/rholib/rholib.pro
2338
2356
  platform/shared/qt/RhoSimulator.pro
2339
2357
  platform/shared/qt/rubylib/rubylib.pro
@@ -2342,6 +2360,7 @@ platform/shared/qt/syncengine/syncengine.pro
2342
2360
  platform/shared/RhoConnectClient/RhoConnectClient.cpp
2343
2361
  platform/shared/RhoConnectClient/RhoConnectClient.h
2344
2362
  platform/shared/RhoConnectClient/RhoError.h
2363
+ platform/shared/ruby/Android.mk
2345
2364
  platform/shared/ruby/array.c
2346
2365
  platform/shared/ruby/bignum.c
2347
2366
  platform/shared/ruby/blockinlining.c
@@ -2752,6 +2771,7 @@ platform/shared/ruby/wince/wince.h
2752
2771
  platform/shared/ruby/wince/wincemain.c
2753
2772
  platform/shared/ruby/wince/wincon.h
2754
2773
  platform/shared/ruby/wince/winsock2.c
2774
+ platform/shared/rubyext/Android.mk
2755
2775
  platform/shared/rubyext/GeoLocation.cpp
2756
2776
  platform/shared/rubyext/GeoLocation.h
2757
2777
  platform/shared/rubyext/NativeToolbarExt.h
@@ -2795,10 +2815,12 @@ platform/shared/shttpd/src/ssl.h
2795
2815
  platform/shared/shttpd/src/standalone.c
2796
2816
  platform/shared/shttpd/src/std_includes.h
2797
2817
  platform/shared/shttpd/src/string.c
2818
+ platform/shared/sqlite/Android.mk
2798
2819
  platform/shared/sqlite/crypto.c
2799
2820
  platform/shared/sqlite/sqlite3.c
2800
2821
  platform/shared/sqlite/sqlite3.h
2801
2822
  platform/shared/sqlite/sqlite3ext.h
2823
+ platform/shared/statistic/Android.mk
2802
2824
  platform/shared/statistic/RhoProfiler.cpp
2803
2825
  platform/shared/statistic/RhoProfiler.h
2804
2826
  platform/shared/statistic/test/TestProfiling.cpp
@@ -3677,6 +3699,7 @@ platform/shared/stlport/test/unit/vector_header_test.cpp
3677
3699
  platform/shared/stlport/test/unit/vector_test.cpp
3678
3700
  platform/shared/stlport/test/unit/wchar_header_test.c
3679
3701
  platform/shared/stlport/test/unit/wctype_header_test.c
3702
+ platform/shared/sync/Android.mk
3680
3703
  platform/shared/sync/ClientRegister.cpp
3681
3704
  platform/shared/sync/ClientRegister.h
3682
3705
  platform/shared/sync/ISyncProtocol.h
@@ -3766,6 +3789,7 @@ platform/shared/test/hippomocks/hippomocks.h
3766
3789
  platform/shared/test/test_helper.cpp
3767
3790
  platform/shared/test/test_helper.h
3768
3791
  platform/shared/test/Tests.cpp
3792
+ platform/shared/unzip/Android.mk
3769
3793
  platform/shared/unzip/unzip.cpp
3770
3794
  platform/shared/unzip/unzip.h
3771
3795
  platform/shared/wtl80/include/atlapp.h
@@ -4503,6 +4527,7 @@ res/generators/templates/application/icon/icon72.png
4503
4527
  res/generators/templates/application/public/css/android.css
4504
4528
  res/generators/templates/application/public/css/blackberry.css
4505
4529
  res/generators/templates/application/public/css/iphone.css
4530
+ res/generators/templates/application/public/css/jqmobile-patch.css
4506
4531
  res/generators/templates/application/public/css/windows_mobile.css
4507
4532
  res/generators/templates/application/public/images/android/btn_check_off.png
4508
4533
  res/generators/templates/application/public/images/android/btn_check_on.png
data/Rakefile CHANGED
@@ -26,7 +26,7 @@
26
26
 
27
27
  require 'find'
28
28
  require 'erb'
29
- require 'rdoc/task'
29
+ #require 'rdoc/task'
30
30
  require 'digest/sha2'
31
31
  require 'rexml/document'
32
32
 
@@ -985,18 +985,18 @@ task :switch_app => "config:common" do
985
985
  end
986
986
 
987
987
 
988
- Rake::RDocTask.new do |rd|
988
+ #Rake::RDocTask.new do |rd|
989
989
  #RDoc::Task.new do |rd|
990
- rd.main = "README.textile"
991
- rd.rdoc_files.include("README.textile", "lib/framework/**/*.rb")
992
- end
993
- Rake::Task["rdoc"].comment=nil
994
- Rake::Task["rerdoc"].comment=nil
995
-
996
- task :rdocpush => :rdoc do
997
- puts "Pushing RDOC. This may take a while"
998
- `scp -r html/* dev@dev.rhomobile.com:dev.rhomobile.com/rhodes/`
999
- end
990
+ # rd.main = "README.textile"
991
+ # rd.rdoc_files.include("README.textile", "lib/framework/**/*.rb")
992
+ #end
993
+ #Rake::Task["rdoc"].comment=nil
994
+ #Rake::Task["rerdoc"].comment=nil
995
+
996
+ #task :rdocpush => :rdoc do
997
+ # puts "Pushing RDOC. This may take a while"
998
+ # `scp -r html/* dev@dev.rhomobile.com:dev.rhomobile.com/rhodes/`
999
+ #end
1000
1000
 
1001
1001
  namespace "build" do
1002
1002
  # desc "Build rhoconnect-client package"
@@ -198,7 +198,13 @@ Below, a product model is created using the response from the web service and th
198
198
  end
199
199
  end
200
200
 
201
- **NOTE: For disable jQTouch caching (by default jQTouch cached your async HTTP request result and will show saved content instead of new requested content), change creation of jQTouch object in layout.erb to next line : <script>jQT = $.jQTouch({cacheGetRequests: false});</script>**
201
+ **NOTE: To disable jQuery Mobile page caching (by default jQuery Mobile cachepages in the DOM) globally, look for cache control options in jQuery Mobile documentation**
202
+
203
+ You can disable page caching globally by using jQuery Mobile initialization option in layout.erb file:
204
+
205
+ $.mobile.page.prototype.options.domCache = true;
206
+
207
+ Also, you can disable caching on exact page transition with `data-dom-cache` attribute, like that: *<a href="foo/bar/baz" data-dom-cache="false">link text</a>*
202
208
 
203
209
 
204
210
  ### Note About Animated Transitions
@@ -4,7 +4,7 @@
4
4
 
5
5
  The Rhodes framework includes stylesheets customized for each device to give your applications a native look and feel. These stylesheets are included by default in all generated Rhodes applications (public/css/), and are included in the application layout file (app/layout.erb).
6
6
 
7
- The default styles will automatically be applied to all supported content found in the "toolbar", "pageTitle", and "content" divs. If you prefer using different names for any of these divs, you will need to update your stylesheets to reflect the new names in order to retain native styling. Conversely, if you prefer not to use any of the customized styles in your applications, you can either delete the links to the default stylesheets from your application, or simply place any content you wish to create custom styles for in a div that does not descend from "toolbar", "pageTitle", or "content".
7
+ The default styles will automatically be applied to all supported content found in the ["header", "footer", and "content"](standard-css) divs. If you prefer using different names for any of these divs, you will need to update your stylesheets to reflect the new names in order to retain native styling. Conversely, if you prefer not to use any of the customized styles in your applications, you can either delete the links to the default stylesheets from your application, or simply place any content you wish to create custom styles for in a div that does not descend from "header", "footer", or "content".
8
8
 
9
9
 
10
10
  ## On designing for multiple browsers...
@@ -76,7 +76,7 @@ Please refer to [Blackberry HTML and CSS](bb-css) for a discussion of the styles
76
76
 
77
77
  ## Standard Smartphone CSS/HTML Architecture
78
78
 
79
- With the exception of the <code>pageTitle</code> div, the following sections describe the styles available on iPhone, Android and Windows Mobile devices, which will generally be referred to as standard smartphones.
79
+ With the exception of the <code>header</code> div, the following sections describe the styles available on iPhone, Android and Windows Mobile devices, which will generally be referred to as standard smartphones.
80
80
 
81
81
  Please refer to [Standard Smartphone CSS/HTML Architecture](standard-css) for a discussion of the html markup and styles available for standard smartphones.
82
82
 
@@ -86,7 +86,7 @@ If you prefer to generate your own custom styles for your application, you can d
86
86
 
87
87
  <ol type="A">
88
88
 
89
- <li><p>Locate content outside of the pageTitle, toolbar and content divs.</p> With the exception of some styles applied to the body, h1 and a tags, the platform-specific stylesheets only apply style to content inside the pageTitle, toolbar and content divs.
89
+ <li><p>Locate content outside of the header, footer and content divs.</p> With the exception of some styles applied to the body, h1 and a tags, the platform-specific stylesheets only apply style to content inside the header, footer and content divs.
90
90
  This option provides the most flexibility in the event you wish to eventually use some of the pre-defined styles.</li>
91
91
 
92
92
  <li><p>Create custom stylesheets </p> You can create custom stylesheets for your application which override some or all of the predefined styles in the generated stylesheets. Make sure these stylesheets are included in the layout after the generated stylesheets to ensure that they fall last in the chain of inheritance.</li>
data/doc/device-caps.txt CHANGED
@@ -13,26 +13,27 @@ Rhodes provide access to device specific capabilities such as GPS, PIM, camera,
13
13
  <th>BlackBerry</th>
14
14
  <th>Android</th>
15
15
  <th>RhoSimulator</th>
16
+ <th>Symbian</th>
16
17
  </tr>
17
- <tr><td class='cap'>GeoLocation</td><td>0.3</td><td>0.3</td><td class='tbd'>TBD</td><td>0.3</td><td>1.0</td><td class='tbd'>3.5</td></tr>
18
- <tr><td class='cap'>PIM Contacts</td><td>0.3</td><td>0.3</td><td class='tbd'>TBD</td><td>0.3</td><td>1.0</td><td class='tbd'>3.5</td></tr>
19
- <tr><td class='cap'>PIM Calendar</td><td>2.2</td><td>2.2</td><td class='tbd'>TBD</td><td>2.2</td><td>2.2</td><td class='tbd'>3.5</td></tr>
20
- <tr><td class='cap'>Camera</td><td>1.0</td><td>1.0</td><td class='tbd'>TBD</td><td>1.0</td><td>1.0</td><td>3.0</td></tr>
21
- <tr><td class='cap'>Barcode</td><td>2.1</td><td>2.1</td><td class='tbd'>TBD</td><td>2.1</td><td>2.1</td><td class='tbd'>4.0</td></tr>
22
- <tr><td class='cap'>Date/Time picker</td><td>1.2.2</td><td>2.0</td><td class='tbd'>TBD</td><td>1.2</td><td>1.2</td><td>3.0</td></tr>
23
- <tr><td class='cap'>Menu</td><td>1.2.2</td><td>2.0</td><td>3.0</td><td>1.2</td><td>1.5</td><td>3.0</td></tr>
24
- <tr><td class='cap'>Toolbar</td><td>1.2.2</td><td>2.3</td><td>3.0</td><td class='tbd'>n/a</td><td>1.5</td><td>3.0</td></tr>
25
- <tr><td class='cap'>Tab Bar</td><td>1.2.2</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td class='tbd'>n/a</td><td>1.5</td><td class='tbd'>3.5</td></tr>
26
- <tr><td class='cap'>Nav Bar</td><td>2.0</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td class='tbd'>n/a</td><td>2.0</td><td class='tbd'>4.0</td></tr>
27
- <tr><td class='cap'>Signature Capture</td><td>2.1</td><td>3.0</td><td class='tbd'>TBD</td><td class='tbd'>3.5</td><td>2.1</td><td class='tbd'>4.0</td></tr>
28
- <tr class='tbd'><td class='cap'>Audio/Video capture</td><td>4.0</td><td>4.0</td><td class='tbd'>TBD</td><td>4.0</td><td>4.0</td><td>4.0</td></tr>
29
- <tr><td class='cap'>Bluetooth</td><td>2.2</td><td>2.2</td><td class='tbd'>TBD</td><td>2.2</td><td>2.2</td><td class='tbd'>4.0</td></tr>
30
- <tr><td class='cap'>NFC</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td>3.0</td><td class='tbd'>4.0</td></tr>
31
- <tr><td class='cap'>Push</td><td>1.2</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td><td>1.2</td><td>2.2</td><td class='tbd'>3.5</td></tr>
32
- <tr><td class='cap'>Screen rotation</td><td>2.1</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td>2.0</td><td>2.1</td><td class='tbd'>3.5</td></tr>
33
- <tr><td class='cap'>Native Maps</td><td>1.4</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td>1.4</td><td>1.5</td><td class='tbd'>3.5</td></tr>
34
- <tr><td class='cap'>Alerts/Audio File Playback</td><td>1.2</td><td>1.5</td><td class='tbd'>TBD</td><td>1.2</td><td>1.2</td><td class='tbd'>3.5</td></tr>
35
- <tr><td class='cap'>Ringtones</td><td>3.5</td><td>1.5</td><td class='tbd'>TBD</td><td>1.5</td><td>1.5</td><td class='tbd'>3.5</td></tr>
18
+ <tr><td class='cap'>GeoLocation</td><td>0.3</td><td>0.3</td><td class='tbd'>TBD</td><td>0.3</td><td>1.0</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
19
+ <tr><td class='cap'>PIM Contacts</td><td>0.3</td><td>0.3</td><td class='tbd'>TBD</td><td>0.3</td><td>1.0</td><td class='tbd'>3.5</td><td>3.1</td></tr>
20
+ <tr><td class='cap'>PIM Calendar</td><td>2.2</td><td>2.2</td><td class='tbd'>TBD</td><td>2.2</td><td>2.2</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
21
+ <tr><td class='cap'>Camera</td><td>1.0</td><td>1.0</td><td class='tbd'>TBD</td><td>1.0</td><td>1.0</td><td>3.0</td><td class='tbd'>TBD</td></tr>
22
+ <tr><td class='cap'>Barcode</td><td>2.1</td><td>2.1</td><td class='tbd'>TBD</td><td>2.1</td><td>2.1</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td></tr>
23
+ <tr><td class='cap'>Date/Time picker</td><td>1.2.2</td><td>2.0</td><td class='tbd'>TBD</td><td>1.2</td><td>1.2</td><td>3.0</td><td class='tbd'>TBD</td></tr>
24
+ <tr><td class='cap'>Menu</td><td>1.2.2</td><td>2.0</td><td>3.0</td><td>1.2</td><td>1.5</td><td>3.0</td><td>3.1</td></tr>
25
+ <tr><td class='cap'>Toolbar</td><td>1.2.2</td><td>2.3</td><td>3.0</td><td class='tbd'>n/a</td><td>1.5</td><td>3.0</td><td>3.1</td></tr>
26
+ <tr><td class='cap'>Tab Bar</td><td>1.2.2</td><td class='tbd'>3.5</td><td>3.0</td><td class='tbd'>n/a</td><td>1.5</td><td>3.1</td><td>3.1</td></tr>
27
+ <tr><td class='cap'>Nav Bar</td><td>2.0</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td class='tbd'>n/a</td><td>2.0</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td></tr>
28
+ <tr><td class='cap'>Signature Capture</td><td>2.1</td><td>3.0</td><td class='tbd'>TBD</td><td class='tbd'>3.5</td><td>2.1</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td></tr>
29
+ <tr class='tbd'><td class='cap'>Audio/Video capture</td><td>4.0</td><td>4.0</td><td class='tbd'>TBD</td><td>4.0</td><td>4.0</td><td>4.0</td><td class='tbd'>TBD</td></tr>
30
+ <tr><td class='cap'>Bluetooth</td><td>2.2</td><td>2.2</td><td class='tbd'>TBD</td><td>2.2</td><td>2.2</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td></tr>
31
+ <tr><td class='cap'>NFC</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td class='tbd'>TBD</td><td>3.0</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td></tr>
32
+ <tr><td class='cap'>Push</td><td>1.2</td><td class='tbd'>4.0</td><td class='tbd'>TBD</td><td>1.2</td><td>2.2</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
33
+ <tr><td class='cap'>Screen rotation</td><td>2.1</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td>2.0</td><td>2.1</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
34
+ <tr><td class='cap'>Native Maps</td><td>1.4</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td><td>1.4</td><td>1.5</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
35
+ <tr><td class='cap'>Alerts/Audio File Playback</td><td>1.2</td><td>1.5</td><td class='tbd'>TBD</td><td>1.2</td><td>1.2</td><td>3.1</td><td class='tbd'>TBD</td></tr>
36
+ <tr><td class='cap'>Ringtones</td><td>3.5</td><td>1.5</td><td class='tbd'>TBD</td><td>1.5</td><td>1.5</td><td class='tbd'>3.5</td><td class='tbd'>TBD</td></tr>
36
37
  </table>
37
38
 
38
39
  ## System class
@@ -135,7 +136,7 @@ as more precise data.
135
136
 
136
137
  The Rhodes framework provides a simple HTML tag for accessing Geolocation information. To use it, include the appropriate javascript library on your page:
137
138
 
138
- * For iPhone, Android: `/public/js/jquery-1.2.6.min.js` and `/public/js/rhogeolocation.js`
139
+ * For iPhone, Android: `/public/jquery/jquery-1.6.2.min.js` and `/public/js/rhogeolocation.js`
139
140
  * For Windows Mobile: `/public/js/rhogeolocation-wm.js`
140
141
  * For BlackBerry: Unsupported. The BlackBerry webview control doesn't support Ajax.
141
142
 
@@ -1032,7 +1033,7 @@ Use System.open_url : you can provide any url with any schema(http, file etc), d
1032
1033
  :::ruby
1033
1034
  System.open_url('http://www.rhomobile.com')
1034
1035
 
1035
- Use rho_open_target=_blank in html link. Note that jqtouch or other javascript library may disable this attribute.
1036
+ Use rho_open_target=_blank in html link. Note that jQuery Mobile or other javascript library may disable this attribute.
1036
1037
  :::html
1037
1038
  <a href="http://www.google.com/?rho_open_target=_blank">Open Google in external browser</a>
1038
1039
 
@@ -1275,8 +1276,8 @@ Open link in external application (browser for http:// links):
1275
1276
 
1276
1277
  Open appstore on iphone: [http://wiki.akosma.com/IPhone_URL_Schemes#App_Store](http://wiki.akosma.com/IPhone_URL_Schemes#App_Store)
1277
1278
 
1278
- ### jQuery/JQtouch
1279
- When using jQuery/JQtouch in application code, you cannot use usual html links for hyperlinks. You need to call controller action and call WebView.navigate from there:
1279
+ ### jQuery/jQuery Mobile
1280
+ When using jQuery and/or jQuery Mobile in application code, you cannot use usual html links for hyperlinks. You need to call controller action and call WebView.navigate from there:
1280
1281
 
1281
1282
  #Ajax call of controller method:
1282
1283
  $.get("/app/TestController/send_mail",function(data) {});
data/doc/generator.txt CHANGED
@@ -65,8 +65,10 @@ The generated application has the following directory structure and files.
65
65
  <default set of css for different platforms>
66
66
  ./public/images:
67
67
  <default images used by js libraries>
68
- ./public/jqtouch:
69
- <jqtouch js script with some rhomobile fixes>
68
+ ./public/jquery:
69
+ <jQuery js script with some rhomobile fixes>
70
+ ./public/jqmobile:
71
+ <jQuery Mobile js script with some rhomobile fixes>
70
72
  ./public/js:
71
73
  <default js libraries>
72
74
 
data/doc/standard-css.txt CHANGED
@@ -2,23 +2,24 @@
2
2
 
3
3
  ## HTML Structure
4
4
 
5
- ### pageTitle (\<div id="pageTitle"\>)
5
+ ### header and toolbar (\<div data-role="header"\>)
6
6
 
7
- The pageTitle div contains the title of the current page, wrapped in an <code>h1</code> tag. The page title will be displayed in the appropriate location for each device.
7
+ The header div contains the title of the current page, wrapped in an <code>h1</code> tag and toolbar as set of <code>a</code> tags. The page title will be displayed in the appropriate location for each device.
8
8
 
9
- The pageTitle div is not displayed on Windows Mobile devices.
10
- :::html
11
- <div id="pageTitle">
12
- <h1>Things</h1>
13
- </div>
9
+ The header div is not displayed on Windows Mobile devices.
14
10
 
15
- ### toolbar (\<div id="toolbar"\>)
11
+ :::html
12
+ <div data-role="header" data-position="inline">
13
+ <h1>Things</h1>
14
+ <a href="#" class="ui-btn-left">Left button</a>
15
+ <a href="#" class="ui-btn-right">Right button</a>
16
+ </div>
16
17
 
17
- The toolbar <code>div</code> contains contains interaction elements that allow users to perform actions and navigate through the application. Most frequently, these elements are links styled as buttons.
18
+ The toolbar contains interaction elements that allow users to perform actions and navigate through the application. Most frequently, these elements are links styled as buttons.
19
+ The toolbar <code>div</code> is displayed at the top of the page on standard smartphones.
18
20
 
19
- The toolbar <code>div</code> is displayed at the top of the page on standard smartphones.
20
21
  <ul>
21
- <li>On the iPhone, the content of the toolbar is overlaid on top of the <code>pageTitle</code> div.</li>
22
+ <li>On the iPhone, the content of the toolbar is overlaid on top of the <code>header</code> div.</li>
22
23
  <li>On Android, the application toolbar is typically displayed at the bottom of the screen. However, the <code>position:fixed</code> attribute does not exhibit the expected behavior in webkit-based mobile browsers. To ensure that the view is rendered at the appropriate resolution, mobile webkit-based browsers use a viewport to determine which content is displayed. </li>
23
24
  </ul>
24
25
 
@@ -32,12 +33,12 @@ You can read more about the conflict between viewports and fixed positioning at
32
33
 
33
34
  The toolbar div supports three positions:
34
35
  <ul>
35
- <li><code>#leftItem</code></li>
36
- <li><code>#rightItem</code></li>
37
- <li><code>#centerItem</code></li>
36
+ <li><code>class="ui-btn-left"</code></li>
37
+ <li><code>class="ui-btn-center"</code></li>
38
+ <li><code>class="ui-btn-right"</code></li>
38
39
  </ul>
39
40
 
40
- Note that placing an item in the <code>#centerItem</code> div will prevent the page title from being displayed on the iPhone, and is not in compliance with Apple's human interface guidelines.
41
+ Note that placing an item as the <code><a class="ui-btn-center>"</code> tag will prevent the page title from being displayed on the iPhone, and is not in compliance with Apple's human interface guidelines.
41
42
  If you wish to include more than two items in an application targeting iPhone, you may wish to add a secondary toolbar directly below the application toolbar.
42
43
 
43
44
  #### Toolbar Button Styles
@@ -80,7 +81,7 @@ Four button styles are supported for the toolbar. Note that variation in height
80
81
 
81
82
  **NOTE: the variation in width of the buttons for Android is due to the length of the text in the button, and should not be attributed to the classes described in this section. **
82
83
 
83
- ### Content (\<div id="content"\>)
84
+ ### Content (\<div data-role="content"\>)
84
85
 
85
86
  The features described below are only accessible when used inside the content div.
86
87
 
@@ -107,32 +108,6 @@ Sample: no current example
107
108
  <li><%= link_to :controller => :Purchase %></li>
108
109
  </ul>
109
110
 
110
- Sample: none
111
-
112
- ##### List with disclosure indicators (">")
113
-
114
- :::html
115
- <ul>
116
- <li>
117
- <a href="<%= url_for :action => :show, :id => obj.object %>">
118
- <span class="title">Product</span>
119
- <span class="disclosure_indicator"></span>
120
- </a>
121
- </li>
122
- <li>
123
- <a href="<%= url_for :action => :show, :id => obj.object %>">
124
- <span class="title"> Inventory </span>
125
- <span class="disclosure_indicator"></span>
126
- </a>
127
- </li>
128
- <li>
129
- <a href="<%= url_for :action => :show, :id => obj.object %>">
130
- <span class="title"> Location </span>
131
- <span class="disclosure_indicator"></span>
132
- </a>
133
- </li>
134
- </ul>
135
-
136
111
  Sample: generated application index.erb page
137
112
 
138
113
  **NOTE: Disclosure indicators are only displayed on iPhone, and are not displayed on Android or Windows Mobile. **
data/doc/tutorial.txt CHANGED
@@ -64,44 +64,38 @@ You can edit the generated ERB files to customize the HTML as you see fit. Typi
64
64
 
65
65
 
66
66
  :::ruby
67
- <div id="pageTitle">
68
- <h1>Storemanager</h1>
69
- </div>
67
+ <div data-role="page">
68
+
69
+ <div data-role="header" data-position="inline">
70
+ <h1>Storemanager</h1>
71
+ <% if SyncEngine::logged_in > 0 %>
72
+ <a href="<%= url_for :controller => :Settings, :action => :do_sync %>" class="ui-btn-left" data-icon="refresh">Sync</a>
73
+ <a href="<%= url_for :controller => :Settings, :action => :logout %>" class="ui-btn-right" data-icon="star">Logout</a>
74
+ <% else %>
75
+ <a href="<%= url_for :controller => :Settings, :action => :login %>" class="ui-btn-right" data-icon="star">Login</a>
76
+ <% end %>
77
+ </div>
70
78
 
71
- <div id="toolbar">
72
- <div id="leftItem" class="blueButton">
73
- <%= link_to "Sync", :controller => :Settings, :action => :do_sync %>
79
+ <div data-role="content">
80
+ <ul data-role="listview">
81
+ <li>
82
+ <a href="#">Add Links Here...</a>
83
+ </li>
84
+ </ul>
85
+ </div>
86
+
87
+ <div data-role="footer" data-position="inline">
88
+ <p>it is optional part of page..</p>
74
89
  </div>
75
- <% if SyncEngine::logged_in > 0 %>
76
- <div id="rightItem" class="regularButton">
77
- <%= link_to "Logout", :controller => :Settings, :action => :logout %>
78
- </div>
79
- <% else %>
80
- <div id="rightItem" class="regularButton">
81
- <%= link_to "Login", :controller => :Settings, :action => :login %>
82
- </div>
83
- <% end %>
84
- </div>
85
90
 
86
- <div id="content">
87
- <ul>
88
- <li>
89
- <a href="#">
90
- <span class="title">Add Links Here...</span>
91
- <span class="disclosure_indicator"></span>
92
- </a>
93
- </li>
94
- </ul>
95
91
  </div>
96
92
 
93
+
97
94
  To provide a link to the Product model's index page and templates you can replace the list item with the title "Add links here" with:
98
95
 
99
96
  :::ruby
100
97
  <li>
101
- <a href="Product">
102
- <span class="title">Products</span>
103
- <span class="disclosure_indicator"></span>
104
- </a>
98
+ <a href="Product">Products</a>
105
99
  </li>
106
100
 
107
101
  <img src="http://img.skitch.com/20100512-grk9ymqwj66jypdckthmm5484n.png"/>