This is an automated email from the ASF dual-hosted git repository.
yishayw 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 7a6c988 Fixes gap issue in spark tab bar.
new 58ded71 Merge branch 'develop' of
https://github.com/apache/royale-asjs into develop
7a6c988 is described below
commit 7a6c988b562b1b7708f22f0574a9f27424bb68f5
Author: DESKTOP-RH4S838\Yishay <[email protected]>
AuthorDate: Tue Oct 29 17:19:44 2019 +0200
Fixes gap issue in spark tab bar.
Reference #475
---
.../SparkRoyale/src/main/resources/defaults.css | 2 +-
.../src/main/resources/spark-royale-manifest.xml | 1 +
.../royale/spark/components/beads/TabBarView.as | 65 ++++++++++++++++++++++
.../src/main/royale/spark/core/IGapLayout.as | 36 ++++++++++++
.../main/royale/spark/layouts/HorizontalLayout.as | 3 +-
.../main/royale/spark/layouts/VerticalLayout.as | 3 +-
6 files changed, 107 insertions(+), 3 deletions(-)
diff --git a/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
b/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
index 471e1b3..f7eeeda 100644
--- a/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
+++ b/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
@@ -166,7 +166,7 @@ SkinnableContainer
TabBar
{
- IBeadView:
ClassReference("spark.components.beads.SkinnableContainerView");
+ IBeadView: ClassReference("spark.components.beads.TabBarView");
IBeadLayout:
ClassReference("spark.layouts.supportClasses.SparkLayoutBead");
IViewport:
ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
IViewportModel:
ClassReference("org.apache.royale.html.beads.models.ViewportModel");
diff --git
a/frameworks/projects/SparkRoyale/src/main/resources/spark-royale-manifest.xml
b/frameworks/projects/SparkRoyale/src/main/resources/spark-royale-manifest.xml
index 74e7605..265edde 100644
---
a/frameworks/projects/SparkRoyale/src/main/resources/spark-royale-manifest.xml
+++
b/frameworks/projects/SparkRoyale/src/main/resources/spark-royale-manifest.xml
@@ -112,6 +112,7 @@
<component id="NonVirtualHDataGroup"
class="spark.components.NonVirtualHDataGroup"/>
<component id="NonVirtualVDataGroup"
class="spark.components.NonVirtualVDataGroup"/>
+ <component id="TabBarView" class="spark.components.beads.TabBarView"/>
<component id="MXAdvancedDataGridItemRenderer"
class="spark.controls.advancedDataGridClasses.MXAdvancedDataGridItemRenderer"/>
<component id="SparkTextButtonItemRenderer"
class="spark.components.supportClasses.SparkTextButtonItemRenderer"/>
diff --git
a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/TabBarView.as
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/TabBarView.as
new file mode 100644
index 0000000..39a5dbd
--- /dev/null
+++
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/TabBarView.as
@@ -0,0 +1,65 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 spark.components.beads
+{
+
+import spark.components.SkinnableContainer;
+import org.apache.royale.events.Event;
+import org.apache.royale.core.IStrand;
+import spark.core.IGapLayout;
+
+/**
+ * @private
+ * The SkinnableContainerView for emulation.
+ */
+public class TabBarView extends SkinnableContainerView
+{
+
//--------------------------------------------------------------------------
+ //
+ // Constructor
+ //
+
//--------------------------------------------------------------------------
+
+ /**
+ * Constructor.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 9
+ * @playerversion AIR 1.1
+ * @productversion Flex 3
+ */
+ public function TabBarView()
+ {
+ super();
+ }
+
+ override protected function handleInitComplete(event:Event):void
+ {
+ super.handleInitComplete();
+ var gapLayout:IGapLayout = (contentView as
IStrand).getBeadByType(IGapLayout) as IGapLayout;
+ if (gapLayout)
+ {
+ gapLayout.gap = 0;
+ }
+ }
+
+}
+
+}
diff --git
a/frameworks/projects/SparkRoyale/src/main/royale/spark/core/IGapLayout.as
b/frameworks/projects/SparkRoyale/src/main/royale/spark/core/IGapLayout.as
new file mode 100644
index 0000000..400fba0
--- /dev/null
+++ b/frameworks/projects/SparkRoyale/src/main/royale/spark/core/IGapLayout.as
@@ -0,0 +1,36 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 spark.core
+{
+ import org.apache.royale.core.IBeadLayout;
+
+ /**
+ * IGapLayout layouts have a fixed gap between layout items
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.7
+ */
+ public interface IGapLayout extends IBeadLayout
+ {
+ function get gap():int;
+ function set gap(value:int):void;
+ }
+}
\ No newline at end of file
diff --git
a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/HorizontalLayout.as
b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/HorizontalLayout.as
index 1bf83a3..daec7e3 100644
---
a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/HorizontalLayout.as
+++
b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/HorizontalLayout.as
@@ -36,6 +36,7 @@ import spark.layouts.supportClasses.LinearLayoutVector;
import org.apache.royale.events.Event;
import org.apache.royale.geom.Point;
import org.apache.royale.geom.Rectangle;
+import spark.core.IGapLayout;
use namespace mx_internal;
@@ -122,7 +123,7 @@ use namespace mx_internal;
* @playerversion AIR 1.5
* @productversion Flex 4
*/
-public class HorizontalLayout extends LayoutBase
+public class HorizontalLayout extends LayoutBase implements IGapLayout
{
// include "../core/Version.as";
diff --git
a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/VerticalLayout.as
b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/VerticalLayout.as
index 1e28805..d77e50d 100644
---
a/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/VerticalLayout.as
+++
b/frameworks/projects/SparkRoyale/src/main/royale/spark/layouts/VerticalLayout.as
@@ -37,6 +37,7 @@ import spark.layouts.supportClasses.DropLocation;
import spark.layouts.supportClasses.LayoutBase;
import spark.layouts.supportClasses.LayoutElementHelper;
import spark.layouts.supportClasses.LinearLayoutVector;
+import spark.core.IGapLayout;
use namespace mx_internal;
@@ -123,7 +124,7 @@ use namespace mx_internal;
* @playerversion AIR 1.5
* @productversion Flex 4
*/
-public class VerticalLayout extends LayoutBase
+public class VerticalLayout extends LayoutBase implements IGapLayout
{
// include "../core/Version.as";