From ecce246e1caf532a4b1a3794330c3f6de4305580 Mon Sep 17 00:00:00 2001 From: Doug Bell Date: Wed, 20 Apr 2011 15:52:50 -0500 Subject: [PATCH] new layout drag handles working --- .../7.10.4-8.0.0/one_over_three.wgpkg | Bin 0 -> 1488 bytes .../upgrades/7.10.4-8.0.0/one_over_two.wgpkg | Bin 0 -> 1421 bytes .../7.10.4-8.0.0/plainblacknews.wgpkg | Bin 0 -> 1456 bytes .../upgrades/7.10.4-8.0.0/right_column.wgpkg | Bin 0 -> 1360 bytes .../upgrades/7.10.4-8.0.0/side_by_side.wgpkg | Bin 0 -> 1316 bytes .../upgrades/7.10.4-8.0.0/three-columns.wgpkg | Bin 0 -> 1416 bytes www/extras/admin/admin.js | 9 ++- www/extras/admin/layout.js | 73 ++++++++++-------- www/extras/draggable.css | 25 ++++-- 9 files changed, 68 insertions(+), 39 deletions(-) create mode 100644 share/upgrades/7.10.4-8.0.0/one_over_three.wgpkg create mode 100644 share/upgrades/7.10.4-8.0.0/one_over_two.wgpkg create mode 100644 share/upgrades/7.10.4-8.0.0/plainblacknews.wgpkg create mode 100644 share/upgrades/7.10.4-8.0.0/right_column.wgpkg create mode 100644 share/upgrades/7.10.4-8.0.0/side_by_side.wgpkg create mode 100644 share/upgrades/7.10.4-8.0.0/three-columns.wgpkg diff --git a/share/upgrades/7.10.4-8.0.0/one_over_three.wgpkg b/share/upgrades/7.10.4-8.0.0/one_over_three.wgpkg new file mode 100644 index 0000000000000000000000000000000000000000..87037f01e85cdf236efb326d92b91458886ae389 GIT binary patch literal 1488 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 Sz$*fug}`4&KqbWh8UO&T9j+Vz literal 0 HcmV?d00001 diff --git a/share/upgrades/7.10.4-8.0.0/side_by_side.wgpkg b/share/upgrades/7.10.4-8.0.0/side_by_side.wgpkg new file mode 100644 index 0000000000000000000000000000000000000000..add9aabd2cd2a64e33b3269164bce272c55a2f41 GIT binary patch literal 1316 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 WR|H-WctzkpLEvA3#w^GH8~^|jBEFIU literal 0 HcmV?d00001 diff --git a/www/extras/admin/admin.js b/www/extras/admin/admin.js index 84b4e0d0a..d16d1d08d 100644 --- a/www/extras/admin/admin.js +++ b/www/extras/admin/admin.js @@ -99,6 +99,8 @@ WebGUI.Admin = function(cfg){ getWebguiProperty( 'extrasURL' ) + 'yui/build/yahoo-dom-event/yahoo-dom-event.js', getWebguiProperty( 'extrasURL' ) + 'yui/build/utilities/utilities.js', getWebguiProperty( 'extrasURL' ) + 'yui/build/element/element-min.js', + getWebguiProperty( 'extrasURL' ) + 'yui/build/connection/connection-debug.js', + getWebguiProperty( 'extrasURL' ) + 'yui/build/selector/selector-min.js', getWebguiProperty( 'extrasURL' ) + 'yui/build/animation/animation-min.js', getWebguiProperty( 'extrasURL' ) + 'yui/build/dragdrop/dragdrop-min.js', getWebguiProperty( 'extrasURL' ) + 'admin/layout.js' @@ -106,7 +108,12 @@ WebGUI.Admin = function(cfg){ { win : viewWin, onSuccess : function(data) { - new data.win.WebGUI.Layout(data.win.document.body); + new data.win.WebGUI.Layout( + data.win.document.body, + { + url: self.currentAssetDef.url + '?func=setContentPositions;' + } + ); } } ); diff --git a/www/extras/admin/layout.js b/www/extras/admin/layout.js index 9e64b5555..3e2c409ed 100644 --- a/www/extras/admin/layout.js +++ b/www/extras/admin/layout.js @@ -23,6 +23,7 @@ WebGUI.Layout = function (elem, cfg) { // Some special vars this.scrollJump = 50; + this.blankCount = 0; // Init layout positions var positions = this.getPositions(); @@ -58,7 +59,14 @@ WebGUI.Layout.prototype.getPositions */ WebGUI.Layout.prototype.getPositionElements = function ( pos ) { - return pos.getElementsByTagName( '*' ); + var elems = []; + for ( var i = 0; i < pos.childNodes.length; i++ ) { + var child = pos.childNodes[i]; + if ( child.nodeType == 1 ) { // Only elements + elems.push(child); + } + } + return elems; }; /** @@ -112,7 +120,7 @@ WebGUI.Layout.prototype.addBlankTarget = function ( el ) { var blank = document.createElement("div"); blank.className="blank"; - blank.id = "blank" + new Date().getTime() + blankCount++; + blank.id = "blank" + new Date().getTime() + this.blankCount++; el.appendChild(blank); blank.style.top = 0+"px"; blank.style.left = 0+"px"; @@ -171,7 +179,7 @@ WebGUI.Layout.prototype.move */ WebGUI.Layout.prototype.isBlank = function ( obj ) { - return obj.className.indexOf( "blank" ) == -1; + return obj.className.indexOf( "blank" ) != -1; }; /** @@ -181,32 +189,32 @@ WebGUI.Layout.prototype.save = function () { // Create the content map contentMap = ""; - contentCount=1; - var contentArea = document.getElementById("position1"); - while (contentArea) { - if ((contentMap != "") || ( contentCount == 2 )) { + var positions = this.getPositions(); + for ( var i = 0; i < positions.length; i ++ ) { + var pos = positions[i]; + + // Seperator character + if ((contentMap != "") || ( i == 1 )) { // if first position is blank, still add a . contentMap+="."; } - //get down to the tr area - children = dragable_getElementChildren(contentArea); - children=dragable_getElementChildren(children[0]); - for (i=0;i this.lastY) { @@ -339,7 +348,7 @@ WebGUI.LayoutItem.prototype.onDragOver var srcEl = this.getEl(); if(srcEl.id == id){return;} - var obj = Dom.get(id); + var obj = YAHOO.util.Dom.get(id); // We are only concerned with list items, we ignore the dragover // notifications for the list. if ( this.layout.isBlank( obj ) ) { diff --git a/www/extras/draggable.css b/www/extras/draggable.css index c1e5703bc..2e10e24a3 100644 --- a/www/extras/draggable.css +++ b/www/extras/draggable.css @@ -12,20 +12,26 @@ div.dragable:hover { } .dragTriggerWrap{ width: 100%; - height: 18px; + height: 25px; font-size: 10px; color: #888888; background-color: #cccccc; border: 1px solid #888888; text-align: right; } +.dragTriggerWrap img { + border: none; + margin-top: 4px; + margin-right: 4px; +} + .dragging{ position: relative; opacity:0.6; -moz-opacity:0.6; filter:progid:DXImageTransform.Microsoft.Alpha(opacity=60); cursor: pointer; - z-index: 2000; + z-index: 2000; } .draggedOverTop{ position: relative; @@ -56,13 +62,20 @@ div.dragable:hover { width: 50px; height: 100px; } -/* TODO: Make the buttons appear inside the drag toolbar! Maybe JS? -.wg-content-position > * { +.dragging, .empty { + background-image: url(opaque.gif); +} + +/* Make the buttons appear inside the drag toolbar */ +.wg-content-position > *, .dragging { position: relative; } -.wg-content-position .wg-admin-toolbar { +.wg-content-position .wg-admin-toolbar, +.dragging .wg-admin-toolbar { position: absolute; left: auto; top: 0px; + margin-top: 2px; + margin-left: 2px; } -*/ +