= 0.7.5 - ? * improvements * data-related operations in grids and forms are moved to data adapters; implemented (partial) support for DataMapper and Sequel (see updated README) * afterApply event in forms and grids (pschyska) * apply event fired before apply button is processed in FormPanel (pschyska) * bug fix * advanced search panel works again (pididi) * fixed a problem with session and GridPanel = 0.7.4 - 2012-03-05 * bug fix * :enable_pagination is now respected in GridPanel * Virtual columns are not sortable by default now * Datetime column now works * Make Window respect persistence: false * Disable persistence for search window in GridPanel = 0.7.3 - 2011-10-23 * bug fix * :sorting_scope is now respected in GridPanel * regression: filtering on association column is fix (covered with tests) = 0.7.2 - 2011-10-20 * bug fix * Filter on a date column * Using date column caused FormPanel to crash * Virtual columns are no longer editable by default * improvements * New DSL method (model) for declaring a model for grids * New DSL method (column) for declaring columns for grids * New :override_columns config option for grid allows overriding specified column config without influencing other columns' order/presence * New DSL method (override_column) to override a specific column config without influencing other columns' order/presence. * Grid's title is set to model's pluralized name by default. * New :read_only option for FormPanel - makes all fields read-only and removes the "Apply" button. * FormPanel implements DSL shortcuts for the following options in default config: :model, :items, :record_id. * GridPanel implements DSL shortcuts for the following options in default config: :model, :add_form_config, :edit_form_config, :multi_edit_form_config. * New FormPanel option :multi_edit - set when the form is used for editing multiple records at a time * Introduce action columns (see BookGridWithColumnActions) * API changes * Skip supporting ModelExtensions. The preferred way is using setters and getters on columns/fields. = 0.7.1 - 2011-09-04 * bug fix * FormPanel: fix the netzke_load endpoint when association fields are present * dates were not displayed in date fields, and submitting a form with date fields might result in erasing those fields * Rails 3.1 compatibility * no meta_where dependencies (searching and filtering done with Arel) = 0.7.0 - 2011-08-09 * Core 0.7.0 and Ext 4 compatibility * API changes * [JS] Removed the helper BorderLayoutPanel#getComponent method altogether. Use Ext 4 Container#child instead = v0.6.5 - to be released * enhancements * When columns states are saved in the persistent storage, adding/removing columns (e.g. in the code) will reset the saved states * Moved features and specs to test/basepack_test_app * bug fix * FormPanel with multiple association fields wouldn't submit data correctly * GridPanel's forms take over the +text+ configuration option for columns as +fieldLabel+ for default fields = v0.6.4 - 2011-02-26 * API changes * 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. * xdatetime is no more. datetimefield is used instead. * enhancements * Components updated to use Ext.Direct (by @pschyska) * New, improved advanced search for GridPanel and PagingFormPanel. * 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). * GridPanel now memorizes its columns visibility, position and size (when :persistence is set to true) * I18n for GridPanel * A default value can now also be assigned to association column/field (the value must be the associated record's ID) * Slightly optimized selenium tests (no artificial sleeping whenever possible) * bug fix * Long-standing visual issues with datetime columns in grid panel are solved. = v0.6.3 - 2011-01-14 * compatibility with netzke-core 0.6.5 * refactoring * GridPanel code restructured, using the new +js_mixin+ method * bug fix * GridPanel respects strong_default_attrs * TabPanel doesn't fire multiple load requests per tab in case of lazy-loaded tabs and fast clicking * Filtering/sorting on virtual columns is now disabled by default * Filtering on date columns * enhancements * I18n for Grid/FormPanel * new +getter+ config option for columns/fields, a lambda receiving the record as parameter * new +setter+ config option for columns/fields, a lambda receiving the record as first parameter, new value as the second * GridPanel passes columns' default values to the "Add in form" form * FormPanel can now be used without specifying a model * New +commalistcbg+ form field for checkboxes, where boxLabels of selected checkboxes are serialized into comma-separated string (the separator is configurable) * New +nradiogroup+ form field for radio buttons, where the value is defined by the boxLabel of the selected radio button * 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. * 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). * FormPanel shows the "Updating..." mask while sending values to the server (configurable with updateMask option/property) * 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) = v0.6.2 - 2010-11-05 * compatibility with netzke-core 0.6.4 * bug fix * BorderLayoutPanel persistence fix = v0.6.1 - 2010-11-04 * enhancements * BorderLayoutPanel persistence: remembers region sizes and collapsed/expanded states * tooltips for grid buttons * bug fix * auto-detection of association's method when the latter is virtual was broken in 1.9.2 = v0.6.0 - 2010-10-24 * netzke-core 0.6.0 compatibility, thorough refactoring * Much more thorough testing (cucumber and rspec) * FormPanel/GridPanel dynamic column/field configuration has been left out (planned for a separate gem) * different bug fixes * enhancements * if omitted in config, a column for the primary key is automatically added to Grid/FormPanel * API incompatibilities * in FormPanel, define the fields layout directly in :items, not in :fields or :columns * new * FormPanel allows for arbitrary layout of fields = v0.5.14 - 2010-09-08 * bug fix * fields configurator wouldn't open in some cases * icons location was hardcoded in search panel (credits to @pschyska) * quick fix for datetimes not being displayed in the preferred timezone * ext_config options :enable_edit_in_form and :enable_advanced_search now do have effect * PropertyEditor fixed for Grid/FormPanel * Grid/FormPanel again obeys persistent_config option when loading columns/fields * enhancements * numberfield is default in grids also for columns of type float * more narrow exception rescuing in GridPanel code * combobox options can now be searched ("type ahead") also in virtual columns (not efficient though, use at own risk!) * overriding an already existing attribute with `netzke_attribute` now also has effect on association attributes, such as boss__name = v0.5.13 - 2010-08-11 * regression * combobox options configuration again has effect * bug fix * when a TabPanel was used as a standalone widget, the first tab was rendered empty * 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 * enhancements * scopes can now be specified for an association combobox in Grid/FormPanels * 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) * minor refactoring GridPanel: moved static js out of grid_panel_js.rb = v0.5.12 - 2010-06-21 * Fix: when used with Bundler, was crashing with the "uninitialized constant" exception = v0.5.11 - 2010-06-20 * Fix: Partial fix for IE's (the rest to be fixed in Ext). * Fix: In some circumstances Netzke::ActiveRecord modules were not loading. = v0.5.10 - 2010-06-14 * Impr: Checkbox replaced with tri-state checkbox in multi-edit form in GridPanel. * Impr: Column renderers reworked, allowing for more flexibility and cleanness. * Fix: After applying changes to a grid disable "Edit in form" action. * Impr: A grid's forms are now getting the same fields as specified for the grid. = v0.5.9 - 2010-06-11 * !!!: after updating to this version, run script/generate netzke_basepack * New: tri-state checkbox introduced into the search form * Impr: better defaults for the search form * Impr: GridPanel now displays the total amount of records * Fix: GridPanel's "local filters" are back (they were out since the release of Ext 3.0) * Impr: obey "preloaded" option for tabs better: really add the widgets into their respective tabs from the start * Fix: datetime filters now also are take into account when searching in GridPanel is performed * Fix: FieldsConfigurator should now work on Heroku * Fix: GridPanel date filter now should work * New: GridPanel now has a method on_data_changed that can be overridden by children to detect actions that modify data * New: New way of configuring Netzke (virtual) attributes for AR models. * Impr: Grid/FormPanel refactoring. * Impr: Multi-level column/fields configuration reworked and made more consistent. * New: New configuration layer introduced between the AR models and the rest of Netzke widgets. Use AttributesConfigurator to access it. * New: FamFamFam Silk icons support. * Impr: Reworked defining Netzke (virtual) attributes for Grid/FormPanel. = v0.5.8 - 2010-03-12 * Fix: GertThiel's method_missing-related fix enabling better compatibility with other Ruby libs * Fix: acts_as_list runtime dependency = v0.5.7 - 2010-02-26 * 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"]) * Fix: Window resize/move now works correctly * Code: taking care of deprecated methods = v0.5.6 - 2010-01-10 * Compatibility with latest netzke-core * Compatibility with Ext JS v3.1 * Impr: Code reorganization * Impr: Non-standard primary key support in GridPanel and FormPanel * Impr: Search button in GridPanel indicates that records filtering is active * Fix: by default, SearchPanel excludes boolean fields for now (until a 3-state checkbox is introduced) * Impr: made it possible to create new AR records with assigned associations using double-underscore notation, e.g.: Clerk.new(:boss__last_name => "Aguraijuja ") * Impr: specifying an item for Netzke::Window is now optional * Fix: xtype field in FieldsConfigurator is now a combobox * Fix: FieldsConfigurator was crashing when fired consequently for grid and form * Depr: :data_class_name option is deprecated, use :model * Impr: "gear" tool is now hidden on FieldsConfigurator * Impr: Grid/FormPanel layouts are now not stored into the netzke_preferences table unless the defaults are modified (cleaner table) = v0.5.5.1 - 2009-11-09 * Compatibility with latest netzke-core = v0.5.5 - 2009-11-09 * Compatibility with latest netzke-core * Regression: pressing "enter" was not submitting the form (FormPanel) * Regression: "Restore defaults" button was not working in FieldsConfigurator and PropertyEditor * Fix: excluding columns in FieldsConfigurator was causing inconsistent column behavior (move/hide/resize) * Fix: resolving conflicts with Ext.form.FormPanel's submit and load methods * New: rudimentary FileUploadField support in FormPanel (it will do a normal, non-AJAX, form submit) * New: Netzke::Window widget, supports persistent moving/resizing. * 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. = v0.5.4 - 2009-10-12 * Dependencies updated = v0.5.3 - 2009-10-12 * Compatibility with Ext 3.0 (and dropping compatibility with 2.x). * Compatibility with netzke-core v0.4.4. * Impr: Form/GridPanel-based widgets: more consistent Ext.Action-related functionality and code, like (context) menu, bbar, etc. * Impr: GridPanel: rows_reordering_available is now true by default. * Impr: TreePanel now sets "leaf" attribute to true if the node has no children. * Impr: Grid/TreePanel now have persistent config enabled by default. * Impr: if persistent_config is disabled, a widget won't be talking to the server in vain any more. * Fix: GridPanel didn't fire row editing when the first column was a "checkbox" column. * Fix: the GridPanel's :scopes parameter now correctly processes named scopes as strings inside the array, e.g. :scopes => ["current", [:id_gt, 100]] * Fix: on deleting records from GridPanel, destroy method is being called instead of delete. * Fix: FieldsConfigurator made a little bit more stable. * Fix: patching Ext's bug that caused double firing of "columnmove" in GridPanel. * Fix: moving columns around in GridPanel was causing erroneous mapping of data to columns after data reload. = v0.5.2 - 2009-09-24 * Fix: combobox options for association columns didn't work properly. * Fix: GridPanel's multi-edit functionality didn't work. * Fix: gem dependencies are now correct. = v0.5.1 - 2009-09-11 * Fix: crash when FormPanel has no data_class_name specified. * 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. * Fix: DataAccessor widgets (Form/GridPanel) now don't crash when calculating default columns/fields for the underlying model that has polymorphic columns. * Fix: TabPanel was sending redundant "tabchange" event to server when initially instantiated. * Fix: column filters were making GridPanel crash when the column editor was set to "textarea". * Fix: dongling comma and "delete" object properties caused problems in IE and Safari. * Fix: a stand-alone TabPanel would not render the active item. * New: BasicApp: masquerading as "World". In this mode all the "touched" persistent preferences will be overwritten for all roles and users. * Impr: configuration panel's header now shows the underlying model's name for convenience. * Fix: MasqueradeSelector widget added. = v0.5.0 - 2009-09-06 * Major refactoring and code reorganization. * Compatibility with netzke-core v0.4.0. * New: GridPanel now supports adding/editing records in a form and extended configurable search. * New: GridPanel now can be loaded along with initial data (saves a request to the server). * New: context menu in GridPanel * New: "scopes" configuration option added to GridPanel to specify the searchlogic-compatible scope for the data. * 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. * Usability: GridPanel's actions now get enabled/disabled according to the current selection. * Configuration panel for grids and forms now works more consistently. * New: some smart defaults for column/fields in Grid/FormPanel. * New: BasicApp supports masquerading and application-wide AJAX activity indicator. = v0.4.2 - 2009-05-07 * Fix: afterlayout event bind removed completely because of some tricky inconsistent behavior of Ext. BasicApp initializing code put directly into js_after_constructor. = v0.4.1 - 2009-05-07 * Fix: afterlayout call moved to js_after_constructor in BasicApp * Fix: cleaner persistent_config handling * New: default's configuration enabled for FormPanel on class-level * Fix: differently configured forms on the same page were showing the same columns * Fix: TableEditor was showing config-tool by default (must be hidden) = v0.4.0 - 2009-05-07 * Refactor: got rid of NetzkeFormPanelField and NetzkeGridPanelColumn classes along with their tables. The layout is now stored in netzke_preferences. * New: dynamic hiding of columns from column menu in GridPanel. * New: FormPanel now supports combo boxes. * Fix: config[:bbar] set to 'false' now works in grids with pagination * New: you can specify :preloaded => true in a tab config in TabPanel to preload the widget in that tab along with the TabPanel itself * New: hideBusy added to Ext.StatusBar * Fix: assigning association (a Boss to a Clerk) by virtual column (like boss__name) works now * Fix: an old bug that made GridPanel misbehave after reordering the columns = v0.3.10 * BasicApp-based widgets can now introduce arbitrary layout, following the convention of defining "main-panel" and "main-toolbar" panels with layout 'fit'. = v0.3.9.1 * Bug fix: (regression) appLoaded() in BasicApp gets executed again = v0.3.9 * AccordionPanel tests added * TabPanel works now * AccordionPanel replaced with more intuitive TabPanel in the configuration window * Code clean-up by using "single" option to call appLoaded() on "afterlayout" * Table editor bug fix = v0.3.8 * Fixing Ext's EditableItem render problem. * Filters by default enabled again in GridPanel. * GridPanel enhancement: base_params get sent along with post_data. = v0.3.7 * Netzke-core version sync. * Rails 2.3.2 compatibility. = v0.3.6 * Netzke-core v0.2.9 compatibility. * Cleaner handling of custom renderers in GridPanel. * New FormPanel-based PropertyEditor replaces PropertyGrid. * Xcheckbox and check-column introduced. * TODO file added. * Bug fix: in TableEditor, the grid now responses on events also after being reconfigured. * Bug fix: a couple of IE-related bugs. * Significant code clean-up. = v0.3.5 * Netzke-core v0.2.8 compatibility. = v0.3.4 * Quick tips added to the "tools". * Regression: the "General" configuration panel for GridPanel works again. * GridPanel: rows_per_page configuration is now read from General config panel. = v0.3.3.1 * Obviously using "new" as a property name in JavaScript isn't liked by Safari. Fixed. = v0.3.3 * Bug fix: application not loading the widget specified in the URL (Ext.History-related). * Some code refactoring and readability improvements. * Ext.componentCache renamed into Ext.netzke.cache. * New widget: TableEditor (a compound widget containing a grid and a form for editing table data). * BorderLayoutPanel: a function getRegionWidget(region) added to access a widget in the specified region. * Bug fix: BasicApp: FeedbackGhost now gets instantiated before BasicApp. * Clearer handling of requests to non-existing aggregatees. * Bug fix: now Ext 2.2.1 compatible. * Column operations are now handled properly when :persistent_layout is set to false. * Grid/Form fields configuration is extended with "ext_config" field which stores (in JSON-format) all the extra configuration, which gives extra flexibility to individual column/field configuration. * :persistent_layout set to false now makes a widget ignore what's in the DB. * Bug fix: AccordionPanel doesn't crash when no active item is specified. * Bug fix: redundant flash messages for GridPanel. * FeedbackGhost won't be showing anything if given an empty array. * Cleaner handling of validations in GridPanel. * FormPanel ready for the demo. = v0.3.2 * Minor code restructuring. * Working on FormPanel cont'd. = v0.3.1 * Added the "conditions" configuration option to GridPanel to limit the search * Basic column editor for grids has been replaced with FieldsConfigurator, which can do a bit more * Added Checkbox column/form-field type for boolean fields * "renderer" configuration option added for grid columns - any Ext.util.Format renderer can be specified there (thanks to Josh Holt for the initial idea) = v0.3.0 * 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 = v0.2.2 * Meta: updated netzke-core version (dependency) = v0.2.1 * Regression: BorderLayoutPanel now restores the region sizes from the database = v0.2.0.1 * Meta: updated netzke-core version (dependency) = v0.2.0 * Some re-factoring and redesign along with netzke-core * Panel widget added * BorderLayoutPanel added * AccordionPanel added * Bug fix: column operations configuration misbehaving * Renamed Grid into GridPanel * Bug fix: exception was thrown at a column operation when no layout_manager was present * Reworked permission handling in GridPanel. = v0.1.4.1 * Meta: updated netzke-core version (dependency) = v0.1.4 * Grid#get_columns provides default columns even if none of layout_manager_class & column_manager_class are available = v0.1.3.1 * Meta: updated netzke-core version (dependency) = v0.1.3 * Path to javascript for grid filters corrected * Bug with creating new records in the grid fixed * Optimized away redundant sql queries when calling Grid#get_columns (sort of memoization) * README updated = v0.1.2.1 * Meta: trying to succeed publishing on RubyForge = v0.1.2 * Updated README with an example of stand-alone widget usage * Meta: updated netzke-core version (dependency) = v0.1.1.2 * Meta: updated netzke-core version (dependency) = v0.1.1.1 * Meta: github gem naming convention = v0.1.1 * Cleaner exception handling while loading data to grid * Column resize & move functionality enabled by default * Column filters added = v0.1.0.1 * Meta work: replacing underscore with dash in the name = v0.1.0 - 2008-12-20 * Initial release