- Inherited classes
View
- Android class type
LinearLayout
- Child elements
TextView
,Button
- Widget XML tag
<com.ginstr.widgets.GnEmail>
GnEmail
provides support to enter email data into email datatype. It is used to store and retrieve data from the database. Once data is in the widget it’s possible to edit the data by clicking edit
button.
On click, a new dialog window will open which has add
, edit
, remove
and close
buttons which can be used to manipulate emails.
The dialog has a built in validate screen action when add
or edit
is executed.
By default, widget definition can be found in $defaultApp/control/widget_en_email.xml. This layout describes how the widget will look on screen.
The dialog screen that loads on clicking edit
can be found at $defaultApp/control/dialog_en_email.xml
Dialog screen listview row definition can be found at $defaultApp/control/dialog_en_email_row.xml
All of the aforementioned layouts can be used to modify the look and feel of the widget.
Alternative layout
To provide alternative layout, the files mentioned above can be set into control folder of the current application. Files must be named as shown above and widgets with Id’s have to stay of same type and keep same id.
widget_en_email.xml
TextView
@+id/etEmail
- this text field represents emails stored in the widget
Button
@+id/etEmailManage
- this button opens dialog screen to manage email entries
dialog_en_email.xml
GnEditText
@+id/etEmailDialogName
- this input field is used to define email entry
name
attribute GnEditText
@+id/etEmailDialogAddress
- this input field is used to define email entry
email
attribute ListView
@+id/lstEmailDialogAddresses
- displays currently stored email entries in widget
Button
@+id/btnEmailDialogAdd
- this button adds data that is set into
GnEditTexts
into widget and refreshes the listview Button
@+id/btnEmailDialogEdit
- this button, after clicking on list item and modifying entry data, will replace stored entry data with newly entered data
Button
@+id/btnEmailDialogRemove
- after clicking on list item, clicking this button will remove the entry from the list
Button
@+id/btnEmailDialogRemove
- this button closes dialog and refreshes widget on screen with data
dialog_en_email_row.xml
LinearLayout
@+id/etEmailRow
- this container represents a single list row
TextView
@+id/etEmailName
- this text widget will display email entry
name
attribute TextView
@+id/etEmailRowAddress
- this text widget will display email entry
email
attribute
The aforementioned widgets must keep their type and id but the rest of the attributes and customisations can be done as required. Remaining widgets not mentioned in this xml files structure can be added/modified as required, there are no constraints.