Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Component/s: MOBI-Components
-
Labels:None
-
Environment:ICEfaces 4
-
Assignee Priority:P1
-
Affects:Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial
Description
A View Manager component would aim at making standard mobile UIs easier for enterprise developers. The developer would define the contentPanes, which could be nested, their titles, the navigation pattern for different layouts, and the component would create the UI. The component would automatically handle navigation, and would not require the developer to write any backing bean code for navigation, or view switching.
<mobi:viewManager mobileNavigation="swipe" tabletNavigation="menu" appLabel="My App">
<mobi:contentPane id="a" title="Page A">
//content
</mobi:contentPane>
<mobi:contentPane id="b" title="Page B">
//content
</mobi:contentPane>
<mobi:contentPane id="b1" title="Page B1" childOf="b">
//content
</mobi:contentPane>
<mobi:contentPane id="c" title="Page C">
//content
</mobi:contentPane>
</mobi:viewManager>
In a mobile layout set to navigation='swipe' this would generate the following:
A <-- swipe to--> B <-- swipe to -->C
<--or click to --> B1
-------------------------- -------------------------- -------------------------- --------------------------
| A | | B <B1>| | <back> B1 | | C |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
------------------------- ------------------------- ------------------------- -------------------------
In a mobile layout set to navigation='menu' this would generate the following:
-------------------------- -------------------------- -------------------------- -------------------------- --------------------------
| My App | | A | | B <B1>| | <back> B1 | | C |
|------------------------| | | | | | | | |
| A > | | | | | | | | |
| B V | | | | | | | | |
| B1 > | | | | | | | | |
| C V | | | | | | | | |
------------------------- ------------------------- ------------------------- ------------------------- -------------------------
In a tablet layout this would generate the following:
____________________________________________
| My App |
|---------------------------------------------------------------------------|
| A > | |
| B V | |
| B1 > | Current Page |
| C V | |
| | |
| | |
| | |
|---------------------------------------------------------------------------|
<mobi:viewManager mobileNavigation="swipe" tabletNavigation="menu" appLabel="My App">
<mobi:contentPane id="a" title="Page A">
//content
</mobi:contentPane>
<mobi:contentPane id="b" title="Page B">
//content
</mobi:contentPane>
<mobi:contentPane id="b1" title="Page B1" childOf="b">
//content
</mobi:contentPane>
<mobi:contentPane id="c" title="Page C">
//content
</mobi:contentPane>
</mobi:viewManager>
In a mobile layout set to navigation='swipe' this would generate the following:
A <-- swipe to--> B <-- swipe to -->C
<--or click to --> B1
-------------------------- -------------------------- -------------------------- --------------------------
| A | | B <B1>| | <back> B1 | | C |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
------------------------- ------------------------- ------------------------- -------------------------
In a mobile layout set to navigation='menu' this would generate the following:
-------------------------- -------------------------- -------------------------- -------------------------- --------------------------
| My App | | A | | B <B1>| | <back> B1 | | C |
|------------------------| | | | | | | | |
| A > | | | | | | | | |
| B V | | | | | | | | |
| B1 > | | | | | | | | |
| C V | | | | | | | | |
------------------------- ------------------------- ------------------------- ------------------------- -------------------------
In a tablet layout this would generate the following:
____________________________________________
| My App |
|---------------------------------------------------------------------------|
| A > | |
| B V | |
| B1 > | Current Page |
| C V | |
| | |
| | |
| | |
|---------------------------------------------------------------------------|
Issue Links
- depends on
-
MOBI-342 View Manager Component
- Resolved
Activity
Ken Fyten
created issue -
Ken Fyten
made changes -
Field | Original Value | New Value |
---|---|---|
Description | The mobi:flipswitch component provides a control that toggles between on and off states (boolean). |
A View Manager component would aim at making standard mobile UIs easier for enterprise developers. The developer would define the contentPanes, which could be nested, their titles, the navigation pattern for different layouts, and the component would create the UI. The component would automatically handle navigation, and would not require the developer to write any backing bean code for navigation, or view switching.
<mobi:viewManager mobileNavigation="swipe" tabletNavigation="menu" appLabel="My App"> <mobi:contentPane id="a" title="Page A"> //content </mobi:contentPane> <mobi:contentPane id="b" title="Page B"> //content </mobi:contentPane> <mobi:contentPane id="b1" title="Page B1" childOf="b"> //content </mobi:contentPane> <mobi:contentPane id="c" title="Page C"> //content </mobi:contentPane> </mobi:viewManager> In a mobile layout set to navigation='swipe' this would generate the following: A <-- swipe to--> B <-- swipe to -->C <--or click to --> B1 -------------------------- -------------------------- -------------------------- -------------------------- | A | | B <B1>| | <back> B1 | | C | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ------------------------- ------------------------- ------------------------- ------------------------- In a mobile layout set to navigation='menu' this would generate the following: -------------------------- -------------------------- -------------------------- -------------------------- -------------------------- | My App | | A | | B <B1>| | <back> B1 | | C | |------------------------| | | | | | | | | | A > | | | | | | | | | | B V | | | | | | | | | | B1 > | | | | | | | | | | C V | | | | | | | | | ------------------------- ------------------------- ------------------------- ------------------------- ------------------------- In a tablet layout this would generate the following: ____________________________________________ | My App | |---------------------------------------------------------------------------| | A > | | | B V | | | B1 > | Current Page | | C V | | | | | | | | | | | |---------------------------------------------------------------------------| |
Component/s | MOBI-Components [ 10270 ] | |
Component/s | ACE-Components [ 10050 ] |
Ken Fyten
made changes -
Summary | New mobi:viewManager component | New mobi:viewManager, mobi:view components |
Ken Fyten
made changes -
Assignee Priority | P1 [ 10010 ] |
Arturo Zambrano
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40322 | Thu Mar 13 11:39:53 MDT 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewMeta.java
MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewManagerMeta.java MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewRenderer.java MODIFY /icefaces4/trunk/icefaces/mobi/component/resources/org.icefaces.component.util/component.js MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewManagerRenderer.java |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40355 | Mon Mar 17 11:22:40 MDT 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewMeta.java
|
Ken Fyten
made changes -
Fix Version/s | 4.0 [ 11382 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
1. In a test application, while interacting with mobi:view within mobi:viewManager, in Firefox the following error is seen:
{execute:'@form', render:'@all'}ReferenceError: event is not defined.
jsf.ajax.request(proxyFormId, event,
);
http://localhost:8080/view/javax.faces.resource/component.js.jsf?ln=org.icefaces.component.util&v=4_0_0_140304
Line 2293
2. The "selected" attribute can not be changed to any String value other than the default, an NPE occurs if it is changed.
3. Style and styleClass are not visible if applied to mobi:view. It seems they can only be applied with mobi:viewManager. If using a border style or styleClass in viewManager it does not size properly to smaller device views.
4. The tlddoc could be updated with more information. For example, what the choices are for menuIcon etc.
Test application located at:
http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/view