netzke-basepack 0.7.7 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (192) hide show
  1. data/.travis.yml +15 -10
  2. data/{CHANGELOG.rdoc → CHANGELOG.md} +146 -110
  3. data/LICENSE +7 -1
  4. data/README.md +47 -56
  5. data/Rakefile +5 -5
  6. data/config/before-travis.sh +10 -0
  7. data/javascripts/basepack.js +0 -130
  8. data/javascripts/netzkeremotecombo.js +59 -0
  9. data/lib/netzke/basepack.rb +9 -14
  10. data/lib/netzke/basepack/accordion.rb +45 -0
  11. data/lib/netzke/basepack/active_record.rb +12 -0
  12. data/lib/netzke/basepack/active_record/relation_extensions.rb +27 -0
  13. data/lib/netzke/basepack/columns.rb +309 -0
  14. data/lib/netzke/basepack/data_accessor.rb +22 -12
  15. data/lib/netzke/basepack/data_adapters/abstract_adapter.rb +75 -11
  16. data/lib/netzke/basepack/data_adapters/active_record_adapter.rb +154 -49
  17. data/lib/netzke/basepack/fields.rb +162 -0
  18. data/lib/netzke/basepack/form.rb +136 -0
  19. data/lib/netzke/basepack/{form_panel → form}/javascripts/comma_list_cbg.js +0 -1
  20. data/lib/netzke/basepack/{form_panel/javascripts/form_panel.js → form/javascripts/form.js} +20 -26
  21. data/lib/netzke/basepack/{form_panel → form}/javascripts/n_radio_group.js +0 -1
  22. data/lib/netzke/basepack/{form_panel → form}/javascripts/readonly_mode.js +0 -0
  23. data/lib/netzke/basepack/form/services.rb +115 -0
  24. data/lib/netzke/basepack/{form_panel → form}/stylesheets/readonly_mode.css +0 -0
  25. data/lib/netzke/basepack/grid.rb +355 -0
  26. data/lib/netzke/basepack/{grid_panel → grid}/javascripts/advanced_search.js +1 -1
  27. data/lib/netzke/basepack/{grid_panel → grid}/javascripts/check_column_fix.js +0 -0
  28. data/lib/netzke/basepack/{grid_panel → grid}/javascripts/edit_in_form.js +3 -3
  29. data/lib/netzke/basepack/{grid_panel → grid}/javascripts/event_handling.js +5 -2
  30. data/lib/netzke/basepack/{grid_panel/javascripts/grid_panel.js → grid/javascripts/grid.js} +120 -132
  31. data/lib/netzke/basepack/{grid_panel → grid}/javascripts/misc.js +0 -0
  32. data/lib/netzke/basepack/grid/services.rb +216 -0
  33. data/lib/netzke/basepack/item_persistence.rb +44 -0
  34. data/lib/netzke/basepack/item_persistence/events_plugin.rb +47 -0
  35. data/lib/netzke/basepack/{paging_form_panel.rb → paging_form.rb} +24 -30
  36. data/lib/netzke/basepack/{paging_form_panel/javascripts/paging_form_panel.js → paging_form/javascripts/paging_form.js} +2 -4
  37. data/lib/netzke/basepack/query_builder.rb +44 -73
  38. data/lib/netzke/basepack/query_builder/javascripts/query_builder.js +16 -2
  39. data/lib/netzke/basepack/record_form_window.rb +67 -0
  40. data/lib/netzke/basepack/search_panel.rb +22 -24
  41. data/lib/netzke/basepack/search_panel/javascripts/condition_field.js +2 -2
  42. data/lib/netzke/basepack/search_window.rb +47 -53
  43. data/lib/netzke/basepack/simple_app.rb +10 -13
  44. data/lib/netzke/basepack/simple_app/javascripts/simple_app.js +2 -8
  45. data/lib/netzke/basepack/tab_panel.rb +5 -4
  46. data/lib/netzke/basepack/tab_panel/javascripts/tab_panel.js +5 -5
  47. data/lib/netzke/basepack/version.rb +2 -2
  48. data/lib/netzke/basepack/viewport.rb +16 -0
  49. data/lib/netzke/basepack/window.rb +27 -18
  50. data/lib/netzke/basepack/window/javascripts/window.js +7 -1
  51. data/lib/netzke/basepack/wrap_lazy_loaded.rb +18 -18
  52. data/locales/en.yml +40 -24
  53. data/netzke-basepack.gemspec +51 -82
  54. data/stylesheets/basepack.css +0 -41
  55. data/test/basepack_test_app/Gemfile +9 -46
  56. data/test/basepack_test_app/Gemfile.lock +61 -96
  57. data/test/basepack_test_app/app/components/author_form.rb +8 -5
  58. data/test/basepack_test_app/app/components/author_grid.rb +2 -2
  59. data/test/basepack_test_app/app/components/book_form.rb +34 -31
  60. data/test/basepack_test_app/app/components/book_form_with_defaults.rb +6 -7
  61. data/test/basepack_test_app/app/components/book_form_with_file_upload.rb +10 -0
  62. data/test/basepack_test_app/app/components/book_form_with_nested_attributes.rb +5 -6
  63. data/test/basepack_test_app/app/components/book_grid.rb +19 -8
  64. data/test/basepack_test_app/app/components/book_grid_filtering.rb +4 -7
  65. data/test/basepack_test_app/app/components/book_grid_loader.rb +28 -15
  66. data/test/basepack_test_app/app/components/book_grid_with_custom_columns.rb +45 -21
  67. data/test/basepack_test_app/app/components/book_grid_with_default_values.rb +26 -8
  68. data/test/basepack_test_app/app/components/book_grid_with_excluded_columns.rb +11 -0
  69. data/test/basepack_test_app/app/components/book_grid_with_extra_feedback.rb +2 -2
  70. data/test/basepack_test_app/app/components/book_grid_with_extra_filters.rb +7 -6
  71. data/test/basepack_test_app/app/components/book_grid_with_mass_assignment_security.rb +9 -0
  72. data/test/basepack_test_app/app/components/book_grid_with_nested_attributes.rb +9 -9
  73. data/test/basepack_test_app/app/components/book_grid_with_overridden_columns.rb +5 -3
  74. data/test/basepack_test_app/app/components/book_grid_with_paging.rb +6 -8
  75. data/test/basepack_test_app/app/components/book_grid_with_persistence.rb +6 -4
  76. data/test/basepack_test_app/app/components/book_grid_with_scope.rb +6 -0
  77. data/test/basepack_test_app/app/components/book_grid_with_scoped_authors.rb +10 -7
  78. data/test/basepack_test_app/app/components/book_grid_with_virtual_attributes.rb +21 -13
  79. data/test/basepack_test_app/app/components/book_paging_form.rb +21 -0
  80. data/test/basepack_test_app/app/components/book_query_builder.rb +7 -6
  81. data/test/basepack_test_app/app/components/book_with_custom_primary_key_grid.rb +6 -7
  82. data/test/basepack_test_app/app/components/books_bound_to_author.rb +9 -7
  83. data/test/basepack_test_app/app/components/border_layout_panel_with_persistence.rb +12 -0
  84. data/test/basepack_test_app/app/components/double_book_grid.rb +19 -14
  85. data/test/basepack_test_app/app/components/form_without_model.rb +15 -16
  86. data/test/basepack_test_app/app/components/grid_with_initial_sorting.rb +7 -0
  87. data/test/basepack_test_app/app/components/grid_with_inline_data.rb +7 -0
  88. data/test/basepack_test_app/app/components/paging_form_with_search.rb +2 -2
  89. data/test/basepack_test_app/app/components/panel_with_persistent_regions.rb +35 -0
  90. data/test/basepack_test_app/app/components/query_builder.rb +7 -0
  91. data/test/basepack_test_app/app/components/simple_panel.rb +16 -11
  92. data/test/basepack_test_app/app/components/simple_window.rb +7 -6
  93. data/test/basepack_test_app/app/components/some_accordion.rb +18 -0
  94. data/test/basepack_test_app/app/components/some_auth_app.rb +5 -5
  95. data/test/basepack_test_app/app/components/some_border_layout.rb +20 -20
  96. data/test/basepack_test_app/app/components/some_search_panel.rb +6 -0
  97. data/test/basepack_test_app/app/components/some_simple_app.rb +30 -16
  98. data/test/basepack_test_app/app/components/some_tab_panel.rb +18 -15
  99. data/test/basepack_test_app/app/components/user_form.rb +18 -16
  100. data/test/basepack_test_app/app/components/user_form_with_default_fields.rb +5 -6
  101. data/test/basepack_test_app/app/components/user_grid.rb +11 -6
  102. data/test/basepack_test_app/app/components/user_grid_with_customized_form_fields.rb +5 -3
  103. data/test/basepack_test_app/app/components/window_component_loader.rb +25 -21
  104. data/test/basepack_test_app/app/models/address.rb +0 -26
  105. data/test/basepack_test_app/app/models/author.rb +0 -31
  106. data/test/basepack_test_app/app/models/book.rb +1 -42
  107. data/test/basepack_test_app/app/models/book_with_custom_primary_key.rb +1 -23
  108. data/test/basepack_test_app/app/models/role.rb +0 -21
  109. data/test/basepack_test_app/app/models/user.rb +0 -24
  110. data/test/basepack_test_app/app/views/layouts/components.html.erb +1 -1
  111. data/test/basepack_test_app/config/application.rb +1 -1
  112. data/test/basepack_test_app/config/database.yml.travis +2 -6
  113. data/test/basepack_test_app/config/initializers/netzke.rb +1 -6
  114. data/test/basepack_test_app/db/schema.rb +14 -14
  115. data/test/basepack_test_app/features/accordion_panel.feature +2 -2
  116. data/test/basepack_test_app/features/form_panel.feature +7 -7
  117. data/test/basepack_test_app/features/grid_panel.feature +93 -39
  118. data/test/basepack_test_app/features/grid_panel_with_custom_primary_key.feature +2 -1
  119. data/test/basepack_test_app/features/grid_sorting.feature +30 -6
  120. data/test/basepack_test_app/features/paging_form_panel.feature +7 -7
  121. data/test/basepack_test_app/features/persistent_regions.feature +30 -0
  122. data/test/basepack_test_app/features/search_in_grid.feature +5 -5
  123. data/test/basepack_test_app/features/simple_app.feature +6 -7
  124. data/test/basepack_test_app/features/step_definitions/form_panel_steps.rb +1 -1
  125. data/test/basepack_test_app/features/step_definitions/generic_steps.rb +109 -4
  126. data/test/basepack_test_app/features/step_definitions/grid_panel_steps.rb +8 -10
  127. data/test/basepack_test_app/features/step_definitions/window_steps.rb +27 -0
  128. data/test/basepack_test_app/features/tab_panel.feature +1 -1
  129. data/test/basepack_test_app/features/window.feature +17 -0
  130. data/test/unit/accordion_panel_test.rb +2 -2
  131. data/test/unit/grid_panel_test.rb +4 -4
  132. metadata +57 -83
  133. data/TODO.rdoc +0 -8
  134. data/lib/generators/netzke/basepack_generator.rb +0 -10
  135. data/lib/generators/netzke/templates/assets/ts-checkbox.gif +0 -0
  136. data/lib/generators/netzke/templates/create_netzke_field_lists.rb +0 -18
  137. data/lib/netzke/active_record.rb +0 -20
  138. data/lib/netzke/active_record/attributes.rb +0 -259
  139. data/lib/netzke/active_record/combobox_options.rb +0 -16
  140. data/lib/netzke/active_record/relation_extensions.rb +0 -37
  141. data/lib/netzke/basepack/accordion_panel.rb +0 -39
  142. data/lib/netzke/basepack/action_column.rb +0 -68
  143. data/lib/netzke/basepack/action_column/javascripts/action_column.js +0 -61
  144. data/lib/netzke/basepack/auth_app.rb +0 -159
  145. data/lib/netzke/basepack/basic_app.rb +0 -7
  146. data/lib/netzke/basepack/border_layout_panel.rb +0 -53
  147. data/lib/netzke/basepack/border_layout_panel/javascripts/border_layout_panel.js +0 -40
  148. data/lib/netzke/basepack/data_adapters/data_mapper_adapter.rb +0 -264
  149. data/lib/netzke/basepack/data_adapters/sequel_adapter.rb +0 -260
  150. data/lib/netzke/basepack/form_panel.rb +0 -144
  151. data/lib/netzke/basepack/form_panel/fields.rb +0 -208
  152. data/lib/netzke/basepack/form_panel/javascripts/misc.js +0 -4
  153. data/lib/netzke/basepack/form_panel/services.rb +0 -142
  154. data/lib/netzke/basepack/grid_panel.rb +0 -441
  155. data/lib/netzke/basepack/grid_panel/columns.rb +0 -400
  156. data/lib/netzke/basepack/grid_panel/javascripts/rows-dd.js +0 -281
  157. data/lib/netzke/basepack/grid_panel/record_form_window.rb +0 -41
  158. data/lib/netzke/basepack/grid_panel/services.rb +0 -235
  159. data/lib/netzke/basepack/panel.rb +0 -11
  160. data/lib/netzke/basepack/wrapper.rb +0 -28
  161. data/lib/netzke/data_mapper.rb +0 -18
  162. data/lib/netzke/data_mapper/attributes.rb +0 -273
  163. data/lib/netzke/data_mapper/combobox_options.rb +0 -11
  164. data/lib/netzke/data_mapper/relation_extensions.rb +0 -38
  165. data/lib/netzke/sequel.rb +0 -18
  166. data/lib/netzke/sequel/attributes.rb +0 -274
  167. data/lib/netzke/sequel/combobox_options.rb +0 -10
  168. data/lib/netzke/sequel/relation_extensions.rb +0 -40
  169. data/locales/zh-cn.yml +0 -79
  170. data/test/basepack_test_app/app/components/book_form_with_custom_fields.rb +0 -21
  171. data/test/basepack_test_app/app/components/book_grid_with_column_actions.rb +0 -15
  172. data/test/basepack_test_app/app/components/book_grid_with_defaults.rb +0 -6
  173. data/test/basepack_test_app/app/components/book_paging_form_panel.rb +0 -22
  174. data/test/basepack_test_app/app/components/generic_user_form.rb +0 -12
  175. data/test/basepack_test_app/app/components/simple_accordion.rb +0 -11
  176. data/test/basepack_test_app/app/components/simple_tab_panel.rb +0 -11
  177. data/test/basepack_test_app/app/components/simple_wrapper.rb +0 -7
  178. data/test/basepack_test_app/app/components/some_accordion_panel.rb +0 -22
  179. data/test/basepack_test_app/app/presenters/forms/generic_user.rb +0 -6
  180. data/test/basepack_test_app/app/views/components/loadable_window.html.erb +0 -9
  181. data/test/basepack_test_app/app/views/components/simple_panel.html.erb +0 -1
  182. data/test/basepack_test_app/features/components_in_view.feature +0 -11
  183. data/test/basepack_test_app/features/simple_panel.feature +0 -11
  184. data/test/basepack_test_app/features/validations_in_grid.feature +0 -13
  185. data/test/basepack_test_app/features/virtual_attributes.feature +0 -16
  186. data/test/basepack_test_app/spec/components/form_panel_spec.rb +0 -53
  187. data/test/basepack_test_app/spec/components/grid_panel_spec.rb +0 -10
  188. data/test/basepack_test_app/spec/data_adapter/adapter_spec.rb +0 -68
  189. data/test/basepack_test_app/spec/data_adapter/attributes_spec.rb +0 -56
  190. data/test/basepack_test_app/spec/data_adapter/relation_extensions_spec.rb +0 -125
  191. data/test/basepack_test_app/spec/factories.rb +0 -28
  192. data/test/basepack_test_app/spec/spec_helper.rb +0 -39
