about summary refs log tree commit diff stats
path: root/DESIGN
diff options
context:
space:
mode:
authorJames Booth <boothj5@gmail.com>2012-05-24 00:51:55 +0100
committerJames Booth <boothj5@gmail.com>2012-05-24 00:51:55 +0100
commit1b7170243c157fc73dc9a15b895fcf942b752c37 (patch)
treeee48e955fdd3ea2aa99706a7ede6b62807cf5c7c /DESIGN
parent7e62076347eccbf04c4d2c725878477c13ba48c5 (diff)
downloadprofani-tty-1b7170243c157fc73dc9a15b895fcf942b752c37.tar.gz
Tidied up design doc
Diffstat (limited to 'DESIGN')
-rw-r--r--DESIGN43
1 files changed, 22 insertions, 21 deletions
diff --git a/DESIGN b/DESIGN
index 5470b4f2..bce5f884 100644
--- a/DESIGN
+++ b/DESIGN
@@ -13,28 +13,29 @@ character on the input, if there is one deals with it, if not, goes around the
 loop again.
 
 If the character was a newline, the input line is processed, the result of
-processing profanity will either continue (TRUE) or stop (FALSE).
+processing input will either continue (TRUE) or stop (FALSE, if the input 
+was "/quit").
 
 Shutting down just involves clearing up resources.
 
 title_bar.c, windows.c, status_bar.c, input_win.c
 =================================================
 
-Represent the different windows in Ncurses.
+These represent the different windows in Ncurses.
 
-     ----------------------------------------------
+    +----------------------------------------------+
     |  TITLE_BAR                                   |
-     ----------------------------------------------
+    +----------------------------------------------+
     |                                              |
     |                                              |
     |  WINDOWS                                     |
     |                                              |
     |                                              |
-     ----------------------------------------------
+    +----------------------------------------------+
     |  STATUS_BAR                                  |
-     ----------------------------------------------
+    +----------------------------------------------+
     |  INPUT_WIN                                   |
-     ----------------------------------------------
+    +----------------------------------------------+
 
 The interface to the UI is all through windows.h, all UI modules share this
 header:
@@ -51,7 +52,7 @@ header:
 
 So any calls to the UI are through windows.h
 
-title_bar.c and status_bar.c are pretty trivial.
+title_bar.c and status_bar.c are relatively trivial.
 
 windows.c
 ---------
@@ -59,14 +60,14 @@ windows.c
 Contains a list of prof_win structs called _wins, which consist of:
 
     from:  A string, the name of the recipient for this chat window
-    win:   An ncurses pad containing the chat
+    win:   An ncurses pad containing the chat contents
     y_pos: The current position in the chat window
     paged: Whether or not the pad has been paged (i.e not showing the end)
 
 The console is _wins[0], and has a special 'from' value of "_cons".
 
 This module contains things like a pointer to the console window, the index
-of the current window being displayed, a dirty flag that indicated the current
+of the current window being displayed, a dirty flag that indicates the current
 windows should be updated next time around the loop.
 
 inp_win.c
@@ -87,17 +88,17 @@ jabber.c
 ========
 
 All interaction with libstrophe is done here.  Contains a references to the
-libstrophe objects, connection, context etc.
+libstrophe objects: connection, context etc.
 
 Functions ending 'handler' are callback handlers registered with libstrophe,
-for incomming messages etc.
+e.g. for incomming messages.
 
 contact.c
 =========
 
 PContact represents a contact with:
 
-    name:   The contact full JID, e.g. somecontact@server.org
+    name:   The contacts JID, e.g. somecontact@server.org
     show:   "Online", "Away" etc
     status: "I'm not here right now", "At lunch" etc
 
@@ -109,9 +110,9 @@ contact_list.c
 
 Currently has two purposes.
 
-Firstly stores a live list of online contacts.  Live meaning jabber.c will 
+First, stores a live list of online contacts.  "Live" meaning jabber.c will 
 call contact_list_add() and contact_list_remove() as it gets presence
-notifications.
+notifications from the server.
 
 Secondly it is used for autocompleting contact names when typing them, hence
 it stores the contact in a PAutocomplete, described later.
@@ -128,13 +129,13 @@ preferences.c
 
 Deals with loading and setting preferences saved in ~/.profanity.
 
-Also allows autocomplete of previous JIDs the use has logged in with 
+Also allows autocomplete of previous JIDs the user has logged in with 
 (stored in ~/.profanity) by storing them in a PAutocomplete.
 
 common.c
 ========
 
-Functions written where older versions of GLib does not have them.
+Functions written for compatibility with older versions of GLib.
 
 util.c
 ======
@@ -144,7 +145,7 @@ Some util functions, should probably move to common.c.
 log.c
 =====
 
-Stored a reference to the log file, and provides functions for writing to it.
+Stores a reference to the log file, and provides functions for writing to it.
 
 Library like modules
 ====================
@@ -152,8 +153,8 @@ Library like modules
 prof_history.c and prof_autocomplete.c implement a generic way to deal with 
 command history and command autocompletion respectively.
 
-The rest of Profanity uses them indirectly, via history.c for example.
-And they know nothing about Profanity (no includes).
+The rest of Profanity uses them indirectly, via history.c for example, 
+and they know nothing about Profanity (no includes to profanity modules).
 
 These modules use opaque pointers so all access must be through functions
 exposed in their headers.
@@ -166,7 +167,7 @@ Profanity.
 prof_autocomplete.c
 -------------------
 
-Two type are PAutocomplete can be created.
+Two types of PAutocomplete can be created.
 
 p_autocomplete_new() creates a PAutocomplete that can store strings, the
 simple case.