|
|
@@ -4,6 +4,7 @@ var HelperRenderer = Class.extend({
|
|
|
view: null,
|
|
|
component: null,
|
|
|
eventRenderer: null,
|
|
|
+ helperEls: null,
|
|
|
|
|
|
|
|
|
constructor: function(component, eventRenderer) {
|
|
|
@@ -14,27 +15,66 @@ var HelperRenderer = Class.extend({
|
|
|
|
|
|
|
|
|
renderComponentFootprint: function(componentFootprint) {
|
|
|
- return this.renderEventFootprints([
|
|
|
+ this.renderEventFootprints([
|
|
|
this.fabricateEventFootprint(componentFootprint)
|
|
|
]);
|
|
|
},
|
|
|
|
|
|
|
|
|
- renderEventFootprints: function(eventFootprints, sourceSeg) {
|
|
|
- return this.renderFootprintEls(eventFootprints, sourceSeg)
|
|
|
- .addClass('fc-helper');
|
|
|
+ renderEventDraggingFootprints: function(eventFootprints, sourceSeg, isTouch) {
|
|
|
+ this.renderEventFootprints(
|
|
|
+ eventFootprints,
|
|
|
+ sourceSeg,
|
|
|
+ 'fc-dragging',
|
|
|
+ isTouch ? null : this.view.opt('dragOpacity')
|
|
|
+ );
|
|
|
},
|
|
|
|
|
|
|
|
|
- renderFootprintEls: function(eventFootprints, sourceSeg) {
|
|
|
- // Subclasses must implement.
|
|
|
- // Must return all mock event elements.
|
|
|
+ renderEventResizingFootprints: function(eventFootprints, sourceSeg, isTouch) {
|
|
|
+ this.renderEventFootprints(
|
|
|
+ eventFootprints,
|
|
|
+ sourceSeg,
|
|
|
+ 'fc-resizing'
|
|
|
+ );
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ renderEventFootprints: function(eventFootprints, sourceSeg, extraClassNames, opacity) {
|
|
|
+ var segs = this.component.eventFootprintsToSegs(eventFootprints);
|
|
|
+ var classNames = 'fc-helper ' + (extraClassNames || '');
|
|
|
+ var i;
|
|
|
+
|
|
|
+ // assigns each seg's el and returns a subset of segs that were rendered
|
|
|
+ segs = this.eventRenderer.renderFgSegEls(segs);
|
|
|
+
|
|
|
+ for (i = 0; i < segs.length; i++) {
|
|
|
+ segs[i].el.addClass(classNames);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (opacity != null) {
|
|
|
+ for (i = 0; i < segs.length; i++) {
|
|
|
+ segs[i].el.css('opacity', opacity);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ this.helperEls = this.renderSegs(segs, sourceSeg);
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ /*
|
|
|
+ Must return all mock event elements
|
|
|
+ */
|
|
|
+ renderSegs: function(segs, sourceSeg) {
|
|
|
+ // Subclasses must implement
|
|
|
},
|
|
|
|
|
|
|
|
|
- // Unrenders a mock event
|
|
|
unrender: function() {
|
|
|
- // subclasses must implement
|
|
|
+ if (this.helperEls) {
|
|
|
+ this.helperEls.remove();
|
|
|
+ this.helperEls = null;
|
|
|
+ }
|
|
|
},
|
|
|
|
|
|
|