data/.travis.yml CHANGED
@@ -1,11 +1,16 @@
1
+ language: ruby
1
2
  rvm:
2
- - 1.9.2
3
-
4
- env:
5
- - ORM=ar
6
- - ORM=dm
7
- - ORM=sq
8
-
9
- bundler_args: "--without development production profiling"
10
- before_script: "./config/ci/before-travis.sh"
11
- script: "cd test/basepack_test_app ; bundle exec rake travis"
3
+ - 1.9.3
4
+ gemfile:
5
+ - test/basepack_test_app/Gemfile
6
+ before_script:
7
+ - chmod 777 ./config/before-travis.sh
8
+ - ./config/before-travis.sh
9
+ script:
10
+ - export DISPLAY=:99.0
11
+ - cd test/basepack_test_app
12
+ - bundle exec rake db:create db:migrate RAILS_ENV=test
13
+ - bundle exec cucumber features
14
+ branches:
15
+ only:
16
+ - master
@@ -1,29 +1,65 @@
1
- = 0.7.7 - 2012-10-20
2
- * Ext JS 4.1.x support
1
+ # 0.8.0 - WIP
2
+ * Basepack component renaming:
3
+ * GridPanel -> Grid
4
+ * FormPanel -> Form
5
+ * AccordionPanel -> Accordion
3
6
 
