Skip to content

Commit

Permalink
Merge pull request #163 from koh-jx/fix-UG-bugs
Browse files Browse the repository at this point in the history
UG Bug Fixes
  • Loading branch information
jeffsieu authored Nov 1, 2021
2 parents d160539 + fec9c9f commit be357b5
Show file tree
Hide file tree
Showing 7 changed files with 93 additions and 13 deletions.
106 changes: 93 additions & 13 deletions docs/UserGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: User Guide

# User Guide V1.3

TaskMaster2103 V1.3 is a desktop app for managing contacts as well as tasks, optimized for
TaskMaster2103 V1.3 is a desktop app for students to manage their tasks and contacts, optimized for
use via a CLI while still having the benefits of a GUI.

## Table of Contents
Expand Down Expand Up @@ -75,10 +75,24 @@ use via a CLI while still having the benefits of a GUI.
- If a parameter is expected only once in the command, but you specified it multiple times,
an error message will be shown.

- If an extraneous parameter is specified, an error message will be shown.
- If an extraneous parameter is specified, an error message will be shown. (Does not apply for tags or contacts)

- Parameter or argument values cannot contain the character `/`. An error message will be shown if `/` is present in the argument value. For example, `task add 1/2` is invalid, and can be replaced with valid alternatives such as `task add 1 or 2` instead.

</div>

### Notable command prefix formats

Some prefixes require the user to follow certain formats in their commands.

| **Prefix** | **Use** | **Format** |
| ------------- | ------------- | ------------- |
| `ts` | Timestamp, represents a date | `DD`-`MM`-`YYYY` <br/><br/> 1. Single-digit dates or months require a `0` appended at the front. For example, 3rd July 2021 is represented as `03-07-2021`. <br/><br/> 2. The day, month and year are separated by hyphens. |
| `e` | Email | `local-part@domain` <br/><br/> 1. The local-part should only contain alphanumeric characters and these special characters, excluding the parentheses, (+_.-). The local-part may not start or end with any special characters.<br/><br/>2. This is followed by a '@' and then a domain name. The domain name is made up of domain labels separated by periods. <br/><br/> The domain name must: <br/> - end with a domain label at least 2 characters long <br/> - have each domain label start and end with alphanumeric characters <br/> - have each domain label consist of alphanumeric characters, separated only by hyphens, if any. |


<a name="ab3comm"></a>

### Viewing help : `help`

Shows a message explaning how to access the help page.
Expand All @@ -87,8 +101,6 @@ Shows a message explaning how to access the help page.

Format: `help`

<a name="ab3comm"></a>

## Address Book Commands

### Adding a person: `add`
Expand Down Expand Up @@ -124,6 +136,8 @@ Format: `edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [t/TAG]…​`
- When editing tags, the existing tags of the person will be removed i.e adding of tags is not cumulative.
- You can remove all the person’s tags by typing `t/` without
specifying any tags after it.
- If the edited Person's name corresponds to a name of a contact in any task, the corresponding tasks' contacts name will be changed accordingly as well. (if applicable)


Examples:

Expand Down Expand Up @@ -182,10 +196,8 @@ Each task has a compulsory title field, and textual description, timestamp, and

**Format:**

`task add TITLE [d/DESCRIPTION] [ts/TIMESTAMP] [t/TAG] [c/CONTACT]`
`task add TITLE [d/DESCRIPTION] [ts/TIMESTAMP] [t/TAG] [c/CONTACT]`

- Note that contacts in the AddressBook will be displayed in green, grey otherwise.
- If the contact's name in the AddressBook is edited, the corresponding tasks' contact name will be changed accordingly as well. (if applicable)

**Example:**

Expand Down Expand Up @@ -215,12 +227,12 @@ Edits an existing task in the task list

**Format:**

`task edit INDEX [ti/TITLE] [d/DESCRIPTION] [ts/TIMESTAMP] [t/TAG] [c/CONTACT]…`
`task edit INDEX [ti/TITLE] [d/DESCRIPTION] [ts/TIMESTAMP] [t/TAG] [c/CONTACT]…`

- Edits the task at the specified INDEX. The index refers to the index number shown in the displayed task list. The index must be a positive integer 1,2,3 …
- At least one of the optional fields must be provided
- Existing values will be updated to the input values.When editing tags, the existing tags of the task will be removed i.e adding of tags is not cumulative.
- You can remove all the task’s tags by typing tag/ without specifying any tags after it.
- Existing values will be updated to the input values. When editing tags or contacts, the existing tags of the task will be removed i.e adding of tags and contacts are not cumulative.
- You can remove all the task’s tags by typing `t/` without specifying any tags after it. This applies to contacts and `c/` as well.

