Object Descriptions
Definitions/Abbreviations
- MBox - MailBox
- Mesg - Message
- SV- - Searchable, Viewable
- [operation] - Possible or temporary implementation. (Lower down on priority list)
- class
- MBoxCollection
- inherits from
- Object
- description
- Maintains a collection of SVMBoxes, and coordinates views.
- attributes
-
- MBoxList - the list of available MailBoxes
- MBoxSelection - stores which MailBox is currently selected
- MBoxCollectionView - link to my view
- MBoxView - link to the MailBoxView
- operations
-
- Delete
- Delete the currently selected MailBox, select a new MailBox, and then
update MBoxCollectionView and MBoxView.
- Create
- Prompt for a name, and create a new MailBox. Update MBoxCollectionView.
- Rename
- Prompt for a new name, and rename the current MailBox. Update
MBoxCollectionView.
- Select
- A Message sent by MBoxCollectionView to select a MailBox.
- CollectMBoxes
- A method called by MBoxCollectionView to get a list of MailBox names.
Returns a vector of Names.
- [Search]
- Prompt for a substring. Search all MailBoxes for the substring. Create
a temporary MailBox, and copy all matching Messages to it. Select that
MailBox.
- initialization
- Given an established
connection, find all active MailBoxes. Select INBOX.
- class
- SVMBox
- inherits from
- MailBox
- description
- Maintains a collection of Mesg's, and controls the MBoxView.
- attributes
-
- MesgList - the list of Messages in the current MailBox
- MesgSelections - stores which Messages are currently selected
- MBoxCollection - link to the MBoxCollection.
- MBoxView - link to the MBoxView
- operations
-
- Delete
- Delete the currently selected Messages. Update MBoxView.
- Select/Unselect
- A Message sent by MBoxView to select or unselect a Message.
- CollectMesgs
- A method called by MBoxView to get a list of Message names.
Returns a vector of Names.
- ViewMesg
- A method called by MBoxView (when the user double-clicks on a message)
to view a message.
- ConnectTo
- Called to specify to which MBoxView this SVMBox should be connected.
- [Search]
- Prompt for a substring. Search all Messages for the substring. Select
them. Update the MBoxView.
- [Move]
- Prompt for a MailBox name. Move the messages there. [Use Drag 'n Drop
later, if at all possible]
- initialization
- Created by MBoxCollection, which links it to the MBoxView. On creation,
selects the first message, and updates MBoxView.
- class
- MBoxCollectionView
- inherits from
-
Panel
- description
- View on an MBoxCollection. Displays a list of MailBoxes.
- attributes
-
- MBoxCollection - link to my MBoxCollection.
- Buttons (eg. "Create") - buttons, directly linked to MBoxCollection.
- List - the list object on MBoxCollection.
- operations
-
- Update
- Called by MBoxCollection. Tells me that something I care about has
changed.
- ConnectTo
- Called to specify to which MBoxCollection I should be connected.
- initialization
- Created by MBoxCollection, which links me to itself. I call CollectMBoxes
to get the list of MBoxes so I can display it.
- class
- MBoxView
- inherits from
-
Panel
- description
- View on an SVMBox. Displays a list of Messages.
- attributes
-
- MBox - link to my SVMBox.
- Buttons (eg. "Delete") - buttons, directly linked to SVMBox.
- List - the list object on SVMBox.
- operations
-
- Update
- Called by SVMBox. Tells me that something I care about has changed.
- ConnectTo
- Called to specify to which SVMBox I should be connected.
- initialization
- Created by MBoxCollection, which links me to my SVMBox. I call
CollectMesgs to get the list of Messages so I can display it.
- Class
- SVMesg (Searchable and Viewable Message)
- Inherits from
- Message
- Description
- Like the class it inherits from, the SVMesg class holds the data
for one message retrieved from an IMAP server.
- Attributes
- A message has the following attributes (these are not explicitly
documented in the Non-Diary
Creamer IMAP Class Index, so they are listed below):
- f - f flags
- s - the size of the message in bytes
- d - RFC 822-style date
- subj - subject of the message
- fr - mail addresses in "From:" line
- send - mail addresses in "Sender:" line
- rt - mail addresses in "Reply-to:" line
- t - mail addresses in "To: " line
- c - mail addresses in "Cc:" line
- b - mail addresses in "Bcc:" line
- irt - contents of "In-reply-to:" line
- mid - message ID
- m - mailbox associated with this SVMesg
- msgno - message number for this SVMesg
- Operations
- The inherited operations are documented here.
SVMesg provides the following additional operations:
- searchBodyText(String)
- Searches the text of the message body for the String. Returns a
boolean true if the string is found, false otherwise.
- viewSVMesg()
- Returns a new SVMesgView object, linked to the SVMesg's
data.
- Initialization
- A SVMesg is initialized (and constructed) by invoking SVMesg and
sending in the values for the attributes described above. (This is generally done automatically by the MBox)
- class
- SVMesgView
- inherits from
- Panel
- description
- This is a view on an SVMesg. It displays the different parts of the SVMesg on a window.
- attributes
- mySVMesg - a link to the SVMesg I'm am a view of.
- buttons - buttons which perform operations of my SVMesg.
- partView - a view on a part of a SVMesg.
- operations
- update - called by mySVMesg to tell me something I care about has changed.
- initialization
- Created by SVMesg, which links me to itself.