4
7
  * improvements
5
- * cleaner handling of association column editing in GridPanel
8
+ * Grid/Form respect `attr_accessible` and `attr_protected` on the model; set the `role` config option on them to tune mass-assignment security
9
+ * New `data_store` config option in Grid
10
+ * Major internal refactorings
11
+ * Window now also stores its 'maximized' state
6
12
 
7
- * bug fix
8
- * models with non-conventional primary keys could not be updated by gridpanel (davide)
9
- * GridPanel's default forms respect "read_only" and "editable" config in fields
13
+ * changes
14
+ * BorderLayoutPanel is removed. Any component can now enable its items persistence by including `Netzke::Basepack::ItemPersistence` module
15
+ * Methods like `netzke_attribute`, `netzke_expose_attributes` etc are gone. Define your columns/fields directly in your grids/forms.
16
+ * Accordion and TabPanel now lazily load the Netzke components by default; set `eager_loading` to true for the components that should be loaded eagerly.
17
+
18
+ ## Grid
19
+
20
+ ### Customizing grid's forms
21
+
22
+ The windows with a form inside, which is used for adding/(multi-)editing of records, are now referred as: `add_window`, `edit_window` (instead of `add_form` and `edit_form`). Both accept a config param `form_config`, which can be used to configure the contained Form - e.g., to change its layout or even class. For example, to change the layout of a form that is found in the edit window, do the following in your grid class:
23
+
24
+ component :edit_window do |c|
25
+ super(c)
26
+ c.form_config.items = [:name, :author__name]
27
+ end
28
+
29
+ DSL methods `add_form_config`, `edit_form_config`, `multi_edit_form_config`, `add_form_window_config`, `edit_form_window_config`, `multi_edit_form_window_config` are gone.
30
+
31
+ ### Customizing columns
32
+
33
+ Use the new `column` DSL method that accepts a block:
34
+
35
+ column :extra_column do |c|
36
+ c.text = "Extra"
37
+ end
38
+
39
+ If needed, this can be overridden in the subclass the same way as components and actions can be.
40
+
41
+ DSL method `override_column` is gone.
42
+
43
+ ### Misc
44
+
45
+ `Grid.extended_search_available` -> `Grid.advanced_search_available`
10
46
 
