Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Upgrade TouchFeedViewer to 3.0

  • Loading branch information...
commit b15c4a04c3567eba0c99781c5dcab7d0a51dff82 1 parent 811682f
@davestum davestum authored
Showing with 360 additions and 373 deletions.
  1. BIN  TouchFeedViewer.xda
  2. +5 −3 TouchFeedViewer/app.js
  3. +4 −4 TouchFeedViewer/app/controller/Feeds.js
  4. +8 −8 TouchFeedViewer/app/controller/Posts.js
  5. +7 −3 TouchFeedViewer/app/model/Feed.js
  6. +7 −3 TouchFeedViewer/app/model/Post.js
  7. +7 −3 TouchFeedViewer/app/model/Search.js
  8. +5 −3 TouchFeedViewer/app/store/Feed.js
  9. +4 −3 TouchFeedViewer/app/store/Feeds.js
  10. +5 −3 TouchFeedViewer/app/store/Posts.js
  11. +10 −8 TouchFeedViewer/app/store/Searches.js
  12. +3 −3 TouchFeedViewer/app/view/About.js
  13. +3 −4 TouchFeedViewer/app/view/TabPanel.js
  14. +3 −3 TouchFeedViewer/app/view/feeds/Add.js
  15. +7 −3 TouchFeedViewer/app/view/feeds/List.js
  16. +7 −3 TouchFeedViewer/app/view/posts/List.js
  17. +7 −3 TouchFeedViewer/app/view/posts/Story.js
  18. +26 −134 TouchFeedViewer/feed.xds
  19. +63 −0 TouchFeedViewer/index.html
  20. +6 −6 TouchFeedViewer/metadata/Application
  21. +21 −34 TouchFeedViewer/metadata/controller/Feeds
  22. +10 −18 TouchFeedViewer/metadata/controller/Posts
  23. +8 −14 TouchFeedViewer/metadata/model/Feed
  24. +6 −10 TouchFeedViewer/metadata/model/Post
  25. +5 −8 TouchFeedViewer/metadata/model/Search
  26. +23 −9 TouchFeedViewer/metadata/store/Feed
  27. +20 −4 TouchFeedViewer/metadata/store/Feeds
  28. +28 −9 TouchFeedViewer/metadata/store/Posts
  29. +20 −9 TouchFeedViewer/metadata/store/Searches
  30. +3 −3 TouchFeedViewer/metadata/view/About
  31. +10 −20 TouchFeedViewer/metadata/view/TabPanel
  32. +6 −19 TouchFeedViewer/metadata/view/feeds.Add
  33. +3 −4 TouchFeedViewer/metadata/view/feeds.List
  34. +4 −5 TouchFeedViewer/metadata/view/posts.List
  35. +6 −7 TouchFeedViewer/metadata/view/posts.Story
