Difference between revisions of "Pages"

From HSYCO
Jump to navigation Jump to search
 
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:UI Objects]]
+
[[Category:User Interface]]
A project page. There are three types of pages: menu, page, popup.
+
Interfaces are organized in pages.
For page and popup types, some names are reserved and can't be used, not even as the initial part of a longer name. The reserved names are: menu, temp, music, cameras, timer, logout. While it is normal to have more link objects directed to the same page, it is an error to have more than one (page) object with the same name.
+
There are three types of pages: '''[[#Menu|menu]]''', '''[[#Page|page]]''', '''[[#Overlay|overlay]]''', '''[[#Popup|popup]]'''.
  
= Menu =
+
Each page is identified by an '''id'''. The "menu" and "overlay" ids are reserved for '''menu''' and '''overlay''' pages.
[[Category:UI Objects]]
+
If the project supports the orientation mode, pages (all but popups) can have two versions with the same id and an orientation that can be portrait or landscape. When opening a page with a specific id, the page with the corresponding id and current orientation will be chosen. If it's missing, the page with same id but different or missing orientation value will be chosen instead.
Main page of the project.
+
 
 +
Pages (of '''page''' and '''menu''' types) can also have custom gestures defined with the '''gestures''' attribute.
 +
 
 +
Performing a gesture when a popup is open will close it.
 +
 
 +
== Menu ==
 +
Main page of the project. The home link on the interface's top bar leads to this page.
 
There has to be one menu in each project.
 
There has to be one menu in each project.
 
There can be a landscape and a portrait version, specified with an attribute.
 
There can be a landscape and a portrait version, specified with an attribute.
  
 
=== Parameters ===
 
=== Parameters ===
 +
*'''page type''': menu, page, overlay or popup
 +
*'''orientation''': if the project is orientation enabled, specifies the orientation (landscape or portrait)
 
*'''gestures''': list of gestures that can be performed on the page (see [[gestures]])
 
*'''gestures''': list of gestures that can be performed on the page (see [[gestures]])
  
Line 18: Line 26:
 
  ...
 
  ...
 
  (endofmenu)
 
  (endofmenu)
Eg.
+
E.g.
 
  (menu)
 
  (menu)
 
  ...
 
  ...
Line 27: Line 35:
 
  (endofmenu)
 
  (endofmenu)
  
= Page =
+
== Page ==
 
A generic page, identified by a name.
 
A generic page, identified by a name.
 
If the project is orientation-enabled, the orientation can be specified (if omitted, the default is landscape).
 
If the project is orientation-enabled, the orientation can be specified (if omitted, the default is landscape).
 
=== Parameters ===
 
=== Parameters ===
*'''page type''':
+
*'''page type''': menu, page, overlay or popup
 +
*'''id''': identifies the page. It's used on [[link]] objects to link it
 +
*'''title''': title shown at the top of the page, if the skin includes it
 
*'''orientation''': if the project is orientation enabled, specifies the orientation (landscape or portrait)
 
*'''orientation''': if the project is orientation enabled, specifies the orientation (landscape or portrait)
 +
*'''locations''': locations assigned to this page
 +
*'''protected''': can be null or pin. If set to pin, the user's PIN is requested when entering the page
 
*'''gestures''': list of gestures that can be performed on the page (see [[gestures]])
 
*'''gestures''': list of gestures that can be performed on the page (see [[gestures]])
  
Line 41: Line 53:
 
  ...
 
  ...
 
  (endofpage)
 
  (endofpage)
Eg.
+
E.g.
 
  (page)
 
  (page)
 
  ...
 
  ...
Line 49: Line 61:
 
  ...
 
  ...
 
  (endofpage)
 
  (endofpage)
+
 
 
=== UI Attributes ===
 
=== UI Attributes ===
{{:UI Object Attributes (Page)}}
+
{{UI Object Attributes (Page)}}
 +
 
 +
== Overlay ==
 +
A special page that is always visible on top of the other pages. Place here objects that stay visible throughout the interface.
 +
There can be a landscape and a portrait version, specified with an attribute.
  
= Popup =
 
A popup page, identified by a name and a type.
 
If the project is orientation-enabled, the orientation can be specified (if omitted, the default is landscape).
 
 
=== Parameters ===
 
=== Parameters ===
*'''page type''':
+
*'''page type''': menu, page, overlay or popup
 
*'''orientation''': if the project is orientation enabled, specifies the orientation (landscape or portrait)
 
*'''orientation''': if the project is orientation enabled, specifies the orientation (landscape or portrait)
*'''gestures''': list of gestures that can be performed on the page (see [[gestures]])
 
  
 