11
- = 0.7.6 - 2012-07-27
47
+ # 0.7.6 - 2012-07-27
12
48
  * Fix netzke-core version dependency in gemspec
13
49
 
14
- = 0.7.5 - 2012-07-27
50
+ # 0.7.5 - 2012-07-27
15
51
  * Rails 3.2
16
52
 
17
53
  * improvements
18
54
  * data-related operations in grids and forms are moved to data adapters; implemented (partial) support for DataMapper and Sequel (see updated README)
19
55
  * afterApply event in forms and grids (pschyska)
20
- * apply event fired before apply button is processed in FormPanel (pschyska)
56
+ * apply event fired before apply button is processed in Form (pschyska)
21
57
 
22
58
  * bug fix
23
59
  * advanced search panel works again (pididi)
24
60
  * fixed a problem with session and GridPanel
25
61
 
26
- = 0.7.4 - 2012-03-05
62
+ # 0.7.4 - 2012-03-05
27
63
  * bug fix
28
64
  * :enable_pagination is now respected in GridPanel
29
65
  * Virtual columns are not sortable by default now
@@ -31,15 +67,15 @@
31
67
  * Make Window respect persistence: false
32
68
  * Disable persistence for search window in GridPanel
33
69
 
34
- = 0.7.3 - 2011-10-23
70
+ # 0.7.3 - 2011-10-23
35
71
  * bug fix
36
72
  * :sorting_scope is now respected in GridPanel
37
73
  * regression: filtering on association column is fix (covered with tests)
38
74
 
39
- = 0.7.2 - 2011-10-20
75
+ # 0.7.2 - 2011-10-20
40
76
  * bug fix
41
77
  * Filter on a date column
42
- * Using date column caused FormPanel to crash
78
+ * Using date column caused Form to crash
43
79
  * Virtual columns are no longer editable by default
44
80
 
45
81
  * improvements
@@ -48,44 +84,44 @@
48
84
  * New :override_columns config option for grid allows overriding specified column config without influencing other columns' order/presence
49
85
  * New DSL method (override_column) to override a specific column config without influencing other columns' order/presence.
50
86
  * Grid's title is set to model's pluralized name by default.
51
- * New :read_only option for FormPanel - makes all fields read-only and removes the "Apply" button.
52
- * FormPanel implements DSL shortcuts for the following options in default config: :model, :items, :record_id.
87
+ * New :read_only option for Form - makes all fields read-only and removes the "Apply" button.
88
+ * Form implements DSL shortcuts for the following options in default config: :model, :items, :record_id.
53
89
  * GridPanel implements DSL shortcuts for the following options in default config: :model, :add_form_config, :edit_form_config, :multi_edit_form_config.
54
- * New FormPanel option :multi_edit - set when the form is used for editing multiple records at a time
90
+ * New Form option :multi_edit - set when the form is used for editing multiple records at a time
55
91
  * Introduce action columns (see BookGridWithColumnActions)
56
92
 
57
93
  * API changes
58
94
  * Skip supporting ModelExtensions. The preferred way is using setters and getters on columns/fields.
59
95
 
60
- = 0.7.1 - 2011-09-04
96
+ # 0.7.1 - 2011-09-04
61
97
  * bug fix
62
- * FormPanel: fix the netzke_load endpoint when association fields are present
98
+ * Form: fix the netzke_load endpoint when association fields are present
63
99
  * dates were not displayed in date fields, and submitting a form with date fields might result in erasing those fields
64
100
 
65
101
  * Rails 3.1 compatibility
66
102
  * no meta_where dependencies (searching and filtering done with Arel)
67
103
 
68
- = 0.7.0 - 2011-08-09
104
+ # 0.7.0 - 2011-08-09
69
105
  * Core 0.7.0 and Ext 4 compatibility
70
106
  * API changes
71
107
  * [JS] Removed the helper BorderLayoutPanel#get<Region>Component method altogether. Use Ext 4 Container#child instead
72
108
 
73
- = v0.6.5 - to be released
109
+ # v0.6.5 - to be released
74
110
  * enhancements
75
111
  * When columns states are saved in the persistent storage, adding/removing columns (e.g. in the code) will reset the saved states
76
112
  * Moved features and specs to test/basepack_test_app
77
113
  * bug fix
78
- * FormPanel with multiple association fields wouldn't submit data correctly
79
- * GridPanel's forms take over the +text+ configuration option for columns as +fieldLabel+ for default fields
114
+ * Form with multiple association fields wouldn't submit data correctly
115
+ * GridPanel's forms take over the `text` configuration option for columns as `fieldLabel` for default fields
80
116
 
81
- = v0.6.4 - 2011-02-26
117
+ # v0.6.4 - 2011-02-26
82
118
  * API changes
83
119
  * The combo field able to talk to the server has changed its xtype from combobox to netzkeremotecombo. When getting values from the server via AJAX, it expects a 2-dimensional array now, where the first value is the real value (which gets submitted), and the second value is the display value.
84
120
  * xdatetime is no more. datetimefield is used instead.
85
121
 