View
BIN  TouchFeedViewer.xda
Binary file not shown
View
8 TouchFeedViewer/app.js
@@ -1,11 +1,11 @@
/*
* File: app.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -13,10 +13,12 @@
* Do NOT hand edit this file.
*/
+// @require @packageOverrides
Ext.Loader.setConfig({
});
+
Ext.application({
models: [
'Post',
View
8 TouchFeedViewer/app/controller/Feeds.js
@@ -1,11 +1,11 @@
/*
* File: app/controller/Feeds.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -69,7 +69,7 @@ Ext.define('Feed.controller.Feeds', {
if (!(Ext.isEmpty(urlString))){
console.log('Adding feed with url: ' + urlString);
- Ext.getStore('Feed').loadFeed(urlString);
+ Ext.getStore('Feed').loadFeed(urlString);
postsNav.pop();
}
else if (!(Ext.isEmpty(searchString))){
View
16 TouchFeedViewer/app/controller/Posts.js
@@ -1,11 +1,11 @@
/*
* File: app/controller/Posts.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -44,7 +44,7 @@ Ext.define('Feed.controller.Posts', {
}
},
- onPostsListActivate: function(container, newActiveItem, oldActiveItem, eOpts) {
+ onPostsListActivate: function(newActiveItem, container, oldActiveItem, eOpts) {
this.getApplication().fireEvent('updateNav');
},
@@ -68,9 +68,9 @@ Ext.define('Feed.controller.Posts', {
init: function(application) {
- application.on([
- { event: 'updateNav', fn: this.onUpdateNav, scope: this }
- ]);
+ application.on([
+ { event: 'updateNav', fn: this.onUpdateNav, scope: this }
+ ]);
},
loadPostsOnFeedLoad: function() {
@@ -91,7 +91,7 @@ Ext.define('Feed.controller.Posts', {
if (feedsStore.find('url', feed.get('url')) < 0){
feedsStore.add(feed);
- }
+ }
} else {
Ext.Msg.alert('Error', 'Could not load feed. Check that the URL is a valid feed.');
}
View
10 TouchFeedViewer/app/model/Feed.js
@@ -1,11 +1,11 @@
/*
* File: app/model/Feed.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.model.Feed', {
extend: 'Ext.data.Model',
alias: 'model.feed',
+ requires: [
+ 'Ext.data.Field',
+ 'Ext.data.association.HasMany'
+ ],
uses: [
'Feed.model.Post'
],
View
10 TouchFeedViewer/app/model/Post.js
@@ -1,11 +1,11 @@
/*
* File: app/model/Post.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.model.Post', {
extend: 'Ext.data.Model',
alias: 'model.post',
+ requires: [
+ 'Ext.data.Field'
+ ],
+
config: {
fields: [
{
View
10 TouchFeedViewer/app/model/Search.js
@@ -1,11 +1,11 @@
/*
* File: app/model/Search.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.model.Search', {
extend: 'Ext.data.Model',
alias: 'model.search',
+ requires: [
+ 'Ext.data.Field'
+ ],
+
config: {
fields: [
{
View
8 TouchFeedViewer/app/store/Feed.js
@@ -1,11 +1,11 @@
/*
* File: app/store/Feed.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -18,6 +18,8 @@ Ext.define('Feed.store.Feed', {
alias: 'store.feed',
requires: [
+ 'Ext.data.proxy.JsonP',
+ 'Ext.data.reader.Json',
'Feed.model.Feed'
],
View
7 TouchFeedViewer/app/store/Feeds.js
@@ -1,11 +1,11 @@
/*
* File: app/store/Feeds.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,7 @@ Ext.define('Feed.store.Feeds', {
extend: 'Ext.data.Store',
requires: [
+ 'Ext.data.proxy.LocalStorage',
'Feed.model.Feed'
],
View
8 TouchFeedViewer/app/store/Posts.js
@@ -1,11 +1,11 @@
/*
* File: app/store/Posts.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -18,6 +18,8 @@ Ext.define('Feed.store.Posts', {
alias: 'store.posts',
requires: [
+ 'Ext.data.proxy.JsonP',
+ 'Ext.data.reader.Json',
'Feed.model.Post'
],
View
18 TouchFeedViewer/app/store/Searches.js
@@ -1,11 +1,11 @@
/*
* File: app/store/Searches.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -18,6 +18,8 @@ Ext.define('Feed.store.Searches', {
alias: 'store.search',
requires: [
+ 'Ext.data.proxy.JsonP',
+ 'Ext.data.reader.Json',
'Feed.model.Search'
],
@@ -52,11 +54,11 @@ Ext.define('Feed.store.Searches', {
},
search: function(keywords) {
- this.load({
- params:{
- q: keywords
- }
- });
+ this.load({
+ params:{
+ q: keywords
+ }
+ });
}
View
6 TouchFeedViewer/app/view/About.js
@@ -1,11 +1,11 @@
/*
* File: app/view/About.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
View
7 TouchFeedViewer/app/view/TabPanel.js
@@ -1,11 +1,11 @@
/*
* File: app/view/TabPanel.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -51,7 +51,6 @@ Ext.define('Feed.view.TabPanel', {
id: 'addButton',
ui: 'action',
iconCls: 'add',
- iconMask: true,
text: ''
},
{
View
6 TouchFeedViewer/app/view/feeds/Add.js
@@ -1,11 +1,11 @@
/*
* File: app/view/feeds/Add.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
View
10 TouchFeedViewer/app/view/feeds/List.js
@@ -1,11 +1,11 @@
/*
* File: app/view/feeds/List.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.view.feeds.List', {
extend: 'Ext.dataview.List',
alias: 'widget.feedslist',
+ requires: [
+ 'Ext.XTemplate'
+ ],
+
config: {
store: 'Searches',
itemTpl: [
View
10 TouchFeedViewer/app/view/posts/List.js
@@ -1,11 +1,11 @@
/*
* File: app/view/posts/List.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.view.posts.List', {
extend: 'Ext.dataview.List',
alias: 'widget.postslist',
+ requires: [
+ 'Ext.XTemplate'
+ ],
+
config: {
id: 'postsList',
store: 'Posts',
View
10 TouchFeedViewer/app/view/posts/Story.js
@@ -1,11 +1,11 @@
/*
* File: app/view/posts/Story.js
*
- * This file was generated by Sencha Architect version 2.2.0.
+ * This file was generated by Sencha Architect version 3.0.0.
* http://www.sencha.com/products/architect/
*
- * This file requires use of the Sencha Touch 2.1.x library, under independent license.
- * License of Sencha Architect does not include license for Sencha Touch 2.1.x. For more
+ * This file requires use of the Sencha Touch 2.3.x library, under independent license.
+ * License of Sencha Architect does not include license for Sencha Touch 2.3.x. For more
* details see http://www.sencha.com/license or contact license@sencha.com.
*
* This file will be auto-generated each and everytime you save your project.
@@ -17,6 +17,10 @@ Ext.define('Feed.view.posts.Story', {
extend: 'Ext.Panel',
alias: 'widget.postsstory',
+ requires: [
+ 'Ext.XTemplate'
+ ],
+
config: {
styleHtmlContent: true,
layout: {
View
160 TouchFeedViewer/feed.xds
@@ -1,7 +1,12 @@
{
"name": "feed",
"settings": {
- "urlPrefix": "http://localhost/Code/sample-apps/TouchFeedViewer",
+ "cmd": {
+ "license": "commercial",
+ "cmdVersion": "4.0.1.28",
+ "frameworkVersion": "2.1.1.594"
+ },
+ "urlPrefix": "http://localhost/feed",
"spacesToIndent": 4,
"exportPath": "",
"sdkPath": "",
@@ -13,141 +18,28 @@
"senchaIoPath": "http://extjs.cachefly.net/designer/IO/",
"instantiateStore": true,
"saveOnDeploy": false,
- "appName": "MyApp"
- },
- "xdsVersion": "2.2.0",
- "xdsBuild": 894,
- "schemaVersion": 1,
- "upgradeVersion": 210000000499,
- "framework": "touch21",
- "topInstanceFileMap": {
- "8dfa68c3-dcda-46b2-9c70-7c0d6abff151": {
- "paths": [
- "metadata/view/TabPanel",
- "app/view/override/TabPanel.js",
- "app/view/TabPanel.js"
- ],
- "className": "TabPanel"
- },
- "5d991599-1c18-47cd-aea6-a0fde376a92d": {
- "paths": [
- "metadata/view/posts.List",
- "app/view/override/posts/List.js",
- "app/view/posts/List.js"
- ],
- "className": "posts.List"
- },
- "498dd6ec-4628-4484-877a-b7d33e587689": {
- "paths": [
- "metadata/view/About",
- "app/view/override/About.js",
- "app/view/About.js"
- ],
- "className": "About"
- },
- "2a091605-b040-405a-850b-7188c860907c": {
- "paths": [
- "metadata/view/posts.Story",
- "app/view/override/posts/Story.js",
- "app/view/posts/Story.js"
- ],
- "className": "posts.Story"
- },
- "f6c25b60-a60b-4ab6-a994-1d34cee875f5": {
- "paths": [
- "metadata/store/Posts",
- "app/store/override/Posts.js",
- "app/store/Posts.js"
- ],
- "className": "Posts"
- },
- "c0b797e7-eb24-41b3-bdb9-8bdb6995dc99": {
- "paths": [
- "metadata/model/Post",
- "app/model/override/Post.js",
- "app/model/Post.js"
- ],
- "className": "Post"
- },
- "481f8a52-b7d9-4a8f-a22d-48a70d155e28": {
- "paths": [
- "metadata/controller/Posts",
- "app/controller/override/Posts.js",
- "app/controller/Posts.js"
- ],
- "className": "Posts"
+ "appName": "MyApp",
+ "canvasControls": {
+ "viewportSize": {
+ "name": "iPhone",
+ "builtIn": true,
+ "height": 480,
+ "width": 320
+ },
+ "viewportOrientation": "portrait"
},
- "bbf9d344-a904-48fc-9751-b7d983fadc22": {
- "paths": [
- "metadata/view/feeds.Add",
- "app/view/override/feeds/Add.js",
- "app/view/feeds/Add.js"
- ],
- "className": "feeds.Add"
- },
- "836a9d83-2905-4366-829b-fae819f43a55": {
- "paths": [
- "metadata/store/Searches",
- "app/store/override/Searches.js",
- "app/store/Searches.js"
- ],
- "className": "Searches"
- },
- "8a2b9bc8-ddb5-41e5-87ad-774df4bf3bf5": {
- "paths": [
- "metadata/model/Search",
- "app/model/override/Search.js",
- "app/model/Search.js"
- ],
- "className": "Search"
- },
- "318e0639-d776-41b1-9e23-01fbacaac81d": {
- "paths": [
- "metadata/view/feeds.List",
- "app/view/override/feeds/List.js",
- "app/view/feeds/List.js"
- ],
- "className": "feeds.List"
- },
- "4213b342-3f4d-4d3f-9046-05c69ff3af7a": {
- "paths": [
- "metadata/controller/Feeds",
- "app/controller/override/Feeds.js",
- "app/controller/Feeds.js"
- ],
- "className": "Feeds"
- },
- "bca16d92-974d-41c6-b021-ca22bcb31fd8": {
- "paths": [
- "metadata/store/Feed",
- "app/store/override/Feed.js",
- "app/store/Feed.js"
- ],
- "className": "Feed"
- },
- "56645fcf-b8ce-42ee-a55d-84138aaed06c": {
- "paths": [
- "metadata/model/Feed",
- "app/model/override/Feed.js",
- "app/model/Feed.js"
- ],
- "className": "Feed"
- },
- "9cd5d50c-3d15-48ba-a903-a64be6a6ba8f": {
- "paths": [
- "metadata/store/Feeds",
- "app/store/override/Feeds.js",
- "app/store/Feeds.js"
- ],
- "className": "Feeds"
- },
- "8b3b2dcd-9188-4f77-89e1-a0e67bafdea2": {
- "paths": [
- "metadata/resource/Library"
- ],
- "className": "Library"
+ "buildShouldOverwriteIndex": true,
+ "generateArchitectVersion": true,
+ "lastBuildSelection": {
+ "value": "webBuild",
+ "display": "Build web app"
}
},
+ "xdsVersion": "3.0.0",
+ "xdsBuild": 0,
+ "schemaVersion": 1,
+ "upgradeVersion": 300000000001,
+ "framework": "touch23",
"viewOrderMap": {
"view": [
"498dd6ec-4628-4484-877a-b7d33e587689",
@@ -173,7 +65,7 @@
"56645fcf-b8ce-42ee-a55d-84138aaed06c"
],
"resource": [
- "8b3b2dcd-9188-4f77-89e1-a0e67bafdea2"
+ "9e06cf19-7df8-4a13-b4d8-9e2366a5a0a5"
],
"app": [
"application"
View
63 TouchFeedViewer/index.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML>
+
+<html manifest="" lang="en-US">
+<head>
+ <meta charset="UTF-8">
+ <title>feed</title>
+ <style type="text/css">
+ /**
+ * Example of an initial loading indicator.
+ * It is recommended to keep this as minimal as possible to provide instant feedback
+ * while other resources are still being loaded for the first time
+ */
+ html, body {
+ height: 100%;
+ background-color: #1985D0
+ }
+
+ #appLoadingIndicator {
+ position: absolute;
+ top: 50%;
+ margin-top: -15px;
+ text-align: center;
+ width: 100%;
+ height: 30px;
+ -webkit-animation-name: appLoadingIndicator;
+ -webkit-animation-duration: 0.5s;
+ -webkit-animation-iteration-count: infinite;
+ -webkit-animation-direction: linear;
+ }
+
+ #appLoadingIndicator > * {
+ background-color: #FFFFFF;
+ display: inline-block;
+ height: 30px;
+ -webkit-border-radius: 15px;
+ margin: 0 5px;
+ width: 30px;
+ opacity: 0.8;
+ }
+
+ @-webkit-keyframes appLoadingIndicator{
+ 0% {
+ opacity: 0.8
+ }
+ 50% {
+ opacity: 0
+ }
+ 100% {
+ opacity: 0.8
+ }
+ }
+ </style>
+ <!-- The line below must be kept intact for Sencha Command to build your application -->
+ <script id="microloader" type="text/javascript" src=".sencha/app/microloader/development.js"></script>
+</head>
+<body>
+ <div id="appLoadingIndicator">
+ <div></div>
+ <div></div>
+ <div></div>
+ </div>
+</body>
+</html>
View
12 TouchFeedViewer/metadata/Application
@@ -6,11 +6,16 @@
},
"codeClass": null,
"userConfig": {
+ "controllers": [
+ "Posts",
+ "Feeds"
+ ],
"models": [
"Post",
"Search",
"Feed"
],
+ "name": "Feed",
"stores": [
"Posts",
"Searches",
@@ -24,12 +29,7 @@
"posts.Story",
"feeds.Add",
"feeds.List"
- ],
- "controllers": [
- "Posts",
- "Feeds"
- ],
- "name": "Feed"
+ ]
},
"designerId": "application"
}
View
55 TouchFeedViewer/metadata/controller/Feeds
@@ -6,6 +6,8 @@
},
"codeClass": null,
"userConfig": {
+ "designer|userAlias": "feeds",
+ "designer|userClassName": "Feeds",
"models": [
"Search"
],
@@ -16,9 +18,7 @@
"views": [
"feeds.Add",
"feeds.List"
- ],
- "designer|userClassName": "Feeds",
- "designer|userAlias": "feeds"
+ ]
},
"designerId": "4213b342-3f4d-4d3f-9046-05c69ff3af7a",
"cn": [
@@ -30,7 +30,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "doneButton",
"ref": "doneButton",
"selector": "#doneButton"
},
@@ -44,7 +43,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "urlField",
"ref": "urlField",
"selector": "#urlField"
},
@@ -58,7 +56,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "searchField",
"ref": "searchField",
"selector": "#searchField"
},
@@ -72,7 +69,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onButtonTap",
+ "designer|controlQuery": "feedsadd button",
+ "designer|targetType": "Ext.Button",
"fn": "onButtonTap",
"implHandler": [
"",
@@ -101,9 +99,7 @@
"",
"}"
],
- "name": "tap",
- "designer|targetType": "Ext.Button",
- "designer|controlQuery": "feedsadd button"
+ "name": "tap"
},
"designerId": "6e895983-9321-4082-afaa-b99d24a600ff"
},
@@ -115,7 +111,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "postsNav",
"ref": "postsNav",
"selector": "#postsNav"
},
@@ -129,7 +124,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onFeedsListItemTap",
+ "designer|controlQuery": "feedslist",
+ "designer|targetType": "Ext.dataview.List",
"fn": "onFeedsListItemTap",
"implHandler": [
"Ext.getStore('Feed').loadFeed(record.data.url);",
@@ -137,9 +133,7 @@
"",
""
],
- "name": "itemtap",
- "designer|targetType": "Ext.dataview.List",
- "designer|controlQuery": "feedslist"
+ "name": "itemtap"
},
"designerId": "d3fb453c-1088-49b7-a6e8-eab77b0a90e1"
},
@@ -151,7 +145,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onFeedsListItemSwipe",
+ "designer|controlQuery": "feedslist",
+ "designer|targetType": "Ext.dataview.List",
"fn": "onFeedsListItemSwipe",
"implHandler": [
"Ext.Msg.confirm(\"Remove feed\", [\"Are you sure you want to remove \",",
@@ -163,9 +158,7 @@
" }",
"});"
],
- "name": "itemswipe",
- "designer|targetType": "Ext.dataview.List",
- "designer|controlQuery": "feedslist"
+ "name": "itemswipe"
},
"designerId": "287f9232-46c7-4e16-9d77-e24672c0f52c"
},
@@ -177,7 +170,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "addButton",
"ref": "addButton",
"selector": "#addButton"
},
@@ -191,7 +183,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "feedsButton",
"ref": "feedsButton",
"selector": "#feedsButton"
},
@@ -205,7 +196,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onAddFeedButtonTap",
+ "designer|controlQuery": "#addButton",
+ "designer|targetType": "Ext.Button",
"fn": "onAddFeedButtonTap",
"implHandler": [
"var addFeed = Ext.create('Feed.view.feeds.Add', {",
@@ -214,9 +206,7 @@
"",
"this.getPostsNav().push(addFeed);"
],
- "name": "tap",
- "designer|targetType": "Ext.Button",
- "designer|controlQuery": "#addButton"
+ "name": "tap"
},
"designerId": "a366c568-0198-4339-974a-81d8fcf1f7a9"
},
@@ -228,7 +218,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onViewFeedsButtonTap",
+ "designer|controlQuery": "#feedsButton",
+ "designer|targetType": "Ext.Button",
"fn": "onViewFeedsButtonTap",
"implHandler": [
"var feedsList = Ext.create('Feed.view.feeds.List',{",
@@ -237,9 +228,7 @@
"feedsList.setStore(Ext.getStore('Feeds'));",
"this.getPostsNav().push(feedsList);"
],
- "name": "tap",
- "designer|targetType": "Ext.Button",
- "designer|controlQuery": "#feedsButton"
+ "name": "tap"
},
"designerId": "48ddee33-3994-45f0-b3cd-58377928f6db"
},
@@ -251,7 +240,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onNavigationviewActiveItemChange",
+ "designer|controlQuery": "navigationview",
+ "designer|targetType": "Ext.navigation.View",
"fn": "onNavigationviewActiveItemChange",
"implHandler": [
"if (value === this.getPostsList()){",
@@ -264,9 +254,7 @@
"}",
""
],
- "name": "activeitemchange",
- "designer|targetType": "Ext.navigation.View",
- "designer|controlQuery": "navigationview"
+ "name": "activeitemchange"
},
"designerId": "9e3adc67-e133-4b1f-9ff3-62fbee45af6d"
},
@@ -278,7 +266,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "postsList",
"ref": "postsList",
"selector": "#postsList"
},
View
28 TouchFeedViewer/metadata/controller/Posts
@@ -6,6 +6,8 @@
},
"codeClass": null,
"userConfig": {
+ "designer|userAlias": "posts",
+ "designer|userClassName": "Posts",
"models": [
"Post"
],
@@ -17,9 +19,7 @@
"views": [
"posts.List",
"posts.Story"
- ],
- "designer|userClassName": "Posts",
- "designer|userAlias": "posts"
+ ]
},
"designerId": "481f8a52-b7d9-4a8f-a22d-48a70d155e28",
"cn": [
@@ -31,7 +31,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "postsNav",
"ref": "postsNav",
"selector": "#postsNav"
},
@@ -45,7 +44,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "postsList",
"ref": "postsList",
"selector": "#postsList"
},
@@ -59,7 +57,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "launch",
"fn": "launch",
"implHandler": [
"this.loadPostsOnFeedLoad();",
@@ -81,11 +78,10 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "init",
- "fn": "init",
"designer|params": [
"application"
],
+ "fn": "init",
"implHandler": [
""
]
@@ -100,7 +96,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "loadPostsOnFeedLoad",
"fn": "loadPostsOnFeedLoad",
"implHandler": [
"var self = this;",
@@ -138,14 +133,13 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onPostsListActivate",
+ "designer|controlQuery": "postslist",
+ "designer|targetType": "Ext.dataview.List",
"fn": "onPostsListActivate",
"implHandler": [
"this.getApplication().fireEvent('updateNav');"
],
- "name": "activate",
- "designer|targetType": "Ext.dataview.List",
- "designer|controlQuery": "postslist"
+ "name": "activate"
},
"designerId": "09a681bf-e595-4ec4-9c5a-7f55ebe10c93"
},
@@ -157,7 +151,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onUpdateNav",
"fn": "onUpdateNav",
"implHandler": [
"var self = this;",
@@ -180,7 +173,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "onPostsListItemTap",
+ "designer|controlQuery": "postslist",
+ "designer|targetType": "Ext.dataview.List",
"fn": "onPostsListItemTap",
"implHandler": [
"var story = Ext.create('Feed.view.posts.Story',{",
@@ -189,9 +183,7 @@
"story.setData(record.data);",
"this.getPostsNav().push(story);"
],
- "name": "itemtap",
- "designer|targetType": "Ext.dataview.List",
- "designer|controlQuery": "postslist"
+ "name": "itemtap"
},
"designerId": "a6fc06e1-c607-4d4b-ae9e-ab88ecb2fc93"
}
View
22 TouchFeedViewer/metadata/model/Feed
@@ -6,8 +6,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "Feed",
- "designer|userAlias": "feed"
+ "designer|userAlias": "feed",
+ "designer|userClassName": "Feed"
},
"designerId": "56645fcf-b8ce-42ee-a55d-84138aaed06c",
"cn": [
@@ -20,8 +20,7 @@
"codeClass": null,
"userConfig": {
"mapping": "feedUrl",
- "name": "url",
- "designer|userClassName": "MyField7"
+ "name": "url"
},
"designerId": "6e7041db-6c74-4bd0-bddb-40ad72460741"
},
@@ -33,8 +32,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "title",
- "designer|userClassName": "MyField8"
+ "name": "title"
},
"designerId": "9db658ff-4b2d-4c04-8f8f-ab5f1590b2d8"
},
@@ -46,8 +44,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "link",
- "designer|userClassName": "MyField9"
+ "name": "link"
},
"designerId": "fd42fac6-fbe0-4fba-a1c4-3a2619637e38"
},
@@ -59,8 +56,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "author",
- "designer|userClassName": "MyField10"
+ "name": "author"
},
"designerId": "27936281-bd83-47d1-9de0-aba474dc7412"
},
@@ -72,8 +68,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "description",
- "designer|userClassName": "MyField11"
+ "name": "description"
},
"designerId": "4d54db1c-1b2f-4084-8338-99a475328b2a"
},
@@ -86,9 +81,8 @@
"codeClass": null,
"userConfig": {
"associationKey": "entries",
- "designer|userClassName": "MyHasManyAssociation",
- "model": "Post",
"filterProperty": null,
+ "model": "Post",
"name": "posts",
"store": null
},
View
16 TouchFeedViewer/metadata/model/Post
@@ -6,8 +6,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "Post",
- "designer|userAlias": "post"
+ "designer|userAlias": "post",
+ "designer|userClassName": "Post"
},
"designerId": "c0b797e7-eb24-41b3-bdb9-8bdb6995dc99",
"cn": [
@@ -19,8 +19,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "title",
- "designer|userClassName": "MyField"
+ "name": "title"
},
"designerId": "d5a2e48a-6fd3-4ceb-a782-938614b5a433"
},
@@ -32,8 +31,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "author",
- "designer|userClassName": "MyField1"
+ "name": "author"
},
"designerId": "44fce92c-5629-4347-9aa1-3c0885a02706"
},
@@ -46,8 +44,7 @@
"codeClass": null,
"userConfig": {
"mapping": "content",
- "name": "story",
- "designer|userClassName": "MyField2"
+ "name": "story"
},
"designerId": "aedb1714-1ea2-4fdd-9398-05f5a07ff0bd"
},
@@ -61,8 +58,7 @@
"userConfig": {
"mapping": "publishedDate",
"name": "date",
- "type": "date",
- "designer|userClassName": "MyField3"
+ "type": "date"
},
"designerId": "3ed29110-3a22-4137-b0e7-3ef1ccc3a6e3"
}
View
13 TouchFeedViewer/metadata/model/Search
@@ -6,8 +6,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "Search",
- "designer|userAlias": "search"
+ "designer|userAlias": "search",
+ "designer|userClassName": "Search"
},
"designerId": "8a2b9bc8-ddb5-41e5-87ad-774df4bf3bf5",
"cn": [
@@ -19,8 +19,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "title",
- "designer|userClassName": "MyField4"
+ "name": "title"
},
"designerId": "146c7e18-848c-481d-9396-d204740bbe1d"
},
@@ -32,8 +31,7 @@
},
"codeClass": null,
"userConfig": {
- "name": "url",
- "designer|userClassName": "MyField5"
+ "name": "url"
},
"designerId": "05a8608d-1b9d-43ed-9538-da4f7151714c"
},
@@ -46,8 +44,7 @@
"codeClass": null,
"userConfig": {
"mapping": "contentSnippet",
- "name": "description",
- "designer|userClassName": "MyField6"
+ "name": "description"
},
"designerId": "ae14baea-51d3-490b-9cfb-4ba8fa50bd59"
}
View
32 TouchFeedViewer/metadata/store/Feed
@@ -6,11 +6,28 @@
},
"codeClass": null,
"userConfig": {
- "data": "[{\n url: 'http://siteone.com/rss',\n title: 'Mock Blog One',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}, {\n url: 'http://sitetwo.com/rss',\n title: 'Mock Blog Two',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}, {\n url: 'http://sitethree.com/rss',\n title: 'Mock Blog Three',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}]",
- "model": "Feed",
- "storeId": "Feed",
+ "data": [
+ "[{",
+ " url: 'http://siteone.com/rss',",
+ " title: 'Mock Blog One',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}, {",
+ " url: 'http://sitetwo.com/rss',",
+ " title: 'Mock Blog Two',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}, {",
+ " url: 'http://sitethree.com/rss',",
+ " title: 'Mock Blog Three',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}]"
+ ],
+ "designer|userAlias": "feed",
"designer|userClassName": "Feed",
- "designer|userAlias": "feed"
+ "model": "Feed",
+ "storeId": "Feed"
},
"mockCfgs": [
"data"
@@ -25,7 +42,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyJsonPProxy2",
"url": "https://ajax.googleapis.com/ajax/services/feed/load?v=1.0"
},
"designerId": "cb3f6054-74a2-4508-8d75-942e45c98035",
@@ -38,9 +54,8 @@
},
"codeClass": null,
"userConfig": {
- "rootProperty": "responseData.feed",
- "designer|userClassName": "MyJsonReader2",
"record": null,
+ "rootProperty": "responseData.feed",
"useSimpleAccessors": null
},
"designerId": "107cd083-db99-4d66-91e4-5cad0035de81"
@@ -55,12 +70,11 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "loadFeed",
- "fn": "loadFeed",
"designer|params": [
"feedUrl",
"numPosts"
],
+ "fn": "loadFeed",
"implHandler": [
"console.log('Loading feed');",
"this.load({",
View
24 TouchFeedViewer/metadata/store/Feeds
@@ -8,10 +8,27 @@
"userConfig": {
"autoLoad": true,
"autoSync": true,
- "data": "[{\n url: 'http://siteone.com/rss',\n title: 'Mock Blog One',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}, {\n url: 'http://sitetwo.com/rss',\n title: 'Mock Blog Two',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}, {\n url: 'http://sitethree.com/rss',\n title: 'Mock Blog Three',\n description: 'A blog with lots of words and stuff.',\n author: 'The Mock Blog Team' \n}]",
+ "data": [
+ "[{",
+ " url: 'http://siteone.com/rss',",
+ " title: 'Mock Blog One',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}, {",
+ " url: 'http://sitetwo.com/rss',",
+ " title: 'Mock Blog Two',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}, {",
+ " url: 'http://sitethree.com/rss',",
+ " title: 'Mock Blog Three',",
+ " description: 'A blog with lots of words and stuff.',",
+ " author: 'The Mock Blog Team' ",
+ "}]"
+ ],
+ "designer|userClassName": "Feeds",
"model": "Feed",
- "storeId": "Feeds",
- "designer|userClassName": "Feeds"
+ "storeId": "Feeds"
},
"mockCfgs": [
"data"
@@ -26,7 +43,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyLocalStorageProxy",
"id": "Feeds"
},
"designerId": "e35f6448-1801-42c8-bdcb-ab45b1cd696c"
View
37 TouchFeedViewer/metadata/store/Posts
@@ -6,11 +6,33 @@
},
"codeClass": null,
"userConfig": {
- "data": "[{\n title: 'Mock Post One',\n author: 'Joe Schmoe',\n story: 'This is the content of the first post.',\n date:\"Thu, 10 Jan 2013 14:41:00 -0800\" \n}, {\n title: 'Mock Post Two',\n author: 'Joe Schmoe',\n story: 'This is the content of the second post.',\n date:\"Thu, 10 Jan 2013 14:41:00 -0800\" \n}, {\n title: 'Mock Post Three',\n author: 'Joe Schmoe',\n story: 'This is the content of the third post.',\n date:\"Thu, 10 Jan 2013 14:41:00 -0800\" \n}, {\n title: 'Mock Post Four',\n author: 'Joe Schmoe',\n story: 'This is the content of the fourth post.',\n date:\"Thu, 10 Jan 2013 14:41:00 -0800\" \n}]",
- "model": "Post",
- "storeId": "Posts",
+ "data": [
+ "[{",
+ " title: 'Mock Post One',",
+ " author: 'Joe Schmoe',",
+ " story: 'This is the content of the first post.',",
+ " date:\"Thu, 10 Jan 2013 14:41:00 -0800\" ",
+ "}, {",
+ " title: 'Mock Post Two',",
+ " author: 'Joe Schmoe',",
+ " story: 'This is the content of the second post.',",
+ " date:\"Thu, 10 Jan 2013 14:41:00 -0800\" ",
+ "}, {",
+ " title: 'Mock Post Three',",
+ " author: 'Joe Schmoe',",
+ " story: 'This is the content of the third post.',",
+ " date:\"Thu, 10 Jan 2013 14:41:00 -0800\" ",
+ "}, {",
+ " title: 'Mock Post Four',",
+ " author: 'Joe Schmoe',",
+ " story: 'This is the content of the fourth post.',",
+ " date:\"Thu, 10 Jan 2013 14:41:00 -0800\" ",
+ "}]"
+ ],
+ "designer|userAlias": "posts",
"designer|userClassName": "Posts",
- "designer|userAlias": "posts"
+ "model": "Post",
+ "storeId": "Posts"
},
"mockCfgs": [
"data"
@@ -25,12 +47,11 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "loadPosts",
- "fn": "loadPosts",
"designer|params": [
"feedUrl",
"numPosts"
],
+ "fn": "loadPosts",
"implHandler": [
"this.load({",
" params:{",
@@ -51,7 +72,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyJsonPProxy",
"url": "https://ajax.googleapis.com/ajax/services/feed/load?v=1.0"
},
"designerId": "49054a3a-dc77-4b5e-9804-8823e0343a7d",
@@ -64,8 +84,7 @@
},
"codeClass": null,
"userConfig": {
- "rootProperty": "responseData.feed.entries",
- "designer|userClassName": "MyJsonReader"
+ "rootProperty": "responseData.feed.entries"
},
"designerId": "eb0f29d5-bd5b-40fc-b637-63fbdaa91c69"
}
View
29 TouchFeedViewer/metadata/store/Searches
@@ -6,11 +6,25 @@
},
"codeClass": null,
"userConfig": {
- "data": "[{\n url: 'http://siteone.com/rss',\n title: 'Mock Blog One',\n description: 'A blog with lots of words and stuff.'\n}, {\n url: 'http://sitetwo.com/rss',\n title: 'Mock Blog Two',\n description: 'A blog with lots of words and stuff.'\n}, {\n url: 'http://sitethree.com/rss',\n title: 'Mock Blog Three',\n description: 'A blog with lots of words and stuff.'\n}]",
- "model": "Search",
- "storeId": "Searches",
+ "data": [
+ "[{",
+ " url: 'http://siteone.com/rss',",
+ " title: 'Mock Blog One',",
+ " description: 'A blog with lots of words and stuff.'",
+ "}, {",
+ " url: 'http://sitetwo.com/rss',",
+ " title: 'Mock Blog Two',",
+ " description: 'A blog with lots of words and stuff.'",
+ "}, {",
+ " url: 'http://sitethree.com/rss',",
+ " title: 'Mock Blog Three',",
+ " description: 'A blog with lots of words and stuff.'",
+ "}]"
+ ],
+ "designer|userAlias": "search",
"designer|userClassName": "Searches",
- "designer|userAlias": "search"
+ "model": "Search",
+ "storeId": "Searches"
},
"designerId": "836a9d83-2905-4366-829b-fae819f43a55",
"cn": [
@@ -22,7 +36,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyJsonPProxy1",
"url": "https://ajax.googleapis.com/ajax/services/feed/find?v=1.0"
},
"designerId": "c3a457f0-9c23-48e9-bd2c-b1fdd39e1b65",
@@ -35,8 +48,7 @@
},
"codeClass": null,
"userConfig": {
- "rootProperty": "responseData.entries",
- "designer|userClassName": "MyJsonReader1"
+ "rootProperty": "responseData.entries"
},
"designerId": "a7ca019c-222c-4747-9c09-942498e01e1b"
}
@@ -50,11 +62,10 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "search",
- "fn": "search",
"designer|params": [
"keywords"
],
+ "fn": "search",
"implHandler": [
" this.load({",
" params:{",
View
6 TouchFeedViewer/metadata/view/About
@@ -6,10 +6,10 @@
},
"codeClass": null,
"userConfig": {
- "html": "<p>About page</p>",
- "styleHtmlContent": true,
+ "designer|userAlias": "about",
"designer|userClassName": "About",
- "designer|userAlias": "about"
+ "html": "<p>About page</p>",
+ "styleHtmlContent": true
},
"designerId": "498dd6ec-4628-4484-877a-b7d33e587689"
}
View
30 TouchFeedViewer/metadata/view/TabPanel
@@ -6,9 +6,9 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "TabPanel",
+ "designer|initialView": true,
"designer|userAlias": "tabpanel",
- "designer|initialView": true
+ "designer|userClassName": "TabPanel"
},
"designerId": "8dfa68c3-dcda-46b2-9c70-7c0d6abff151",
"cn": [
@@ -20,11 +20,10 @@
},
"codeClass": null,
"userConfig": {
- "title": "Posts",
"iconCls": "star",
"id": "postsTab",
- "designer|userClassName": "MyContainer",
- "layout": "fit"
+ "layout": "fit",
+ "title": "Posts"
},
"designerId": "712a7b61-24d6-49af-9dc7-d3448f1ae691",
"cn": [
@@ -37,7 +36,6 @@
"codeClass": null,
"userConfig": {
"id": "postsNav",
- "designer|userClassName": "MyNavigationView",
"useTitleForBackButtonText": true
},
"designerId": "aae7777f-e28c-44d5-9fc8-d2dd43221ca2",
@@ -62,9 +60,6 @@
"type": "object"
},
"codeClass": null,
- "userConfig": {
- "designer|userClassName": "MyNavigationBar"
- },
"designerId": "0315c29b-a6d7-42e1-a94c-f8ed83873848",
"cn": [
{
@@ -76,12 +71,10 @@
"codeClass": null,
"userConfig": {
"align": "right",
- "id": "addButton",
- "ui": "action",
- "designer|userClassName": "MyButton",
"iconCls": "add",
- "iconMask": true,
- "text": ""
+ "id": "addButton",
+ "text": "",
+ "ui": "action"
},
"designerId": "726d3be0-260a-4d99-95f2-d423d869d515"
},
@@ -94,7 +87,6 @@
"codeClass": null,
"userConfig": {
"id": "feedsButton",
- "designer|userClassName": "MyButton2",
"text": "Feeds"
},
"designerId": "2ce68ccf-74aa-4a9d-a84b-cf5a5bd1e3d2"
@@ -113,11 +105,10 @@
},
"codeClass": null,
"userConfig": {
- "title": "About",
"iconCls": "info",
"id": "aboutTab",
- "designer|userClassName": "MyContainer1",
- "layout": "fit"
+ "layout": "fit",
+ "title": "About"
},
"designerId": "8ff1d34a-5fd6-4a95-b78b-05741e6fdbb1",
"cn": [
@@ -141,8 +132,7 @@
},
"codeClass": null,
"userConfig": {
- "docked": "bottom",
- "designer|userClassName": "MyTabBar"
+ "docked": "bottom"
},
"designerId": "ec756633-9d60-4d51-bbf5-a5b0d2cf2341"
}
View
25 TouchFeedViewer/metadata/view/feeds.Add
@@ -6,9 +6,9 @@
},
"codeClass": null,
"userConfig": {
- "styleHtmlContent": true,
+ "designer|userAlias": "feedsadd",
"designer|userClassName": "feeds.Add",
- "designer|userAlias": "feedsadd"
+ "styleHtmlContent": true
},
"designerId": "bbf9d344-a904-48fc-9751-b7d983fadc22",
"cn": [
@@ -20,7 +20,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyFieldSet",
"title": "Enter URL"
},
"designerId": "6e782018-f198-434c-9ce6-8cc2382b6cb6",
@@ -34,7 +33,6 @@
"codeClass": null,
"userConfig": {
"id": "urlField",
- "designer|userClassName": "MyUrlField",
"label": "URL",
"placeHolder": "http://example.com"
},
@@ -51,8 +49,7 @@
"codeClass": null,
"userConfig": {
"html": "or",
- "styleHtmlContent": true,
- "designer|userClassName": "MyLabel"
+ "styleHtmlContent": true
},
"designerId": "94c9ff7a-56a7-4624-9786-5688fa61cab5"
},
@@ -64,7 +61,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyFieldSet1",
"title": "Search"
},
"designerId": "ad62516b-ead7-4e1a-91cb-1eb84fac6e88",
@@ -78,7 +74,6 @@
"codeClass": null,
"userConfig": {
"id": "searchField",
- "designer|userClassName": "MyTextField",
"label": "Keyword"
},
"designerId": "2bead2c9-7c46-4be0-8fe2-50ae024939f3"
@@ -93,7 +88,6 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "MyContainer2",
"layout": "hbox"
},
"designerId": "009819b7-a655-411b-a517-b972c4e5dd2c",
@@ -105,9 +99,6 @@
"type": "array"
},
"codeClass": null,
- "userConfig": {
- "designer|userClassName": "MySpacer"
- },
"designerId": "d7e7065a-ce33-450d-b9b1-0f5824e12ed7"
},
{
@@ -118,14 +109,13 @@
},
"codeClass": null,
"userConfig": {
- "layout|flex": 1,
"docked": null,
"height": 40,
"id": "doneButton",
+ "layout|flex": 1,
+ "text": "Done",
"ui": "confirm",
- "width": 100,
- "designer|userClassName": "MyButton1",
- "text": "Done"
+ "width": 100
},
"designerId": "ba6b3728-0a8c-42f6-97b9-7038e6211249"
},
@@ -136,9 +126,6 @@
"type": "array"
},
"codeClass": null,
- "userConfig": {
- "designer|userClassName": "MySpacer1"
- },
"designerId": "504f350d-bac6-4bd4-ad92-9aff4ff5e8a9"
}
]
View
7 TouchFeedViewer/metadata/view/feeds.List
@@ -6,8 +6,8 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "feeds.List",
"designer|userAlias": "feedslist",
+ "designer|userClassName": "feeds.List",
"store": "Searches"
},
"designerId": "318e0639-d776-41b1-9e23-01fbacaac81d",
@@ -20,11 +20,10 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "itemTpl",
+ "designer|displayName": "itemTpl",
"implHandler": [
"{title}<br /><p style=\"font-size:10pt\">{description}</p>"
- ],
- "designer|displayName": "itemTpl"
+ ]
},
"designerId": "c0ca1d6a-c3ae-43f1-973b-0120506b026e"
}
View
9 TouchFeedViewer/metadata/view/posts.List
@@ -6,9 +6,9 @@
},
"codeClass": null,
"userConfig": {
- "id": "postsList",
- "designer|userClassName": "posts.List",
"designer|userAlias": "postslist",
+ "designer|userClassName": "posts.List",
+ "id": "postsList",
"store": "Posts"
},
"designerId": "5d991599-1c18-47cd-aea6-a0fde376a92d",
@@ -21,12 +21,11 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "itemTpl",
+ "designer|displayName": "itemTpl",
"implHandler": [
"{title}",
""
- ],
- "designer|displayName": "itemTpl"
+ ]
},
"designerId": "efcce8a1-26b6-4f80-b8d8-d60c019dad31"
}
View
13 TouchFeedViewer/metadata/view/posts.Story
@@ -14,12 +14,12 @@
" date:\"Thu, 10 Jan 2013 14:41:00 -0800\" ",
"}"
],
- "html": null,
- "styleHtmlContent": true,
- "designer|userClassName": "posts.Story",
"designer|userAlias": "postsstory",
+ "designer|userClassName": "posts.Story",
+ "html": null,
"layout": "fit",
- "scrollable": "vertical"
+ "scrollable": "vertical",
+ "styleHtmlContent": true
},
"mockCfgs": [
"data"
@@ -34,11 +34,10 @@
},
"codeClass": null,
"userConfig": {
- "designer|userClassName": "tpl",
+ "designer|displayName": "tpl",
"implHandler": [
"{story}"
- ],
- "designer|displayName": "tpl"
+ ]
},
"designerId": "23020e46-1839-4ada-8238-6b094e9cb545"
}
Please sign in to comment.
Something went wrong with that request. Please try again.