=== Syntax ===
 
=== Syntax ===
(page) defines the beginning of the page. Orientation is specified as (page#landscape) or (page#portrait) when the project is orientation-enabled.
+
(overlay) defines the beginning of the page. Orientation is specified as (overlay#landscape) or (overlay#portrait) when the project is orientation-enabled.
(endofpage) defines the end of the page.
+
(endofoverlay) defines the end of the page.
  (page[#<orientation>])
+
  (menu[#<orientation>])
 
  ...
 
  ...
  (endofpage)
+
  (endofoverlay)
Eg.
+
E.g.
  (page)
+
  (overlay)
 
  ...
 
  ...
  (endofpage)
+
  (endofoverlay)
 
   
 
   
  (page#portrait)
+
  (overlay#portrait)
 +
...
 +
(endofoverlay)
 +
 
 +
== Popup ==
 +
A popup page, identified by a name and a popup type: simple or modal.
 +
It can have a close button, if it's necessary or if specified by the ''closebutton'' attribute.
 +
==== Simple Popup ====
 +
A simple popup opens up next to the object that generated it (eg. a [[link]] or [[user]] object) and it's closed by the same object. If there's no space, the popup will be opened at the center of the page, with a close button to close it.
 +
==== Modal Popup ====
 +
A modal popup is an exclusive popup that will open in the center of the page, while the background is grayed out.
 +
To close it, click on the background or on the close button (if it's visible).
 +
 
 +
=== Parameters ===
 +
*'''page type''': menu, page, or popup
 +
*'''id''': identifies the page. It's used on [[link]] objects to link it
 +
*'''title''': title shown at the top of the page, if the skin includes it
 +
*'''size''': width and height of the popup
 +
*'''type''': popup type: simple or modal. The default is simple
 +
 
 +
=== Syntax ===
 +
(popup) defines the beginning of the page, (endofpopup) defines the end of the page.
 +
A size [[Directives|directive]] is used to define the popup's size.
 +
(popup <id>; <title>)
 +
(#size <width>x<height>)
 +
...
 +
(endofpopup)
 +
E.g.
 +
(popup mypopup; My Title; modal)
 +
(#size 300x250)
 
  ...
 
  ...
  (endofpage)
+
  (endofpopup)
+
 
 
=== UI Attributes ===
 
=== UI Attributes ===
{{:UI Object Attributes (Page)}}
+
{{UI Object Attributes (Page)}}
 +
 
 +
==== Popup attributes ====
 +
{| class="wikitable"
 +
!Name
 +
!Value
 +
!Description
 +
|-
 +
|rowspan="2"|popuptype
 +
|simple
 +
|[[#Simple Popup|Simple Popup]]
 +
|-
 +
|modal
 +
|[[#Modal Popup|Modal Popup]]
 +
|-
 +
 
 +
|dirs
 +
|list of any directions (up,right,down or left)
 +
|Specify the priority by which the opening direction of the popup is chosen. E.g. if dirs is ''up,down,right'', when opening the popup it will try to position it on top of the object that generated it. If there's not enough space (if the popup exceeds the page area), it will try opening it below the object. If there's still not enough space, it will try on the right. If all the directions fail, it will open it at the center of the page, showing a close button to close it.
 +
|-
 +
 
 +
|rowspan="2"|locked
 +
|true
 +
|Locked: the close button is hidden and the popup can't be closed by a back gesture or by clicking on the background (if it's a modal popup).
 +
|-
 +
|false
 +
|Default behaviour: the popup can be closed by a back gesture or by clicking on the background (if it's a modal popup)
 +
|-
 +
 
 +
 
 +
|rowspan="3"|closebutton
 +
|auto
 +
|The close button is visible only when needed (on modal popups and on simple popups that are shown at the center of the page)
 +
|-
 +
|true
 +
|The close button is always visible
 +
|-
 +
|false
 +
|The close button is never visible
 +
|-
 +
 
 +
|width
 +
|<width>
 +
|Popup's width in pixels
 +
|-
 +
 
 +
|height
 +
|<height>
 +
|Popup's height in pixels
 +
|-
 +
|}

Latest revision as of 14:26, 21 November 2015

Interfaces are organized in pages. There are three types of pages: menu, page, overlay, popup.

Each page is identified by an id. The "menu" and "overlay" ids are reserved for menu and overlay pages. If the project supports the orientation mode, pages (all but popups) can have two versions with the same id and an orientation that can be portrait or landscape. When opening a page with a specific id, the page with the corresponding id and current orientation will be chosen. If it's missing, the page with same id but different or missing orientation value will be chosen instead.

Pages (of page and menu types) can also have custom gestures defined with the gestures attribute.

Performing a gesture when a popup is open will close it.

Menu

Main page of the project. The home link on the interface's top bar leads to this page. There has to be one menu in each project. There can be a landscape and a portrait version, specified with an attribute.

Parameters

  • page type: menu, page, overlay or popup
  • orientation: if the project is orientation enabled, specifies the orientation (landscape or portrait)
  • gestures: list of gestures that can be performed on the page (see gestures)

Syntax

(menu) defines the beginning of the page. Orientation is specified as (menu#landscape) or (menu#portrait) when the project is orientation-enabled. (endofmenu) defines the end of the page.

(menu[#<orientation>])
...
(endofmenu)

E.g.

(menu)
...
(endofmenu)

(menu#portrait)
...
(endofmenu)

Page

A generic page, identified by a name. If the project is orientation-enabled, the orientation can be specified (if omitted, the default is landscape).

Parameters

  • page type: menu, page, overlay or popup
  • id: identifies the page. It's used on link objects to link it
  • title: title shown at the top of the page, if the skin includes it
  • orientation: if the project is orientation enabled, specifies the orientation (landscape or portrait)
  • locations: locations assigned to this page
  • protected: can be null or pin. If set to pin, the user's PIN is requested when entering the page
  • gestures: list of gestures that can be performed on the page (see gestures)

Syntax

(page) defines the beginning of the page. Orientation is specified as (page#landscape) or (page#portrait) when the project is orientation-enabled. (endofpage) defines the end of the page.

(page[#<orientation>])
...
(endofpage)

E.g.

(page)
...
(endofpage)

(page#portrait)
...
(endofpage)

UI Attributes

Page attributes

Name Value Description
gestures list of ids and values List of gestures.

E.g. swipeup=page:menu; pinchin=user

Overlay

A special page that is always visible on top of the other pages. Place here objects that stay visible throughout the interface. There can be a landscape and a portrait version, specified with an attribute.

Parameters

  • page type: menu, page, overlay or popup
  • orientation: if the project is orientation enabled, specifies the orientation (landscape or portrait)

Syntax

(overlay) defines the beginning of the page. Orientation is specified as (overlay#landscape) or (overlay#portrait) when the project is orientation-enabled. (endofoverlay) defines the end of the page.

(menu[#<orientation>])
...
(endofoverlay)

E.g.

(overlay)
...
(endofoverlay)

(overlay#portrait)
...
(endofoverlay)

Popup

A popup page, identified by a name and a popup type: simple or modal. It can have a close button, if it's necessary or if specified by the closebutton attribute.

Simple Popup

A simple popup opens up next to the object that generated it (eg. a link or user object) and it's closed by the same object. If there's no space, the popup will be opened at the center of the page, with a close button to close it.

Modal Popup

A modal popup is an exclusive popup that will open in the center of the page, while the background is grayed out. To close it, click on the background or on the close button (if it's visible).

Parameters

  • page type: menu, page, or popup
  • id: identifies the page. It's used on link objects to link it
  • title: title shown at the top of the page, if the skin includes it
  • size: width and height of the popup
  • type: popup type: simple or modal. The default is simple

Syntax

(popup) defines the beginning of the page, (endofpopup) defines the end of the page. A size directive is used to define the popup's size.

(popup <id>; <title>)
(#size <width>x<height>)
...
(endofpopup)

E.g.

(popup mypopup; My Title; modal)
(#size 300x250)
...
(endofpopup)

UI Attributes

Page attributes

Name Value Description
gestures list of ids and values List of gestures.

E.g. swipeup=page:menu; pinchin=user

Popup attributes

Name Value Description
popuptype simple Simple Popup
modal Modal Popup
dirs list of any directions (up,right,down or left) Specify the priority by which the opening direction of the popup is chosen. E.g. if dirs is up,down,right, when opening the popup it will try to position it on top of the object that generated it. If there's not enough space (if the popup exceeds the page area), it will try opening it below the object. If there's still not enough space, it will try on the right. If all the directions fail, it will open it at the center of the page, showing a close button to close it.
locked true Locked: the close button is hidden and the popup can't be closed by a back gesture or by clicking on the background (if it's a modal popup).
false Default behaviour: the popup can be closed by a back gesture or by clicking on the background (if it's a modal popup)
closebutton auto The close button is visible only when needed (on modal popups and on simple popups that are shown at the center of the page)
true The close button is always visible
false The close button is never visible
width <width> Popup's width in pixels
height <height> Popup's height in pixels