This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new cf422d1  basic-constraintsize-bead: brings min, max width and height 
properties to UIBase as a bead
cf422d1 is described below

commit cf422d11082cd91b7cb755e22e708b6b2fe23255
Author: Carlos Rovira <carlosrov...@apache.org>
AuthorDate: Fri Apr 10 19:04:38 2020 +0200

    basic-constraintsize-bead: brings min, max width and height properties to 
UIBase as a bead
---
 .../Basic/src/main/resources/basic-manifest.xml    |   1 +
 .../org/apache/royale/core/ConstraintSize.as       | 172 +++++++++++++++++++++
 2 files changed, 173 insertions(+)

diff --git a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml 
b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
index 40e9b43..4e0b5b5 100644
--- a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
@@ -128,6 +128,7 @@
     <component id="ApplicationParameters" 
class="org.apache.royale.html.beads.ApplicationParametersBead"/>
     <component id="ApplicationParametersCaseInsensitive" 
class="org.apache.royale.html.beads.ApplicationParametersCaseInsensitiveBead"/>
     <component id="IEEventAdapter" 
class="org.apache.royale.html.beads.IEEventAdapterBead"/>
+    <component id="ConstraintSize" 
class="org.apache.royale.core.ConstraintSize"/>
 
     <component id="SimpleAlert" class="org.apache.royale.html.SimpleAlert"/>
     <component id="Alert" class="org.apache.royale.html.Alert"/>
diff --git 
a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ConstraintSize.as
 
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ConstraintSize.as
new file mode 100644
index 0000000..b9e702a
--- /dev/null
+++ 
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ConstraintSize.as
@@ -0,0 +1,172 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.core
+{
+       import org.apache.royale.core.IBead;
+       import org.apache.royale.core.IStrand;
+       import org.apache.royale.core.UIBase;
+
+       /**
+        *  The ConstraintSize class is used to set minimun and maximun sizes 
on the component
+        *  
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.9.7
+        */
+       public class ConstraintSize implements IBead
+       {
+           public function ConstraintSize()
+           {
+           }
+
+        protected var host:UIBase;
+
+        public function set strand(value:IStrand):void
+        {
+            host = value as UIBase;
+            updateMinWidth();
+            updateMinHeight();
+        }
+           
+        protected var _minWidth:Number;
+        /**
+         *  the minimun width for this component
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.7
+         */
+        public function get minWidth():Number
+        {
+            return _minWidth;
+        }
+        public function set minWidth(value:Number):void
+        {
+            if (_minWidth !== value)
+            {
+                _minWidth = value;
+                if(host)
+                    updateMinWidth();
+            }   
+        }
+        private function updateMinWidth():void
+        {
+            COMPILE::JS
+            {
+            if(_minWidth)
+                host.positioner.style.minWidth = _minWidth.toString() + 'px';  
      
+            }
+        }
+        
+        protected var _minHeight:Number;
+        /**
+         *  the minimun height for this component
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.7
+         */
+        public function get minHeight():Number
+        {
+            return _minHeight;
+        }
+        public function set minHeight(value:Number):void
+        {
+            if (_minHeight !== value)
+            {
+                _minHeight = value;
+                if(host)
+                    updateMinHeight();
+            }   
+        }
+        private function updateMinHeight():void
+        {
+            COMPILE::JS
+            {
+            if(_minHeight)
+                host.positioner.style.minHeight = _minHeight.toString() + 
'px';        
+            }
+        }
+        
+        protected var _maxWidth:Number;
+        /**
+         *  the maximun width for this component
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.7
+         */
+        public function get maxWidth():Number
+        {
+            return _maxWidth;
+        }
+        public function set maxWidth(value:Number):void
+        {
+            if (_maxWidth !== value)
+            {
+                _maxWidth = value;
+                if(host)
+                    updateMaxWidth();
+            }   
+        }
+        private function updateMaxWidth():void
+        {
+            COMPILE::JS
+            {
+            if(_maxWidth)
+                host.positioner.style.maxWidth = _maxWidth.toString() + 'px';  
      
+            }
+        }
+        
+        protected var _maxHeight:Number;
+        /**
+         *  the maximun height for this component
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.7
+         */
+        public function get maxHeight():Number
+        {
+            return _maxHeight;
+        }
+        public function set maxHeight(value:Number):void
+        {
+            if (_maxHeight !== value)
+            {
+                _maxHeight = value;
+                if(host)
+                    updateMaxHeight();
+            }   
+        }
+        private function updateMaxHeight():void
+        {
+            COMPILE::JS
+            {
+            if(_maxHeight)
+                host.positioner.style.maxHeight = _maxHeight.toString() + 
'px';        
+            }
+        }
+       }
+}

Reply via email to