86
122
  * enhancements
87
123
  * Components updated to use Ext.Direct (by @pschyska)
88
- * New, improved advanced search for GridPanel and PagingFormPanel.
124
+ * New, improved advanced search for GridPanel and PagingForm.
89
125
  * One-to-many association support in Form/GridPanel reworked to use the foreign id instead of a string. This gives us more flexibility about what to display in the association column/field, and also provides for performance improvements (no more need to search for the associated record based on the value provided from the column/field).
90
126
  * GridPanel now memorizes its columns visibility, position and size (when :persistence is set to true)
91
127
  * I18n for GridPanel
@@ -95,11 +131,11 @@
95
131
  * bug fix
96
132
  * Long-standing visual issues with datetime columns in grid panel are solved.
97
133
 
98
- = v0.6.3 - 2011-01-14
134
+ # v0.6.3 - 2011-01-14
99
135
  * compatibility with netzke-core 0.6.5
100
136
 
101
137
  * refactoring
102
- * GridPanel code restructured, using the new +js_mixin+ method
138
+ * GridPanel code restructured, using the new `js_mixin` method
103
139
 
104
140
  * bug fix
105
141
  * GridPanel respects strong_default_attrs
@@ -108,24 +144,24 @@
108
144
  * Filtering on date columns
109
145
 
110
146
  * enhancements
111
- * I18n for Grid/FormPanel
112
- * new +getter+ config option for columns/fields, a lambda receiving the record as parameter
113
- * new +setter+ config option for columns/fields, a lambda receiving the record as first parameter, new value as the second
147
+ * I18n for Grid/Form
148
+ * new `getter` config option for columns/fields, a lambda receiving the record as parameter
149
+ * new `setter` config option for columns/fields, a lambda receiving the record as first parameter, new value as the second
114
150
  * GridPanel passes columns' default values to the "Add in form" form
115
- * FormPanel can now be used without specifying a model
116
- * New +commalistcbg+ form field for checkboxes, where boxLabels of selected checkboxes are serialized into comma-separated string (the separator is configurable)
117
- * New +nradiogroup+ form field for radio buttons, where the value is defined by the boxLabel of the selected radio button
118
- * New +no_binding+ option for configuring a form field. Set it to "true" when you don't want Netzke to expand the field configuration based on the +name+ property. May be needed in some cases, e.g. when using checkboxes/radio buttons in the form.
119
- * New +nested_attribute+ option for configuring data attributes (thus applicable for a column, a field, or a +netzke_attribute+ in the model). When set to true for an association attribute (e.g. author__name), assigning a value to it will change the association's attribute, *not* trying to find an association by name and reassign it if found (default behavior).
120
- * FormPanel shows the "Updating..." mask while sending values to the server (configurable with updateMask option/property)
121
- * FormPanel now can be used in the "lockable" mode (:config => :lockable), which makes it load initially in "display mode", then "unlock" it, change the values, and "lock" it again (updating the values on the server)
122
-
123
- = v0.6.2 - 2010-11-05
151
+ * Form can now be used without specifying a model
152
+ * New `commalistcbg` form field for checkboxes, where boxLabels of selected checkboxes are serialized into comma-separated string (the separator is configurable)
153
+ * New `nradiogroup` form field for radio buttons, where the value is defined by the boxLabel of the selected radio button
154
+ * New `no_binding` option for configuring a form field. Set it to "true" when you don't want Netzke to expand the field configuration based on the `name` property. May be needed in some cases, e.g. when using checkboxes/radio buttons in the form.
155
+ * New `nested_attribute` option for configuring data attributes (thus applicable for a column, a field, or a `netzke_attribute` in the model). When set to true for an association attribute (e.g. author__name), assigning a value to it will change the association's attribute, *not* trying to find an association by name and reassign it if found (default behavior).
156
+ * Form shows the "Updating..." mask while sending values to the server (configurable with updateMask option/property)
157
+ * Form now can be used in the "lockable" mode (:config => :lockable), which makes it load initially in "display mode", then "unlock" it, change the values, and "lock" it again (updating the values on the server)
158
+
159
+ # v0.6.2 - 2010-11-05
124
160
  * compatibility with netzke-core 0.6.4
125
161
  * bug fix
126
162
  * BorderLayoutPanel persistence fix
127
163
 
128
- = v0.6.1 - 2010-11-04
164
+ # v0.6.1 - 2010-11-04
129
165
  * enhancements
130
166
  * BorderLayoutPanel persistence: remembers region sizes and collapsed/expanded states
131
167
  * tooltips for grid buttons
@@ -133,29 +169,29 @@
133
169
  * bug fix
134
170
  * auto-detection of association's method when the latter is virtual was broken in 1.9.2
135
171
 
136
- = v0.6.0 - 2010-10-24
172
+ # v0.6.0 - 2010-10-24
137
173
  * netzke-core 0.6.0 compatibility, thorough refactoring
138
174
  * Much more thorough testing (cucumber and rspec)
139
- * FormPanel/GridPanel dynamic column/field configuration has been left out (planned for a separate gem)
175
+ * Form/GridPanel dynamic column/field configuration has been left out (planned for a separate gem)
140
176
  * different bug fixes
141
177
 
142
178
  * enhancements
143
- * if omitted in config, a column for the primary key is automatically added to Grid/FormPanel
179
+ * if omitted in config, a column for the primary key is automatically added to Grid/Form
144
180
 
145
181
  * API incompatibilities
146
- * in FormPanel, define the fields layout directly in :items, not in :fields or :columns
182
+ * in Form, define the fields layout directly in :items, not in :fields or :columns
147
183
 
148
184
  * new
149
- * FormPanel allows for arbitrary layout of fields
185
+ * Form allows for arbitrary layout of fields
150
186
 
151
- = v0.5.14 - 2010-09-08
187
+ # v0.5.14 - 2010-09-08
152
188
  * bug fix
153
189
  * fields configurator wouldn't open in some cases
154
190
  * icons location was hardcoded in search panel (credits to @pschyska)
155
191
  * quick fix for datetimes not being displayed in the preferred timezone
156
192
  * ext_config options :enable_edit_in_form and :enable_advanced_search now do have effect
