Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.
CutePress WordPress blog manager - app showcase
CutePress app allows users to manage pages, posts, comments and media items on WordPress blogs. This article explains the main elements of the app design.
CutePress allows user manage pages, posts, comments and media items on WordPress blogs. It needs an active GPRS connection or Wi-fi (on Wif-fi enabled devices) to access Internet.
Cutepress is a QML version of WordPress for Nokia app http://nokia.wordpress.org/ with some additional features.
It supports WordPress 2.7 or higher(WordPress.com or self-hosted).
CutePress is built using codebase of official WordPress for Nokia app and will be merged with the original version in the coming future.
It is built using Qt Quick components providing various enhancement to WordPress app.
Qt-Quick UI & Design Guidelines Compliance
As CutePress is built using QtQuick 1.0 components it complies to almost every Symbian guideline. It uses a vast number of components ranging from PageStack to Animation classes. For compliance of icon guidelines, default Symbian toolbar icons are added to v1.2.0.
Logical and consistent navigation structure
CutePress provide a consistent navigation for easy operation with every view having a back button to traverse to previous view and apart from blogs list view which is the initial page for the application and clicking back button on this view closes the application.
CutePress tries to use best possible icons for representing respective functionality and for preventing any confusion is user's mind it also have help view where a table of icons and their functionality is shown.
App icon consistent with Symbian style
CutePress app icon attached with the article is clearly having a consistent design with Symbian style.
Correct use of the components
CutePress is based on QtQuick 1.0 and QtQuick components for Symbian & MeeGo for corresponding platforms. Therefore, it is tried best to use QML components properly for consistent functioning with a number of built in and custom created components.
Non-threatening interface - don't ask the user for confirmation or passwords unless necessary
To prevent user for logging in again & again on each run, blog details are stored in a file. This way CutePres asks blog admins to login only once for adding a blog.
Good use of screen real estate
CutePress tries to provide maximum details in minimum possible way. To denote information about list items in pages & posts list view, color coding is used. Color codes for different publish status are defined in help view to prevent any confusion.
Utilising the toolbar where appropriate.
CutePress tries to maximize utilization of toolbar.
Problems faced & solutions implemented
A number of problems were faced during development of CutePress. Some were related to porting QWidget UI to QML equivalent while some were related Symbian platform constraint.
Caching Image Thumbnails for smooth working of UI
For selecting images form gallery to upload on the blog, it was important to show thumbnails for images for easy use. As it was difficult to access Symbian thumbnail cache, application tries to built its own. And when image selection view is opened by user, it initially loads only 36 images. Subsequent images are loaded whenever user reaches at the end of list. Code an be found here:
List Delegate for Post, Page, Comments
To show maximum possible information about a post or a page or a comment custom list delegate are used. Colored code s are used to represent status of an item.
Problem with HTML text and TextField in QtQuick 1.0 & using it with a Flickable item
TextFiled in Symbian QtQuick 1.0 can't handle HTML text properly. This problem still persits in the application, however MeeGo version with QtQuick 1.1 works fine.
Another problem was using TextField element with a Flickable item. In this case TextField's height is set to its implicitHeight and width is set to slighly lesser than its parent item.This way TextField can expanded vertically as needed and to scroll down on the page.
Video demo of CutePress v1.0.0 at Youtube The media player is loading...
Source code : CutePress - Google Code
You can download this app from Nokia store from this link: CutePress
For more detail, please visit Webpage of this app: ShowStopper - CutePress
Note: This is an entry in the Symbian Qt Quick Components Competition 2012Q1