<- ReadMe.html

goodViberations: UI Specification

Introduction

The UI, described in this document, is used to render the data to the end user. The UI facilitates the user's interaction (CRUD) with the data. The actual work of creating new data, retrieving data, updating data, deleting data, and ensuring data integrity is specified in Functionality.html.

The data structures used in this app are described in DataLayer.html

This document lists the activities in the app, the widgets present in each activity.

Activity design

The activities wanted in this app are as follows:

Level 1 Activity

Class name: MainActivity
Title: Options

Widget labelWidget typeWidget name
open storebuttonbtnOpenStore
create new storebuttonbtnCreateNewStore
change store passwordbuttonbtnChangeStorePassword
clear existing storebuttonbtnClearExistingStore
import/export storebuttonbtnImportExportStore
aboutbuttonbtnAbout
helpbuttonbtnHelp

Level 2 Activities

Class name: OpenStoreActivity
Title: Open Store

Widget labelWidget typeWidget name
passwordtext fieldtxtPassword
memorable datetext fieldtxtMemorableDate
open storebuttonbtnOpenStore
backbuttonbtnBack

Class name: CreateNewStoreActivity
Title: Create Store

Widget labelWidget typeWidget name
passwordtext fieldtxtPassword
memorable datetext fieldtxtMemorableDate
confirm passwordtext fieldtxtConfirmPassword
confirm memorable datetext fieldtxtConfirmMemorableDate
create storebuttonbtnCreateStore
backbuttonbtnBack

Class name: ChangeStorePasswordActivity
Title:Change Store Password

Widget labelWidget typeWidget name
new passwordtext fieldtxtNewPassword
new passwordtext fieldtxtNewPassword
new memorable datetext fieldtxtNewMemorableDate
confirm new passwordtext fieldtxtConfirmNewPassword
confirm new memorable datetext fieldtxtConfirmNewMemorableDate
save changesbuttonbtnSaveChanges
backbuttonbtnBack

Class name: ImportExportStoreActivity
Title:Import/Export Store

Widget labelWidget typeWidget name
import storebuttonbtnImportStore
export storebuttonbtnExportStore
backbuttonbtnBack

Class name: AboutActivity
Title:About

Widget labelWidget typeWidget name
about texthtml texthtmlText
okbuttonbtnOk
backbuttonbtnBack

Class name: HelpActivity
Title:Help

Widget labelWidget typeWidget name
help texthtml texthtmlText
okbuttonbtnOk
backbuttonbtnBack

Level 3 Activities

Class name: ListEntriesActivity
Title:List Entries

Widget labelWidget typeWidget name
entriesvertically scrolling listvlsEntryNames
new entrybuttonbtnNewEntry
search entryNamesbuttonbtnSearchEntryNames
backbuttonbtnBack

Level 4 Activities

Class name: ViewEntryActivity
Title:View Entry

Widget labelWidget typeWidget name
entry nametextlblEntryName
creation date and timetextlblDateTime
last modified date and timetextlblLastModifiedDateTime
notesmultiline textmblNotes
passwordtextlblPassword
fieldsvertical list of single line text entriesvlsFields
deletebuttonbtnDelete
editbuttonbtnEdit
backbuttonbtnBack

Class name: AddEntryActivity
Title:New Entry

Widget labelWidget typeWidget name
entry nametext fieldtxtEntryName
creation date and timetextlblDateTime
last modified date and timetextlblLastModifiedDateTime
notesmultiline text areamtxNotes
passwordtext fieldtxtPassword
fieldsvertical list of single line text field entriesvlsFields
delete fieldbuttonbtnDelField
add fieldbuttonbtnAddField
savebuttonbtnSave
backbuttonbtnBack

Class name: DeleteEntryActivity
Title:Delete Entry

Widget labelWidget typeWidget name
entry nametextlblEntryName
confirm deletebuttonbtnConfirmDelete
backbuttonbtnBack

Class name: EditEntryActivity
Title:Edit Entry

Widget labelWidget typeWidget name
entry nametext fieldtxtEntryName
creation date and timetextlblDateTime
last modified date and timetextlblLastModifiedDateTime
notesmultiline text areamtxNotes
passwordtext fieldtxtPassword
list of detail fieldsvertical list of single line text field entrieslstDetailFields
delete fieldbuttonbtnDelField
add fieldbuttonbtnAddField
savebuttonbtnSave
backbuttonbtnBack

Class name: SearchEntriesActivity
Title:Find Entry

Widget labelWidget typeWidget name
entry nametext fieldtxtEntryName
searchbuttonbtnSearch
backbuttonbtnBack

Misc. definitions

Some terms used in this project are defined below:

Entry

An entry is defined to be a set of text fields, each field has a name and a value. Some fields are unique to an entry type, some are common to all entries. Some field values reflect a data type, and so have a syntax associated with them. For example, email must be a valur email address syntax, url must be a valid http url syntax, name starts with an uppercase.