Author: abelevich
Date: 2011-01-19 11:43:04 -0500 (Wed, 19 Jan 2011)
New Revision: 21088
Modified:
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-draggable.js
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-droppable.js
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/indicator.ecss
Log:
RF-10088 dragIndicator enhancements: rf-* classes should be applied to default indicator
also if possible.
Modified:
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-draggable.js
===================================================================
---
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-draggable.js 2011-01-19
16:36:40 UTC (rev 21087)
+++
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-draggable.js 2011-01-19
16:43:04 UTC (rev 21088)
@@ -9,11 +9,20 @@
(function ($, rf) {
rf.ui = rf.ui || {};
+
+ var defaultIndicatorClasses = {
+ rejectClass : "rf-ind-rejt",
+ acceptClass : "rf-ind-acpt",
+ draggingClass : "rf-ind-drag"
+ };
rf.ui.Draggable = function(id, options) {
this.id = id;
this.options = options;
+ this.namespace = this.namespace || "."
+ + rf.Event.createNamespace(this.name, this.id);
+
this.dragElement = $(document.getElementById(this.options.parentId));
this.dragElement.draggable();
@@ -61,6 +70,8 @@
var indicator = rf.$(this.options.indicator);
if(indicator) {
ui.helper.addClass(indicator.draggingClass());
+ } else {
+ ui.helper.addClass(defaultIndicatorClasses.draggingClass);
}
}
this.__clearDraggableCss(ui.helper);
Modified:
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-droppable.js
===================================================================
---
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-droppable.js 2011-01-19
16:36:40 UTC (rev 21087)
+++
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/dnd-droppable.js 2011-01-19
16:43:04 UTC (rev 21088)
@@ -1,89 +1,114 @@
/*
* code review by Pavel Yaschenko
*
- * No event's unbindings when component would be destroyed
- * Hint: easy way to unbind - use namespaces when bind event handlers
+ * No event's unbindings when component would be destroyed Hint: easy way to
+ * unbind - use namespaces when bind event handlers
*
*/
-(function ($, rf) {
-
+(function($, rf) {
+
rf.ui = rf.ui || {};
-
- rf.ui.Droppable = function(id, options) {
+
+ var defaultIndicatorClasses = {
+ rejectClass : "rf-ind-rejt",
+ acceptClass : "rf-ind-acpt",
+ draggingClass : "rf-ind-drag"
+ };
+
+ rf.ui.Droppable = function(id, options) {
this.options = options;
this.id = id;
-
+
this.dropElement = $(document.getElementById(this.options.parentId));
- this.dropElement.droppable({addClasses: false});
+ this.dropElement.droppable({
+ addClasses : false
+ });
this.dropElement.data("init", true);
this.dropElement.bind('drop', $.proxy(this.drop, this));
this.dropElement.bind('dropover', $.proxy(this.dropover, this));
this.dropElement.bind('dropout', $.proxy(this.dropout, this));
};
- $.extend(rf.ui.Droppable.prototype, ( function () {
- return {
- drop: function(e, ui) {
- if(this.accept(ui.draggable)) {
- this.__callAjax(e, ui);
- }
-
- var dragIndicatorObj = rf.$(ui.helper.attr("id"));
- if(dragIndicatorObj) {
+ $.extend(rf.ui.Droppable.prototype, (function() {
+ return {
+ drop : function(e, ui) {
+ if (this.accept(ui.draggable)) {
+ this.__callAjax(e, ui);
+ }
+
+ var dragIndicatorObj = rf.$(ui.helper.attr("id"));
+ if (dragIndicatorObj) {
+ ui.helper.removeClass(dragIndicatorObj.acceptClass());
+ ui.helper.removeClass(dragIndicatorObj.rejectClass());
+ } else {
+ ui.helper.removeClass(defaultIndicatorClasses.acceptClass);
+ ui.helper.removeClass(defaultIndicatorClasses.rejectClass);
+ }
+ },
+
+ dropover : function(event, ui) {
+ var draggable = ui.draggable;
+ var dragIndicatorObj = rf.$(ui.helper.attr("id"));
+ if (dragIndicatorObj) {
+ if (this.accept(draggable)) {
+ ui.helper.removeClass(dragIndicatorObj.rejectClass());
+ ui.helper.addClass(dragIndicatorObj.acceptClass());
+ } else {
ui.helper.removeClass(dragIndicatorObj.acceptClass());
- ui.helper.removeClass(dragIndicatorObj.rejectClass());
+ ui.helper.addClass(dragIndicatorObj.rejectClass());
}
- },
-
- dropover: function(event, ui) {
- var draggable = ui.draggable;
- var dragIndicatorObj = rf.$(ui.helper.attr("id"));
- if(dragIndicatorObj) {
- if(this.accept(draggable)) {
- ui.helper.removeClass(dragIndicatorObj.rejectClass());
- ui.helper.addClass(dragIndicatorObj.acceptClass());
- } else {
- ui.helper.removeClass(dragIndicatorObj.acceptClass());
- ui.helper.addClass(dragIndicatorObj.rejectClass());
- }
+ } else {
+ if (this.accept(draggable)) {
+ ui.helper.removeClass(defaultIndicatorClasses.rejectClass);
+ ui.helper.addClass(defaultIndicatorClasses.acceptClass);
+ } else {
+ ui.helper.removeClass(defaultIndicatorClasses.acceptClass);
+ ui.helper.addClass(defaultIndicatorClasses.rejectClass);
}
- },
-
- dropout: function(event, ui) {
- var draggable = ui.draggable;
- var dragIndicatorObj = rf.$(ui.helper.attr("id"));
- if(dragIndicatorObj) {
- ui.helper.removeClass(dragIndicatorObj.acceptClass());
- ui.helper.removeClass(dragIndicatorObj.rejectClass());
- }
- },
-
- accept: function(draggable) {
- // since acceptedTypes is optional it could be null.
- // In this case all types are accepted
- if(!this.options.acceptedTypes) return true;
+ }
+ },
- var accept;
- var acceptType = draggable.data("type");
- if(acceptType) {
- $.each(this.options.acceptedTypes, function() {
- accept = (acceptType == this); return !(accept);
- });
- }
- return accept;
- },
-
- __callAjax: function(e, ui){
- if(ui.draggable) {
- var dragSource = ui.draggable.data("id");
- var ajaxFunc = this.options.ajaxFunction;
- if(ajaxFunc && typeof ajaxFunc == 'function' ) {
- ajaxFunc.call(this,e, dragSource);
- }
+ dropout : function(event, ui) {
+ var draggable = ui.draggable;
+ var dragIndicatorObj = rf.$(ui.helper.attr("id"));
+ if (dragIndicatorObj) {
+ ui.helper.removeClass(dragIndicatorObj.acceptClass());
+ ui.helper.removeClass(dragIndicatorObj.rejectClass());
+
+ } else {
+ ui.helper.removeClass(defaultIndicatorClasses.acceptClass);
+ ui.helper.removeClass(defaultIndicatorClasses.rejectClass);
+ }
+ },
+
+ accept : function(draggable) {
+ // since acceptedTypes is optional it could be null.
+ // In this case all types are accepted
+ if (!this.options.acceptedTypes)
+ return true;
+
+ var accept;
+ var acceptType = draggable.data("type");
+ if (acceptType) {
+ $.each(this.options.acceptedTypes, function() {
+ accept = (acceptType == this);
+ return !(accept);
+ });
+ }
+ return accept;
+ },
+
+ __callAjax : function(e, ui) {
+ if (ui.draggable) {
+ var dragSource = ui.draggable.data("id");
+ var ajaxFunc = this.options.ajaxFunction;
+ if (ajaxFunc && typeof ajaxFunc == 'function') {
+ ajaxFunc.call(this, e, dragSource);
}
}
}
- })());
+ }
+ })());
})(jQuery, window.RichFaces);
\ No newline at end of file
Modified:
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/indicator.ecss
===================================================================
---
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/indicator.ecss 2011-01-19
16:36:40 UTC (rev 21087)
+++
trunk/ui/dnd/ui/src/main/resources/META-INF/resources/org.richfaces/indicator.ecss 2011-01-19
16:43:04 UTC (rev 21088)
@@ -1,6 +1,9 @@
.rf-ind{
}
+.rf-ind-drag{
+}
+
.rf-ind-acpt{
}