157
- * PropertyEditor fixed for Grid/FormPanel
158
- * Grid/FormPanel again obeys persistent_config option when loading columns/fields
193
+ * PropertyEditor fixed for Grid/Form
194
+ * Grid/Form again obeys persistent_config option when loading columns/fields
159
195
 
160
196
  * enhancements
161
197
  * numberfield is default in grids also for columns of type float
@@ -163,33 +199,33 @@
163
199
  * combobox options can now be searched ("type ahead") also in virtual columns (not efficient though, use at own risk!)
164
200
  * overriding an already existing attribute with `netzke_attribute` now also has effect on association attributes, such as boss__name
165
201
 
166
- = v0.5.13 - 2010-08-11
202
+ # v0.5.13 - 2010-08-11
167
203
  * regression
168
204
  * combobox options configuration again has effect
169
205
 
170
206
  * bug fix
171
207
  * when a TabPanel was used as a standalone widget, the first tab was rendered empty
172
- * Grid/FormPanel: dynamically changing of columns doesn't erase those column settings that are not configurable via GUI, but which were specified in the code
208
+ * Grid/Form: dynamically changing of columns doesn't erase those column settings that are not configurable via GUI, but which were specified in the code
173
209
 
174
210
  * enhancements
175
- * scopes can now be specified for an association combobox in Grid/FormPanels
211
+ * scopes can now be specified for an association combobox in Grid/Forms
176
212
  * GridPanel: you can now configure add/edit/multi_edit/search panels (e.g. to override the fields) and corresponding windows (e.g. to override the title)
177
213
  * minor refactoring GridPanel: moved static js out of grid_panel_js.rb
178
214
 
179
- = v0.5.12 - 2010-06-21
215
+ # v0.5.12 - 2010-06-21
180
216
  * Fix: when used with Bundler, was crashing with the "uninitialized constant" exception
181
217
 
182
- = v0.5.11 - 2010-06-20
218
+ # v0.5.11 - 2010-06-20
183
219
  * Fix: Partial fix for IE's (the rest to be fixed in Ext).
184
220
  * Fix: In some circumstances Netzke::ActiveRecord modules were not loading.
185
221
 
186
- = v0.5.10 - 2010-06-14
222
+ # v0.5.10 - 2010-06-14
187
223
  * Impr: Checkbox replaced with tri-state checkbox in multi-edit form in GridPanel.
188
224
  * Impr: Column renderers reworked, allowing for more flexibility and cleanness.
189
225
  * Fix: After applying changes to a grid disable "Edit in form" action.
190
226
  * Impr: A grid's forms are now getting the same fields as specified for the grid.
191
227
 
192
- = v0.5.9 - 2010-06-11
228
+ # v0.5.9 - 2010-06-11
193
229
  * !!!: after updating to this version, run script/generate netzke_basepack
194
230
  * New: tri-state checkbox introduced into the search form
195
231
  * Impr: better defaults for the search form
@@ -201,26 +237,26 @@
201
237
  * Fix: GridPanel date filter now should work
202
238
  * New: GridPanel now has a method on_data_changed that can be overridden by children to detect actions that modify data
203
239
  * New: New way of configuring Netzke (virtual) attributes for AR models.
204
- * Impr: Grid/FormPanel refactoring.
240
+ * Impr: Grid/Form refactoring.
205
241
  * Impr: Multi-level column/fields configuration reworked and made more consistent.
206
242
  * New: New configuration layer introduced between the AR models and the rest of Netzke widgets. Use AttributesConfigurator to access it.
207
243
  * New: FamFamFam Silk icons support.
208
- * Impr: Reworked defining Netzke (virtual) attributes for Grid/FormPanel.
244
+ * Impr: Reworked defining Netzke (virtual) attributes for Grid/Form.
209
245
 
210
- = v0.5.8 - 2010-03-12
246
+ # v0.5.8 - 2010-03-12
211
247
  * Fix: GertThiel's method_missing-related fix enabling better compatibility with other Ruby libs
212
248
  * Fix: acts_as_list runtime dependency
213
249
 
214
- = v0.5.7 - 2010-02-26
250
+ # v0.5.7 - 2010-02-26
215
251
  * Regression: column config for GridPanel again accepts a renderer along with its parameters (as array, where the first element is the renderers name, the second - the parameters passed to the renderer, e.g.: :renderer => ["date", "y-m-d"])
216
252
  * Fix: Window resize/move now works correctly
217
253
  * Code: taking care of deprecated methods
218
254
 
219
- = v0.5.6 - 2010-01-10
255
+ # v0.5.6 - 2010-01-10
220
256
  * Compatibility with latest netzke-core
221
257
  * Compatibility with Ext JS v3.1
222
258
  * Impr: Code reorganization
223
- * Impr: Non-standard primary key support in GridPanel and FormPanel
259
+ * Impr: Non-standard primary key support in GridPanel and Form
224
260
  * Impr: Search button in GridPanel indicates that records filtering is active
225
261
  * Fix: by default, SearchPanel excludes boolean fields for now (until a 3-state checkbox is introduced)
226
262
  * Impr: made it possible to create new AR records with assigned associations using double-underscore notation, e.g.: Clerk.new(:boss__last_name => "Aguraijuja ")
@@ -229,25 +265,25 @@
229
265
  * Fix: FieldsConfigurator was crashing when fired consequently for grid and form
230
266
  * Depr: :data_class_name option is deprecated, use :model
231
267
  * Impr: "gear" tool is now hidden on FieldsConfigurator
232
- * Impr: Grid/FormPanel layouts are now not stored into the netzke_preferences table unless the defaults are modified (cleaner table)
268
+ * Impr: Grid/Form layouts are now not stored into the netzke_preferences table unless the defaults are modified (cleaner table)
233
269
 
234
- = v0.5.5.1 - 2009-11-09
270
+ # v0.5.5.1 - 2009-11-09
235
271
  * Compatibility with latest netzke-core
236
272
 
237
- = v0.5.5 - 2009-11-09
273
+ # v0.5.5 - 2009-11-09
238
274
  * Compatibility with latest netzke-core
