TITLE

AUTHOR
Version 
CREATEDATE

Table of contents

Quintic Solutions

Homepage
 Click here to visit the product page, where you can browes the source via CVS,  download a tgz of the source, view revision histories, and more.

Dijinni Namespace Index
Dijinni Namespace List
Here is a list of all namespaces with brief descriptions:
std  	pagenum

Dijinni Hierarchical Index
Dijinni Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
CApp	pagenum
CAddrbookApp	pagenum
CCalcApp	pagenum
CCalendarApp	pagenum
CFrontpanelApp	pagenum
CHomeApp	pagenum
CListTestApp	pagenum
CMemoApp	pagenum
CMP3App	pagenum
CRecorderApp	pagenum
CSketchApp	pagenum
CSystemApp	pagenum
CTestApp	pagenum
TicTacToeApp	pagenum
CCellPhone	pagenum
CCore	pagenum
CDijinni	pagenum
CGfxScreen	pagenum
CInputEvent	pagenum
CJukeBox	pagenum
CLibDj	pagenum
CList	pagenum
CAddressBook	pagenum
CCalendar	pagenum
CMemoList	pagenum
CPlayList	pagenum
CUserPlayLists	pagenum
CListItem	pagenum
CDate	pagenum
CMemo	pagenum
CMp3Track	pagenum
CPerson	pagenum
CPlayList	pagenum
CMP3Player	pagenum
CPanel	pagenum
CScrollable	pagenum
CListBox	pagenum
CPersonEdit	pagenum
CTextArea	pagenum
CSketch	pagenum
CSLine	pagenum
CSystem	pagenum
CTextScreen	pagenum
CVIP	pagenum
CWidget	pagenum
CButton	pagenum
CCalendarWidget	pagenum
CGfxWidget	pagenum
CDateView	pagenum
CEventView	pagenum
CNiceBars	pagenum
CPersonEdit	pagenum
CPersonView	pagenum
CKbd	pagenum
CLabel	pagenum
CListBox	pagenum
CScrollBar	pagenum
CSketchView	pagenum
CTabView	pagenum
CTextArea	pagenum
djFile	pagenum
LineRec	pagenum
personField	pagenum
TextRec	pagenum
VIPinstance	pagenum

Dijinni Compound Index
Dijinni Compound List
Here are the classes, structs, unions and interfaces with brief descriptions:
CAddrbookApp (Address book application) 	pagenum
CAddressBook (Linked list of CPerson items, in lexicographical order by name) 	pagenum
CApp (Application parent class) 	pagenum
CButton (CButton - Regluar pushbutton widget) 	pagenum
CCalcApp (Simple 4-function calculator application) 	pagenum
CCalendar (Linked List of CDate items creating a list in chronological order of scheduled events) 	pagenum
CCalendarApp (Calendar/Date-book appliation) 	pagenum
CCalendarWidget (Scaleable calendar widget) 	pagenum
CCellPhone (Cellphone functions/util class) 	pagenum
CCore (Provides all data structures in one easy package as well as user data such as passwords, found message, cell client data as well as registeration. Also provides file and IR IO capability integrated for highest level of abstraction with data structures) 	pagenum
CDate (Basic node for storing a calendar event) 	pagenum
CDateView (Class for viewing all the events on a specific day) 	pagenum
CDijinni (Main Dijinni class. Manages which application is active and handles event passing) 	pagenum
CEventView (Class for viewing a specific event and it's entire comment) 	pagenum
CFrontpanelApp (Application to handle the front panel interface) 	pagenum
CGfxScreen  	pagenum
CGfxWidget (A widget with a pre-implimented empty update method for graphics-only widgets (bitmaps, etc)) 	pagenum
CHomeApp (The home application. The place to go to switch to all the other available applications) 	pagenum
CInputEvent (Simple intput event class) 	pagenum
CJukeBox (Stores a master mp3 list CPlayList object, and CUserPlayLists object for organizing all mp3s and user mp3 lists) 	pagenum
CKbd (A beautiful keyboard widget) 	pagenum
CLabel (Label widget - Like a button, but cant be pushed. Container for text) 	pagenum
CLibDj (Class to contain all the libdj helper classes) 	pagenum
CList (Basic Linked List data structure using CListItem as nodes) 	pagenum
CListBox (Listbox widget) 	pagenum
CListItem (Linked list node for making derived classes for address, calendar entries, etc) 	pagenum
CListTestApp  	pagenum
CMemo (Stores a basic memo) 	pagenum
CMemoApp (Simple memopad application for writing quick memos) 	pagenum
CMemoList (Linked list for the CMemo types, providing loading and saving via a string for up/downloading to PC and read/writing to Dijinni file system) 	pagenum
CMP3App (The MP3 player/recorder appliation) 	pagenum
CMP3Player (MP3 Player wrapper class) 	pagenum
CMp3Track (Basic data class and linked list node for Mp3 storing the associated filename, title, artist, genre, year, album, and comment) 	pagenum
CNiceBars (Little graphics-only widget to draw some lines) 	pagenum
CPanel (Widget container class) 	pagenum
CPerson (Basic data structure for a person entry for the address book) 	pagenum
CPersonEdit (A robust editor for editing a contact) 	pagenum
CPersonView (A widget to display the information about a person) 	pagenum
CPlayList (Linked List of Mp3 files for use as the MASTER Mp3 list as well for creatign user playlists) 	pagenum
CRecorderApp  	pagenum
CScrollable (Abstract class to inherit to make an object scrollable) 	pagenum
CScrollBar (Scrollbar widget for scrolling any) 	pagenum
CSketch (A class to contain one sketch) 	pagenum
CSketchApp (Sketch application for drawing sketches) 	pagenum
CSketchView (A class to display and edit a sketch) 	pagenum
CSLine (A class to contain one line (to be used in a CSketch)) 	pagenum
CSystem (Object for setting/registering and storing password, cell client, and Found message and instructions) 	pagenum
CSystemApp (System application for IR transfers, registering cellular client, etc) 	pagenum
CTabView (Tab class.. like the Microsoft Windows tab widgets) 	pagenum
CTestApp  	pagenum
CTextArea (Textarea for editing/displaying text) 	pagenum
CTextScreen (Wrapper class for the text screen on the front of the phone) 	pagenum
CUserPlayLists (Linked list of playlists, sorted by playlist name. Provides usual loading and saving of all data via a string) 	pagenum
CVIP (Array of 10 VIP instances to comply with func. spec, with saving/loading via one string) 	pagenum
CWidget (Abstract class all widgets need to inherit from) 	pagenum
djFile  	pagenum
LineRec  	pagenum
personField (A editable field in the CPersonEdit class) 	pagenum
TextRec  	pagenum
TicTacToeApp (Simple 2-player tic-tac-toe game) 	pagenum
VIPinstance (Basic struct for a VIP entry as specified as necessary in func. spec) 	pagenum

Dijinni File Index
Dijinni File List
Here is a list of all files with brief descriptions:
AddrbookApp.cpp  	pagenum
AddrbookApp.h  	pagenum
App.h  	pagenum
apps.cpp  	pagenum
CalcApp.cpp  	pagenum
CalcApp.h  	pagenum
CalendarApp.cpp  	pagenum
CalendarApp.h  	pagenum
callbacks.cpp  	pagenum
CCellPhone.cpp  	pagenum
CCellPhone.h  	pagenum
CCore.cpp  	pagenum
CCore.h  	pagenum
CDataStructures.cpp  	pagenum
CDataStructures.h  	pagenum
CGfxScreen.cpp  	pagenum
CGfxScreen.h  	pagenum
CMP3Player.cpp  	pagenum
CMP3Player.h  	pagenum
CTextScreen.cpp  	pagenum
CTextScreen.h  	pagenum
CUI.cpp  	pagenum
CUI.h  	pagenum
Dijinni.h  	pagenum
DijinniApp.h  	pagenum
DijinniDat.h  	pagenum
DijinniLib.h  	pagenum
djFile.cpp  	pagenum
djFile.h  	pagenum
Events.h  	pagenum
FrontpanelApp.cpp  	pagenum
FrontpanelApp.h  	pagenum
HomeApp.cpp  	pagenum
HomeApp.h  	pagenum
libdj.cpp  	pagenum
libdj.h  	pagenum
ListTestApp.cpp  	pagenum
ListTestApp.h  	pagenum
MemoApp.cpp  	pagenum
MemoApp.h  	pagenum
MP3App.cpp  	pagenum
MP3App.h  	pagenum
RecorderApp.cpp  	pagenum
RecorderApp.h  	pagenum
SketchApp.cpp  	pagenum
SketchApp.h  	pagenum
Speedup.h  	pagenum
SystemApp.cpp  	pagenum
SystemApp.h  	pagenum
TestApp.cpp  	pagenum
TestApp.h  	pagenum
TicTacToeApp.cpp  	pagenum
TicTacToeApp.h  	pagenum
Trace.h  	pagenum

Dijinni Namespace Documentation
std Namespace Reference

Detailed Description
FILE App.h 
Id: 
 App.h,v 1.7 2001/11/26 05:01:56 cmicali Exp 
DESCRIPTION  Parent class definition for applications that are run on the dijinni 

Dijinni Class Documentation
CAddrbookApp  Class Reference
Address book application. 
#include <AddrbookApp.h>
Inheritance diagram for CAddrbookApp:

IMAGE

Public Methods
CAddrbookApp (CDijinni *parent)
~CAddrbookApp ()
void onEnter ()
void setMode (int mode)
int update (CInputEvent *e)
void draw ()
Standard draw.

void redraw ()
void updateList (void)
void updateScreen ()

Public Attributes
int m_curmode
CPanel * panel [2]
CPanel * toppanel [2]
CListBox * listbox
CScrollBar * listsb
CButton * btnAdd
CButton * btnEdit
CButton * btnDelete
CPersonView * personview
CPersonEdit * personedit
CKbd * keyboard
CButton * btnCancel
CButton * btnSave
CLabel * lblSetCat
CListBox * catbox
I was tempted to name this the litterbox :).

CScrollBar * editsb
CButton * lblStatus
CButton * btnCall
CButton * btnWhichPhone
CButton * btnVIPs
CButton * btnViewCat
CButton * btnLastFirst

Detailed Description
Address book application.

This is the address book application. It supports viewing, adding, editing, and deleting entries in the address book. Viewing the entries can be sorted by first or last name. All management of the data for this application is handled by the CAddressBook and CPerson classes which can be found in CDataStructures.h and CDataStructures.cpp . 

Constructor & Destructor Documentation
CAddrbookApp::CAddrbookApp (CDijinni * parent)
CAddrbookApp::~CAddrbookApp ()

Member Function Documentation
void CAddrbookApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CAddrbookApp::onEnter () [virtual]

Reimplemented from CApp.
void CAddrbookApp::redraw ()
void CAddrbookApp::setMode (int mode)
CAddrbookApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.
void CAddrbookApp::updateList (void)
void CAddrbookApp::updateScreen ()

Member Data Documentation
CButton* CAddrbookApp::btnAdd
CButton* CAddrbookApp::btnCall
CButton* CAddrbookApp::btnCancel
CButton* CAddrbookApp::btnDelete
CButton* CAddrbookApp::btnEdit
CButton* CAddrbookApp::btnLastFirst
CButton* CAddrbookApp::btnSave
CButton* CAddrbookApp::btnViewCat
CButton* CAddrbookApp::btnVIPs
CButton* CAddrbookApp::btnWhichPhone
CListBox* CAddrbookApp::catbox
I was tempted to name this the litterbox :).
CScrollBar* CAddrbookApp::editsb
CKbd* CAddrbookApp::keyboard
CLabel* CAddrbookApp::lblSetCat
CButton* CAddrbookApp::lblStatus
CListBox* CAddrbookApp::listbox
CScrollBar* CAddrbookApp::listsb
int CAddrbookApp::m_curmode
CPanel* CAddrbookApp::panel[2]
CPersonEdit* CAddrbookApp::personedit
CPersonView* CAddrbookApp::personview
CPanel* CAddrbookApp::toppanel[2]

The documentation for this class was generated from the following files:
AddrbookApp.h
AddrbookApp.cpp

CAddressBook  Class Reference
Linked list of CPerson items, in lexicographical order by name. 
#include <CDataStructures.h>
Inheritance diagram for CAddressBook:

IMAGE

Public Methods
CAddressBook (void)
~CAddressBook (void)
CPerson * getItem (void)
Returns the internal pointer.

CPerson * getItem (int number)
Returns the item that is in position number, where the head is 1.

bool isSortedByLastName (void)
Returns true if Address entries are sorted by last name.

void setSortedByLastName (void)
Resort the Address book by last name.

void setSortedByFirstName (void)
Resort the Address book by first name.

bool insertItem (CPerson *person)
Use only this for all CPerson inserts into the Address book.

bool gotoPerson (string fullname, bool lastthenfirst=true)
void inputData (string inputdata)
string outputData (void)

Detailed Description
Linked list of CPerson items, in lexicographical order by name.

Supports automatic reordering by last, then first name or vice versa  on call. Supports saving and loading all data automatically via a string for up/downloading and reading/writing to files on the Dijinni 

Constructor & Destructor Documentation
CAddressBook::CAddressBook (void)
CAddressBook::~CAddressBook (void)

Member Function Documentation
CPerson * CAddressBook::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented from CList.
CPerson * CAddressBook::getItem (void)
Returns the internal pointer.

Reimplemented from CList.
bool CAddressBook::gotoPerson (string fullname, bool lastthenfirst = true)
void CAddressBook::inputData (string inputdata)
bool CAddressBook::insertItem (CPerson * person)
Use only this for all CPerson inserts into the Address book.
Will not allow two people to be entered who have same  first and last names as well as middle initials The user must differentiate beteen the two somehow 
bool CAddressBook::isSortedByLastName (void)
Returns true if Address entries are sorted by last name.
string CAddressBook::outputData (void)
void CAddressBook::setSortedByFirstName (void)
Resort the Address book by first name.
void CAddressBook::setSortedByLastName (void)
Resort the Address book by last name.

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CApp  Class Reference
Application parent class. 
#include <App.h>
Inheritance diagram for CApp:

IMAGE

Public Methods
CApp ()
Constructor.

CApp (CDijinni *parent)
~CApp ()
virtual int update (CInputEvent *e)
virtual void draw ()
Standard draw.

virtual void onEnter ()
virtual void onLeave ()
virtual int onPhoneRing ()
virtual int onPhoneLostSignal ()
virtual int onPhoneBusySignal ()
virtual int onPhoneConnect ()
virtual int onMp3EndOfTrack ()
virtual int onSysMemoryFault ()
virtual int onSysLowBattery ()
virtual int onSysOpen ()
virtual int onSysClose ()
string getname ()
void setname (string n)

Public Attributes
CDijinni * m_dijinni
string m_name

Detailed Description
Application parent class.

All applications must inherit from this class. The only important methods that need to be overriden are draw() and update(). Any other methods can be optionally overriden if the application needs to trap any events. 

Constructor & Destructor Documentation
CApp::CApp () [inline]
Constructor.
CApp::CApp (CDijinni * parent) [inline]
CApp::~CApp () [inline]

Member Function Documentation
virtual void CApp::draw () [inline, virtual]
Standard draw.

Reimplemented in CAddrbookApp, CCalcApp, CCalendarApp, CFrontpanelApp, CHomeApp, CListTestApp, CMemoApp, CMP3App, CRecorderApp, CSketchApp, CSystemApp, CTestApp, and TicTacToeApp.
string CApp::getname () [inline]
virtual void CApp::onEnter () [inline, virtual]

Reimplemented in CAddrbookApp, CCalendarApp, CHomeApp, CMemoApp, and CSketchApp.
virtual void CApp::onLeave () [inline, virtual]
virtual int CApp::onMp3EndOfTrack () [inline, virtual]
virtual int CApp::onPhoneBusySignal () [inline, virtual]
virtual int CApp::onPhoneConnect () [inline, virtual]
virtual int CApp::onPhoneLostSignal () [inline, virtual]
virtual int CApp::onPhoneRing () [inline, virtual]
virtual int CApp::onSysClose () [inline, virtual]
virtual int CApp::onSysLowBattery () [inline, virtual]
virtual int CApp::onSysMemoryFault () [inline, virtual]
virtual int CApp::onSysOpen () [inline, virtual]
void CApp::setname (string n) [inline]
virtual int CApp::update (CInputEvent * e) [inline, virtual]

Reimplemented in CAddrbookApp, CCalcApp, CCalendarApp, CFrontpanelApp, CHomeApp, CListTestApp, CMemoApp, CMP3App, CRecorderApp, CSketchApp, CSystemApp, CTestApp, and TicTacToeApp.

Member Data Documentation
CDijinni* CApp::m_dijinni
string CApp::m_name

The documentation for this class was generated from the following file:
App.h

CButton  Class Reference
CButton - Regluar pushbutton widget. 
#include <CUI.h>
Inheritance diagram for CButton:

IMAGE

Public Methods
CButton (int x, int y, string caption, Callback OnClick, void *app, int style=BTNS_FLAT, int tstyle=TS_NOSTYLE)
Constructor. Takes (x,y), caption on button, callback function to be called when clicked, pointer to container application, and optional style.

~CButton ()
virtual int update (CInputEvent *e)
Standard update method.

virtual void draw (CGfxScreen *s)
Standard draw method.

int hitTest (CInputEvent *e)

Public Attributes
string m_caption
Callback m_OnClick
int m_state
int m_style
int m_tstyle
void * m_app

Detailed Description
CButton - Regluar pushbutton widget.

Constructor & Destructor Documentation
CButton::CButton (int x, int y, string caption, Callback OnClick, void * app, int style = BTNS_FLAT, int tstyle = TS_NOSTYLE)
Constructor. Takes (x,y), caption on button, callback function to be called when clicked, pointer to container application, and optional style.
CButton::~CButton ()

Member Function Documentation
void CButton::draw (CGfxScreen * s) [virtual]
Standard draw method.

Reimplemented from CWidget.
int CButton::hitTest (CInputEvent * e)
int CButton::update (CInputEvent * e) [virtual]
Standard update method.

Reimplemented from CWidget.

Member Data Documentation
void* CButton::m_app
string CButton::m_caption
Callback CButton::m_OnClick
int CButton::m_state
int CButton::m_style
int CButton::m_tstyle

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CCalcApp  Class Reference
Simple 4-function calculator application. 
#include <CalcApp.h>
Inheritance diagram for CCalcApp:

IMAGE

Public Methods
CCalcApp (CDijinni *parent)
~CCalcApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
CPanel * panel
CPanel * panel1
int storednum
int firstnumber
int secondnumber

Detailed Description
Simple 4-function calculator application.

Just what you would expect, a simple four function calculator. Supports floating point numbers, all the operations, and negative numbers. 

Constructor & Destructor Documentation
CCalcApp::CCalcApp (CDijinni * parent)
CCalcApp::~CCalcApp ()

Member Function Documentation
void CCalcApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CCalcApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
int CCalcApp::firstnumber
CPanel* CCalcApp::panel
CPanel* CCalcApp::panel1
int CCalcApp::secondnumber
int CCalcApp::storednum

The documentation for this class was generated from the following files:
CalcApp.h
CalcApp.cpp

CCalendar  Class Reference
Linked List of CDate items creating a list in chronological order of scheduled events. 
#include <CDataStructures.h>
Inheritance diagram for CCalendar:

IMAGE

Public Methods
CCalendar (void)
~CCalendar (void)
CDate * getItem (void)
Returns the internal pointer.

CDate * getItem (int number)
Returns the item that is in position number, where the head is 1.

bool gotoDate (int day, int month, int year)
Sets m_current to earliest CDate occuring on specified date.

bool nextEventYear (void)
Gets first event in the next year or after than current.

bool nextEventMonth (void)
bool nextEventDay (void)
bool nextEventOnCurrentDay (void)
Sets m_current ptr to the next CDate occuring on the same day.

bool prevEventYear (void)
Gets the earliest event in the first previous year before current.

bool prevEventMonth (void)
bool prevEventDay (void)
bool prevEventOnCurrentDay (void)
Sets m_current ptr to the previous CDate occuring on the same day.

void insertItem (CDate *appt)
Use only this for all CDate inserts into the Calendar.

void inputData (string inputdata)
string outputData (void)

Detailed Description
Linked List of CDate items creating a list in chronological order of scheduled events.

Constructor & Destructor Documentation
CCalendar::CCalendar (void)
CCalendar::~CCalendar (void)

Member Function Documentation
CDate * CCalendar::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented from CList.
CDate * CCalendar::getItem (void)
Returns the internal pointer.

Reimplemented from CList.
bool CCalendar::gotoDate (int day, int month, int year)
Sets m_current to earliest CDate occuring on specified date.
Returns true if such a date exists in CCalendar Returns false if no such a date exists in CCalendar 
void CCalendar::inputData (string inputdata)
void CCalendar::insertItem (CDate * appt)
Use only this for all CDate inserts into the Calendar.
Will not allow overlapping events except for  1) all day events 2) an event 1 may have same endtime as event 2's start time 3) if an event has same start time and end time, it may share that time with the starting or ending time of other events but cannot lie between the start and end time of an event Returns true on successful entry Returns false if date conflicts with previously entered dates 
bool CCalendar::nextEventDay (void)
bool CCalendar::nextEventMonth (void)
bool CCalendar::nextEventOnCurrentDay (void)
Sets m_current ptr to the next CDate occuring on the same day.
Returns true if successful and sets m_current Returns false if there are no other CDate items on m_current's date which are after or the same time as m_current 
bool CCalendar::nextEventYear (void)
Gets first event in the next year or after than current.
Goes to the first next event in the CCalendar that is beyond the the year of the CDate that m_current is pointing to.
Returns true if there is such a date and sets internal current ptr to it. Else returns false and leaves internal current pointer as is.
nextEventMonth() and nextEventDay work similarly 
string CCalendar::outputData (void)
bool CCalendar::prevEventDay (void)
bool CCalendar::prevEventMonth (void)
bool CCalendar::prevEventOnCurrentDay (void)
Sets m_current ptr to the previous CDate occuring on the same day.
Returns true if successful and sets m_current Returns false if there are no other CDate items on m_current's date which are before or the same time as m_current 
bool CCalendar::prevEventYear (void)
Gets the earliest event in the first previous year before current.
Goes to the next event in the CCalendar that is before the the year of the CDate that m_current is pointing to. Though if there are multiple dates before the current one and they are of the same year, it goes to the earliest occuring of these.
Returns true if there is such a date and sets internal current ptr to it. Else returns false and leaves internal current pointer as is.
nextEventMonth() and nextEventDay work similarly 

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CCalendarApp  Class Reference
Calendar/Date-book appliation. 
#include <CalendarApp.h>
Inheritance diagram for CCalendarApp:

IMAGE

Public Methods
void refreshDayList ()
void updateEventListbox ()
CCalendarApp (CDijinni *parent)
~CCalendarApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

void onEnter ()
void setMode (int mode)

Public Attributes
CPanel * panel [CAM_NUM_MODES]
CPanel * toppanel [CAM_NUM_MODES]
CCalendarWidget * calendar
CButton * btnEditDay
CButton * btnNewEvent
CDateView * dateView
CKbd * keyboard
CListBox * sebox
CListBox * hourbox
CListBox * minbox
CListBox * ampmbox
CScrollBar * timesbar
CScrollBar * minsbar
CButton * btnCancel
CButton * btnSave
CButton * btnSetAllDay
CButton * btnSetTime
CTextArea * textarea
CScrollBar * textbar
CLabel * lblDate
CLabel * lblTime
CScrollBar * eventsbar
CListBox * dailyevents
CButton * btnEditEvent
CButton * btnDeleteEvent
CButton * btnEDBack
CEventView * eventview
bool m_isnew

Detailed Description
Calendar/Date-book appliation.

This is the super-duper calendar application. It supports day and  month views, multiple events on days, all-day events, adding, editing,  and deleting events, input validation, and more. All the data this application uses is managed by CCalendar and CDate. 

Constructor & Destructor Documentation
CCalendarApp::CCalendarApp (CDijinni * parent)
CCalendarApp::~CCalendarApp ()

Member Function Documentation
void CCalendarApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CCalendarApp::onEnter () [virtual]

Reimplemented from CApp.
void CCalendarApp::refreshDayList ()
void CCalendarApp::setMode (int mode)
CCalendarApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.
void CCalendarApp::updateEventListbox ()

Member Data Documentation
CListBox* CCalendarApp::ampmbox
CButton* CCalendarApp::btnCancel
CButton* CCalendarApp::btnDeleteEvent
CButton* CCalendarApp::btnEDBack
CButton* CCalendarApp::btnEditDay
CButton* CCalendarApp::btnEditEvent
CButton* CCalendarApp::btnNewEvent
CButton* CCalendarApp::btnSave
CButton* CCalendarApp::btnSetAllDay
CButton* CCalendarApp::btnSetTime
CCalendarWidget* CCalendarApp::calendar
CListBox* CCalendarApp::dailyevents
CDateView* CCalendarApp::dateView
CScrollBar* CCalendarApp::eventsbar
CEventView* CCalendarApp::eventview
CListBox* CCalendarApp::hourbox
CKbd* CCalendarApp::keyboard
CLabel* CCalendarApp::lblDate
CLabel* CCalendarApp::lblTime
bool CCalendarApp::m_isnew
CListBox* CCalendarApp::minbox
CScrollBar* CCalendarApp::minsbar
CPanel* CCalendarApp::panel[CAM_NUM_MODES]
CListBox* CCalendarApp::sebox
CTextArea* CCalendarApp::textarea
CScrollBar* CCalendarApp::textbar
CScrollBar* CCalendarApp::timesbar
CPanel* CCalendarApp::toppanel[CAM_NUM_MODES]

The documentation for this class was generated from the following files:
CalendarApp.h
CalendarApp.cpp

CCalendarWidget  Class Reference
Scaleable calendar widget. 
#include <CUI.h>
Inheritance diagram for CCalendarWidget:

IMAGE

Public Methods
CCalendarWidget (int x, int y, int width, int height, int month, int year, Callback callback, void *app)
Constructor - takes x, y, width, height, starting month and year, a callback to call when the calendar is clicked, and a pointer to the calling application.

~CCalendarWidget ()
virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void drawGrid (CGfxScreen *S, int x1, int y1, int x2, int y2, int rows, int cols)
Does the actual work of drawing the calendar.

void setMonth (int month)
void setYear (int year)
void setDispDate (int month, int year)
Sets the displayed date of the calendar (month and year).

void setSelDate (int day, int month, int year)
Sets the selected day of the calendar.

void doCallback (int action)
Calls the calendar callback function.

Public Attributes
int m_sel_day
int m_sel_month
int m_sel_year
int m_action
void * m_app

Detailed Description
Scaleable calendar widget.

Constructor & Destructor Documentation
CCalendarWidget::CCalendarWidget (int x, int y, int width, int height, int month, int year, Callback callback, void * app)
Constructor - takes x, y, width, height, starting month and year, a callback to call when the calendar is clicked, and a pointer to the calling application.
CCalendarWidget::~CCalendarWidget ()

Member Function Documentation
void CCalendarWidget::doCallback (int action)
Calls the calendar callback function.
void CCalendarWidget::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
void CCalendarWidget::drawGrid (CGfxScreen * S, int x1, int y1, int x2, int y2, int rows, int cols)
Does the actual work of drawing the calendar.
void CCalendarWidget::setDispDate (int month, int year)
Sets the displayed date of the calendar (month and year).
void CCalendarWidget::setMonth (int month)
void CCalendarWidget::setSelDate (int day, int month, int year)
Sets the selected day of the calendar.
void CCalendarWidget::setYear (int year)
int CCalendarWidget::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
int CCalendarWidget::m_action
void* CCalendarWidget::m_app
int CCalendarWidget::m_sel_day
int CCalendarWidget::m_sel_month
int CCalendarWidget::m_sel_year

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CCellPhone  Class Reference
Cellphone functions/util class. 
#include <CCellPhone.h>

Public Methods
CCellPhone ()
Constructor.

~CCellPhone ()
Destructor.

int call (string number)
Call given number.

int hangup ()
Hangup the phone.

void ring ()
Sound ringtone.

int answer ()
Answer incoming call.

string formatNumber (string number)
Format passed number to look nice.

Detailed Description
Cellphone functions/util class.

Wrapper for cellphone functions and utility functions related to the cellphone 

Constructor & Destructor Documentation
CCellPhone::CCellPhone ()
Constructor.
CCellPhone::~CCellPhone ()
Destructor.

Member Function Documentation
int CCellPhone::answer ()
Answer incoming call.
int CCellPhone::call (string number)
Call given number.
string CCellPhone::formatNumber (string number)
Format passed number to look nice.
int CCellPhone::hangup ()
Hangup the phone.
void CCellPhone::ring ()
Sound ringtone.

The documentation for this class was generated from the following files:
CCellPhone.h
CCellPhone.cpp

CCore  Class Reference
Provides all data structures in one easy package as well as user data such as passwords, found message, cell client data as well as registeration. Also provides file and IR IO capability integrated for highest level of abstraction with data structures. 
#include <CCore.h>

Public Methods
CCore ()
~CCore ()
void load (void)
void save (void)
string getNewMp3Filename (void)
void downloadMp3 (void)
bool uploadMp3 (CMp3Track *mp3)
bool backupSysData (void)
void inputData (string inputdata)
string outputData (void)

Public Attributes
CMemoList * MemoList
CAddressBook * AddressBook
CCalendar * Calendar
CJukeBox * JukeBox
CVIP * VIPs
CSystem * System

Detailed Description
Provides all data structures in one easy package as well as user data such as passwords, found message, cell client data as well as registeration. Also provides file and IR IO capability integrated for highest level of abstraction with data structures.

CCore stores a CMemoList, CAddressBook, CCalendar, CJukeBox, CVIP, and  CSystem object which supports saving the entire system and loading all the via one string, via backupSysData().
This class also handles registering the cell client as provided by  CSystem
Also provides downloading/uploading Mp3 as well as automatic Mp3 filename generation so no conflicts arise from new recording and when downloading  MP3s 

Constructor & Destructor Documentation
CCore::CCore ()
CCore::~CCore ()

Member Function Documentation
bool CCore::backupSysData (void)
void CCore::downloadMp3 (void)
string CCore::getNewMp3Filename (void)
void CCore::inputData (string inputdata)
void CCore::load (void)
string CCore::outputData (void)
void CCore::save (void)
bool CCore::uploadMp3 (CMp3Track * mp3)

Member Data Documentation
CAddressBook* CCore::AddressBook
CCalendar* CCore::Calendar
CJukeBox* CCore::JukeBox
CMemoList* CCore::MemoList
CSystem* CCore::System
CVIP* CCore::VIPs

The documentation for this class was generated from the following files:
CCore.h
CCore.cpp

CDate  Class Reference
Basic node for storing a calendar event. 
#include <CDataStructures.h>
Inheritance diagram for CDate:

IMAGE

Public Methods
CDate (void)
~CDate (void)
bool setDate (int day, int month, int year)
Sets the date.

bool setStartTime (int hour, int minute, bool pm)
Sets the starting time of the event in 12 hour format.

bool setEndTime (int hour, int minute, bool pm)
Sets the ending time of the event in 12 hour format.

void setComment (string comment)
int getDay (void)
int getMonth (void)
int getYear (void)
int getStartHour (void)
int getStartMinute (void)
bool isStartPM (void)
int getEndHour (void)
int getEndMinute (void)
bool isEndPM (void)
void setAllDay (void)
Set and unset whether an event is all day or has specific times.

void unSetAllDay (void)
bool isAllDay (void)
string getComment (void)
string getListing (int numberofchars)
string getDate (bool slashformat=true)
Returns a nicely formatted string for the date.

string getTime (bool endtime=false)
Returns a nicely formatted time for either start or end.

string getNameOfDay (void)
Returns the name of the day of the date.

string getNameOfMonth (bool abbreviated=true)
Returns the name of the month of the date, abbr or full.

string getNumberOfDay (void)
Returns a string of the day of the month with appending letters.

string getYearAsString (void)
Returns the year as a string.

void inputData (string inputdata)
string outputData (void)

Detailed Description
Basic node for storing a calendar event.

Provides starting and ending times, month, day, year, and flag for  specifying an all day event, as well as a string decription of event. Provides proper error checking, not allowing invalid times or dates. Provides pretty printing string routines for the day names, months, years, times, via individual functions, or provides all them combined in nicely formatted string. Also provides initialization and saving routines  saving and reading to memory and up/downloading to PC for backup, etc. 

Constructor & Destructor Documentation
CDate::CDate (void)
CDate::~CDate (void)

Member Function Documentation
string CDate::getComment (void)
string CDate::getDate (bool slashformat = true)
Returns a nicely formatted string for the date.
The default is the slash format. For example slashformat returns "11/26/2001" Else returns "Monday, November 26th 2001" 
int CDate::getDay (void)
int CDate::getEndHour (void)
int CDate::getEndMinute (void)
string CDate::getListing (int numberofchars)
int CDate::getMonth (void)
string CDate::getNameOfDay (void)
Returns the name of the day of the date.
string CDate::getNameOfMonth (bool abbreviated = true)
Returns the name of the month of the date, abbr or full.
string CDate::getNumberOfDay (void)
Returns a string of the day of the month with appending letters.
Proper appendings "st", "nd", "rd", or "th". For example if the date is 14 of June it will return "14th" 
int CDate::getStartHour (void)
int CDate::getStartMinute (void)
string CDate::getTime (bool endtime = false)
Returns a nicely formatted time for either start or end.
Returns "5:57 AM" for example. Returns "" if all day event 
int CDate::getYear (void)
string CDate::getYearAsString (void)
Returns the year as a string.
void CDate::inputData (string inputdata)
bool CDate::isAllDay (void)
bool CDate::isEndPM (void)
bool CDate::isStartPM (void)
string CDate::outputData (void)
void CDate::setAllDay (void)
Set and unset whether an event is all day or has specific times.
If an event is all day, start and end times cannot be set and the all day events will be listed before the timed events that day in the CCalendar. If all day event, getTime() returns "". 
void CDate::setComment (string comment)
bool CDate::setDate (int day, int month, int year)
Sets the date.
Default sets to 1/1/2001 Must be within 2001 to 2299 Returns true on valid date else returns  false and sets to default 
bool CDate::setEndTime (int hour, int minute, bool pm)
Sets the ending time of the event in 12 hour format.
Default is set to start time. Returns true if a valid time and after start time. Else returns false and keeps default endtime. 
bool CDate::setStartTime (int hour, int minute, bool pm)
Sets the starting time of the event in 12 hour format.
Returns true if a valid time. Returns false otherwise and sets to default of midnight 
void CDate::unSetAllDay (void)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CDateView  Class Reference
Class for viewing all the events on a specific day. 
#include <CalendarApp.h>
Inheritance diagram for CDateView:

IMAGE

Public Methods
CDateView (int x, int y, int width, int height, int day, int month, int year)
~CDateView ()
virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void setDate (int day, int month, int year)

Detailed Description
Class for viewing all the events on a specific day.

FILE CalendarApp.h 
Id: 
 CalendarApp.h,v 1.10 2001/12/06 01:54:09 cmicali Exp 
DESCRIPTION  Calandar / Date book application 

Constructor & Destructor Documentation
CDateView::CDateView (int x, int y, int width, int height, int day, int month, int year)
CDateView::~CDateView ()

Member Function Documentation
void CDateView::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CGfxWidget.
void CDateView::setDate (int day, int month, int year)

The documentation for this class was generated from the following files:
CalendarApp.h
CalendarApp.cpp

CDijinni  Class Reference
Main Dijinni class. Manages which application is active and handles event passing. 
#include <Dijinni.h>

Public Methods
CDijinni ()
Constructor.

~CDijinni ()
Destructor.

void setHelp (string text)
virtual void onSysPowerOn ()
Put startup stuff in here.

virtual void switchActiveApp (CApp *m, int auto_draw=1)
Switches the active application, takes pointer to the new one. auto_draw = 1 makes the screen redraw.

virtual void draw ()
Clears the screens and redraws them.

virtual void checkLoad ()
virtual void onKeyPress (int key)
Called when a key on the front of the dijinni is pressed.

virtual void onMousePress (int x, int y)
virtual void onMouseRelease (int x, int y)
virtual void onMouseMove (int x, int y)
virtual void onPhoneRing ()
virtual void onPhoneLostSignal ()
virtual void onPhoneBusySignal ()
virtual void onPhoneConnect ()
virtual void onMp3EndOfTrack ()
virtual void onSysMemoryFault ()
virtual void onSysLowBattery ()
virtual void onSysOpen ()
virtual void onSysClose ()
unsigned char getFlags ()
unsigned char getFlag (unsigned char flag)

Public Attributes
CPanel * SysPanel
Pointer to system panel.. widgets/graphics that are always on the inside screens go in this panel.

CButton * appButton
Button that shows current application.

CLabel * helpLabel
Label to show helptexts.

CApp * TestApp
CApp * ListTestApp
CApp * MP3App
CApp * HomeApp
CApp * CalcApp
CApp * RecorderApp
CApp * FrontpanelApp
CApp * MemoApp
CApp * CalendarApp
CApp * AddrbookApp
CApp * SketchApp
CApp * TicTacToeApp
CApp * SystemApp
CApp * LastApp
bool m_firstload

Detailed Description
Main Dijinni class. Manages which application is active and handles event passing.

This class manages which application is currently active and is the bridge between the Dijinni API Service_* routines and Quintic Solution's application event model. 

Constructor & Destructor Documentation
CDijinni::CDijinni () [inline]
Constructor.
CDijinni::~CDijinni () [inline]
Destructor.

Member Function Documentation
virtual void CDijinni::checkLoad () [inline, virtual]
virtual void CDijinni::draw () [inline, virtual]
Clears the screens and redraws them.
unsigned char CDijinni::getFlag (unsigned char flag) [inline]
unsigned char CDijinni::getFlags () [inline]
virtual void CDijinni::onKeyPress (int key) [inline, virtual]
Called when a key on the front of the dijinni is pressed.
virtual void CDijinni::onMouseMove (int x, int y) [inline, virtual]
virtual void CDijinni::onMousePress (int x, int y) [inline, virtual]
virtual void CDijinni::onMouseRelease (int x, int y) [inline, virtual]
virtual void CDijinni::onMp3EndOfTrack () [inline, virtual]
virtual void CDijinni::onPhoneBusySignal () [inline, virtual]
virtual void CDijinni::onPhoneConnect () [inline, virtual]
virtual void CDijinni::onPhoneLostSignal () [inline, virtual]
virtual void CDijinni::onPhoneRing () [inline, virtual]
virtual void CDijinni::onSysClose () [inline, virtual]
virtual void CDijinni::onSysLowBattery () [inline, virtual]
virtual void CDijinni::onSysMemoryFault () [inline, virtual]
virtual void CDijinni::onSysOpen () [inline, virtual]
virtual void CDijinni::onSysPowerOn () [inline, virtual]
Put startup stuff in here.
void CDijinni::setHelp (string text) [inline]
virtual void CDijinni::switchActiveApp (CApp * m, int auto_draw = 1) [inline, virtual]
Switches the active application, takes pointer to the new one. auto_draw = 1 makes the screen redraw.

Member Data Documentation
CApp* CDijinni::AddrbookApp
CButton* CDijinni::appButton
Button that shows current application.
CApp* CDijinni::CalcApp
CApp* CDijinni::CalendarApp
CApp* CDijinni::FrontpanelApp
CLabel* CDijinni::helpLabel
Label to show helptexts.
CApp* CDijinni::HomeApp
CApp* CDijinni::LastApp
CApp* CDijinni::ListTestApp
bool CDijinni::m_firstload
CApp* CDijinni::MemoApp
CApp* CDijinni::MP3App
CApp* CDijinni::RecorderApp
CApp* CDijinni::SketchApp
CPanel* CDijinni::SysPanel
Pointer to system panel.. widgets/graphics that are always on the inside screens go in this panel.
CApp* CDijinni::SystemApp
CApp* CDijinni::TestApp
CApp* CDijinni::TicTacToeApp

The documentation for this class was generated from the following file:
Dijinni.h

CEventView  Class Reference
Class for viewing a specific event and it's entire comment. 
#include <CalendarApp.h>
Inheritance diagram for CEventView:

IMAGE

Public Methods
CEventView (int x, int y, int width, int height)
~CEventView ()
virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void setDate (CDate *date)
CDate * getDate ()

Detailed Description
Class for viewing a specific event and it's entire comment.

Constructor & Destructor Documentation
CEventView::CEventView (int x, int y, int width, int height)
CEventView::~CEventView ()

Member Function Documentation
void CEventView::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CGfxWidget.
CDate * CEventView::getDate ()
void CEventView::setDate (CDate * date)

The documentation for this class was generated from the following files:
CalendarApp.h
CalendarApp.cpp

CFrontpanelApp  Class Reference
Application to handle the front panel interface. 
#include <FrontpanelApp.h>
Inheritance diagram for CFrontpanelApp:

IMAGE

Public Methods
CFrontpanelApp (CDijinni *parent)
~CFrontpanelApp ()
int displaybattery (void)
void displaylogo (void)
void displaypin (void)
void displayMP3mode (void)
void displayPhonebook (void)
void makecall (void)
void displaycalculator (void)
int update (CInputEvent *e)
void draw ()
Standard draw.

Detailed Description
Application to handle the front panel interface.

This application impliments the front panel interface and is  supposed to provide an interface to the CAddressBook address book and the MP3 player. 

Constructor & Destructor Documentation
CFrontpanelApp::CFrontpanelApp (CDijinni * parent)
CFrontpanelApp::~CFrontpanelApp ()

Member Function Documentation
int CFrontpanelApp::displaybattery (void)
void CFrontpanelApp::displaycalculator (void)
void CFrontpanelApp::displaylogo (void)
void CFrontpanelApp::displayMP3mode (void)
void CFrontpanelApp::displayPhonebook (void)
void CFrontpanelApp::displaypin (void)
void CFrontpanelApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CFrontpanelApp::makecall (void)
int CFrontpanelApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

The documentation for this class was generated from the following files:
FrontpanelApp.h
FrontpanelApp.cpp

CGfxScreen  Class Reference
#include <CGfxScreen.h>

Public Methods
CGfxScreen ()
Constructor.

CGfxScreen (int ScreenID, int xsize, int ysize)
Constructor.

~CGfxScreen ()
Destructor.

void setScreen (int ScreenID, int xsize, int ysize)
Set the paramets of the screen.

void drawText (string str, int x, int y, int style=TS_NOSTYLE)
Draws text to the display.

void putPixel (int x, int y)
Puts a pixel on the screen at (x,y).

void drawLine (int x1, int y1, int x2, int y2)
Draws a line on the screen.

void drawBox (int x1, int y1, int x2, int y2)
Draws a box on the screen.

void clear ()
Clears the screen.

int getXSize ()
Returns x size of screen.

int getYSize ()
Returns y size of screen.

void drawGrid (int x1, int y1, int x2, int y2, int rows, int cols)
Draws a grid from (x1,y1) to (x2,y2) with given # of rows and columns.

Detailed Description

Class to encapsulate the 2 graphics screen on the inside of the device 

Constructor & Destructor Documentation
CGfxScreen::CGfxScreen ()
Constructor.
CGfxScreen::CGfxScreen (int ScreenID, int xsize, int ysize)
Constructor.

Parameters: 
ScreenID  Dijinni API ID of the screen 
xsize  Width of the screen 
ysize  Height of the screen 
CGfxScreen::~CGfxScreen ()
Destructor.

Member Function Documentation
void CGfxScreen::clear ()
Clears the screen.
void CGfxScreen::drawBox (int x1, int y1, int x2, int y2)
Draws a box on the screen.

Parameters: 
x1  Start point x 
y1  Start point y 
x2  End point x 
y2  End point y 
void CGfxScreen::drawGrid (int x1, int y1, int x2, int y2, int rows, int cols)
Draws a grid from (x1,y1) to (x2,y2) with given # of rows and columns.
void CGfxScreen::drawLine (int x1, int y1, int x2, int y2)
Draws a line on the screen.

Parameters: 
x1  Start point x 
y1  Start point y 
x2  End point x 
y2  End point y 
void CGfxScreen::drawText (string str, int x, int y, int style = TS_NOSTYLE)
Draws text to the display.

Parameters: 
str  Text to draw 
x  X-position to draw text to 
y  Y-position to draw text to 
style  Style of text (TS_*) 
int CGfxScreen::getXSize ()
Returns x size of screen.
int CGfxScreen::getYSize ()
Returns y size of screen.
void CGfxScreen::putPixel (int x, int y)
Puts a pixel on the screen at (x,y).

Parameters: 
x  X-position of pixel 
y  Y-position of pixel 
void CGfxScreen::setScreen (int ScreenID, int xsize, int ysize)
Set the paramets of the screen.

Parameters: 
ScreenID  Dijinni API ID of the screen 
xsize  Width of the screen 
ysize  Height of the screen 

The documentation for this class was generated from the following files:
CGfxScreen.h
CGfxScreen.cpp

CGfxWidget  Class Reference
A widget with a pre-implimented empty update method for graphics-only widgets (bitmaps, etc). 
#include <CUI.h>
Inheritance diagram for CGfxWidget:

IMAGE

Public Methods
CGfxWidget ()
~CGfxWidget ()
int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *s)=0
Draw method - The widget should draw itslelf to the passed CGfxScreen.

Detailed Description
A widget with a pre-implimented empty update method for graphics-only widgets (bitmaps, etc).

Constructor & Destructor Documentation
CGfxWidget::CGfxWidget () [inline]
CGfxWidget::~CGfxWidget () [inline]

Member Function Documentation
virtual void CGfxWidget::draw (CGfxScreen * S) [pure virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.

Reimplemented in CPersonView, CPersonEdit, CDateView, CEventView, and CNiceBars.
int CGfxWidget::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CHomeApp  Class Reference
The home application. The place to go to switch to all the other available applications. 
#include <HomeApp.h>
Inheritance diagram for CHomeApp:

IMAGE

Public Methods
CHomeApp (CDijinni *parent)
~CHomeApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

void onEnter ()

Public Attributes
CPanel * panel

Detailed Description
The home application. The place to go to switch to all the other available applications.

FILE HomeApp.h 
Id: 
 HomeApp.h,v 1.2 2001/11/29 21:54:53 cmicali Exp 
DESCRIPTION  Home application to provide a place to get to all the other applications 

Constructor & Destructor Documentation
CHomeApp::CHomeApp (CDijinni * parent)
CHomeApp::~CHomeApp ()

Member Function Documentation
void CHomeApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CHomeApp::onEnter () [virtual]

Reimplemented from CApp.
CHomeApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CPanel* CHomeApp::panel

The documentation for this class was generated from the following files:
HomeApp.h
HomeApp.cpp

CInputEvent  Class Reference
Simple intput event class. 
#include <Events.h>

Public Methods
CInputEvent ()
Empty constructor.

CInputEvent (int type)
Type-only constructor.

CInputEvent (int type, int key)
Key event constructor.

CInputEvent (int type, int x, int y)
Mouse event constructor.

~CInputEvent ()

Public Attributes
unsigned int m_type
Type of event EVT_*.

int m_x
x coord of mouse event.

int m_y
y coord of mouse event.

int m_key
key code of key event.

Detailed Description
Simple intput event class.

Constructor & Destructor Documentation
CInputEvent::CInputEvent () [inline]
Empty constructor.
CInputEvent::CInputEvent (int type) [inline]
Type-only constructor.
CInputEvent::CInputEvent (int type, int key) [inline]
Key event constructor.
CInputEvent::CInputEvent (int type, int x, int y) [inline]
Mouse event constructor.
CInputEvent::~CInputEvent () [inline]

Member Data Documentation
int CInputEvent::m_key
key code of key event.
unsigned int CInputEvent::m_type
Type of event EVT_*.
int CInputEvent::m_x
x coord of mouse event.
int CInputEvent::m_y
y coord of mouse event.

The documentation for this class was generated from the following file:
Events.h

CJukeBox  Class Reference
Stores a master mp3 list CPlayList object, and CUserPlayLists object for organizing all mp3s and user mp3 lists. 
#include <CDataStructures.h>

Public Methods
CJukeBox (void)
~CJukeBox (void)
CPlayList * getMasterMp3 (void)
CUserPlayLists * getUserPlayLists (void)
void inputData (string inputdata)
string outputData (void)

Detailed Description
Stores a master mp3 list CPlayList object, and CUserPlayLists object for organizing all mp3s and user mp3 lists.

Constructor & Destructor Documentation
CJukeBox::CJukeBox (void)
CJukeBox::~CJukeBox (void)

Member Function Documentation
CPlayList * CJukeBox::getMasterMp3 (void)
CUserPlayLists * CJukeBox::getUserPlayLists (void)
void CJukeBox::inputData (string inputdata)
string CJukeBox::outputData (void)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CKbd  Class Reference
A beautiful keyboard widget. 
#include <CUI.h>
Inheritance diagram for CKbd:

IMAGE

Public Methods
CKbd (int x, int y, Callback callback, void *app)
~CKbd ()
virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *s)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

Public Attributes
int m_key_height
int m_key_width
char m_last_symbol_pressed
char m_last_arrow_pressed
Callback m_callback
void * m_app

Detailed Description
A beautiful keyboard widget.

Keyboard widget to facilitate text and number entry from the inside of the phone 

Constructor & Destructor Documentation
CKbd::CKbd (int x, int y, Callback callback, void * app)
CKbd::~CKbd ()

Member Function Documentation
void CKbd::draw (CGfxScreen * s) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
int CKbd::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
void* CKbd::m_app
Callback CKbd::m_callback
int CKbd::m_key_height
int CKbd::m_key_width
char CKbd::m_last_arrow_pressed
char CKbd::m_last_symbol_pressed

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CLabel  Class Reference
Label widget - Like a button, but cant be pushed. Container for text. 
#include <CUI.h>
Inheritance diagram for CLabel:

IMAGE

Public Methods
CLabel (int x, int y, string caption, int styles=TS_NOSTYLE, int fixed_size=-1)
Constructor - (x,y), caption, styles (TS_*), fixed size in characters.

~CLabel ()
Destructor.

virtual int update (CInputEvent *e)
Standard update method.

virtual void draw (CGfxScreen *s)
Standard draw method.

void setCaption (string s)
Sets the caption of the label.

void setStyles (int styles)
Sets the styles of the label.

string getCaption ()
Returns the caption of the label.

int getStyles ()
Returns the styles of the label.

Public Attributes
string m_caption
Text in the label.

Detailed Description
Label widget - Like a button, but cant be pushed. Container for text.

Constructor & Destructor Documentation
CLabel::CLabel (int x, int y, string caption, int styles = TS_NOSTYLE, int fixed_size = -1)
Constructor - (x,y), caption, styles (TS_*), fixed size in characters.
CLabel::~CLabel ()
Destructor.

Member Function Documentation
void CLabel::draw (CGfxScreen * s) [virtual]
Standard draw method.

Reimplemented from CWidget.
string CLabel::getCaption ()
Returns the caption of the label.
int CLabel::getStyles ()
Returns the styles of the label.
void CLabel::setCaption (string s)
Sets the caption of the label.
void CLabel::setStyles (int styles)
Sets the styles of the label.
int CLabel::update (CInputEvent * e) [virtual]
Standard update method.

Reimplemented from CWidget.

Member Data Documentation
string CLabel::m_caption
Text in the label.

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CLibDj  Class Reference
Class to contain all the libdj helper classes. 
#include <libdj.h>

Public Methods
CLibDj ()
Empty constructor.

~CLibDj ()
Empty destructor.

int stoi (string s)
Converts a string to an int.

string itos (int i)
Converts an int to a string.

int validateText (char c, int flags)
Validates c against the VA_* flags.

int validateText (char c, string valid_chars)
Validates c against the given char-string.

int validateText (string text, int flags)
Validates the string text against the given VA_* flags.

int validateText (string text, string valid_chars)
Validates the string text against the given char string.

string cleanText (string text, int flags)
Removes all non-valid chars from the string text.

string cleanText (string text, string valid_chars)
Removes all chars not in valid_chars from text.

