You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2018/07/11 16:43:23 UTC
[royale-asjs] branch develop updated: add visible/hidden responsive
properties to GridCellLayout depending on device sizes
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 ac48ee9 add visible/hidden responsive properties to GridCellLayout depending on device sizes
ac48ee9 is described below
commit ac48ee9075db860640a04fddc7cf676058e19f19
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed Jul 11 18:43:18 2018 +0200
add visible/hidden responsive properties to GridCellLayout depending on device sizes
---
.../royale/org/apache/royale/jewel/GridCell.as | 114 +++++++++++++++++++
.../royale/jewel/beads/layouts/GridCellLayout.as | 123 +++++++++++++++++++++
2 files changed, 237 insertions(+)
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/GridCell.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/GridCell.as
index f0766e5..9fd44fe 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/GridCell.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/GridCell.as
@@ -236,6 +236,120 @@ package org.apache.royale.jewel
}
/**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-phone" and "hidden-phone" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get phoneVisible():Boolean
+ {
+ return layout.phoneVisible;
+ }
+
+ public function set phoneVisible(value:Boolean):void
+ {
+ if (layout.phoneVisible != value)
+ {
+ COMPILE::JS
+ {
+ layout.phoneVisible = value;
+
+ if(layout.phoneVisible)
+ {
+ typeNames = StringUtil.removeWord(typeNames, " hidden-phone");
+ typeNames += " visible-phone";
+ } else
+ {
+ typeNames = StringUtil.removeWord(typeNames, " visible-phone");
+ typeNames += " hidden-phone";
+ }
+
+ if (parent)
+ setClassName(computeFinalClassNames());
+ }
+ }
+ }
+
+ /**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-tablet" and "hidden-tablet" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get tabletVisible():Boolean
+ {
+ return layout.tabletVisible;
+ }
+
+ public function set tabletVisible(value:Boolean):void
+ {
+ if (layout.tabletVisible != value)
+ {
+ COMPILE::JS
+ {
+ layout.tabletVisible = value;
+
+ if(layout.tabletVisible)
+ {
+ typeNames = StringUtil.removeWord(typeNames, " hidden-tablet");
+ typeNames += " visible-tablet";
+ } else
+ {
+ typeNames = StringUtil.removeWord(typeNames, " visible-tablet");
+ typeNames += " hidden-tablet";
+ }
+
+ if (parent)
+ setClassName(computeFinalClassNames());
+ }
+ }
+ }
+
+ /**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-desktop" and "hidden-desktop" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get desktopVisible():Boolean
+ {
+ return layout.desktopVisible;
+ }
+
+ public function set desktopVisible(value:Boolean):void
+ {
+ if (layout.desktopVisible != value)
+ {
+ COMPILE::JS
+ {
+ layout.desktopVisible = value;
+
+ if(layout.desktopVisible)
+ {
+ typeNames = StringUtil.removeWord(typeNames, " hidden-desktop");
+ typeNames += " visible-desktop";
+ } else
+ {
+ typeNames = StringUtil.removeWord(typeNames, " visible-desktop");
+ typeNames += " hidden-desktop";
+ }
+
+ if (parent)
+ setClassName(computeFinalClassNames());
+ }
+ }
+ }
+
+ /**
* Assigns variable gap to grid from 1 to 20
* Activate "gap-Xdp" effect selector to set a numeric gap
* between grid cells
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/GridCellLayout.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/GridCellLayout.as
index 578f329..6865def 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/GridCellLayout.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/GridCellLayout.as
@@ -281,6 +281,129 @@ package org.apache.royale.jewel.beads.layouts
}
}
+ private var _phoneVisible:Boolean;
+ /**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-phone" and "hidden-phone" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get phoneVisible():Boolean
+ {
+ return _phoneVisible;
+ }
+
+ public function set phoneVisible(value:Boolean):void
+ {
+ if (_phoneVisible != value)
+ {
+ COMPILE::JS
+ {
+ _phoneVisible = value;
+
+ if(hostComponent)
+ {
+ if(_phoneVisible)
+ {
+ if (hostClassList.contains("hidden-phone"))
+ hostClassList.remove("hidden-phone");
+ hostClassList.add("visible-phone");
+ } else
+ {
+ if (hostClassList.contains("visible-phone"))
+ hostClassList.remove("visible-phone");
+ hostClassList.add("hidden-phone");
+ }
+ }
+ }
+ }
+ }
+
+ private var _tabletVisible:Boolean;
+ /**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-tablet" and "hidden-tablet" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get tabletVisible():Boolean
+ {
+ return _tabletVisible;
+ }
+
+ public function set tabletVisible(value:Boolean):void
+ {
+ if (_tabletVisible != value)
+ {
+ COMPILE::JS
+ {
+ _tabletVisible = value;
+
+ if(hostComponent)
+ {
+ if(_tabletVisible)
+ {
+ if (hostClassList.contains("hidden-tablet"))
+ hostClassList.remove("hidden-tablet");
+ hostClassList.add("visible-tablet");
+ } else
+ {
+ if (hostClassList.contains("visible-tablet"))
+ hostClassList.remove("visible-tablet");
+ hostClassList.add("hidden-tablet");
+ }
+ }
+ }
+ }
+ }
+
+ private var _desktopVisible:Boolean;
+ /**
+ * Makes the cell to be visible or hidden in phone size
+ * Uses "visible-desktop" and "hidden-desktop" effect selectors.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9.3
+ */
+ public function get desktopVisible():Boolean
+ {
+ return _desktopVisible;
+ }
+
+ public function set desktopVisible(value:Boolean):void
+ {
+ if (_desktopVisible != value)
+ {
+ COMPILE::JS
+ {
+ _desktopVisible = value;
+
+ if(hostComponent)
+ {
+ if(_desktopVisible)
+ {
+ if (hostClassList.contains("hidden-desktop"))
+ hostClassList.remove("hidden-desktop");
+ hostClassList.add("visible-desktop");
+ } else
+ {
+ if (hostClassList.contains("visible-desktop"))
+ hostClassList.remove("visible-desktop");
+ hostClassList.add("hidden-desktop");
+ }
+ }
+ }
+ }
+ }
+
/**
* @copy org.apache.royale.core.IBeadLayout#layout
* @royaleignorecoercion org.apache.royale.core.UIBase