source: trunk/prototype/app/plugins/treeview/jquery.treeview.edit.js @ 5136

Revision 5136, 1.5 KB checked in by wmerlotto, 12 years ago (diff)

Ticket #2305 - Enviando alteracoes, desenvolvidas internamente na Prognus, do modulo prototype.

Line 
1(function($) {
2        var CLASSES = $.treeview.classes;
3        var proxied = $.fn.treeview;
4        $.fn.treeview = function(settings) {
5                settings = $.extend({}, settings);
6                if (settings.add) {
7                        return this.trigger("add", [settings.add]);
8                }
9                if (settings.remove) {
10                        return this.trigger("remove", [settings.remove]);
11                }
12                return proxied.apply(this, arguments).bind("add", function(event, branches) {
13                        $(branches).prev()
14                                .removeClass(CLASSES.last)
15                                .removeClass(CLASSES.lastCollapsable)
16                                .removeClass(CLASSES.lastExpandable)
17                        .find(">.hitarea")
18                                .removeClass(CLASSES.lastCollapsableHitarea)
19                                .removeClass(CLASSES.lastExpandableHitarea);
20                        $(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, $(this).data("toggler"));
21                }).bind("remove", function(event, branches) {
22                        var prev = $(branches).prev();
23                        var parent = $(branches).parent();
24                        $(branches).remove();
25                        prev.filter(":last-child").addClass(CLASSES.last)
26                                .filter("." + CLASSES.expandable).replaceClass(CLASSES.last, CLASSES.lastExpandable).end()
27                                .find(">.hitarea").replaceClass(CLASSES.expandableHitarea, CLASSES.lastExpandableHitarea).end()
28                                .filter("." + CLASSES.collapsable).replaceClass(CLASSES.last, CLASSES.lastCollapsable).end()
29                                .find(">.hitarea").replaceClass(CLASSES.collapsableHitarea, CLASSES.lastCollapsableHitarea);
30                        if (parent.is(":not(:has(>))") && parent[0] != this) {
31                                parent.parent().removeClass(CLASSES.collapsable).removeClass(CLASSES.expandable)
32                                parent.siblings(".hitarea").andSelf().remove();
33                        }
34                });
35        };
36       
37})(jQuery);
Note: See TracBrowser for help on using the repository browser.