string breakString (string &incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

Public Attributes
CTextScreen TextScreen
CGfxScreen LCDScreen
CGfxScreen TouchScreen
CMP3Player MP3Player
CCellPhone CellPhone

Detailed Description
Class to contain all the libdj helper classes.

Class to be instantiated once that contains instances of the other libdj support classes 

Constructor & Destructor Documentation
CLibDj::CLibDj ()
Empty constructor.
FILE libdj.h 
Id: 
 libdj.cpp,v 1.5 2001/11/28 01:13:15 cmicali Exp 
DESCRIPTION  dijinni support library 
CLibDj::~CLibDj ()
Empty destructor.

Member Function Documentation
string CLibDj::breakString (string & incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

Parameters: 
incoming  String to take field from, this will get modified (field and delimiter will be removed) 
delim  Delimiter between fields 
Returns: 
The field (without delimiter) and the incoming string will be modified 
string CLibDj::cleanText (string text, string valid_chars)
Removes all chars not in valid_chars from text.
string CLibDj::cleanText (string text, int flags)
Removes all non-valid chars from the string text.
string CLibDj::itos (int i)
Converts an int to a string.
The same as itoa() but uses STL strings 
Parameters: 
i  The int to convert to a string 
Returns: 
The string representation of the int 
int CLibDj::stoi (string s)
Converts a string to an int.
The same as atoi() but uses STL strings 
Parameters: 
s  The string to convert to an int 
Returns: 
The int representation of the string 
int CLibDj::validateText (string text, string valid_chars)
Validates the string text against the given char string.
int CLibDj::validateText (string text, int flags)
Validates the string text against the given VA_* flags.
int CLibDj::validateText (char c, string valid_chars)
Validates c against the given char-string.
int CLibDj::validateText (char c, int flags)
Validates c against the VA_* flags.

Member Data Documentation
CCellPhone CLibDj::CellPhone
CGfxScreen CLibDj::LCDScreen
CMP3Player CLibDj::MP3Player
CTextScreen CLibDj::TextScreen
CGfxScreen CLibDj::TouchScreen

The documentation for this class was generated from the following files:
libdj.h
libdj.cpp

CList  Class Reference
Basic Linked List data structure using CListItem as nodes. 
#include <CDataStructures.h>
Inheritance diagram for CList:

IMAGE

Public Methods
CList (void)
~CList (void)
void gotoHead (void)
Sets the internal current item ptr to the head of the list.

void gotoTail (void)
Sets the internal current item ptr to the tail of the list.

void next (void)
Sets the internal current item ptr to the next item in the list.

void prev (void)
Sets the internal current item ptr to the previous item in the list.

CListItem * getItem (void)
Returns the internal pointer.

CListItem * getItem (int number)
Returns the item that is in position number, where the head is 1.

int getLength (void)
Returns the number of items in the list.

void appendItem (CListItem *item)
Appends the item to the tail of the list.

void prependItem (CListItem *item)
Prepends the item to the tail of the list.

void insertItem (CListItem *item, int number)
Insert item into list at position number.

void deleteItem (CListItem *item)
Delete given item from the list, where 1 is the head of the list.

bool deleteItem (int number)
Delete the item at position number, where 1 is the head the list.

Protected Attributes
int m_length
CListItem * m_head
CListItem * m_tail
CListItem * m_current

Detailed Description
Basic Linked List data structure using CListItem as nodes.

Constructor & Destructor Documentation
CList::CList (void)
CList::~CList (void)

Member Function Documentation
void CList::appendItem (CListItem * item)
Appends the item to the tail of the list.
bool CList::deleteItem (int number)
Delete the item at position number, where 1 is the head the list.

Reimplemented in CPlayList.
void CList::deleteItem (CListItem * item)
Delete given item from the list, where 1 is the head of the list.
CListItem * CList::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented in CMemoList, CAddressBook, CCalendar, CPlayList, and CUserPlayLists.
CListItem * CList::getItem (void)
Returns the internal pointer.

Reimplemented in CMemoList, CAddressBook, CCalendar, CPlayList, and CUserPlayLists.
int CList::getLength (void)
Returns the number of items in the list.
void CList::gotoHead (void)
Sets the internal current item ptr to the head of the list.
void CList::gotoTail (void)
Sets the internal current item ptr to the tail of the list.
void CList::insertItem (CListItem * item, int number)
Insert item into list at position number.
void CList::next (void)
Sets the internal current item ptr to the next item in the list.
If the current ptr is at the tail, it remains pointing to the tail 
void CList::prependItem (CListItem * item)
Prepends the item to the tail of the list.
void CList::prev (void)
Sets the internal current item ptr to the previous item in the list.
If the current ptr is at the head, it remains pointing to the head 

Member Data Documentation
CListItem* CList::m_current [protected]
CListItem* CList::m_head [protected]
int CList::m_length [protected]
CListItem* CList::m_tail [protected]

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CListBox  Class Reference
Listbox widget. 
#include <CUI.h>
Inheritance diagram for CListBox:

IMAGE

Public Methods
CListBox (int x, int y, int cols, int rows, Callback callback)
Constructor.

~CListBox ()
virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void insertItem (string caption)
string getItem (int pos)
string getCurItem ()
void clear ()
virtual int getMin ()
Returns minimum value of the scroll region.

virtual int getMax ()
Returns maximum value of the scroll region.

virtual int getPos ()
Returns current position in the scroll region.

virtual void setPos (int pos)
Sets the current item/line to be selected.

virtual void scrollUp ()
Scrolls up one.

virtual void scrollDown ()
Scrolls down one.

Public Attributes
list< string > m_list
Callback m_callback
int m_liststart
int m_curpos

Detailed Description
Listbox widget.

Listbox widget for displaying a bunch of items 

Constructor & Destructor Documentation
CListBox::CListBox (int x, int y, int cols, int rows, Callback callback)
Constructor.

Parameters: 
x  X position on panel 
y  Y position on panel 
cols  Number of columns to display 
rows  Number of rows to display 
callback  Callback function to call when an item is selected 
CListBox::~CListBox ()

Member Function Documentation
void CListBox::clear ()
void CListBox::draw (CGfxScreen * s) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
string CListBox::getCurItem ()
string CListBox::getItem (int pos)
int CListBox::getMax () [virtual]
Returns maximum value of the scroll region.

Reimplemented from CScrollable.
int CListBox::getMin () [virtual]
Returns minimum value of the scroll region.

Reimplemented from CScrollable.
int CListBox::getPos () [virtual]
Returns current position in the scroll region.

Reimplemented from CScrollable.
void CListBox::insertItem (string caption)
void CListBox::scrollDown () [virtual]
Scrolls down one.

Reimplemented from CScrollable.
void CListBox::scrollUp () [virtual]
Scrolls up one.

Reimplemented from CScrollable.
void CListBox::setPos (int pos) [virtual]
Sets the current item/line to be selected.

Reimplemented from CScrollable.
int CListBox::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
Callback CListBox::m_callback
int CListBox::m_curpos
list<string> CListBox::m_list
int CListBox::m_liststart

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CListItem  Class Reference
Linked list node for making derived classes for address, calendar entries, etc. 
#include <CDataStructures.h>
Inheritance diagram for CListItem:

IMAGE

Public Methods
CListItem (void)
~CListItem (void)
CListItem * getPrev (void)
CListItem * getNext (void)
void setPrev (CListItem *prev)
void setNext (CListItem *next)

Protected Attributes
CListItem * m_prev
CListItem * m_next

Detailed Description
Linked list node for making derived classes for address, calendar entries, etc.

Constructor & Destructor Documentation
CListItem::CListItem (void)
CListItem::~CListItem (void)

Member Function Documentation
CListItem * CListItem::getNext (void)
CListItem * CListItem::getPrev (void)
void CListItem::setNext (CListItem * next)
void CListItem::setPrev (CListItem * prev)

Member Data Documentation
CListItem* CListItem::m_next [protected]
CListItem* CListItem::m_prev [protected]

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CListTestApp  Class Reference
#include <ListTestApp.h>
Inheritance diagram for CListTestApp:

IMAGE

Public Methods
CListTestApp (CDijinni *parent)
~CListTestApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
CPanel * panel
CListBox * m_listbox
CScrollBar * m_scrollbar

Constructor & Destructor Documentation
CListTestApp::CListTestApp (CDijinni * parent)
CListTestApp::~CListTestApp ()

Member Function Documentation
void CListTestApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CListTestApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CListBox* CListTestApp::m_listbox
CScrollBar* CListTestApp::m_scrollbar
CPanel* CListTestApp::panel

The documentation for this class was generated from the following files:
ListTestApp.h
ListTestApp.cpp

CMemo  Class Reference
Stores a basic memo. 
#include <CDataStructures.h>
Inheritance diagram for CMemo:

IMAGE

Public Methods
CMemo (void)
~CMemo (void)
void setMemo (string memo)
string getMemo (void)
string getFirstNChars (int n)

Detailed Description
Stores a basic memo.

as well as provides routine to get first n chars, with appending "...", of the memo for easy diplay purposes. Also provides initialization and  saving routines to be used for saving and initializing the device,  up/downloading to PC and backup. 

Constructor & Destructor Documentation
CMemo::CMemo (void)
CMemo::~CMemo (void)

Member Function Documentation
string CMemo::getFirstNChars (int n)
string CMemo::getMemo (void)
void CMemo::setMemo (string memo)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CMemoApp  Class Reference
Simple memopad application for writing quick memos. 
#include <MemoApp.h>
Inheritance diagram for CMemoApp:

IMAGE

Public Methods
CMemoApp (CDijinni *parent)
~CMemoApp ()
void onEnter ()
void refreshTextArea ()
void refreshList ()
void switchMode (int mode)
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
int m_curmode
CPanel * panel [2]
CPanel * toppanel [2]
CTextArea * textarea
CListBox * listbox
CScrollBar * list_scrollbar
CScrollBar * text_scrollbar
CButton * btnCancel
CButton * btnOpen
CButton * btnDelete
CButton * btnNew
CButton * btnSave
CButton * btnClear
CKbd * keyboard
CLabel * memoLabel

Detailed Description
Simple memopad application for writing quick memos.

Standard memo application. Allows the user to create, edit, and delete an unlimited number of memos. All the data this application uses is handled by CMemoList . 

Constructor & Destructor Documentation
CMemoApp::CMemoApp (CDijinni * parent)
CMemoApp::~CMemoApp ()

Member Function Documentation
void CMemoApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CMemoApp::onEnter () [virtual]

Reimplemented from CApp.
void CMemoApp::refreshList ()
void CMemoApp::refreshTextArea ()
void CMemoApp::switchMode (int mode)
CMemoApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CButton* CMemoApp::btnCancel
CButton* CMemoApp::btnClear
CButton* CMemoApp::btnDelete
CButton* CMemoApp::btnNew
CButton* CMemoApp::btnOpen
CButton* CMemoApp::btnSave
CKbd* CMemoApp::keyboard
CScrollBar* CMemoApp::list_scrollbar
CListBox* CMemoApp::listbox
int CMemoApp::m_curmode
CLabel* CMemoApp::memoLabel
CPanel* CMemoApp::panel[2]
CScrollBar* CMemoApp::text_scrollbar
CTextArea* CMemoApp::textarea
CPanel* CMemoApp::toppanel[2]

The documentation for this class was generated from the following files:
MemoApp.h
MemoApp.cpp

CMemoList  Class Reference
Linked list for the CMemo types, providing loading and saving via a string for up/downloading to PC and read/writing to Dijinni file system. 
#include <CDataStructures.h>
Inheritance diagram for CMemoList:

IMAGE

Public Methods
CMemoList (void)
~CMemoList (void)
CMemo * getItem (void)
Returns the internal pointer.

CMemo * getItem (int number)
Returns the item that is in position number, where the head is 1.

void inputData (string inputdata)
string outputData (void)

Detailed Description
Linked list for the CMemo types, providing loading and saving via a string for up/downloading to PC and read/writing to Dijinni file system.

Constructor & Destructor Documentation
CMemoList::CMemoList (void)
CMemoList::~CMemoList (void)

Member Function Documentation
CMemo * CMemoList::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented from CList.
CMemo * CMemoList::getItem (void)
Returns the internal pointer.

Reimplemented from CList.
void CMemoList::inputData (string inputdata)
string CMemoList::outputData (void)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CMP3App  Class Reference
The MP3 player/recorder appliation. 
#include <MP3App.h>
Inheritance diagram for CMP3App:

IMAGE

Public Methods
CMP3App (CDijinni *parent)
~CMP3App ()
CTextArea * getPLTextArea ()
int update (CInputEvent *e)
void changeBottomPanel (int newpanel)
void changeSortBy (int sort_by)
void changeTopPanel (int newpanel)
void clearPLTextArea ()
void createNewPlaylist (bool noname=DEFAULT_NAME)
void redrawTopPanel ()
void renamePlaylist ()
void switchCurrentMP3 (int method=OPEN_BY_ITSELF)
void switchCurrentPlaylist ()
void switchFileListing (int what_to_view)
void switchPlaylistCaption ()
void draw ()
Standard draw.

Detailed Description
The MP3 player/recorder appliation.

This application is supposed to provide mp3 playback, recording, and playlist management (load/create/edit/save/delete.) 

Constructor & Destructor Documentation
CMP3App::CMP3App (CDijinni * parent)
CMP3App::~CMP3App ()

Member Function Documentation
void CMP3App::changeBottomPanel (int newpanel)
void CMP3App::changeSortBy (int sort_by = ARTIST_TITLE)
void CMP3App::changeTopPanel (int newpanel)
void CMP3App::clearPLTextArea ()
void CMP3App::createNewPlaylist (bool unnamed = DEFAULT_NAME)
void CMP3App::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CTextArea * CMP3App::getPLTextArea ()
void CMP3App::redrawTopPanel ()
void CMP3App::renamePlaylist ()
void CMP3App::switchCurrentMP3 (int method = OPEN_BY_ITSELF)
void CMP3App::switchCurrentPlaylist ()
void CMP3App::switchFileListing (int what_to_view)
void CMP3App::switchPlaylistCaption ()
CMP3App::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

The documentation for this class was generated from the following files:
MP3App.h
MP3App.cpp

CMP3Player  Class Reference
MP3 Player wrapper class. 
#include <CMP3Player.h>

Public Methods
CMP3Player ()
Constructor.

~CMP3Player ()
Destructor.

int play (string file)
Playes a specified file.

int pause ()
Pauses the playing mp3.

int resume ()
Resumes a paused mp3.

int stop ()
Stops the playing mp3.

Detailed Description
MP3 Player wrapper class.

FILE CMP3Player.h 
Id: 
 CMP3Player.h,v 1.3 2001/11/26 05:28:50 cmicali Exp 
DESCRIPTION  Wrapper for the dijinni mp3 player api 

Constructor & Destructor Documentation
CMP3Player::CMP3Player ()
Constructor.
CMP3Player::~CMP3Player ()
Destructor.

Member Function Documentation
int CMP3Player::pause ()
Pauses the playing mp3.
int CMP3Player::play (string file)
Playes a specified file.
int CMP3Player::resume ()
Resumes a paused mp3.
int CMP3Player::stop ()
Stops the playing mp3.

The documentation for this class was generated from the following files:
CMP3Player.h
CMP3Player.cpp

CMp3Track  Class Reference
Basic data class and linked list node for Mp3 storing the associated filename, title, artist, genre, year, album, and comment. 
#include <CDataStructures.h>
Inheritance diagram for CMp3Track:

IMAGE

Public Methods
CMp3Track (void)
~CMp3Track (void)
CMp3Track (CMp3Track *original)
Copy constructor for making a copy of an CMp3Track.

string getFilename (void)
string getTitle (void)
string getArtist (void)
string getGenre (void)
string getAlbum (void)
string getYear (void)
string getComment (void)
string getListing (bool titlethenartist=true)
Returns the title and artist in one string.

void setFilename (string filename)
void setTitle (string title)
void setArtist (string artist)
void setAlbum (string album)
void setYear (string year)
void setGenre (int genre)
void setComment (string comment)
void inputData (string inputdata)
string outputData (void)

Detailed Description
Basic data class and linked list node for Mp3 storing the associated filename, title, artist, genre, year, album, and comment.

Constructor & Destructor Documentation
CMp3Track::CMp3Track (void)
CMp3Track::~CMp3Track (void)
CMp3Track::CMp3Track (CMp3Track * original)
Copy constructor for making a copy of an CMp3Track.
Copies all data except leaves m_next and m_prev set to NULL 

Member Function Documentation
string CMp3Track::getAlbum (void)
string CMp3Track::getArtist (void)
string CMp3Track::getComment (void)
string CMp3Track::getFilename (void)
string CMp3Track::getGenre (void)
string CMp3Track::getListing (bool titlethenartist = true)
Returns the title and artist in one string.
If CMp3Track is an mp3 music file returns either: "Title - Artist" or  "Artist - Title"  depending on boolean value Else if it an mp3 voice file returns: m_title 
string CMp3Track::getTitle (void)
string CMp3Track::getYear (void)
void CMp3Track::inputData (string inputdata)
string CMp3Track::outputData (void)
void CMp3Track::setAlbum (string album)
void CMp3Track::setArtist (string artist)
void CMp3Track::setComment (string comment)
void CMp3Track::setFilename (string filename)
void CMp3Track::setGenre (int genre)
void CMp3Track::setTitle (string title)
void CMp3Track::setYear (string year)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CNiceBars  Class Reference
Little graphics-only widget to draw some lines. 
Inheritance diagram for CNiceBars:

IMAGE

Public Methods
CNiceBars ()
~CNiceBars ()
void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

Detailed Description
Little graphics-only widget to draw some lines.

Constructor & Destructor Documentation
CNiceBars::CNiceBars () [inline]
CNiceBars::~CNiceBars () [inline]

Member Function Documentation
void CNiceBars::draw (CGfxScreen * S) [inline, virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CGfxWidget.

The documentation for this class was generated from the following file:
apps.cpp

CPanel  Class Reference
Widget container class. 
#include <CUI.h>

Public Methods
CPanel (int x, int y, CGfxScreen *scr)
Constructor - takes position (x,y) and a pointer to the screen the panel is on.

~CPanel ()
Destructor - Deletes all the widgets.

int update (CInputEvent *e)
Standard update method.

void draw ()
Standard draw method.

void redraw ()
Only draws this panel.

void add_widget (CWidget *w, int ID)
adds a widget to the panel and assigns a user-ID to the widget.

CWidget * get_widget (int ID)
returns the pointer to the widget with m_ID ID.

Detailed Description
Widget container class.

A CPanel is a container for widgets that can contain many widgets and provide simple access to draw, update, and position many widgets at once 

Constructor & Destructor Documentation
CPanel::CPanel (int x, int y, CGfxScreen * scr)
Constructor - takes position (x,y) and a pointer to the screen the panel is on.
CPanel::~CPanel ()
Destructor - Deletes all the widgets.

Member Function Documentation
void CPanel::add_widget (CWidget * w, int ID)
adds a widget to the panel and assigns a user-ID to the widget.
void CPanel::draw ()
Standard draw method.
CWidget * CPanel::get_widget (int ID)
returns the pointer to the widget with m_ID ID.
void CPanel::redraw ()
Only draws this panel.
int CPanel::update (CInputEvent * e)
Standard update method.

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CPerson  Class Reference
Basic data structure for a person entry for the address book. 
#include <CDataStructures.h>
Inheritance diagram for CPerson:

IMAGE

Public Methods
CPerson ()
CPerson (CPerson *p)
~CPerson ()
string getName (bool lastthenfirst=true)
Returns full name in either order.

string getLastName (void)
string getFirstName (void)
string getMiddleInitial (void)
string getHomePhoneNumber (void)
string getCellPhoneNumber (void)
string getWorkPhoneNumber (void)
string getDefaultPhoneNumber (void)
Returns the default phone number to call.

string getStreet (void)
string getCity (void)
string getState (void)
string getZip (void)
string getCountry (void)
string getEmail (void)
string getComment (void)
string getCategory (void)
Used for supporting categories for people,.

void setLastName (string lastname)
void setFirstName (string firstname)
bool setMiddleInitial (string initial)
Set middle initial, must be one character length string.

void setHomePhoneNumber (string homephone)
void setCellPhoneNumber (string cellphone)
void setWorkPhoneNumber (string workphone)
bool setDefaultPhoneNumber (string defaultphone)
Sets the default phone number to return.

void setStreet (string street)
void setCity (string city)
void setState (string state)
void setZip (string zip)
void setCountry (string country)
void setEmail (string email)
void setComment (string comment)
bool setCategory (string category)
Sets the category of this CPerson.

void inputData (string inputdata)
string outputData (void)

Detailed Description
Basic data structure for a person entry for the address book.

and subclassed from CListItem to be a linked list node for the address book. Stores first name, last name, middle initial, home, cell and work phone  numbers, email, comment, full address. Provides nice routine for outputing name in either first then last name or vice-versa. Also provides initialization and saving routines to be used for saving and initializing  the device, up/downloading to PC and backup. 

Constructor & Destructor Documentation
CPerson::CPerson ()
CPerson::CPerson (CPerson * p)
CPerson::~CPerson ()

Member Function Documentation
string CPerson::getCategory (void)
Used for supporting categories for people,.
string CPerson::getCellPhoneNumber (void)
string CPerson::getCity (void)
string CPerson::getComment (void)
string CPerson::getCountry (void)
string CPerson::getDefaultPhoneNumber (void)
Returns the default phone number to call.
string CPerson::getEmail (void)
string CPerson::getFirstName (void)
string CPerson::getHomePhoneNumber (void)
string CPerson::getLastName (void)
string CPerson::getMiddleInitial (void)
string CPerson::getName (bool lastthenfirst = true)
Returns full name in either order.
Returns either "Firstname I. Lastname" or  "Lastname, Firstname I." for a CPerson depending on boolean value. 
string CPerson::getState (void)
string CPerson::getStreet (void)
string CPerson::getWorkPhoneNumber (void)
string CPerson::getZip (void)
void CPerson::inputData (string inputdata)
string CPerson::outputData (void)
bool CPerson::setCategory (string category)
Sets the category of this CPerson.
'U' unfiled  'P' personal 'F' family 'B' business 
void CPerson::setCellPhoneNumber (string cellphone)
void CPerson::setCity (string city)
void CPerson::setComment (string comment)
void CPerson::setCountry (string country)
bool CPerson::setDefaultPhoneNumber (string defaultphone)
Sets the default phone number to return.
getDefaultPhoneNumber(). 'H' for home 'C' for cell 'W' for work If none is set will, return first nonempty phonenumber, searching first home, than cell, than work.  If no numbers are set, will return empty string 
void CPerson::setEmail (string email)
void CPerson::setFirstName (string firstname)
void CPerson::setHomePhoneNumber (string homephone)
void CPerson::setLastName (string lastname)
bool CPerson::setMiddleInitial (string initial)
Set middle initial, must be one character length string.
void CPerson::setState (string state)
void CPerson::setStreet (string street)
void CPerson::setWorkPhoneNumber (string workphone)
void CPerson::setZip (string zip)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CPersonEdit  Class Reference
A robust editor for editing a contact. 
#include <AddrbookApp.h>
Inheritance diagram for CPersonEdit:

IMAGE

Public Methods
CPersonEdit (int x, int y, int width, int height)
~CPersonEdit ()
void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void updateField (int x, int y, int maxlen, string filter)
void setFieldDisplay (string text)
void updateEdit (int row, int field)
string getField (int i, CPerson *p)
void setField (int i, string s, CPerson *p)
int keyHandler (char key)
virtual int getMin ()
Returns minimum value of the scroll region.

virtual int getMax ()
Returns maximum value of the scroll region.

virtual int getPos ()
Returns current position in the scroll region.

virtual void setPos (int pos)
Sets the current item/line to be selected.

virtual void scrollUp ()
Scrolls up one.

virtual void scrollDown ()
Scrolls down one.

Public Attributes
CTextArea * textarea
CPerson * m_person
string m_filter
int m_curfield
int m_liststart

Detailed Description
A robust editor for editing a contact.

This is a widget that displays and allows editing of a CPerson record. It has a variable number of fields and impliments CScrollable so you can scroll through the fields with a scrollbar. It is a CGfxWidget because it is meant to be put on the top screen which does not allow input. All input to this widget should be done with a keyboard and a scrollbar. 

Constructor & Destructor Documentation
CPersonEdit::CPersonEdit (int x, int y, int width, int height)
CPersonEdit::~CPersonEdit ()

Member Function Documentation
void CPersonEdit::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CGfxWidget.
string CPersonEdit::getField (int i, CPerson * p)
int CPersonEdit::getMax () [virtual]
Returns maximum value of the scroll region.

Reimplemented from CScrollable.
int CPersonEdit::getMin () [virtual]
Returns minimum value of the scroll region.

Reimplemented from CScrollable.
int CPersonEdit::getPos () [virtual]
Returns current position in the scroll region.

Reimplemented from CScrollable.
int CPersonEdit::keyHandler (char key)
void CPersonEdit::scrollDown () [virtual]
Scrolls down one.

Reimplemented from CScrollable.
void CPersonEdit::scrollUp () [virtual]
Scrolls up one.

Reimplemented from CScrollable.
void CPersonEdit::setField (int i, string s, CPerson * p)
void CPersonEdit::setFieldDisplay (string text)
void CPersonEdit::setPos (int pos) [virtual]
Sets the current item/line to be selected.

Reimplemented from CScrollable.
void CPersonEdit::updateEdit (int row, int field)
void CPersonEdit::updateField (int x, int y, int maxlen, string filter)

Member Data Documentation
int CPersonEdit::m_curfield
string CPersonEdit::m_filter
int CPersonEdit::m_liststart
CPerson* CPersonEdit::m_person
CTextArea* CPersonEdit::textarea

The documentation for this class was generated from the following files:
AddrbookApp.h
AddrbookApp.cpp

CPersonView  Class Reference
A widget to display the information about a person. 
#include <AddrbookApp.h>
Inheritance diagram for CPersonView:

IMAGE

Public Methods
CPersonView (int x, int y, int width, int height)
Constructor.

~CPersonView ()
void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void setPerson (CPerson *p)
Sets the person to display. Can be any CPerson (usually gotten from a CAddressBook).

CPerson * getPerson ()

Detailed Description
A widget to display the information about a person.

The CPersonView displays a person in the addressbook in a pretty format. Looks a little  like an ID card on a folder graphic. Only displays the fields that have data in them. 

Constructor & Destructor Documentation
CPersonView::CPersonView (int x, int y, int width, int height)
Constructor.
CPersonView::~CPersonView ()

Member Function Documentation
void CPersonView::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CGfxWidget.
CPerson* CPersonView::getPerson () [inline]
void CPersonView::setPerson (CPerson * p)
Sets the person to display. Can be any CPerson (usually gotten from a CAddressBook).

The documentation for this class was generated from the following files:
AddrbookApp.h
AddrbookApp.cpp

CPlayList  Class Reference
Linked List of Mp3 files for use as the MASTER Mp3 list as well for creatign user playlists. 
#include <CDataStructures.h>
Inheritance diagram for CPlayList:

IMAGE

Public Methods
CPlayList (void)
~CPlayList (void)
int getType (void)
CMp3Track * getItem (void)
Returns the internal pointer.

CMp3Track * getItem (int number)
Returns the item that is in position number, where the head is 1.

void moveItem (CMp3Track *mp3, int number)
Moves an item in a a user list to the new position, head is pos. 1.

bool setPlayListName (string name)
Set and get the play list name.

string getPlayListName (void)
bool isSortedByTitle (void)
These 3 functions relevant only for MASTER_MP3.

void setSortedByTitle (void)
void setSortedByArtist (void)
void insertItem (CMp3Track *mp3)
Insert CMp3Track into a MASTER_MP3 list.

void deleteItem (CMp3Track *mp3)
bool deleteItem (int number)
Delete the item at position number, where 1 is the head the list.

void deleteMp3TrackFromList (string filename)
Deletes all instances of Mp3Track matching given filename.

void setAsMaster (CList *userlists)
Sets list as a MASTER_MP3 list.

void inputData (string inputdata)
string outputData (void)

Detailed Description
Linked List of Mp3 files for use as the MASTER Mp3 list as well for creatign user playlists.

Provides automatic reordering by title then artist or vice versa on  function call as well as saving and loading via a string of all data. If specified as a master list with given pointer to a CUserPlayLists object upon deletion of an mp3 file, all references in any user play lists will be deleted as well. Provides standard saving/loading via one string 

Constructor & Destructor Documentation
CPlayList::CPlayList (void)
CPlayList::~CPlayList (void)

Member Function Documentation
bool CPlayList::deleteItem (int number)
Delete the item at position number, where 1 is the head the list.

Reimplemented from CList.
void CPlayList::deleteItem (CMp3Track * mp3)
void CPlayList::deleteMp3TrackFromList (string filename)
Deletes all instances of Mp3Track matching given filename.
Meant to be only used internal. Use at your own risk. 
CMp3Track * CPlayList::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented from CList.
CMp3Track * CPlayList::getItem (void)
Returns the internal pointer.

Reimplemented from CList.
string CPlayList::getPlayListName (void)
int CPlayList::getType (void)
void CPlayList::inputData (string inputdata)
void CPlayList::insertItem (CMp3Track * mp3)
Insert CMp3Track into a MASTER_MP3 list.
Inserts a CMp3Track in order only for the MASTER_MP3 list If done on a non MASTER_MP3 list, insert does not occur  This function should always be used to insert files into the MASTER_MP3 list to keep them in lexicographical order.  Though you perhaps won't need to use except for testing.
For USER lists, should use prepend(mp3), append(mp3), and insertItem(mp3, number) 
bool CPlayList::isSortedByTitle (void)
These 3 functions relevant only for MASTER_MP3.
void CPlayList::moveItem (CMp3Track * mp3, int number)
Moves an item in a a user list to the new position, head is pos. 1.
Will not work on a MASTER_MP3 list Make sure that mp3 points to an item in the playlist already else corruption will result. :) 
string CPlayList::outputData (void)
void CPlayList::setAsMaster (CList * userlists)
Sets list as a MASTER_MP3 list.
To be called only by CJukeBox for creating master lists Works only on empty lists. You shouldn't be using this function 
bool CPlayList::setPlayListName (string name)
Set and get the play list name.
Set the playlist name Default is blank A MASTER_MP3 list is "All MP3s" and unchangeable No user list can be named "All MP3s" setPlayListName() returns true on successful setting of a user list Returns false otherwise 
void CPlayList::setSortedByArtist (void)
void CPlayList::setSortedByTitle (void)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CRecorderApp  Class Reference
#include <RecorderApp.h>
Inheritance diagram for CRecorderApp:

IMAGE

Public Methods
CRecorderApp (CDijinni *parent)
~CRecorderApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
CPanel * panel
CListBox * m_listbox
CScrollBar * m_scrollbar

Constructor & Destructor Documentation
CRecorderApp::CRecorderApp (CDijinni * parent)
CRecorderApp::~CRecorderApp ()

Member Function Documentation
void CRecorderApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CRecorderApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CListBox* CRecorderApp::m_listbox
CScrollBar* CRecorderApp::m_scrollbar
CPanel* CRecorderApp::panel

The documentation for this class was generated from the following files:
RecorderApp.h
RecorderApp.cpp

CScrollable  Class Reference
Abstract class to inherit to make an object scrollable. 
#include <CUI.h>
Inheritance diagram for CScrollable:

IMAGE

Public Methods
CScrollable ()
Empty constructor.

~CScrollable ()
Empty destructor.

virtual int getMin ()=0
Returns minimum value of the scroll region.

virtual int getMax ()=0
Returns maximum value of the scroll region.

virtual int getPos ()=0
Returns current position in the scroll region.

virtual void setPos (int pos)=0
Sets the current item/line to be selected.

virtual void scrollUp ()=0
Scrolls up one.

virtual void scrollDown ()=0
Scrolls down one.

Detailed Description
Abstract class to inherit to make an object scrollable.

All widgets/object that want to be scrollable by a scrollbar need to inherit from this class and fill the function in 

Constructor & Destructor Documentation
CScrollable::CScrollable () [inline]
Empty constructor.
CScrollable::~CScrollable () [inline]
Empty destructor.

Member Function Documentation
virtual int CScrollable::getMax () [pure virtual]
Returns maximum value of the scroll region.

Reimplemented in CPersonEdit, CListBox, and CTextArea.
virtual int CScrollable::getMin () [pure virtual]
Returns minimum value of the scroll region.

Reimplemented in CPersonEdit, CListBox, and CTextArea.
virtual int CScrollable::getPos () [pure virtual]
Returns current position in the scroll region.

Reimplemented in CPersonEdit, CListBox, and CTextArea.
virtual void CScrollable::scrollDown () [pure virtual]
Scrolls down one.

Reimplemented in CPersonEdit, CListBox, and CTextArea.
virtual void CScrollable::scrollUp () [pure virtual]
Scrolls up one.

Reimplemented in CPersonEdit, CListBox, and CTextArea.
virtual void CScrollable::setPos (int pos) [pure virtual]
Sets the current item/line to be selected.

Reimplemented in CPersonEdit, CListBox, and CTextArea.

The documentation for this class was generated from the following file:
CUI.h

CScrollBar  Class Reference
Scrollbar widget for scrolling any. 
#include <CUI.h>
Inheritance diagram for CScrollBar:

IMAGE

Public Methods
CScrollBar (int x, int y, int height, CScrollable *target)
Constructor - Takes x pos, y pos, height, and the target object to scroll.

~CScrollBar ()
Destructor.

virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

virtual void setY (int y)
Sets the y position of the widget.

void updateTarget ()

Public Attributes
CScrollable * m_target

Detailed Description
Scrollbar widget for scrolling any.

A regular vertical scrollbar for scrolling any widget or object that impliments  the CScrollable interface. Supports dragging, clicking, and paging. 

Constructor & Destructor Documentation
CScrollBar::CScrollBar (int x, int y, int height, CScrollable * target)
Constructor - Takes x pos, y pos, height, and the target object to scroll.
CScrollBar::~CScrollBar ()
Destructor.

Member Function Documentation
void CScrollBar::draw (CGfxScreen * s) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
void CScrollBar::setY (int y) [virtual]
Sets the y position of the widget.

Reimplemented from CWidget.
int CScrollBar::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.
void CScrollBar::updateTarget ()

Member Data Documentation
CScrollable* CScrollBar::m_target

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CSketch  Class Reference
A class to contain one sketch. 
#include <SketchApp.h>

Public Methods
CSketch ()
~CSketch ()
void addLine (int x1, int y1, int x2, int y2)
void clear ()

Public Attributes
list< CSLine > m_list

Detailed Description
A class to contain one sketch.

Constructor & Destructor Documentation
CSketch::CSketch () [inline]
CSketch::~CSketch () [inline]

Member Function Documentation
void CSketch::addLine (int x1, int y1, int x2, int y2) [inline]
void CSketch::clear () [inline]

Member Data Documentation
list<CSLine> CSketch::m_list

The documentation for this class was generated from the following file:
SketchApp.h

CSketchApp  Class Reference
Sketch application for drawing sketches. 
#include <SketchApp.h>
Inheritance diagram for CSketchApp:

IMAGE

Public Methods
CSketchApp (CDijinni *parent)
~CSketchApp ()
void onEnter ()
void setMode (int mode)
int update (CInputEvent *e)
void draw ()
Standard draw.

void updateScreen ()

Public Attributes
int m_curmode
CSketch sketches [NUM_SKETCHES]
int m_numsketches
CPanel * panel [2]
CPanel * toppanel [2]
CSketchView * sketchview
CSketchView * seditor
CListBox * listbox
CScrollBar * listscroll
CButton * btnEdit
CButton * btnBack
CButton * btnClear
CButton * btnMode
CButton * btnBold

Detailed Description
Sketch application for drawing sketches.

A quick application for drawing sketches. Supports three drawing modes: dot, line, and brush. This was added late in the development cycle so the data was not able to be stored in our common structures and thus loading and saving is not active yet. All the data this appliation uses is stored in an array of CSketch classes internally in the application. 

Constructor & Destructor Documentation
CSketchApp::CSketchApp (CDijinni * parent)
CSketchApp::~CSketchApp ()

Member Function Documentation
void CSketchApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
void CSketchApp::onEnter () [virtual]

Reimplemented from CApp.
void CSketchApp::setMode (int mode)
CSketchApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.
void CSketchApp::updateScreen ()

Member Data Documentation
CButton* CSketchApp::btnBack
CButton* CSketchApp::btnBold
CButton* CSketchApp::btnClear
CButton* CSketchApp::btnEdit
CButton* CSketchApp::btnMode
CListBox* CSketchApp::listbox
CScrollBar* CSketchApp::listscroll
int CSketchApp::m_curmode
int CSketchApp::m_numsketches
CPanel* CSketchApp::panel[2]
CSketchView* CSketchApp::seditor
CSketch CSketchApp::sketches[NUM_SKETCHES]
CSketchView* CSketchApp::sketchview
CPanel* CSketchApp::toppanel[2]

The documentation for this class was generated from the following files:
SketchApp.h
SketchApp.cpp

CSketchView  Class Reference
A class to display and edit a sketch. 
#include <SketchApp.h>
Inheritance diagram for CSketchView:

IMAGE

Public Methods
CSketchView (int x, int y, int width, int height)
~CSketchView ()
virtual void draw (CGfxScreen *S)
int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

Public Attributes
CSketch * m_sketch
bool m_drawing
bool m_bold
int m_mode
int sx
int sy
int cx
int cy
int m_width

Detailed Description
A class to display and edit a sketch.

Can display or allow stylus-editing of any sketch 

Constructor & Destructor Documentation
CSketchView::CSketchView (int x, int y, int width, int height) [inline]
CSketchView::~CSketchView ()

Member Function Documentation
void CSketchView::draw (CGfxScreen * S) [virtual]
FILE SketchApp.cpp 
Id: 
 SketchApp.cpp,v 1.2 2001/11/29 10:12:22 cmicali Exp 
DESCRIPTION  Sketch application 

Reimplemented from CWidget.
int CSketchView::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
int CSketchView::cx
int CSketchView::cy
bool CSketchView::m_bold
bool CSketchView::m_drawing
int CSketchView::m_mode
CSketch* CSketchView::m_sketch
int CSketchView::m_width
int CSketchView::sx
int CSketchView::sy

The documentation for this class was generated from the following files:
SketchApp.h
SketchApp.cpp

CSLine  Class Reference
A class to contain one line (to be used in a CSketch). 
#include <SketchApp.h>

Public Methods
CSLine ()
CSLine (int x1, int y1, int x2, int y2)
CSLine (const CSLine &a)
~CSLine ()

Public Attributes
int m_x1
int m_x2
int m_y1
int m_y2

Detailed Description
A class to contain one line (to be used in a CSketch).

Constructor & Destructor Documentation
CSLine::CSLine () [inline]
CSLine::CSLine (int x1, int y1, int x2, int y2) [inline]
CSLine::CSLine (const CSLine & a) [inline]
CSLine::~CSLine () [inline]

Member Data Documentation
int CSLine::m_x1
int CSLine::m_x2
int CSLine::m_y1
int CSLine::m_y2

The documentation for this class was generated from the following file:
SketchApp.h

CSystem  Class Reference
Object for setting/registering and storing password, cell client, and Found message and instructions. 
#include <CDataStructures.h>

Public Methods
CSystem ()
~CSystem ()
bool setPasswd (string newpasswd)
bool verifyPasswd (string passwd)
void setPasswdOn (void)
void setPasswdOff (void)
bool isPasswdOn (void)
void setFoundMessage (string foundmessage)
Set found message.

string getFoundMessage (void)
Get found message.

void setFoundMsgOn (void)
Enable found feature.

void setFoundMsgOff (void)
Disable found feature.

bool isFoundMsgOn (void)
Check whether found feature is activated.

bool setCellClient (string provider, string callnum, string acct, string pin, string alt)
Register Cell Client.

bool isRegistered (void)
Check whether registered.

string getProvider (void)
Get client info as stored on device.

string getCallNum (void)
string getPin (void)
string getTypeOfDevice (void)
void inputData (string inputdata)
Saving-loading routines.

string outputData (void)

Detailed Description
Object for setting/registering and storing password, cell client, and Found message and instructions.

Besides setting and resetting all these fields, provides state checking  whether these features are enabled or not by user. As usual, provides  saving/loading via one string. 

Constructor & Destructor Documentation
CSystem::CSystem (void)
CSystem::~CSystem (void)

Member Function Documentation
string CSystem::getCallNum (void)
string CSystem::getFoundMessage (void)
Get found message.
string CSystem::getPin (void)
string CSystem::getProvider (void)
Get client info as stored on device.
string CSystem::getTypeOfDevice (void)
void CSystem::inputData (string inputdata)
Saving-loading routines.
bool CSystem::isFoundMsgOn (void)
Check whether found feature is activated.
bool CSystem::isPasswdOn (void)
bool CSystem::isRegistered (void)
Check whether registered.
string CSystem::outputData (void)
bool CSystem::setCellClient (string provider, string callnum, string acct, string pin, string alt)
Register Cell Client.
void CSystem::setFoundMessage (string foundmessage)
Set found message.
void CSystem::setFoundMsgOff (void)
Disable found feature.
void CSystem::setFoundMsgOn (void)
Enable found feature.
bool CSystem::setPasswd (string newpasswd)
void CSystem::setPasswdOff (void)
void CSystem::setPasswdOn (void)
bool CSystem::verifyPasswd (string passwd)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CSystemApp  Class Reference
System application for IR transfers, registering cellular client, etc. 
#include <SystemApp.h>
Inheritance diagram for CSystemApp:

IMAGE

Public Methods
CSystemApp (CDijinni *parent)
~CSystemApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
CPanel * panelIR
CPanel * panelIRT

Detailed Description
System application for IR transfers, registering cellular client, etc.

Constructor & Destructor Documentation
CSystemApp::CSystemApp (CDijinni * parent)
CSystemApp::~CSystemApp ()

Member Function Documentation
void CSystemApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CSystemApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CPanel* CSystemApp::panelIR
CPanel* CSystemApp::panelIRT

The documentation for this class was generated from the following files:
SystemApp.h
SystemApp.cpp

CTabView  Class Reference
Tab class.. like the Microsoft Windows tab widgets. 
#include <CUI.h>
Inheritance diagram for CTabView:

IMAGE

Public Methods
CTabView (int x, int y, CGfxScreen *scr)
~CTabView ()
virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *S)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

CPanel * insertTab (string caption)
CPanel * getTab (int which)

Public Attributes
int m_numtabs
int m_activetab
CPanel * tabButtons
CPanel * tabPanels [MAX_TABS]

Detailed Description
Tab class.. like the Microsoft Windows tab widgets.

Constructor & Destructor Documentation
CTabView::CTabView (int x, int y, CGfxScreen * scr)
CTabView::~CTabView ()

Member Function Documentation
void CTabView::draw (CGfxScreen * S) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
CPanel * CTabView::getTab (int which)
CPanel * CTabView::insertTab (string caption)
int CTabView::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
int CTabView::m_activetab
int CTabView::m_numtabs
CPanel* CTabView::tabButtons
CPanel* CTabView::tabPanels[MAX_TABS]

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CTestApp  Class Reference
#include <TestApp.h>
Inheritance diagram for CTestApp:

IMAGE

Public Methods
CTestApp (CDijinni *parent)
~CTestApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

Public Attributes
CLabel * lblTest
CKbd * kbdTest
CButton * btnTest
CScrollBar * sclTest
CPanel * panel
CPanel * toppanel
CTextArea * txtArea

Constructor & Destructor Documentation
CTestApp::CTestApp (CDijinni * parent)
CTestApp::~CTestApp ()

Member Function Documentation
void CTestApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
CTestApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CButton* CTestApp::btnTest
CKbd* CTestApp::kbdTest
CLabel* CTestApp::lblTest
CPanel* CTestApp::panel
CScrollBar* CTestApp::sclTest
CPanel* CTestApp::toppanel
CTextArea* CTestApp::txtArea

The documentation for this class was generated from the following files:
TestApp.h
TestApp.cpp

CTextArea  Class Reference
Textarea for editing/displaying text. 
#include <CUI.h>
Inheritance diagram for CTextArea:

IMAGE

Public Methods
CTextArea (int x, int y, int cols, int rows, string text="", int flags=TA_NONE, int maxlength=-1)
~CTextArea ()
virtual int update (CInputEvent *e)
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *s)
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void setText (string text)
Sets the text of the text area.

string getText ()
Returns the text in the textarea.

void addChar (char c)
Adds a character to the text in the textarea.

void addStr (string str)
Adds a string to the text in the textarea.

void remChar (int num=1)
Removes num characters in the textarea (defaults to one).

virtual int getMin ()
Returns minimum value of the scroll region.

virtual int getMax ()
Returns maximum value of the scroll region.

virtual int getPos ()
Returns current position in the scroll region.

virtual void setPos (int pos)
Sets the current item/line to be selected.

virtual void scrollUp ()
Scrolls up one.

virtual void scrollDown ()
Scrolls down one.

Public Attributes
int m_liststart
string m_text
list< string > m_displist
int m_maxlength

Detailed Description
Textarea for editing/displaying text.

Like the label class but much more advanced. Handles multiple lines of text, a cursor for editing, and impliments CScrollable so it can be scrolled by a scrollbar. 

Constructor & Destructor Documentation
CTextArea::CTextArea (int x, int y, int cols, int rows, string text = "", int flags = TA_NONE, int maxlength = -1)
CTextArea::~CTextArea ()

Member Function Documentation
void CTextArea::addChar (char c)
Adds a character to the text in the textarea.
void CTextArea::addStr (string str)
Adds a string to the text in the textarea.
void CTextArea::draw (CGfxScreen * s) [virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented from CWidget.
int CTextArea::getMax () [virtual]
Returns maximum value of the scroll region.

Reimplemented from CScrollable.
int CTextArea::getMin () [virtual]
Returns minimum value of the scroll region.

Reimplemented from CScrollable.
int CTextArea::getPos () [virtual]
Returns current position in the scroll region.

Reimplemented from CScrollable.
string CTextArea::getText ()
Returns the text in the textarea.
void CTextArea::remChar (int num = 1)
Removes num characters in the textarea (defaults to one).
void CTextArea::scrollDown () [virtual]
Scrolls down one.

Reimplemented from CScrollable.
void CTextArea::scrollUp () [virtual]
Scrolls up one.

Reimplemented from CScrollable.
void CTextArea::setPos (int pos) [virtual]
Sets the current item/line to be selected.

Reimplemented from CScrollable.
void CTextArea::setText (string text)
Sets the text of the text area.
int CTextArea::update (CInputEvent * e) [virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented from CWidget.

Member Data Documentation
list<string> CTextArea::m_displist
int CTextArea::m_liststart
int CTextArea::m_maxlength
string CTextArea::m_text

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

CTextScreen  Class Reference
Wrapper class for the text screen on the front of the phone. 
#include <CTextScreen.h>

Public Methods
CTextScreen ()
Constructor.

~CTextScreen ()
Destructor.

void clear (void)
Clears the text screen.

void printf (string str, int line=0)
Prints a string to the text screen.

Detailed Description
Wrapper class for the text screen on the front of the phone.

Constructor & Destructor Documentation
CTextScreen::CTextScreen ()
Constructor.
CTextScreen::~CTextScreen ()
Destructor.

Member Function Documentation
void CTextScreen::clear (void)
Clears the text screen.
void CTextScreen::printf (string str, int line = 0)
Prints a string to the text screen.

The documentation for this class was generated from the following files:
CTextScreen.h
CTextScreen.cpp

CUserPlayLists  Class Reference
Linked list of playlists, sorted by playlist name. Provides usual loading and saving of all data via a string. 
#include <CDataStructures.h>
Inheritance diagram for CUserPlayLists:

IMAGE

Public Methods
CUserPlayLists (void)
~CUserPlayLists (void)
CPlayList * getItem (void)
Returns the internal pointer.

CPlayList * getItem (int number)
Returns the item that is in position number, where the head is 1.

void insertItem (CPlayList *list)
Inserts user play list in order of play list name.

void inputData (string inputdata)
string outputData (void)

Protected Methods
void deleteMp3TrackFromAllLists (string filename)

Friends
void CPlayList::deleteItem (CMp3Track *mp3)

Detailed Description
Linked list of playlists, sorted by playlist name. Provides usual loading and saving of all data via a string.

Constructor & Destructor Documentation
CUserPlayLists::CUserPlayLists (void)
CUserPlayLists::~CUserPlayLists (void)

Member Function Documentation
void CUserPlayLists::deleteMp3TrackFromAllLists (string filename) [protected]
CPlayList * CUserPlayLists::getItem (int number)
Returns the item that is in position number, where the head is 1.
Returns NULL if the number is out of range for the list. 

Reimplemented from CList.
CPlayList * CUserPlayLists::getItem (void)
Returns the internal pointer.

Reimplemented from CList.
void CUserPlayLists::inputData (string inputdata)
void CUserPlayLists::insertItem (CPlayList * list)
Inserts user play list in order of play list name.
Use only this to insert lists into user play list  The lists will be sorted by their play list name 
string CUserPlayLists::outputData (void)

Friends And Related Function Documentation
void CPlayList::deleteItem (CMp3Track * mp3) [friend]

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CVIP  Class Reference
Array of 10 VIP instances to comply with func. spec, with saving/loading via one string. 
#include <CDataStructures.h>

Public Methods
CVIP (void)
~CVIP (void)
void clearEntry (int number)
bool setEntry (CPerson *p, int number)
void inputData (string inputdata)
string outputData (void)
void initialize (CAddressBook *addressbook)

Detailed Description
Array of 10 VIP instances to comply with func. spec, with saving/loading via one string.

Constructor & Destructor Documentation
CVIP::CVIP (void)
CVIP::~CVIP (void)

Member Function Documentation
void CVIP::clearEntry (int number)
void CVIP::initialize (CAddressBook * addressbook)
void CVIP::inputData (string inputdata)
string CVIP::outputData (void)
bool CVIP::setEntry (CPerson * p, int number)

The documentation for this class was generated from the following files:
CDataStructures.h
CDataStructures.cpp

CWidget  Class Reference
Abstract class all widgets need to inherit from. 
#include <CUI.h>
Inheritance diagram for CWidget:

IMAGE

Public Methods
CWidget ()
Widget constructor.

~CWidget ()
Widget destructor.

virtual int getX ()
Returns the x position of the widget.

virtual int getY ()
Returns the y position of the widget.

virtual void setX (int x)
Sets the x position of the widget.

virtual void setY (int y)
Sets the y position of the widget.

virtual int update (CInputEvent *e)=0
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.

virtual void draw (CGfxScreen *s)=0
Draw method - The widget should draw itslelf to the passed CGfxScreen.

void enable ()
Enable widget.

void disable ()
Disable widget (dont draw, dont update).

void setEnabled (bool enabled)
Enable/disable widget.

bool isEnabled ()
Return true if widget is enabled.

Public Attributes
int m_ID
Widget ID (set by CPanel->add_widget).

CWidget * m_next
pointer to next widget - handled by panel so widgets should _never_ touch this.

Protected Attributes
int m_xsize
x size of widget. for internal widget use.

int m_ysize
y size of widget. for internal widget use.

int m_x
x coord of upper-left corner of widget.

int m_y
y coord of upper-left corner of widget.

bool m_enabled
enabled flag .. false, widget will effectivly not be on the panel.

Detailed Description
Abstract class all widgets need to inherit from.

Base class for widgets. All widgets need to inherit from this and  impliment the draw and update methods 

Constructor & Destructor Documentation
CWidget::CWidget ()
Widget constructor.
CWidget::~CWidget ()
Widget destructor.

Member Function Documentation
void CWidget::disable ()
Disable widget (dont draw, dont update).
virtual void CWidget::draw (CGfxScreen * s) [pure virtual]
Draw method - The widget should draw itslelf to the passed CGfxScreen.
This will be called when the screen is being redrawn. The widget should draw  itself using its m_x and m_y members as a starting co-ordinate. The drawing should be all on the passed CGfxScreen or the front lcd screen with libdj.TextScreen 

Reimplemented in CPersonView, CPersonEdit, CDateView, CEventView, CSketchView, CGfxWidget, CButton, CLabel, CKbd, CTabView, CListBox, CTextArea, CScrollBar, CCalendarWidget, and CNiceBars.
void CWidget::enable ()
Enable widget.
int CWidget::getX () [virtual]
Returns the x position of the widget.
int CWidget::getY () [virtual]
Returns the y position of the widget.
bool CWidget::isEnabled ()
Return true if widget is enabled.
void CWidget::setEnabled (bool enabled)
Enable/disable widget.
void CWidget::setX (int x) [virtual]
Sets the x position of the widget.
void CWidget::setY (int y) [virtual]
Sets the y position of the widget.

Reimplemented in CScrollBar.
virtual int CWidget::update (CInputEvent * e) [pure virtual]
Update method - Recieves a CInputEvent, returns 1 if redraw is needed, 0 if not.
All keyboard and mouse (stylus) events are sent to this function. If the widget wants to trap the events, it can, and must return 1 if the screen needs to be redrawn and 0 if it does not (ie nothing happened or the action did not change the screen) 

Reimplemented in CSketchView, CGfxWidget, CButton, CLabel, CKbd, CTabView, CListBox, CTextArea, CScrollBar, and CCalendarWidget.

Member Data Documentation
bool CWidget::m_enabled [protected]
enabled flag .. false, widget will effectivly not be on the panel.
int CWidget::m_ID
Widget ID (set by CPanel->add_widget).
CWidget* CWidget::m_next
pointer to next widget - handled by panel so widgets should _never_ touch this.
int CWidget::m_x [protected]
x coord of upper-left corner of widget.
int CWidget::m_xsize [protected]
x size of widget. for internal widget use.
int CWidget::m_y [protected]
y coord of upper-left corner of widget.
int CWidget::m_ysize [protected]
y size of widget. for internal widget use.

The documentation for this class was generated from the following files:
CUI.h
CUI.cpp

djFile  Class Reference
#include <djFile.h>

Public Methods
djFile (int FATIdx)
djFile (string filename, string type, int newfile=0, string comment="")
~djFile ()
int open (void)
int close (void)
char getChar (void)
int putChar (char data)
int countElems (void)
int write (string buffer, int size_t, int num_elems)
string read (int size_t, int num_elems)
int isError (void)
int isOpen (void)

Public Attributes
string m_filename
string m_type
string m_comment
int m_FATIdx

Constructor & Destructor Documentation
djFile::djFile (int FATIdx)
djFile::djFile (string filename, string type, int newfile = 0, string comment = "")
djFile::~djFile ()

Member Function Documentation
int djFile::close (void)
int djFile::countElems (void)
char djFile::getChar (void)
int djFile::isError (void)
int djFile::isOpen (void)
int djFile::open (void)
int djFile::putChar (char Data)
string djFile::read (int size_t, int num_elems)
int djFile::write (string buffer, int size_t, int num_elems)

Member Data Documentation
string djFile::m_comment
int djFile::m_FATIdx
string djFile::m_filename
string djFile::m_type

The documentation for this class was generated from the following files:
djFile.h
djFile.cpp

LineRec  Class Reference
#include <DijinniDat.h>

Public Attributes
int Sx
int Sy
int Ex
int Ey

Member Data Documentation
int LineRec::Ex
int LineRec::Ey
int LineRec::Sx
int LineRec::Sy

The documentation for this class was generated from the following file:
DijinniDat.h

personField  Struct Reference
A editable field in the CPersonEdit class. 
#include <AddrbookApp.h>

Public Attributes
char * title
Title of the field.

int length
Maximum allowed length of the field.

char * validation_string
String of characters allowed in the field ("" for all chars).

Detailed Description
A editable field in the CPersonEdit class.

Member Data Documentation
int personField::length
Maximum allowed length of the field.
char* personField::title
Title of the field.
char* personField::validation_string
String of characters allowed in the field ("" for all chars).

The documentation for this struct was generated from the following file:
AddrbookApp.h

TextRec  Class Reference
#include <DijinniDat.h>

Public Attributes
int X
int Y
char * Str

Member Data Documentation
char* TextRec::Str
int TextRec::X
int TextRec::Y

The documentation for this class was generated from the following file:
DijinniDat.h

TicTacToeApp  Class Reference
Simple 2-player tic-tac-toe game. 
#include <TicTacToeApp.h>
Inheritance diagram for TicTacToeApp:

IMAGE

Public Methods
TicTacToeApp (CDijinni *parent)
~TicTacToeApp ()
int update (CInputEvent *e)
void draw ()
Standard draw.

void clearButtons ()

Public Attributes
CPanel * panel
CPanel * panel1
CButton * buttons [9]

Detailed Description
Simple 2-player tic-tac-toe game.

Constructor & Destructor Documentation
TicTacToeApp::TicTacToeApp (CDijinni * parent)
TicTacToeApp::~TicTacToeApp ()

Member Function Documentation
void TicTacToeApp::clearButtons ()
void TicTacToeApp::draw () [virtual]
Standard draw.

Reimplemented from CApp.
TicTacToeApp::update (CInputEvent * e) [virtual]

Reimplemented from CApp.

Member Data Documentation
CButton* TicTacToeApp::buttons[9]
CPanel* TicTacToeApp::panel
CPanel* TicTacToeApp::panel1

The documentation for this class was generated from the following files:
TicTacToeApp.h
TicTacToeApp.cpp

VIPinstance  Struct Reference
Basic struct for a VIP entry as specified as necessary in func. spec. 
#include <CDataStructures.h>

Public Attributes
string nameofperson
CPerson * person

Detailed Description
Basic struct for a VIP entry as specified as necessary in func. spec.

Member Data Documentation
string VIPinstance::nameofperson
CPerson* VIPinstance::person

The documentation for this struct was generated from the following file:
CDataStructures.h

Dijinni File Documentation
AddrbookApp.cpp File Reference

Defines
#define NUM_FIELDS  13

Functions
void drawField (string field, string data, int x, int y, CGfxScreen *S)
void addrKeyHandler (CWidget *w)
void addrBtnCallback (CWidget *w)
void abListCallback (CWidget *w)

Variables
CAddrbookApp * hack
personField fields [NUM_FIELDS]

Define Documentation
#define NUM_FIELDS  13

Function Documentation
void abListCallback (CWidget * w)
void addrBtnCallback (CWidget * w)
void addrKeyHandler (CWidget * w)
void drawField (string field, string data, int x, int y, CGfxScreen * S)

Variable Documentation
personField fields[NUM_FIELDS]
Initial value:
 
{
  { " First Name ", 30, ""},
  { " M. Initial ",  1, VM_LETTERS},
  { "  Last Name ", 30, ""},
  { " Home Phone ", 14, VM_NUMBERS},
  { " Cell Phone ", 14, VM_NUMBERS},  
  { " Work Phone ", 14, VM_NUMBERS},  
  { "     Street ", 30, ""},  
  { "       City ", 30, ""},  
  { "      State ",  2, VM_LETTERS},  
  { "        Zip ",  5, VM_NUMBERS},  
  { "    Country ", 30, ""},  
  { "      Email ", 30, ""},  
  { "    Comment ", 30, ""}
}
CAddrbookApp* hack
FILE AddrbookApp.cpp 
Id: 
 AddrbookApp.cpp,v 1.7 2001/12/04 11:08:07 timmitchell Exp 
DESCRIPTION  Addrbook application 

AddrbookApp.h File Reference

Compounds
class CAddrbookApp
Address book application.

class CPersonEdit
A robust editor for editing a contact.

class CPersonView
A widget to display the information about a person.

struct personField
A editable field in the CPersonEdit class.

Defines
#define CAB_NUM_MODES  2
#define CAM_LISTMODE  0
#define CAM_EDITMODE  1

Define Documentation
#define CAB_NUM_MODES  2
FILE AddrbookApp.h 
Id: 
 AddrbookApp.h,v 1.6 2001/12/06 01:54:09 cmicali Exp 
DESCRIPTION  Addrbook application used for playing with the UI 
#define CAM_EDITMODE  1
#define CAM_LISTMODE  0

App.h File Reference

Namespaces
namespace std

Compounds
class CApp
Application parent class.

Defines
#define SCREEN_CHANGED  1
update() should return this if the screen needs to be redrawn.

#define SCREEN_UNCHANGED  0
update() should return this if the screen does not need to be redrawn.

Define Documentation
#define SCREEN_CHANGED  1
update() should return this if the screen needs to be redrawn.
#define SCREEN_UNCHANGED  0
update() should return this if the screen does not need to be redrawn.

apps.cpp File Reference

Compounds
class CNiceBars
Little graphics-only widget to draw some lines.

Functions
void init_apps ()
void onSBClick (CWidget *w)
void init_syspanel ()

Variables
CDijinni Dijinni
One instance of our main class.

Function Documentation
void init_apps ()
This function is called by the CDijinni class on startup. This should create instances of all the applications and do any other application-specific init stuff. 
void init_syspanel ()
This function is called by the CDijinni class on startup. This should create the system panel and populate it with widgets (if so desired.) 
void onSBClick (CWidget * w)
Callback for the system panel buttons 

Variable Documentation
CDijinni Dijinni
One instance of our main class.
FILE callbacks.cpp 
Id: 
 callbacks.cpp,v 1.14 2001/11/28 01:13:15 cmicali Exp 
DESCRIPTION  Creates instances of the CDijinni and CLibDj classes and connects the dijinni service routines to the CDijinni object model 

CalcApp.cpp File Reference

Functions
void btnClicked (CWidget *w)
void funcClicked (CWidget *w)
void cClicked (CWidget *w)
void negateClicked (CWidget *w)
void storeClicked (CWidget *w)
void loadClicked (CWidget *w)

Variables
CDijinni Dijinni
CLabel * screen = new CLabel(7,11,"",TS_BOXED,15)
float storedvalue = 0.0
float firstnum = 0.0
float secondnum = 0.0
int cnt = 1
int op = 0
int opirator = 0
int dot = 0
int newnum = 1

Function Documentation
void btnClicked (CWidget * w)
void cClicked (CWidget * w)
void funcClicked (CWidget * w)
void loadClicked (CWidget * w)
void negateClicked (CWidget * w)
void storeClicked (CWidget * w)

Variable Documentation
int cnt = 1
CDijinni Dijinni
int dot = 0
float firstnum = 0.0
int newnum = 1
int op = 0
int opirator = 0
CLabel* screen = new CLabel(7,11,"",TS_BOXED,15)
float secondnum = 0.0
float storedvalue = 0.0

CalcApp.h File Reference

Compounds
class CCalcApp
Simple 4-function calculator application.

CalendarApp.cpp File Reference

Functions
void calViewCallback (CWidget *w)
void calKeyHandler (CWidget *w)
void calEvtListboxCallback (CWidget *w)
void calBtnCallback (CWidget *w)

Variables
CDijinni Dijinni
CApp * kludge

Function Documentation
void calBtnCallback (CWidget * w)
void calEvtListboxCallback (CWidget * w)
void calKeyHandler (CWidget * w)
void calViewCallback (CWidget * w)

Variable Documentation
CDijinni Dijinni
FILE CalendarApp.cpp 
Id: 
 CalendarApp.cpp,v 1.14 2001/12/04 00:46:49 timmitchell Exp 
DESCRIPTION  Test application used for playing with the UI 
CApp* kludge

CalendarApp.h File Reference

Compounds
class CCalendarApp
Calendar/Date-book appliation.

class CDateView
Class for viewing all the events on a specific day.

class CEventView
Class for viewing a specific event and it's entire comment.

Defines
#define CAM_NUM_MODES  3
#define CAM_MONTHVIEW  0
#define CAM_ADDEVENT  1
#define CAM_EDITDAY  2

Define Documentation
#define CAM_ADDEVENT  1
#define CAM_EDITDAY  2
#define CAM_MONTHVIEW  0
#define CAM_NUM_MODES  3

callbacks.cpp File Reference

Functions
void Service_Startup (void)
libdj defined service routine.

void Service_Keypad (int Key)
void Service_Touch (int X, int Y)
Dijinni API: Called when the stylus touches the screen.

void Service_Release (int X, int Y)
Dijinni API: Called when the stylus leaves the sreen.

void Service_Drag (int X, int Y)
Dijinni API: Called when the styles is moved accross the screen.

void Service_Ring (void)
Dijinni API: Called when the phone rings (incoming call).

void Service_HUP_LOS (void)
Dijinni API: Called when a phone connection is lost.

void Service_EOT (void)
Dijinni API: Called when a MP3 playing reaches the end of the track.

void Service_Memory_Fault (void)
Dijinni API: Called when there was a system memory error.

void Service_Busy_Signal (void)
Dijinni API: Called when an attempted phone call was busy.

void Service_Answer_Back (void)
Dijinni API: Called when a phone connection is established.

void Service_Low_Battery (void)
Dijinni API: Called when the battery is low.

void Service_Open (void)
Dijinni API: Called when the device is opened.

void Service_Close (void)
Dijinni API: Called when the device is closed.

Variables
CDijinni Dijinni
One instance of our main class.

CLibDj libdj
One instance of the library main class.

CCore core
One instance of the core utils class.

Function Documentation
void Service_Answer_Back (void)
Dijinni API: Called when a phone connection is established.
void Service_Busy_Signal (void)
Dijinni API: Called when an attempted phone call was busy.
void Service_Close (void)
Dijinni API: Called when the device is closed.
void Service_Drag (int X, int Y)
Dijinni API: Called when the styles is moved accross the screen.
void Service_EOT (void)
Dijinni API: Called when a MP3 playing reaches the end of the track.
void Service_HUP_LOS (void)
Dijinni API: Called when a phone connection is lost.
void Service_Keypad (int Key)
void Service_Low_Battery (void)
Dijinni API: Called when the battery is low.
void Service_Memory_Fault (void)
Dijinni API: Called when there was a system memory error.
void Service_Open (void)
Dijinni API: Called when the device is opened.
void Service_Release (int X, int Y)
Dijinni API: Called when the stylus leaves the sreen.
void Service_Ring (void)
Dijinni API: Called when the phone rings (incoming call).
void Service_Startup (void)
libdj defined service routine.
FILE libdj.h 
Id: 
 libdj.h,v 1.13 2001/11/28 01:13:15 cmicali Exp 
DESCRIPTION  dijinni support library 
void Service_Touch (int X, int Y)
Dijinni API: Called when the stylus touches the screen.

Variable Documentation
CCore core
One instance of the core utils class.
CDijinni Dijinni
One instance of our main class.
FILE callbacks.cpp 
Id: 
 callbacks.cpp,v 1.14 2001/11/28 01:13:15 cmicali Exp 
DESCRIPTION  Creates instances of the CDijinni and CLibDj classes and connects the dijinni service routines to the CDijinni object model 
CLibDj libdj
One instance of the library main class.

CCellPhone.cpp File Reference

Variables
CLibDj libdj
One instance of the library main class.

Variable Documentation
CLibDj libdj
One instance of the library main class.

CCellPhone.h File Reference

Compounds
class CCellPhone
Cellphone functions/util class.

CCore.cpp File Reference

Functions
bool isUnusedFilename (string file)

Function Documentation
bool isUnusedFilename (string file)

CCore.h File Reference

Compounds
class CCore
Provides all data structures in one easy package as well as user data such as passwords, found message, cell client data as well as registeration. Also provides file and IR IO capability integrated for highest level of abstraction with data structures.

Functions
bool isUnusedFilename (string file)

Function Documentation
bool isUnusedFilename (string file)

CDataStructures.cpp File Reference

Functions
string itos (int i)
string ltos (long l)
int stoi (string s)
long stol (string s)
string breakString (string &incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

int comparePeople (CPerson *a, CPerson *b, bool lastthenfirst)
For sorting two people lexicographically by their names in either first, laast name, or vice-versa, as in accordance with functional spec.

int compareMp3Tracks (CMp3Track *a, CMp3Track *b, bool titlethenartist)
For sorting lexicographically two CMp3Track's by their title and artist, in either order as specified by the boolean argument.

int compareTime (int hour1, int min1, bool pm1, int hour2, int min2, bool pm2)
int compareTime (CDate *a, CDate *b)
Compares two CDates taking into account all day events are before timed events as well sorting by ending times, and by the description of the event.

int compareDate (int day1, int month1, int year1, int day2, int month2, int year2)
int compareDate (CDate *a, CDate *b)
Compares two dates of two CDates.

int compareCDate (CDate *a, CDate *b)
Compares CDates a and b to see which happens first.

bool isLeapYear (int year)
Calculates correctly whether a year is leap or not.

bool isValidDate (int day, int month, int year)
Checks if date is valid. Must be between 2001 and 2299.

int calcDayOfWeek (int day, int month, int year)
Calculates the actual day of a date between 2001 and 2299.

string calcDayOfWeekAsString (int day, int month, int year)
Returns the day as a string.

string getNameOfMonth (int month, bool abbreviated=true)
Returns the month as a string in either abbreviated format or full.

Function Documentation
string breakString (string & incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

Parameters: 
incoming  String to take field from, this will get modified (field and delimiter will be removed) 
delim  Delimiter between fields 
Returns: 
The field (without delimiter) and the incoming string will be modified 
int calcDayOfWeek (int day, int month, int year)
Calculates the actual day of a date between 2001 and 2299.
-1 invalid date 0 Saturday 1 Sunday 2 Monday 3 Tuesday 4 Wednesday 5 Thursday 6 Friday 
string calcDayOfWeekAsString (int day, int month, int year)
Returns the day as a string.
For example "Monday" If the date is invalid, returns ""; 
int compareCDate (CDate * a, CDate * b)
Compares CDates a and b to see which happens first.
Compares the date and the start times of each. Returns -1 if a starts before b Returns 0 if a and b happen at the same time Returns 1 if a starts after b 
int compareDate (CDate * a, CDate * b)
Compares two dates of two CDates.
Returns -1 is first date is earlier than second date Returns 0 if they are the same date Returns 1 if first date is later than second date 
int compareDate (int day1, int month1, int year1, int day2, int month2, int year2)
int compareMp3Tracks (CMp3Track * a, CMp3Track * b, bool titlethenartist)
For sorting lexicographically two CMp3Track's by their title and artist, in either order as specified by the boolean argument.
int comparePeople (CPerson * a, CPerson * b, bool lastthenfirst)
For sorting two people lexicographically by their names in either first, laast name, or vice-versa, as in accordance with functional spec.
int compareTime (CDate * a, CDate * b)
Compares two CDates taking into account all day events are before timed events as well sorting by ending times, and by the description of the event.
int compareTime (int hour1, int min1, bool pm1, int hour2, int min2, bool pm2)
string getNameOfMonth (int month, bool abbreviated = true)
Returns the month as a string in either abbreviated format or full.
Returns "" if month is not in {1,2,...,12} 
bool isLeapYear (int year)
Calculates correctly whether a year is leap or not.
bool isValidDate (int day, int month, int year)
Checks if date is valid. Must be between 2001 and 2299.
string itos (int i)
string ltos (long l)
int stoi (string s)
long stol (string s)

CDataStructures.h File Reference

Compounds
class CAddressBook
Linked list of CPerson items, in lexicographical order by name.

class CCalendar
Linked List of CDate items creating a list in chronological order of scheduled events.

class CDate
Basic node for storing a calendar event.

class CJukeBox
Stores a master mp3 list CPlayList object, and CUserPlayLists object for organizing all mp3s and user mp3 lists.

class CList
Basic Linked List data structure using CListItem as nodes.

class CListItem
Linked list node for making derived classes for address, calendar entries, etc.

class CMemo
Stores a basic memo.

class CMemoList
Linked list for the CMemo types, providing loading and saving via a string for up/downloading to PC and read/writing to Dijinni file system.

class CMp3Track
Basic data class and linked list node for Mp3 storing the associated filename, title, artist, genre, year, album, and comment.

class CPerson
Basic data structure for a person entry for the address book.

class CPlayList
Linked List of Mp3 files for use as the MASTER Mp3 list as well for creatign user playlists.

class CSystem
Object for setting/registering and storing password, cell client, and Found message and instructions.

class CUserPlayLists
Linked list of playlists, sorted by playlist name. Provides usual loading and saving of all data via a string.

class CVIP
Array of 10 VIP instances to comply with func. spec, with saving/loading via one string.

struct VIPinstance
Basic struct for a VIP entry as specified as necessary in func. spec.

Defines
#define CLASSICAL  0x0
#define ROCK  0x1
#define TECHNO  0x2
#define COUNTRY  0x3
#define JAZZ  0x4
#define WORLD  0x5
#define OTHER  0x6
#define MASTER_MP3  0x0
#define USER  0x1

Functions
int stoi (string s)
string itos (int i)
string ltos (long l)
long stol (string s)
string breakString (string &incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

int comparePeople (CPerson *a, CPerson *b, bool lastthenfirst)
For sorting two people lexicographically by their names in either first, laast name, or vice-versa, as in accordance with functional spec.

int compareMp3Tracks (CMp3Track *a, CMp3Track *b, bool titlethenartist)
For sorting lexicographically two CMp3Track's by their title and artist, in either order as specified by the boolean argument.

int compareTime (int hour1, int min1, bool pm1, int hour2, int min2, bool pm2)
Compares two times assuming within the same day.

int compareTime (CDate *a, CDate *b)
Compares two CDates taking into account all day events are before timed events as well sorting by ending times, and by the description of the event.

int compareDate (int day1, int month1, int year1, int day2, int month2, int year2)
Compares two dates.

int compareDate (CDate *a, CDate *b)
Compares two dates of two CDates.

int compareCDate (CDate *a, CDate *b)
Compares CDates a and b to see which happens first.

bool isLeapYear (int year)
Calculates correctly whether a year is leap or not.

bool isValidDate (int day, int month, int year)
Checks if date is valid. Must be between 2001 and 2299.

int calcDayOfWeek (int day, int month, int year)
Calculates the actual day of a date between 2001 and 2299.

string calcDayOfWeekAsString (int day, int month, int year)
Returns the day as a string.

string getNameOfMonth (int month, bool abbreviated=true)
Returns the month as a string in either abbreviated format or full.

Define Documentation
#define CLASSICAL  0x0
#define COUNTRY  0x3
#define JAZZ  0x4
#define MASTER_MP3  0x0
#define OTHER  0x6
#define ROCK  0x1
#define TECHNO  0x2
#define USER  0x1
#define WORLD  0x5

Function Documentation
string breakString (string & incoming, string delim)
Breaks the first field off a string delimited by delim and returns it.

Parameters: 
incoming  String to take field from, this will get modified (field and delimiter will be removed) 
delim  Delimiter between fields 
Returns: 
The field (without delimiter) and the incoming string will be modified 
int calcDayOfWeek (int day, int month, int year)
Calculates the actual day of a date between 2001 and 2299.
-1 invalid date 0 Saturday 1 Sunday 2 Monday 3 Tuesday 4 Wednesday 5 Thursday 6 Friday 
string calcDayOfWeekAsString (int day, int month, int year)
Returns the day as a string.
For example "Monday" If the date is invalid, returns ""; 
int compareCDate (CDate * a, CDate * b)
Compares CDates a and b to see which happens first.
Compares the date and the start times of each. Returns -1 if a starts before b Returns 0 if a and b happen at the same time Returns 1 if a starts after b 
int compareDate (CDate * a, CDate * b)
Compares two dates of two CDates.
Returns -1 is first date is earlier than second date Returns 0 if they are the same date Returns 1 if first date is later than second date 
int compareDate (int day1, int month1, int year1, int day2, int month2, int year2)
Compares two dates.
Returns -1 is first date is earlier than second date Returns 0 if they are the same date Returns 1 if first date is later than second date 
int compareMp3Tracks (CMp3Track * a, CMp3Track * b, bool titlethenartist)
For sorting lexicographically two CMp3Track's by their title and artist, in either order as specified by the boolean argument.
int comparePeople (CPerson * a, CPerson * b, bool lastthenfirst)
For sorting two people lexicographically by their names in either first, laast name, or vice-versa, as in accordance with functional spec.
int compareTime (CDate * a, CDate * b)
Compares two CDates taking into account all day events are before timed events as well sorting by ending times, and by the description of the event.
int compareTime (int hour1, int min1, bool pm1, int hour2, int min2, bool pm2)
Compares two times assuming within the same day.
Returns -1 is first time is earlier than second time Returns 0 if they are the same time Returns 1 if first time is later than second time 
string getNameOfMonth (int month, bool abbreviated = true)
Returns the month as a string in either abbreviated format or full.
Returns "" if month is not in {1,2,...,12} 
bool isLeapYear (int year)
Calculates correctly whether a year is leap or not.
bool isValidDate (int day, int month, int year)
Checks if date is valid. Must be between 2001 and 2299.
string itos (int i)
string ltos (long l)
int stoi (string s)
long stol (string s)

CGfxScreen.cpp File Reference

CGfxScreen.h File Reference

Compounds
class CGfxScreen

Text style defines
Text style defines for use with CGfxScreen::drawText
#define TS_NOSTYLE  0x00
Plain text.

#define TS_BOLD  0x01
Bold text.

#define TS_UNDERLINE  0x02
Underlined text.

#define TS_BOXED  0x04
Text with box around it.

#define TS_XBOLD  0x08
Extra bold text.

Defines
#define ColX(x)  (x*10)
#define RowY(y)  (y*10)

Define Documentation
#define ColX(x)  (x*10)
#define RowY(y)  (y*10)
#define TS_BOLD  0x01
Bold text.
#define TS_BOXED  0x04
Text with box around it.
#define TS_NOSTYLE  0x00
Plain text.
#define TS_UNDERLINE  0x02
Underlined text.
#define TS_XBOLD  0x08
Extra bold text.

CMP3Player.cpp File Reference

CMP3Player.h File Reference

Compounds
class CMP3Player
MP3 Player wrapper class.

CTextScreen.cpp File Reference

CTextScreen.h File Reference

Compounds
class CTextScreen
Wrapper class for the text screen on the front of the phone.

CUI.cpp File Reference

Defines
#define SCREEN_CHANGED  1
#define SCREEN_UNCHANGED  0
#define BUTTON_HEIGHT_ADD  16
#define BUTTON_WIDTH_ADD  6
#define LB_YSPACING  12
#define CAL_SPACING  3

Functions
int _getDayOfWeek (int day, int mo, int yr)

Variables
CCore core
One instance of the core utils class.

Define Documentation
#define BUTTON_HEIGHT_ADD  16
#define BUTTON_WIDTH_ADD  6
#define CAL_SPACING  3
#define LB_YSPACING  12
#define SCREEN_CHANGED  1
FILE CUI.cpp 
Id: 
 CUI.cpp,v 1.85 2001/12/04 00:46:49 timmitchell Exp 
DESCRIPTION  UI subsystem implimentation
Important classes:
CPanel: Widget container class. Use this to get multiple widgets on the screen at once
CWidget: Abstract parent class for all widgets 
#define SCREEN_UNCHANGED  0

Function Documentation
int _getDayOfWeek (int day, int mo, int yr)

Variable Documentation
CCore core
One instance of the core utils class.

CUI.h File Reference

Compounds
class CButton
CButton - Regluar pushbutton widget.

class CCalendarWidget
Scaleable calendar widget.

class CGfxWidget
A widget with a pre-implimented empty update method for graphics-only widgets (bitmaps, etc).

class CKbd
A beautiful keyboard widget.

class CLabel
Label widget - Like a button, but cant be pushed. Container for text.

class CListBox
Listbox widget.

class CPanel
Widget container class.

class CScrollable
Abstract class to inherit to make an object scrollable.

class CScrollBar
Scrollbar widget for scrolling any.

class CTabView
Tab class.. like the Microsoft Windows tab widgets.

class CTextArea
Textarea for editing/displaying text.

class CWidget
Abstract class all widgets need to inherit from.

Defines
#define KBD_HEIGHT  110
#define KBD_WIDTH  236
#define KBD_ARRAY_SIZE  15
#define MAX_TABS  20
#define TA_NONE  0x00
No special features for the CTextArea.

#define TA_CURSOR  0x01
Show the cursor for editing.

#define TA_NOAUTOSCROLL  0x02
Don't autoscroll the box.

#define TA_NOBOX  0x04
No box.

#define TA_OLBOX  0x08
Proper box for one-line textarea.

#define SCROLL_WIDTH  15
#define CAL_NONE  0
Calendar did nothing.

#define CAL_VIEWCHANGE  1
View changed on calendar.

#define CAL_DAYCHANGE  2
Selected day on calendar changed.

Typedefs
typedef void(* Callback )(CWidget *w)
Format for widget callback function.

Define Documentation
#define BTNS_3D  0x1
Nice 3d pushbutton look.
#define BTNS_FLAT  0x0
Flat button look.
#define BTNS_LABEL  0x2
Button that looks just like a label.
#define BTNS_NOSTYLE  0x3
No formatting on button.
#define CAL_DAYCHANGE  2
Selected day on calendar changed.
#define CAL_NONE  0
Calendar did nothing.
#define CAL_VIEWCHANGE  1
View changed on calendar.
#define KBD_ARRAY_SIZE  15
#define KBD_HEIGHT  110
#define KBD_WIDTH  236
#define MAX_TABS  20
#define SCROLL_WIDTH  15
#define TA_CURSOR  0x01
Show the cursor for editing.
#define TA_NOAUTOSCROLL  0x02
Don't autoscroll the box.
#define TA_NOBOX  0x04
No box.
#define TA_NONE  0x00
No special features for the CTextArea.
#define TA_OLBOX  0x08
Proper box for one-line textarea.

Typedef Documentation
typedef void(* Callback)(CWidget *w)
Format for widget callback function.
Any widget that uses a callback (ie CButton, etc) uses this format for callback functions. Widgets call the callback function and pass it a pointer to themselves so the callback can determine things like the calling widget's ID and other things. 

Dijinni.h File Reference

Compounds
class CDijinni
Main Dijinni class. Manages which application is active and handles event passing.

Functions
void init_apps ()
void init_syspanel ()

Variables
CLibDj libdj
CCore core

Function Documentation
void init_apps ()
This function is called by the CDijinni class on startup. This should create instances of all the applications and do any other application-specific init stuff. 
void init_syspanel ()
This function is called by the CDijinni class on startup. This should create the system panel and populate it with widgets (if so desired.) 

Variable Documentation
CCore core
CLibDj libdj

DijinniApp.h File Reference

Functions
void Service_Keypad (int Key)
void Service_Touch (int X, int Y)
Dijinni API: Called when the stylus touches the screen.

void Service_Release (int X, int Y)
Dijinni API: Called when the stylus leaves the sreen.

void Service_Drag (int X, int Y)
Dijinni API: Called when the styles is moved accross the screen.

void Service_Ring (void)
Dijinni API: Called when the phone rings (incoming call).

void Service_HUP_LOS (void)
Dijinni API: Called when a phone connection is lost.

void Service_EOT (void)
Dijinni API: Called when a MP3 playing reaches the end of the track.

void Service_Memory_Fault (void)
Dijinni API: Called when there was a system memory error.

void Service_Low_Battery (void)
Dijinni API: Called when the battery is low.

void Service_Busy_Signal (void)
Dijinni API: Called when an attempted phone call was busy.

void Service_Answer_Back (void)
Dijinni API: Called when a phone connection is established.

void Service_Open (void)
Dijinni API: Called when the device is opened.

void Service_Close (void)
Dijinni API: Called when the device is closed.

Function Documentation
void Service_Answer_Back (void)
Dijinni API: Called when a phone connection is established.
void Service_Busy_Signal (void)
Dijinni API: Called when an attempted phone call was busy.
void Service_Close (void)
Dijinni API: Called when the device is closed.
void Service_Drag (int X, int Y)
Dijinni API: Called when the styles is moved accross the screen.
void Service_EOT (void)
Dijinni API: Called when a MP3 playing reaches the end of the track.
void Service_HUP_LOS (void)
Dijinni API: Called when a phone connection is lost.
void Service_Keypad (int Key)
void Service_Low_Battery (void)
Dijinni API: Called when the battery is low.
void Service_Memory_Fault (void)
Dijinni API: Called when there was a system memory error.
void Service_Open (void)
Dijinni API: Called when the device is opened.
void Service_Release (int X, int Y)
Dijinni API: Called when the stylus leaves the sreen.
void Service_Ring (void)
Dijinni API: Called when the phone rings (incoming call).
void Service_Touch (int X, int Y)
Dijinni API: Called when the stylus touches the screen.

DijinniDat.h File Reference

Compounds
class LineRec
class TextRec

Defines
#define DIJINNI_DAT_H  1
#define NET_ENABLE  1
#define SERVICE_AVAILABLE  2
#define NET_ACTIVE  4
#define PLAY_ACTIVE  8
#define PLAY_PAUSED  16
#define RECORDING  32
#define XFER_ACTIVE  64
#define DEVICE_OPEN  128

Functions
void _Set_Status (int Mask, int Value)
void Init_Globals (void)
void Grow_GD_Line_Array (void)
void Grow_TD_Line_Array (void)
void Grow_GD_Text_Array (void)
void Grow_TD_Text_Array (void)
void Write_RAM_Disk_Dir (void)
void Read_RAM_Disk_Dir (void)
void Clear_Dir (void)

Variables
LabelC * TextDisp
AreaC * GraphDisp
AreaC * TouchDisp
ShellC * Root
ShellC * Work
char DispMap [4][24]
int Touching
LineRec * GDLines
int GDLineSize
int GDLineIdx
TextRec * GDText
int GDTextSize
int GDTextIdx
int GDx
int GDy
int GDw
int GDh
LineRec * TDLines
int TDLineSize
int TDLineIdx
TextRec * TDText
int TDTextSize
int TDTextIdx
int TDx
int TDy
int TDw
int TDh
char FileNames [64][12]
char FileTypes [64][4]
char FileComments [64][64]
FILE * FileHandle [64]
unsigned char _StatusByte

Define Documentation
#define DEVICE_OPEN  128
#define DIJINNI_DAT_H  1
#define NET_ACTIVE  4
#define NET_ENABLE  1
#define PLAY_ACTIVE  8
#define PLAY_PAUSED  16
#define RECORDING  32
#define SERVICE_AVAILABLE  2
#define XFER_ACTIVE  64

Function Documentation
void _Set_Status (int Mask, int Value)
void Clear_Dir (void)
void Grow_GD_Line_Array (void)
void Grow_GD_Text_Array (void)
void Grow_TD_Line_Array (void)
void Grow_TD_Text_Array (void)
void Init_Globals (void)
void Read_RAM_Disk_Dir (void)
void Write_RAM_Disk_Dir (void)

Variable Documentation
unsigned char _StatusByte
char DispMap[4][24]
char FileComments[64][64]
FILE* FileHandle[64]
char FileNames[64][12]
char FileTypes[64][4]
int GDh
int GDLineIdx
LineRec* GDLines
int GDLineSize
TextRec* GDText
int GDTextIdx
int GDTextSize
int GDw
int GDx
int GDy
AreaC* GraphDisp
ShellC* Root
int TDh
int TDLineIdx
LineRec* TDLines
int TDLineSize
TextRec* TDText
int TDTextIdx
int TDTextSize
int TDw
int TDx
int TDy
LabelC* TextDisp
AreaC* TouchDisp
int Touching
ShellC * Work

DijinniLib.h File Reference

Defines
#define GRAPHIC_DISPLAY  0
#define TOUCH_DISPLAY  1
#define MODE_KEY  0
#define SELECT_KEY  1
#define CALL_KEY  2
#define REDIAL_KEY  3
#define N1_KEY  4
#define N2_KEY  5
#define N3_KEY  6
#define N4_KEY  7
#define N5_KEY  8
#define N6_KEY  9
#define N7_KEY  10
#define N8_KEY  11
#define N9_KEY  12
#define STAR_KEY  13
#define N0_KEY  14
#define POUND_KEY  15
#define STOP_KEY  16
#define PLAY_KEY  17
#define RECORD_KEY  18
#define A_LEFT_KEY  19
#define A_UP_KEY  20
#define A_RIGHT_KEY  21
#define A_DOWN_KEY  22

Functions
void Draw_Line (int Screen, int StartX, int StartY, int EndX, int EndY)
void Draw_Text (int Screen, int X, int Y, char *String)
void Clear_Display (int Screen)
int Peek (int Row, int Column)
int Poke (int Row, int Column, char Data)
void Flush (void)
int Open_File (char *Name, char *Type)
int Create_File (char *Name, char *Type, char *Comment)
int Close_File (int FileID)
int Delete_File (char *Name, char *Type)
char * Get_File_Name (int FATIdx)
char * Get_File_Type (int FATIdx)
char * Get_File_Comment (int FATIdx)
int Get_Byte (int FileID)
int Put_Byte (int FileID, char Data)
int Upload_File (char *Name, char *Type)
int Download_File (char *Name, char *Type, char *Comment)
int Call (char *Number)
int Hangup (void)
void Ring (void)
int Answer (void)
int Sample (char *Name, char *Comment)
int Stop_Sample (void)
int Play (char *File)
int Pause (void)
int Resume (void)
int Stop_Play (void)
int Register_Cellular_Client (int Provider, long CallNum, char *Account, char *PIN, int Alternate)
unsigned char Get_Core_Status (void)

Define Documentation
#define A_DOWN_KEY  22
#define A_LEFT_KEY  19
#define A_RIGHT_KEY  21
#define A_UP_KEY  20
#define CALL_KEY  2
#define GRAPHIC_DISPLAY  0
#define MODE_KEY  0
#define N0_KEY  14
#define N1_KEY  4
#define N2_KEY  5
#define N3_KEY  6
#define N4_KEY  7
#define N5_KEY  8
#define N6_KEY  9
#define N7_KEY  10
#define N8_KEY  11
#define N9_KEY  12
#define PLAY_KEY  17
#define POUND_KEY  15
#define RECORD_KEY  18
#define REDIAL_KEY  3
#define SELECT_KEY  1
#define STAR_KEY  13
#define STOP_KEY  16
#define TOUCH_DISPLAY  1

Function Documentation
int Answer (void)
int Call (char * Number)
void Clear_Display (int Screen)
int Close_File (int FileID)
int Create_File (char * Name, char * Type, char * Comment)
int Delete_File (char * Name, char * Type)
int Download_File (char * Name, char * Type, char * Comment)
void Draw_Line (int Screen, int StartX, int StartY, int EndX, int EndY)
void Draw_Text (int Screen, int X, int Y, char * String)
void Flush (void)
int Get_Byte (int FileID)
unsigned char Get_Core_Status (void)
char* Get_File_Comment (int FATIdx)
char* Get_File_Name (int FATIdx)
char* Get_File_Type (int FATIdx)
int Hangup (void)
int Open_File (char * Name, char * Type)
int Pause (void)
int Peek (int Row, int Column)
int Play (char * File)
int Poke (int Row, int Column, char Data)
int Put_Byte (int FileID, char Data)
int Register_Cellular_Client (int Provider, long CallNum, char * Account, char * PIN, int Alternate)
int Resume (void)
void Ring (void)
int Sample (char * Name, char * Comment)
int Stop_Play (void)
int Stop_Sample (void)
int Upload_File (char * Name, char * Type)

djFile.cpp File Reference

djFile.h File Reference

Compounds
class djFile

Defines
#define DJF_EOK  0
#define DJF_ENOTFOUND  -1
#define DJF_EREADERROR  -2
#define DJF_EWRITEERROR  -3
#define DJF_EALREADYOPEN  -4
#define DJF_ENOTOPEN  -5
#define DJF_EUNKNOWN  -6
#define DJF_NF_AUTO  0
#define DJF_NF_FORCEOPEN  1

Define Documentation
#define DJF_EALREADYOPEN  -4
#define DJF_ENOTFOUND  -1
#define DJF_ENOTOPEN  -5
#define DJF_EOK  0
FILE djFile.h 
Id: 
 djFile.h,v 1.7 2001/11/27 05:14:00 tshevlin Exp 
DESCRIPTION  Wrapper for dijinni filesystem functions 
#define DJF_EREADERROR  -2
#define DJF_EUNKNOWN  -6
#define DJF_EWRITEERROR  -3
#define DJF_NF_AUTO  0
#define DJF_NF_FORCEOPEN  1

Events.h File Reference

Compounds
class CInputEvent
Simple intput event class.

Defines
#define EVT_KEYDOWN  0x01
Key down event.

#define EVT_KEYUP  0x02
Key up event.

#define EVT_MOUSEDOWN  0x04
Stylus down event.

#define EVT_MOUSEUP  0x08
Stylus up event.

#define EVT_MOUSEMOVE  0x10
Stylus draw event.

#define BROKEN_SCREEN_OFFSET  2
Offset to apply to all mouse events due to broken simulator.

Define Documentation
#define BROKEN_SCREEN_OFFSET  2
Offset to apply to all mouse events due to broken simulator.
#define EVT_KEYDOWN  0x01
Key down event.
FILE Events.h 
Id: 
 Events.h,v 1.6 2001/11/26 05:01:56 cmicali Exp 
DESCRIPTION  Simple event class. Used when pumping an event to a application or widget. 
#define EVT_KEYUP  0x02
Key up event.
#define EVT_MOUSEDOWN  0x04
Stylus down event.
#define EVT_MOUSEMOVE  0x10
Stylus draw event.
#define EVT_MOUSEUP  0x08
Stylus up event.

FrontpanelApp.cpp File Reference

Variables
CDijinni Dijinni
CCellPhone CPhone
CPerson Person [3]

Variable Documentation
CCellPhone CPhone
CDijinni Dijinni
FILE FrontpanelApp.cpp 
Id: 
 FrontpanelApp.cpp,v 1.11 2001/11/29 21:54:53 cmicali Exp 
DESCRIPTION  Front panel application 
CPerson Person[3]

FrontpanelApp.h File Reference

Compounds
class CFrontpanelApp
Application to handle the front panel interface.

HomeApp.cpp File Reference

Defines
#define BTN_TESTAPP  0
#define BTN_LISTAPP  1
#define BTN_CALCAPP  2
#define BTN_MP3APP  3
#define BTN_RECAPP  4
#define BTN_MEMOAPP  5
#define BTN_FRONT  6
#define BTN_CALAPP  7
#define BTN_ADBAPP  8
#define BTN_SKTAPP  9
#define BTN_TICTAC  10
#define BTN_SYSTEM  11

Functions
void homeBtnHandler (CWidget *w)

Variables
CDijinni Dijinni

Define Documentation
#define BTN_ADBAPP  8
#define BTN_CALAPP  7
#define BTN_CALCAPP  2
#define BTN_FRONT  6
#define BTN_LISTAPP  1
#define BTN_MEMOAPP  5
#define BTN_MP3APP  3
#define BTN_RECAPP  4
#define BTN_SKTAPP  9
#define BTN_SYSTEM  11
#define BTN_TESTAPP  0
#define BTN_TICTAC  10

Function Documentation
void homeBtnHandler (CWidget * w)

Variable Documentation
CDijinni Dijinni

HomeApp.h File Reference

Compounds
class CHomeApp
The home application. The place to go to switch to all the other available applications.

libdj.cpp File Reference

libdj.h File Reference

Compounds
class CLibDj
Class to contain all the libdj helper classes.

Validation defines
Various defines for different types of validation
#define VA_NUMBERS  0x01
#define VA_UC_LETTERS  0x02
#define VA_LC_LETTERS  0x04
#define VA_SYMBOLS  0x08
#define VA_PHONENUMBER  0x10
#define VA_DATE  0x20
#define VA_LETTERS  (VA_UC_LETTERS|VA_LC_LETTERS)
#define VM_NUMBERS  "0123456789"
#define VM_UC_LETTERS  "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
#define VM_LC_LETTERS  "abcdefghijklmnopqrstuvwxyz"
#define VM_LETTERS  VM_UC_LETTERS VM_LC_LETTERS
#define VM_SYMBOLS  "`~!@#$%^&*()_+-=[]{};':\",.<>/?\\|"
#define VM_PHONENUMBER  VM_NUMBERS "-()"
#define VM_DATE  VM_NUMBERS "/"

Defines
#define VA_FAILED  0x00
String did not pass validation.

#define VA_OK  0x01
String passed validation and is ok.

Functions
void Service_Startup (void)
libdj defined service routine.

Define Documentation
#define DF_DEVICEOPEN  0x80
#define DF_IRXFERACTIVE  0x40
#define DF_MP3PAUSED  0x10
#define DF_MP3PLAYING  0x08
#define DF_NETWORKACTIVE  0x04
#define DF_NETWORKENABLED  0x01
Defines for status bytes of CDijinni::getFlags 
#define DF_RECORDING  0x20
#define DF_SERVICEAVAIL  0x02
#define VA_DATE  0x20
#define VA_FAILED  0x00
String did not pass validation.
#define VA_LC_LETTERS  0x04
#define VA_LETTERS  (VA_UC_LETTERS|VA_LC_LETTERS)
#define VA_NUMBERS  0x01
#define VA_OK  0x01
String passed validation and is ok.
#define VA_PHONENUMBER  0x10
#define VA_SYMBOLS  0x08
#define VA_UC_LETTERS  0x02
#define VM_DATE  VM_NUMBERS "/"
#define VM_LC_LETTERS  "abcdefghijklmnopqrstuvwxyz"
#define VM_LETTERS  VM_UC_LETTERS VM_LC_LETTERS
#define VM_NUMBERS  "0123456789"
#define VM_PHONENUMBER  VM_NUMBERS "-()"
#define VM_SYMBOLS  "`~!@#$%^&*()_+-=[]{};':\",.<>/?\\|"
#define VM_UC_LETTERS  "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

Function Documentation
void Service_Startup (void)
libdj defined service routine.
FILE libdj.h 
Id: 
 libdj.h,v 1.13 2001/11/28 01:13:15 cmicali Exp 
DESCRIPTION  dijinni support library 

ListTestApp.cpp File Reference

Functions
void onListBoxClick (CWidget *w)

Function Documentation
void onListBoxClick (CWidget * w)

ListTestApp.h File Reference

Compounds
class CListTestApp

MemoApp.cpp File Reference

Defines
#define MBTN_OPN  0
#define MBTN_DEL  1
#define MBTN_NEW  2
#define MBTN_SVE  3
#define MBTN_CNL  4
#define MBTN_CLR  5
#define MBTN_END  6

Functions
void memoButtonHandler (CWidget *w)
void memoKeyHandler (CWidget *w)

Define Documentation
#define MBTN_CLR  5
#define MBTN_CNL  4
#define MBTN_DEL  1
#define MBTN_END  6
#define MBTN_NEW  2
#define MBTN_OPN  0
FILE MemoApp.cpp 
Id: 
 MemoApp.cpp,v 1.6 2001/11/29 21:54:53 cmicali Exp 
DESCRIPTION  Memo application 
#define MBTN_SVE  3

Function Documentation
void memoButtonHandler (CWidget * w)
void memoKeyHandler (CWidget * w)

MemoApp.h File Reference

Compounds
class CMemoApp
Simple memopad application for writing quick memos.

Defines
#define MEMO_LISTMODE  0
#define MEMO_EDITMODE  1

Define Documentation
#define MEMO_EDITMODE  1
#define MEMO_LISTMODE  0
FILE MemoApp.h 
Id: 
 MemoApp.h,v 1.2 2001/11/27 07:18:53 cmicali Exp 
DESCRIPTION  Memo pad application 

MP3App.cpp File Reference

Functions
void panel0Handler (CWidget *w)
void panel12Handler (CWidget *w)
void panel3Handler (CWidget *w)
void keyboardHandler (CWidget *w)

Function Documentation
void keyboardHandler (CWidget * w)
void panel0Handler (CWidget * w)
void panel12Handler (CWidget * w)
void panel3Handler (CWidget * w)

MP3App.h File Reference

Compounds
class CMP3App
The MP3 player/recorder appliation.

Defines
#define MAX_NO_FILES  64
#define MAX_PANELS  5
#define BACK  -1
#define CANCEL  -1
#define SAVE  0
#define CLEAR  1
#define NULL_ID  0
#define FILE_OPEN  1
#define PLAYLIST_NEW  2
#define PLAYLIST_EDIT  3
#define PLAYLIST_SAVE  4
#define OPTIONS_REPEAT  5
#define ADD_TO_PLAYLIST  0
#define OPEN_BY_ITSELF  1
#define OPEN_PLAYLIST  2
#define VIEW_MP3S  3
#define VIEW_PLAYLISTS  4
#define ARTIST_TITLE  5
#define TITLE_ARTIST  6
#define DEFAULT_NAME  0
#define CHOOSE_NAME  1

Define Documentation
#define ADD_TO_PLAYLIST  0
#define ARTIST_TITLE  5
#define BACK  -1
#define CANCEL  -1
#define CHOOSE_NAME  1
#define CLEAR  1
#define DEFAULT_NAME  0
#define FILE_OPEN  1
#define MAX_NO_FILES  64
#define MAX_PANELS  5
#define NULL_ID  0
#define OPEN_BY_ITSELF  1
#define OPEN_PLAYLIST  2
#define OPTIONS_REPEAT  5
#define PLAYLIST_EDIT  3
#define PLAYLIST_NEW  2
#define PLAYLIST_SAVE  4
#define SAVE  0
#define TITLE_ARTIST  6
#define VIEW_MP3S  3
#define VIEW_PLAYLISTS  4

RecorderApp.cpp File Reference

Functions
void btnClicks (CWidget *w)
void onListBoxClicks (CWidget *t)

Variables
CDijinni Dijinni
CLabel * rscreen = new CLabel(10,10,"",TS_BOXED)

Function Documentation
void btnClicks (CWidget * w)
void onListBoxClicks (CWidget * t)

Variable Documentation
CDijinni Dijinni
CLabel* rscreen = new CLabel(10,10,"",TS_BOXED)

RecorderApp.h File Reference

Compounds
class CRecorderApp

SketchApp.cpp File Reference

Functions
void sketchBtnCallback (CWidget *w)
void skListCallback (CWidget *w)

Variables
CSketchApp * oops

Function Documentation
void sketchBtnCallback (CWidget * w)
void skListCallback (CWidget * w)

Variable Documentation
CSketchApp* oops

SketchApp.h File Reference

Compounds
class CSketch
A class to contain one sketch.

class CSketchApp
Sketch application for drawing sketches.

class CSketchView
A class to display and edit a sketch.

class CSLine
A class to contain one line (to be used in a CSketch).

Defines
#define _SKETCHKAPP_H
#define SKT_NUM_MODES  2
#define SKM_LISTMODE  0
#define SKM_DRAWMODE  1
#define NUM_SKETCHES  20
#define SM_LINE  0
Line drawing mode.

#define SM_DOT  1
Dot drawing mode.

#define SM_CDOT  2
Continuous dot (brush) drawing mode.

#define SM_LAST  SM_CDOT

Define Documentation
#define _SKETCHKAPP_H
FILE SketchApp.h 
Id: 
 SketchApp.h,v 1.2 2001/11/29 10:12:22 cmicali Exp 
DESCRIPTION  Sketch application 
#define NUM_SKETCHES  20
#define SKM_DRAWMODE  1
#define SKM_LISTMODE  0
#define SKT_NUM_MODES  2
#define SM_CDOT  2
Continuous dot (brush) drawing mode.
#define SM_DOT  1
Dot drawing mode.
#define SM_LAST  SM_CDOT
#define SM_LINE  0
Line drawing mode.

Speedup.h File Reference

Defines
#define USE_SPEEDUP  1

Define Documentation
#define USE_SPEEDUP  1
If defined, USE_SPEEDUP will make our code use the speed-up modification to the Dijinni simulator. If undefined the code will compile and work perfectly on either the old simulator or the target Dijinni device. 

SystemApp.cpp File Reference

Functions
void IRChoice (CWidget *w)

Variables
CDijinni Dijinni
CLabel * screenIR = new CLabel(7,11,"",TS_BOXED,15)

Function Documentation
void IRChoice (CWidget * w)

Variable Documentation
CDijinni Dijinni
CLabel* screenIR = new CLabel(7,11,"",TS_BOXED,15)

SystemApp.h File Reference

Compounds
class CSystemApp
System application for IR transfers, registering cellular client, etc.

TestApp.cpp File Reference

Functions
void onTestClick (CWidget *w)
void keyHandler (CWidget *w)

Variables
int update_top = 0

Function Documentation
void keyHandler (CWidget * w)
void onTestClick (CWidget * w)

Variable Documentation
int update_top = 0

TestApp.h File Reference

Compounds
class CTestApp

TicTacToeApp.cpp File Reference

Functions
void posnChosen (CWidget *w)

Variables
CDijinni Dijinni
CLabel * screent = new CLabel (180 , 70 ,"",TS_NOSTYLE)
int who = 0
int tl = 0
int tc = 0
int tr = 0
int ml = 0
int mc = 0
int mr = 0
int bl = 0
int bc = 0
int br = 0
int round = 0

Function Documentation
void posnChosen (CWidget * w)

Variable Documentation
int bc = 0
int bl = 0
int br = 0
CDijinni Dijinni
int mc = 0
int ml = 0
int mr = 0
int round = 0
CLabel* screent = new CLabel (180 , 70 ,"",TS_NOSTYLE)
int tc = 0
int tl = 0
int tr = 0
int who = 0

TicTacToeApp.h File Reference

Compounds
class TicTacToeApp
Simple 2-player tic-tac-toe game.

Trace.h File Reference

Defines
#define USE_TRACE
Undefine this to remove all console debugging messages.

#define TraceEx
#define TRACE

Functions
void Trace (const char *format,...)

Define Documentation
#define TRACE
Value:
printf("%s(%d): ", &strrchr(__FILE__,'/')[1] ,__LINE__); \
printf
A simple trace macro for printing debugging information. Undefine USE_TRACE to disable all debugging messages. 
#define TraceEx
Value:
printf("%s(%d): ", &strrchr(__FILE__,'/')[1] ,__LINE__); \
Trace
#define USE_TRACE
Undefine this to remove all console debugging messages.

Function Documentation
void Trace (const char * format, ...) [inline]

Index
INDEX