239
- * Regression: pressing "enter" was not submitting the form (FormPanel)
275
+ * Regression: pressing "enter" was not submitting the form (Form)
240
276
  * Regression: "Restore defaults" button was not working in FieldsConfigurator and PropertyEditor
241
277
  * Fix: excluding columns in FieldsConfigurator was causing inconsistent column behavior (move/hide/resize)
242
- * Fix: resolving conflicts with Ext.form.FormPanel's <tt>submit</tt> and <tt>load</tt> methods
243
- * New: rudimentary FileUploadField support in FormPanel (it will do a normal, non-AJAX, form submit)
278
+ * Fix: resolving conflicts with Ext.form.Form's <tt>submit</tt> and <tt>load</tt> methods
279
+ * New: rudimentary FileUploadField support in Form (it will do a normal, non-AJAX, form submit)
244
280
  * New: Netzke::Window widget, supports persistent moving/resizing.
245
281
  * New: (experimental) GridPanel's "Add in form" button now opens the new Window widget. Later all other windows will be slowly rewritten to do the same.
246
282
 
247
- = v0.5.4 - 2009-10-12
283
+ # v0.5.4 - 2009-10-12
248
284
  * Dependencies updated
249
285
 
250
- = v0.5.3 - 2009-10-12
286
+ # v0.5.3 - 2009-10-12
251
287
  * Compatibility with Ext 3.0 (and dropping compatibility with 2.x).
252
288
  * Compatibility with netzke-core v0.4.4.
253
289
  * Impr: Form/GridPanel-based widgets: more consistent Ext.Action-related functionality and code, like (context) menu, bbar, etc.
@@ -263,13 +299,13 @@
263
299
  * Fix: patching Ext's bug that caused double firing of "columnmove" in GridPanel.
264
300
  * Fix: moving columns around in GridPanel was causing erroneous mapping of data to columns after data reload.
265
301
 
266
- = v0.5.2 - 2009-09-24
302
+ # v0.5.2 - 2009-09-24
267
303
  * Fix: combobox options for association columns didn't work properly.
268
304
  * Fix: GridPanel's multi-edit functionality didn't work.
269
305
  * Fix: gem dependencies are now correct.
270
306
 
271
- = v0.5.1 - 2009-09-11
272
- * Fix: crash when FormPanel has no data_class_name specified.
307
+ # v0.5.1 - 2009-09-11
308
+ * Fix: crash when Form has no data_class_name specified.
273
309
  * New: DataAccessor widgets (Form/GridPanel) now let the underlying model know which widget (i.e. which instance) accesses its data. Can be useful in virtual attributes for generating widget-specific HTML.
274
310
  * Fix: DataAccessor widgets (Form/GridPanel) now don't crash when calculating default columns/fields for the underlying model that has polymorphic columns.
275
311
  * Fix: TabPanel was sending redundant "tabchange" event to server when initially instantiated.
@@ -280,7 +316,7 @@
280
316
  * Impr: configuration panel's header now shows the underlying model's name for convenience.
281
317
  * Fix: MasqueradeSelector widget added.
282
318
 
283
- = v0.5.0 - 2009-09-06
319
+ # v0.5.0 - 2009-09-06
284
320
  * Major refactoring and code reorganization.
285
321
  * Compatibility with netzke-core v0.4.0.
286
322
  * New: GridPanel now supports adding/editing records in a form and extended configurable search.
@@ -290,73 +326,73 @@
290
326
  * New: "strong_default_attrs" config option added to GridPanel to specify the attributes that will be assigned to each record that is created or modified by the grid.
291
327
  * Usability: GridPanel's actions now get enabled/disabled according to the current selection.
292
328
  * Configuration panel for grids and forms now works more consistently.
293
- * New: some smart defaults for column/fields in Grid/FormPanel.
329
+ * New: some smart defaults for column/fields in Grid/Form.
294
330
  * New: BasicApp supports masquerading and application-wide AJAX activity indicator.
295
331
 
296
- = v0.4.2 - 2009-05-07
332
+ # v0.4.2 - 2009-05-07
297
333
  * Fix: afterlayout event bind removed completely because of some tricky inconsistent behavior of Ext. BasicApp initializing code put directly into js_after_constructor.
298
334
 
299
- = v0.4.1 - 2009-05-07
335
+ # v0.4.1 - 2009-05-07
300
336
  * Fix: afterlayout call moved to js_after_constructor in BasicApp
301
337
  * Fix: cleaner persistent_config handling
302
- * New: default's configuration enabled for FormPanel on class-level
338
+ * New: default's configuration enabled for Form on class-level
303
339
  * Fix: differently configured forms on the same page were showing the same columns
304
340
  * Fix: TableEditor was showing config-tool by default (must be hidden)
305
341
 
306
- = v0.4.0 - 2009-05-07
307
- * Refactor: got rid of NetzkeFormPanelField and NetzkeGridPanelColumn classes along with their tables. The layout is now stored in netzke_preferences.
342
+ # v0.4.0 - 2009-05-07
343
+ * Refactor: got rid of NetzkeFormField and NetzkeGridPanelColumn classes along with their tables. The layout is now stored in netzke_preferences.
308
344
  * New: dynamic hiding of columns from column menu in GridPanel.
309
- * New: FormPanel now supports combo boxes.
345
+ * New: Form now supports combo boxes.
310
346
  * Fix: config[:bbar] set to 'false' now works in grids with pagination
311
347
  * New: you can specify :preloaded => true in a tab config in TabPanel to preload the widget in that tab along with the TabPanel itself
312
348
  * New: hideBusy added to Ext.StatusBar
313
349
  * Fix: assigning association (a Boss to a Clerk) by virtual column (like boss__name) works now
314
350
  * Fix: an old bug that made GridPanel misbehave after reordering the columns
315
351
 
316
- = v0.3.10
352
+ # v0.3.10
317
353
  * BasicApp-based widgets can now introduce arbitrary layout, following the convention of defining "main-panel" and "main-toolbar" panels with layout 'fit'.
318
354
 
319
- = v0.3.9.1
355
+ # v0.3.9.1
320
356
  * Bug fix: (regression) appLoaded() in BasicApp gets executed again
321
357
 
322
- = v0.3.9
358
+ # v0.3.9
323
359
  * AccordionPanel tests added
324
360
  * TabPanel works now
325
361
  * AccordionPanel replaced with more intuitive TabPanel in the configuration window
326
362
  * Code clean-up by using "single" option to call appLoaded() on "afterlayout"
327
363
  * Table editor bug fix
328
364
 
329
- = v0.3.8
365
+ # v0.3.8
330
366
  * Fixing Ext's EditableItem render problem.
331
367
  * Filters by default enabled again in GridPanel.
332
368
  * GridPanel enhancement: base_params get sent along with post_data.
333
369
 
334
- = v0.3.7
370
+ # v0.3.7
335
371
  * Netzke-core version sync.
336
372
  * Rails 2.3.2 compatibility.
337
373
 
338
- = v0.3.6
374
+ # v0.3.6
339
375
  * Netzke-core v0.2.9 compatibility.
340
376
  * Cleaner handling of custom renderers in GridPanel.
341
- * New FormPanel-based PropertyEditor replaces PropertyGrid.
377
+ * New Form-based PropertyEditor replaces PropertyGrid.
342
378
  * Xcheckbox and check-column introduced.
343
379
  * TODO file added.
344
380
  * Bug fix: in TableEditor, the grid now responses on events also after being reconfigured.
345
381
  * Bug fix: a couple of IE-related bugs.
346
382
  * Significant code clean-up.
347
383
 
348
- = v0.3.5
384
+ # v0.3.5
349
385
  * Netzke-core v0.2.8 compatibility.
350
386
 
351
- = v0.3.4
387
+ # v0.3.4
352
388
  * Quick tips added to the "tools".
353
389
  * Regression: the "General" configuration panel for GridPanel works again.
354
390
  * GridPanel: rows_per_page configuration is now read from General config panel.
355
391
 
356
- = v0.3.3.1
392
+ # v0.3.3.1
357
393
  * Obviously using "new" as a property name in JavaScript isn't liked by Safari. Fixed.
358
394
 
359
- = v0.3.3
395
+ # v0.3.3
360
396
  * Bug fix: application not loading the widget specified in the URL (Ext.History-related).
361
397
  * Some code refactoring and readability improvements.
362
398
  * Ext.componentCache renamed into Ext.netzke.cache.
@@ -372,31 +408,31 @@
372
408
  * Bug fix: redundant flash messages for GridPanel.
373
409
  * FeedbackGhost won't be showing anything if given an empty array.
374
410
  * Cleaner handling of validations in GridPanel.
375
- * FormPanel ready for the demo.
411
+ * Form ready for the demo.
376
412
 
377
- = v0.3.2
413
+ # v0.3.2
378
414
  * Minor code restructuring.
379
- * Working on FormPanel cont'd.
415
+ * Working on Form cont'd.
380
416
 
381
- = v0.3.1
417
+ # v0.3.1
382
418
  * Added the "conditions" configuration option to GridPanel to limit the search
383
419
  * Basic column editor for grids has been replaced with FieldsConfigurator, which can do a bit more
384
420
  * Added Checkbox column/form-field type for boolean fields
385
421
  * "renderer" configuration option added for grid columns - any Ext.util.Format renderer can be specified there (thanks to Josh Holt for the initial idea)
386
422
 
387
- = v0.3.0
423
+ # v0.3.0
388
424
  * Added BasicApp widget - the base for a Ext.Viewport based ("application") widget with support for dynamic widget loading, browser history, authentification, and more. See the demo an http://netzke-demo.writelesscode.com
389
425
 
390
- = v0.2.2
426
+ # v0.2.2
391
427
  * Meta: updated netzke-core version (dependency)
392
428
 
393
- = v0.2.1
429
+ # v0.2.1
394
430
  * Regression: BorderLayoutPanel now restores the region sizes from the database
395
431
 
396
- = v0.2.0.1
432
+ # v0.2.0.1
397
433
  * Meta: updated netzke-core version (dependency)
398
434
 
399
- = v0.2.0
435
+ # v0.2.0
400
436
  * Some re-factoring and redesign along with netzke-core
401
437
  * Panel widget added
402
438
  * BorderLayoutPanel added
@@ -406,41 +442,41 @@
406
442
  * Bug fix: exception was thrown at a column operation when no layout_manager was present
407
443
  * Reworked permission handling in GridPanel.
408
444
 
409
- = v0.1.4.1
445
+ # v0.1.4.1
410
446
  * Meta: updated netzke-core version (dependency)
411
447
 
412
- = v0.1.4
448
+ # v0.1.4
413
449
  * Grid#get_columns provides default columns even if none of layout_manager_class & column_manager_class are available
414
450
 
415
- = v0.1.3.1
451
+ # v0.1.3.1
416
452
  * Meta: updated netzke-core version (dependency)
417
453
 
418
- = v0.1.3
454
+ # v0.1.3
419
455
  * Path to javascript for grid filters corrected
420
456
  * Bug with creating new records in the grid fixed
421
457
  * Optimized away redundant sql queries when calling Grid#get_columns (sort of memoization)
422
458
  * README updated
423
459
 
424
- = v0.1.2.1
460
+ # v0.1.2.1
425
461
  * Meta: trying to succeed publishing on RubyForge
426
462
 
427
- = v0.1.2
463
+ # v0.1.2
428
464
  * Updated README with an example of stand-alone widget usage
429
465
  * Meta: updated netzke-core version (dependency)
430
466
 
431
- = v0.1.1.2
467
+ # v0.1.1.2
432
468
  * Meta: updated netzke-core version (dependency)
433
469
 
434
- = v0.1.1.1
470
+ # v0.1.1.1
435
471
  * Meta: github gem naming convention
436
472
 
437
- = v0.1.1
473
+ # v0.1.1
438
474
  * Cleaner exception handling while loading data to grid
439
475
  * Column resize & move functionality enabled by default
440
476
  * Column filters added
441
477
 
442
- = v0.1.0.1
478
+ # v0.1.0.1
443
479
  * Meta work: replacing underscore with dash in the name
444
480
 
445
- = v0.1.0 - 2008-12-20
481
+ # v0.1.0 - 2008-12-20
446
482
  * Initial release