**Example:**

Expand All @@ -246,14 +258,16 @@ Examples:

### Completing a task: `task done`

Completes an existing task in the task list
Completes an existing task in the task list, or marks it as not done if it is already done.

**Format:**

`task done INDEX`

- Completes the task at the specified INDEX. The index refers to the index number shown in the displayed task list. The index must be a positive integer 1,2,3 …

- If the task at the specified INDEX is already done, this command should un-complete the task, marking it as not done.

**Example:**

`task done 1`
Expand Down Expand Up @@ -293,7 +307,7 @@ Format: `undo`

This command can also be invoked through using the shortcut `CTRL + Z` or `CMD + Z`.

### Undo previous command : `redo`
### Redo previous command : `redo`

Redo the previous command, returning the user back to the previous state, up to a maximum of 15 previous commands.

Expand Down Expand Up @@ -333,12 +347,78 @@ If your changes to the data file makes its format invalid, TaskMaster will disca

---

## Using the GUI

The following image shows an example of the main menu. The task list is shown on the left of the app, while the address book is shown on the right.

![main menu gui](images/guiMainMenu.png)

### 1. CLI

- A Command Line Interface is provided for users to type commands.
- If not focused on the CLI, pressing the `/` key will allow the user to focus on the text box and immediately begin typing.
- To retrieve previously typed commands, you may see "Retrieving previous commands" in the "Other Shortcuts/Commands" section above.

### 2. Filter Dropdown

- A filter can be used to filter the list of tasks. By clicking the filter dropdown, the following dropdown will be shown.

![Filter dropdown gui](images/guiFilterDropdown.png)

Clicking on any one of the dropdown options will filter the task list based on the filter chosen, as shown.

![result for filtering by homework](images/guiFilterHomework.png)

- More than 1 filter can be applied at any time. However, for the `Done` and `Undone` filters, only one can be selected at any time.
- Using the `task find` command also adds to the list of filters.

### 3. Adding a task via GUI

Upon clicking the Add Task Dialog button, the following popup window should appear.

![result for pressing +new button](images/guiAddTaskDialog.png)

Enter relevant text into the text fields.

**[TODO: PLACE FILLED ADD TASK DIALOG HERE]**

To add tags, type the tag into the text field and press the `Enter` key. The tag should be displayed as seen below.

![result for adding new tag](images/guiAddTag.png)

To finish adding a task, click the `Save` button. The task should be added to the task list.

- Pressing the `Enter` key on text fields other than the "Tags" field should add the task to the task list.
- If invalid arguments are provided, the task will still be added without the invalid arguments upon clicking "Save" or the `Enter` key.

### The Task pane

Each task pane represents one task in the task list. Below are examples of 2 tasks. For your reference, relevant components are numbered from 1-6.

![2 task examples](images/guiTasks.png)

Legend:

| **Number** | **Name** | **Description** |
| ------------- | ------------- | ------------- |
| 1 | Task title | Mandatory field. |
| 2 | Done checkbox | Checkbox will be ticked if the task is complete. It will not be ticked otherwise. <br/><br/> Checkboxes can be clicked to toggle the task's completion status from the GUI directly. |
| 3 | Timestamp | Optional field. <br/><br/> No highlight by default. If the task date has past, the timestamp would be highlighted in red. |
| 4 | Description of the task | Optional field. |
| 5 | Tags | Optional field. <br/><br/> All tags are displayed in alphabetical order and highlighted blue. |
| 6 | Timestamp, represents a date | Optional field. <br/><br/> By default, contacts are highlighted grey. However, should a contact's name correspond to a person in the Address Book, it would be highlighted green instead. <br/><br/> All contacts are displayed in alphabetical order, grouped by whether or not the appear in the Address Book. <br/><br/> If the edited Person's name corresponds to a name of a contact in any task, the corresponding tasks' contact name will be changed accordingly as well.

### Editing a task via GUI

Double-clicking on a task pane will bring the user to the Edit Task Dialog. See the above section "Adding a task via GUI" for details regarding the task dialog.


<a name="faq"></a>

## FAQ

**Q**: How do I transfer my data to another Computer?<br>
**A**: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous AddressBook home folder.
**A**: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous TaskMaster2103 home folder.

---

Expand Down
Binary file added docs/images/guiAddTag.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/guiAddTaskDialog.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/guiFilterDropdown.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/guiFilterHomework.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/guiMainMenu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/guiTasks.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit be357b5

Please sign in to comment.