рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдкреНрд░рд╢рд╛рд╕рдирд┐рдХ рднрд╛рдЧ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛ рдХрд┐ рдПрдХ рдмрд▓реНрдХрд┐ рдкрддрд▓рд╛ рдШрдЯрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдХрд┐ рдПрд▓рдЯреАрдЬреЗрдПрд╕ 4 рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдХрд╛рдлреА рд╕рдореГрджреНрдз рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдкреВрд░рдХ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ:
http://siterra.org/examples/rowtoolbar.htmlрд░рд┐рдкреЛрдЬрд┐рдЯрд░реА:
https://github.com/siterra/RowToolbarрдПрдХреНрд╕рдЯреАрдЬреЗрдПрд╕ 4.1.1 рдП рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдореИрдВрдиреЗ рдЗрд╕реЗ Apache рд▓рд╛рдЗрд╕реЗрдВрд╕ 2.0 рдХреЗ рддрд╣рдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХрд╛рдлреА рд╣рд▓реНрдХрд╛ рдирд┐рдХрд▓рд╛, рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рд╕рдорд╕реНрдпрд╛ рдЬреЛ рдШрдЯрдХ рд╣рд▓ рдХрд░рддреА рд╣реИ, рд╡рд╣ рд╕рдмрд╕реЗ рд▓рдЪреАрд▓реЗ рддрд░реАрдХреЗ рд╕реЗ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрдВрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдмрдЯрди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдмреЗрд╢рдХ, рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ "рдПрдХреНрд╢рдирдХреЛрд▓реНрдпреВрдо" рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕рдХреЗ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдмрдЯрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдХреЛрдИ рд╕рд╛рдорд╛рдиреНрдп рдЕрд╡рд╕рд░ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдмрдЯрди рдХреЛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрд▓рдо рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЙрдиреНрд╣реЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдХреНрд╕рд░, рдПрдХ рдХрд░реНрдордЪрд╛рд░реА рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдмрдЯрди рдХреЗ рд▓рд┐рдП рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рд╕реЗрд▓ рдкрдврд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
Ext.define('Ext.ux.grid.features.RowToolbar', { extend: 'Ext.grid.feature.Feature', alias: 'feature.rowtoolbar', rowToolbarCls: 'app-grid-feature-rowtoolbar', renderTimeout: 1, toolbar: {}, init: function() { this.toolbar = Ext.applyIf(this.toolbar, { xclass: 'Ext.toolbar.Toolbar', padding: '0 16 0 0', cls: 'grid-feature-rowtoolbar-instance', baseCls: '', baseId: Ext.id() + '-rowtoolbar', listeners: { scope: this, afterrender: function(tbar) { Ext.each(tbar.items.items, function(item) { if (item.isDisabledForRecord) { var is_disabled = item.isDisabledForRecord(item, tbar.record); item.setDisabled(is_disabled); } if (item.isVisibleForRecord) { var is_visible = item.isVisibleForRecord(item, tbar.record); if (item.hiddenItemsSavePosition) { item.getEl().dom.style.visibility = (is_visible ? 'visible' : 'hidden'); } else { item.setVisible(is_visible); } } }, this); } } }); }, renderItems: function() { this.toolbar.renderedItems = []; var els = Ext.query('.'+ this.toolbar.baseId +'-wrap', this.grid.getEl().dom); Ext.each(els, function(el) {
рдкреНрд░рд╕реНрддреБрдд рд╡рд┐рдХрд╛рд╕ рдПрдХ "рд╕реБрд╡рд┐рдзрд╛" рдХреЗ рд░реВрдк рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдЙрд╕реА рд╕рдордп, рд░реЛрд╡рд░реИрдк рдШрдЯрдХ рдХреЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдХреА рджреГрд╢реНрдп рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкрдВрдХреНрддрд┐ рдкреНрд░рдмрдВрдзрди рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
features: [{ ftype: 'rowtoolbar', items: [ ... ] },{ ftype: 'rowwrap' }]
рдЖрдЗрдЯрдо рдлрд╝реАрд▓реНрдб рдореЗрдВ рдШреЛрд╖рд┐рдд рдЖрдЗрдЯрдо рдХрдИ рдмрд╛рд░ рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реЛрддреА рд╣реИрдВред рдХрднреА-рдХрднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ "рдЫрд┐рдкреА" рдФрд░ "рдЕрдХреНрд╖рдо" рдЭрдВрдбреЗ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдарддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдХрд╛рд░реНрдпDisabledForRecord рдФрд░ isVoubleForRecord рдХреЛ RowToolbar рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ 2 рдкреИрд░рд╛рдореАрдЯрд░ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ: рд░реЛрд╡реБрд▓рдмрд╛рд░ рддрддреНрд╡ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг, рдФрд░ Ext.data.Record (Ext.data.Model), рдЬрд┐рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рддрд╛рд▓рд┐рдХрд╛ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдореИрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рддрддреНрд╡реЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрджрд▓рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред