From e7616f46ffd130d1743026a04d411bb850e82657 Mon Sep 17 00:00:00 2001
From: Henning Leutz <leutz@pcsg.de>
Date: Wed, 25 May 2016 10:04:21 +0200
Subject: [PATCH] promo slider -> resize settings

---
 bin/BrickEdit.js                            | 10 +++++++-
 bin/Controls/Slider/PromoSliderSettings.css |  4 +++
 bin/Controls/Slider/PromosliderSettings.js  | 27 +++++++++++++++++++++
 3 files changed, 40 insertions(+), 1 deletion(-)

diff --git a/bin/BrickEdit.js b/bin/BrickEdit.js
index 14b4ab6..6abfc67 100644
--- a/bin/BrickEdit.js
+++ b/bin/BrickEdit.js
@@ -73,7 +73,15 @@ define('package/quiqqer/bricks/bin/BrickEdit', [
             this.addEvents({
                 onInject : this.$onInject,
                 onCreate : this.$onCreate,
-                onDestroy: this.$onDestroy
+                onDestroy: this.$onDestroy,
+                onResize : function () {
+                    var controls = QUI.Controls.getControlsInElement(this.getContent());
+                    controls.each(function (Control) {
+                        if ("resize" in Control) {
+                            Control.resize();
+                        }
+                    });
+                }.bind(this)
             });
         },
 
diff --git a/bin/Controls/Slider/PromoSliderSettings.css b/bin/Controls/Slider/PromoSliderSettings.css
index 8e420f3..8c43c13 100644
--- a/bin/Controls/Slider/PromoSliderSettings.css
+++ b/bin/Controls/Slider/PromoSliderSettings.css
@@ -1,3 +1,7 @@
+.quiqqer-bricks-promoslider-settings {
+    position: relative;
+}
+
 .quiqqer-bricks-promoslider-settings-entry {
     background: #f0f0f0;
     border: 1px solid #ddd;
diff --git a/bin/Controls/Slider/PromosliderSettings.js b/bin/Controls/Slider/PromosliderSettings.js
index cd82e35..6db67a1 100644
--- a/bin/Controls/Slider/PromosliderSettings.js
+++ b/bin/Controls/Slider/PromosliderSettings.js
@@ -4,6 +4,14 @@
  *
  * @require qui/QUI
  * @require qui/controls/Control
+ * @require qui/controls/windows/Confirm
+ * @require qui/controls/buttons/Button
+ * @require Locale
+ * @require Mustache
+ * @require controls/grid/Grid
+ * @require utils/Controls
+ * @require text!package/quiqqer/bricks/bin/Controls/Slider/PromosliderSettingsEntry.html
+ * @require css!package/quiqqer/bricks/bin/Controls/Slider/PromoSliderSettings.css
  */
 define('package/quiqqer/bricks/bin/Controls/Slider/PromosliderSettings', [
 
@@ -60,6 +68,7 @@ define('package/quiqqer/bricks/bin/Controls/Slider/PromosliderSettings', [
                 styles : {
                     clear   : 'both',
                     'float' : 'left',
+                    height  : 400,
                     overflow: 'hidden',
                     position: 'relative',
                     margin  : '10px 0 0 0',
@@ -196,6 +205,11 @@ define('package/quiqqer/bricks/bin/Controls/Slider/PromosliderSettings', [
                 onDblClick: this.$openEditDialog
             });
 
+            this.$Grid.getElm().setStyles({
+                position: 'absolute'
+            });
+
+
             try {
                 this.$data = JSON.decode(this.$Input.value);
 
@@ -208,6 +222,19 @@ define('package/quiqqer/bricks/bin/Controls/Slider/PromosliderSettings', [
             }
         },
 
+        /**
+         * Resize the control
+         *
+         * @return {Promise}
+         */
+        resize: function () {
+            var size = this.getElm().getSize();
+
+            return this.$Grid.setWidth(size.x).then(function () {
+                this.$Grid.resize();
+            }.bind(this));
+        },
+
         /**
          * refresh the display
          */
-- 
GitLab