Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[T8][F09-C3] #152

Open
wants to merge 408 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
408 commits
Select commit Hold shift + click to select a range
186dbf2
Fix mark and unmark
shimin2016 Oct 22, 2016
bd8f248
fix mark test
shimin2016 Oct 22, 2016
8533c0b
Merge pull request #84 from CS2103AUG2016-F09-C3/Fix_Mark_and_Unmark
shimin2016 Oct 22, 2016
e43faaf
Command Box now will resume to normal when entering new text
e-tys Oct 22, 2016
ed6104c
Merge pull request #85 from CS2103AUG2016-F09-C3/UI
e-tys Oct 22, 2016
d82364a
Enhance list Now it is possible to execute:
antoniadevina Oct 23, 2016
39b0dc4
trying to add next and last. but i get run time error
antoniadevina Oct 23, 2016
74522b7
make a test case and passed all test case.
antoniadevina Oct 23, 2016
b4a29a7
Merge branch 'Add_ListCommand'
antoniadevina Oct 23, 2016
54157e6
fix the merge. BUT EDIT TEST CASE FAILING
antoniadevina Oct 23, 2016
66fcc0c
Fix:
antoniadevina Oct 25, 2016
192d910
Merge branch 'Add_ListCommand_next_and_last'
antoniadevina Oct 25, 2016
d7fa2c7
Tidy up the DateTimeInfo class
antoniadevina Oct 25, 2016
935caf8
Add auto sorting functionality
teojm37 Oct 25, 2016
896a042
Undo Command works for Delete
antoniadevina Oct 25, 2016
72f5b95
All undo is working
antoniadevina Oct 25, 2016
f47fa74
Fix tests
teojm37 Oct 25, 2016
8c21e80
Adding all the method description in DateTimeInfo class
antoniadevina Oct 26, 2016
64ae002
add some test cases to TimeDateInfo
antoniadevina Oct 26, 2016
84e5086
Merge pull request #88 from CS2103AUG2016-F09-C3/CleanUp_List_Command…
antoniadevina Oct 26, 2016
ddc4eeb
Merge pull request #89 from CS2103AUG2016-F09-C3/Add_UndoCommand
antoniadevina Oct 26, 2016
563d6ff
add undo for list
antoniadevina Oct 26, 2016
a9dbe5f
WIP
teojm37 Oct 26, 2016
9230cf5
WIP2
teojm37 Oct 26, 2016
e4e3c49
Finally done.
teojm37 Oct 26, 2016
6c3980a
Merge branch 'master' into Add_auto_sorting
teojm37 Oct 26, 2016
61f2354
Merge pull request #90 from CS2103AUG2016-F09-C3/Add_auto_sorting
teojm37 Oct 26, 2016
2cb9906
Fix list mark test
antoniadevina Oct 26, 2016
2863dbe
Add (Done) in the name
antoniadevina Oct 27, 2016
5ea29ea
Merge branch 'Add_DONE_as_attribute_of_name' into Fix_list_TestCase
antoniadevina Oct 27, 2016
72bba77
undo the throw exception
antoniadevina Oct 27, 2016
eb9b9d1
Merge pull request #91 from CS2103AUG2016-F09-C3/Fix_list_TestCase
antoniadevina Oct 27, 2016
d795427
works for find
antoniadevina Oct 27, 2016
feb9714
Merge pull request #92 from CS2103AUG2016-F09-C3/Add_UndoCommand
antoniadevina Oct 27, 2016
c2055c9
Added auto complete list for basic command
e-tys Oct 27, 2016
cbbbaee
Fix the failing edit test
antoniadevina Oct 27, 2016
77628a9
Merge pull request #95 from CS2103AUG2016-F09-C3/Enhance_UndoCommand
antoniadevina Oct 27, 2016
25841e4
Minor changes in sort
antoniadevina Oct 27, 2016
19909dd
Add Block Command v2
shimin2016 Oct 27, 2016
bbbb20b
Fix testcase
shimin2016 Oct 27, 2016
6c1e30b
Merge pull request #96 from CS2103AUG2016-F09-C3/Add_Block_Command_V2
shimin2016 Oct 27, 2016
c89f492
change the logic of undo in mark, unmark and edit
antoniadevina Oct 27, 2016
7e04059
Add test cases
antoniadevina Oct 27, 2016
2f985e9
Merge branch 'Changes_in_undo_class'
antoniadevina Oct 27, 2016
0b2c527
Additional merge
antoniadevina Oct 27, 2016
78f1ff1
add //@@author A0127686R to the code i added
antoniadevina Oct 27, 2016
0760ec2
Adding tags and improving code quality
teojm37 Oct 27, 2016
caf2353
Merge branch 'master' into Add_code_tags_for_v0.4
teojm37 Oct 27, 2016
bde0a1a
Organize Imports
teojm37 Oct 27, 2016
6b53660
Merge pull request #100 from CS2103AUG2016-F09-C3/Add_code_tags_for_v0.4
teojm37 Oct 27, 2016
32cb49e
add recurring task function
e-tys Oct 27, 2016
b147981
update HelpCommand
shimin2016 Oct 27, 2016
378d200
update BlockCommand
shimin2016 Oct 27, 2016
c3a4bfb
add tag for v04
shimin2016 Oct 27, 2016
7505174
Merge branch 'UI'
e-tys Oct 27, 2016
935ad55
Merge pull request #102 from CS2103AUG2016-F09-C3/update_HelpCommand_v2
shimin2016 Oct 27, 2016
7589119
Merge branch 'Add_Recursive_task'
e-tys Oct 27, 2016
807dc12
Merge branch 'master' of https://github.com/CS2103AUG2016-F09-C3/main
e-tys Oct 27, 2016
3a0e43c
use Collate-TUI
shimin2016 Oct 27, 2016
b18fcd9
Merge pull request #104 from CS2103AUG2016-F09-C3/update_aboutUs_md
shimin2016 Oct 27, 2016
c242647
added author tags
e-tys Oct 27, 2016
cf86509
Merge pull request #105 from CS2103AUG2016-F09-C3/add_author_tag
e-tys Oct 27, 2016
e5b8df5
update aboutUs.md
shimin2016 Oct 27, 2016
8db279b
Update AboutUs.md
e-tys Oct 27, 2016
d5f4111
fix aboutUs link not working(shimin)
shimin2016 Oct 27, 2016
4f82cf8
Add collated file
e-tys Oct 27, 2016
d8e0aee
Merge branch 'master' into add_author_tag
e-tys Oct 27, 2016
4037587
Merge pull request #106 from CS2103AUG2016-F09-C3/add_author_tag
e-tys Oct 27, 2016
a62d5a3
Merge branch 'Documentation'
antoniadevina Oct 28, 2016
10f605b
collate A0127686R
antoniadevina Oct 28, 2016
9edc048
Merge commit '8db279bb627a4c4a67b4a456e8da0204d7f3adf0'
antoniadevina Oct 28, 2016
c0b4eac
update Jing Min AboutUs.md
antoniadevina Oct 28, 2016
aa5aa94
Collate UserGuide
antoniadevina Oct 28, 2016
60855a5
Update AboutUs.md
teojm37 Oct 28, 2016
2a0412a
Update AboutUs.md
teojm37 Oct 28, 2016
a09878d
Update AboutUs.md
teojm37 Oct 28, 2016
82a8530
Update AboutUs.md
teojm37 Oct 28, 2016
cd73b1f
Update AboutUs.md
teojm37 Oct 28, 2016
4ec30b7
update aboutUs.md
shimin2016 Oct 28, 2016
ef79c54
Change sort order
teojm37 Oct 28, 2016
3a4bd6a
Merge pull request #107 from CS2103AUG2016-F09-C3/Change_sort
teojm37 Oct 28, 2016
712bfb2
Flexitrack src/main is free from tags
antoniadevina Oct 28, 2016
63136a9
src/test are free from tags
antoniadevina Oct 28, 2016
394527a
Merge branch 'delete_tags'
antoniadevina Oct 28, 2016
a3c169c
Fix edit to work with list and find
teojm37 Oct 28, 2016
26d9faf
Merge branch 'Fix_edit_to_work_with_list_and_find'
teojm37 Oct 28, 2016
d29b010
Add parser for gapCommand
antoniadevina Oct 28, 2016
d4bd7a2
Hasn't work yet
antoniadevina Oct 28, 2016
47a9b80
Prepare undo for redo
teojm37 Oct 28, 2016
a313ede
Add redo command
teojm37 Oct 28, 2016
c7458d4
Add redo command
teojm37 Oct 28, 2016
3f6ab47
Merge pull request #108 from CS2103AUG2016-F09-C3/Add_redo
teojm37 Oct 28, 2016
7192bab
working find timing slot. but need add how many times he want us to r…
antoniadevina Oct 28, 2016
bd0e53a
Remove the Browsel panel from UI and change the display font size
e-tys Oct 29, 2016
2e40829
Remove BrowserPanel file
e-tys Oct 29, 2016
e1586b5
Remove functions that call BrowserPanel
e-tys Oct 29, 2016
0d724a7
Merge pull request #111 from CS2103AUG2016-F09-C3/UI
e-tys Oct 29, 2016
7dc90d9
Add d,h,m so that the user can use shorter format
antoniadevina Oct 29, 2016
e4f84c6
all test case working only need to update the exception
antoniadevina Oct 30, 2016
b877a19
passed all test case
antoniadevina Oct 30, 2016
69d2f5a
Merge pull request #115 from CS2103AUG2016-F09-C3/Find_timing
antoniadevina Oct 30, 2016
f42a964
Update AddCommand with warning overlapping event
shimin2016 Oct 31, 2016
63f5267
fix HelpCommand message display
shimin2016 Oct 31, 2016
b9448fe
Update BlockCommand Class
shimin2016 Oct 31, 2016
f4c1cdf
Add BlockCommand test case
shimin2016 Oct 31, 2016
f3e04c4
Merge pull request #117 from CS2103AUG2016-F09-C3/Update_Block_Command
shimin2016 Nov 1, 2016
25ee1cd
list, gap and undo has proper header
antoniadevina Nov 1, 2016
21f038f
minor changes to ui and header comment
antoniadevina Nov 1, 2016
dd2c56c
Fix all the test case except the fist undo and redo when system testi…
antoniadevina Nov 1, 2016
d375fd2
format parser class
antoniadevina Nov 1, 2016
f1dfb44
Merge pull request #118 from CS2103AUG2016-F09-C3/add_proper_header_c…
antoniadevina Nov 1, 2016
bb597a0
Change the UI to reflect whether it is a deadline task or event
e-tys Nov 1, 2016
470019c
documentation
antoniadevina Nov 1, 2016
1e63cac
update UI
antoniadevina Nov 1, 2016
fbd6d74
Merge pull request #120 from CS2103AUG2016-F09-C3/update_documentation
antoniadevina Nov 1, 2016
4dcab2d
Added recursive method to Flexi Track for task and event.
e-tys Nov 1, 2016
a16d8b8
Change the help message for addCommand to include adding of recursive…
e-tys Nov 1, 2016
3b0efa2
Add change storage path command
shimin2016 Nov 2, 2016
eabcca1
update help
shimin2016 Nov 2, 2016
9b29eb2
Merge pull request #122 from CS2103AUG2016-F09-C3/Change_Storage_Path…
shimin2016 Nov 2, 2016
ecc96b2
fix mark
antoniadevina Nov 3, 2016
1e8f600
Merge pull request #121 from CS2103AUG2016-F09-C3/add_recurring_event…
e-tys Nov 3, 2016
0d18ac1
Merge pull request #119 from CS2103AUG2016-F09-C3/UI
e-tys Nov 3, 2016
919d5d8
Add test cases, timeDateInfo is now 90%
antoniadevina Nov 3, 2016
0246c41
delete select CommandTest
antoniadevina Nov 3, 2016
b8e723a
update model class diagram
antoniadevina Nov 3, 2016
e80153c
Merge pull request #123 from CS2103AUG2016-F09-C3/Fix_test_case_and_mark
antoniadevina Nov 3, 2016
1d46c68
add test case for recurring event and task
e-tys Nov 3, 2016
197fe26
Tagging author
shimin2016 Nov 3, 2016
63f8f29
update help
shimin2016 Nov 3, 2016
cfa40fe
Fix test case
shimin2016 Nov 3, 2016
10c8727
Merge pull request #125 from CS2103AUG2016-F09-C3/Update_Document
shimin2016 Nov 3, 2016
a2319e1
Merge pull request #124 from CS2103AUG2016-F09-C3/add_recurring_event…
e-tys Nov 3, 2016
aa25c31
add usage of recursive add to user guide
e-tys Nov 3, 2016
a5756d6
Merge pull request #126 from CS2103AUG2016-F09-C3/documentation
shimin2016 Nov 3, 2016
6490033
fix Issue #113
shimin2016 Nov 3, 2016
4ae85d5
update user guild and aboutUs.md
shimin2016 Nov 3, 2016
3d83686
undate changeStoragePathCommand
shimin2016 Nov 3, 2016
3f3aad2
Merge pull request #127 from CS2103AUG2016-F09-C3/Update_Document
shimin2016 Nov 3, 2016
9f3e2f4
update collate
shimin2016 Nov 3, 2016
d1cb9d8
Update AboutUs.md
shimin2016 Nov 3, 2016
26a3f97
update collate
shimin2016 Nov 3, 2016
11874a4
update documentation
antoniadevina Nov 3, 2016
0abbc38
update Date Time Info class
antoniadevina Nov 3, 2016
d554e58
Update UserGuide.md
teojm37 Nov 3, 2016
9941df8
can't change it so that ellipse is on the right. now its only on the …
antoniadevina Nov 3, 2016
cb6e6fc
Update UserGuide.md
teojm37 Nov 3, 2016
4a16a85
Removed autocomplete function for command box.
e-tys Nov 3, 2016
501910f
Merge pull request #131 from CS2103AUG2016-F09-C3/UI
e-tys Nov 3, 2016
835a27c
format side delete select
antoniadevina Nov 3, 2016
0b92a3e
Update UserGuide.md
teojm37 Nov 3, 2016
7a46445
Merge branch 'master' into update-user-guide
teojm37 Nov 3, 2016
00a6f42
Merge pull request #132 from CS2103AUG2016-F09-C3/update-user-guide
teojm37 Nov 3, 2016
c43b4d9
undo and redo works for recursive task
antoniadevina Nov 3, 2016
d86a5e7
Update AboutUs.md
teojm37 Nov 3, 2016
268c72c
Update AboutUs.md
teojm37 Nov 3, 2016
f15698a
undo and redo works for all the recursive task
antoniadevina Nov 3, 2016
e0b6228
fix
teojm37 Nov 3, 2016
7a364f0
Merge pull request #135 from CS2103AUG2016-F09-C3/format_code_fix_red…
antoniadevina Nov 3, 2016
0005032
Merge pull request #134 from CS2103AUG2016-F09-C3/Fix_issues_A0127855W
teojm37 Nov 3, 2016
4018e38
minor tweak
teojm37 Nov 3, 2016
e6fff90
fix block
teojm37 Nov 3, 2016
9eb3bc1
Merge pull request #137 from CS2103AUG2016-F09-C3/Fix_block
teojm37 Nov 3, 2016
04f5fbe
changes in Date Time Info class
antoniadevina Nov 3, 2016
b982918
Update FlexiTrack.java
shimin2016 Nov 3, 2016
976f88c
minor changes
antoniadevina Nov 3, 2016
5237087
fix add recursive command
e-tys Nov 3, 2016
81fec5c
Changes the ty/ parameter to take in daily, weekly and monthly
e-tys Nov 3, 2016
881c523
Merge pull request #139 from CS2103AUG2016-F09-C3/add_recurring_event…
e-tys Nov 3, 2016
8d2a07a
Change card panel to green when it is mark as done
e-tys Nov 3, 2016
9891093
Merge pull request #140 from CS2103AUG2016-F09-C3/UI
e-tys Nov 3, 2016
00a6c4a
Merge branch 'update_list'
antoniadevina Nov 3, 2016
3896fbc
Merge branch 'update_list'
antoniadevina Nov 4, 2016
4e3bccf
collate
antoniadevina Nov 4, 2016
1e7fddc
fixed marked floating task to change to green colour
e-tys Nov 4, 2016
058f0a2
all command are not case sensitive
antoniadevina Nov 4, 2016
276a796
Change date time info test case to use system time
e-tys Nov 4, 2016
75f9c09
Edited AddCommandTest to reflect new changes
e-tys Nov 4, 2016
91d69ea
Merge pull request #144 from CS2103AUG2016-F09-C3/update_test_case
e-tys Nov 4, 2016
e903552
update markCommandTest
shimin2016 Nov 4, 2016
e7f4247
Merge branch 'master' of https://github.com/CS2103AUG2016-F09-C3/main…
e-tys Nov 4, 2016
4a74e3b
Merge branch 'master' of https://github.com/CS2103AUG2016-F09-C3/main…
shimin2016 Nov 4, 2016
9eb7605
Merge pull request #145 from CS2103AUG2016-F09-C3/update_test_case
shimin2016 Nov 4, 2016
f255437
Merge pull request #143 from CS2103AUG2016-F09-C3/UI
e-tys Nov 4, 2016
64e764d
change edit tests
teojm37 Nov 4, 2016
d9694f2
list work for a shorter version m, u, f, p, lw, nw, lm, nm,b
antoniadevina Nov 4, 2016
b69a7fc
change edit fails
teojm37 Nov 4, 2016
6e230ba
logging
teojm37 Nov 4, 2016
4331599
Merge pull request #146 from CS2103AUG2016-F09-C3/fix_edit_tests
teojm37 Nov 4, 2016
69c7196
Merge pull request #142 from CS2103AUG2016-F09-C3/make_command_not_ca…
teojm37 Nov 4, 2016
9884729
undo message for add
antoniadevina Nov 4, 2016
d788d02
Revert "all command are not case sensitive"
teojm37 Nov 4, 2016
625d02f
Merge pull request #147 from CS2103AUG2016-F09-C3/revert-142-make_com…
teojm37 Nov 4, 2016
1ed06b7
add undo and redo messages
teojm37 Nov 4, 2016
59cd7ee
Merge branch 'make_command_not_case_sensitive'
teojm37 Nov 4, 2016
f90865d
fix blocked
antoniadevina Nov 4, 2016
5f802e8
Merge pull request #148 from CS2103AUG2016-F09-C3/fix_master
antoniadevina Nov 4, 2016
3f4ad40
Refine add recursive regex
e-tys Nov 5, 2016
c371061
Revert "Refine add recursive regex"
e-tys Nov 5, 2016
d7b0900
Refine Regex for recursive
e-tys Nov 5, 2016
f8021e3
Refine recursive task code
e-tys Nov 5, 2016
4b87ee9
Merge pull request #149 from CS2103AUG2016-F09-C3/add_recurring_event…
e-tys Nov 5, 2016
82f89fc
Made changes to documentation
e-tys Nov 5, 2016
f5425e6
Merge pull request #150 from CS2103AUG2016-F09-C3/documentation
e-tys Nov 5, 2016
f1aea19
Update test case and collate files
e-tys Nov 6, 2016
9598907
Merge pull request #151 from CS2103AUG2016-F09-C3/update_test_case
e-tys Nov 6, 2016
7e67747
Update UserGuide.md
shimin2016 Nov 7, 2016
6860bd5
wip
teojm37 Nov 7, 2016
735d1dc
Update TestScript.md
teojm37 Nov 7, 2016
3d18942
add SampleData
teojm37 Nov 7, 2016
d252c35
changed recurring task to fit the format
antoniadevina Nov 7, 2016
268dff8
Merge pull request #152 from CS2103AUG2016-F09-C3/change_recurring_task
antoniadevina Nov 7, 2016
8e7ac00
fix dateTimeInfo class
antoniadevina Nov 7, 2016
e360456
fix undo edit
antoniadevina Nov 7, 2016
2791f1d
Merge pull request #153 from CS2103AUG2016-F09-C3/fixundoedit
teojm37 Nov 7, 2016
ae9b776
update storage path
shimin2016 Nov 7, 2016
034826c
Merge branch 'master' of https://github.com/CS2103AUG2016-F09-C3/main
shimin2016 Nov 7, 2016
6369d8a
Merge branch 'master' into Add_manual_test_script
teojm37 Nov 7, 2016
2ec6362
Update links to AboutUs
e-tys Nov 7, 2016
2380a74
Update config.json
shimin2016 Nov 7, 2016
03d407f
test cases
antoniadevina Nov 7, 2016
889b3c7
Merge pull request #154 from CS2103AUG2016-F09-C3/fix_dateTimeInfo
antoniadevina Nov 7, 2016
1f20162
Update UserGuide.md
shimin2016 Nov 7, 2016
676feb1
Update AboutUs.md
e-tys Nov 7, 2016
edf9761
Update TestScript.md
teojm37 Nov 7, 2016
8882d0a
Merge branch 'Add_manual_test_script' of https://github.com/CS2103AUG…
teojm37 Nov 7, 2016
13794b8
Update TestScript.md
teojm37 Nov 7, 2016
0269f98
Merge pull request #155 from CS2103AUG2016-F09-C3/Add_manual_test_script
teojm37 Nov 7, 2016
182fa99
Update UserGuide.md
e-tys Nov 7, 2016
13ca21c
Update UserGuide.md
e-tys Nov 7, 2016
df2c88e
Update DeveloperGuide.md
e-tys Nov 7, 2016
0051843
scroll when flexi tracked is changed
antoniadevina Nov 7, 2016
170764d
minor changes
antoniadevina Nov 7, 2016
2fa1bac
minor changes
antoniadevina Nov 7, 2016
0ffe58b
Update DeveloperGuide.md
teojm37 Nov 7, 2016
c79fb72
update diagram image
shimin2016 Nov 7, 2016
9b5417d
Merge pull request #156 from CS2103AUG2016-F09-C3/update_scroll_panel
antoniadevina Nov 7, 2016
3f7e7f3
Update Readme.md
e-tys Nov 7, 2016
bd600fd
Update Readme.md
e-tys Nov 7, 2016
532dae9
update aboutUs.md
e-tys Nov 7, 2016
870a596
update diagram
shimin2016 Nov 7, 2016
ef48ee3
Merge branch 'master' of https://github.com/CS2103AUG2016-F09-C3/main
shimin2016 Nov 7, 2016
88e428a
update DeveloperGuide.md
e-tys Nov 7, 2016
74758d1
Update TestScript.md
teojm37 Nov 7, 2016
a6143dc
update list
antoniadevina Nov 7, 2016
3591ef2
Update UserGuide.md
antoniadevina Nov 7, 2016
059fb09
update collate
antoniadevina Nov 7, 2016
8030b51
upload PDF ducument
shimin2016 Nov 7, 2016
7f5b437
update doc and pdf
shimin2016 Nov 7, 2016
82dea7c
Update TestScript.md
teojm37 Nov 7, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ lib/*
*.log
*.log.*
*.csv
config.json
src/test/data/sandbox/
preferences.json
.DS_Store
Expand Down
4 changes: 2 additions & 2 deletions .project
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>addressbook-level4</name>
<comment>Project addressbook-level4 created by Buildship.</comment>
<name>FlexiTrack</name>
<comment>Project FlexiTrack created by Buildship.</comment>
<projects>
</projects>
<buildSpec>
Expand Down
Binary file added Collate-TUI.jar
Binary file not shown.
Empty file added NewUser.txt
Empty file.
22 changes: 7 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,10 @@
[![Build Status](https://travis-ci.org/se-edu/addressbook-level4.svg?branch=master)](https://travis-ci.org/se-edu/addressbook-level4)
[![Coverage Status](https://coveralls.io/repos/github/se-edu/addressbook-level4/badge.svg?branch=master)](https://coveralls.io/github/se-edu/addressbook-level4?branch=master)
[![Build Status](https://travis-ci.org/CS2103AUG2016-F09-C3/main.svg?branch=master)]
(https://travis-ci.org/CS2103AUG2016-F09-C3/main.svg?branch=master)
[![Coverage Status](https://coveralls.io/repos/github/CS2103AUG2016-F09-C3/main/badge.svg?branch=master)](https://coveralls.io/github/CS2103AUG2016-F09-C3/main?branch=master)

# Address Book (Level 4)
# FlexiTrack (v0.5)

<img src="docs/images/Ui.png" width="600"><br>

* This is a desktop Address Book application. It has a GUI but most of the user interactions happen using
a CLI (Command Line Interface).
* It is a Java sample application intended for students learning Software Engineering while using Java as
the main programming language.
* It is **written in OOP fashion**. It provides a **reasonably well-written** code example that is
**significantly bigger** (around 6 KLoC)than what students usually write in beginner-level SE modules.
* What's different from [level 3](https://github.com/se-edu/addressbook-level3):
* A more sophisticated GUI that includes a list panel and an in-built Browser.
* More test cases, including automated GUI testing.
* Support for *Build Automation* using Gradle and for *Continuous Integration* using Travis CI.


#### Site Map
* [User Guide](docs/UserGuide.md)
Expand All @@ -29,6 +18,9 @@

* Some parts of this sample application were inspired by the excellent
[Java FX tutorial](http://code.makery.ch/library/javafx-8-tutorial/) by *Marco Jakob*.

* This program uses Natty Time (http://natty.joestelmach.com/)

* This program is build based off Address Book Level 4's code sample

#### Licence : [MIT](LICENSE)
18 changes: 10 additions & 8 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ allprojects {
exclude group: "junit", module: "junit"
}
testCompile "org.testfx:openjfx-monocle:$monocleVersion"

compile group: 'com.joestelmach', name: 'natty', version: '0.12'
}

sourceSets {
Expand All @@ -74,10 +76,10 @@ allprojects {
}

shadowJar {
archiveName = "addressbook.jar"
archiveName = "flexitrack.jar"

manifest {
attributes "Main-Class": "seedu.address.MainApp"
attributes "Main-Class": "seedu.flexitrack.MainApp"
}

destinationDir = file("${buildDir}/jar/")
Expand Down Expand Up @@ -113,8 +115,8 @@ tasks.coveralls {
onlyIf { System.env.'CI' }
}

class AddressBookTest extends Test {
public AddressBookTest() {
class FlexiTrackTest extends Test {
public FlexiTrackTest() {
forkEvery = 1
systemProperty 'testfx.setup.timeout', '60000'
}
Expand All @@ -128,7 +130,7 @@ class AddressBookTest extends Test {
}
}

task guiTests(type: AddressBookTest) {
task guiTests(type: FlexiTrackTest) {
include 'guitests/**'

jacoco {
Expand All @@ -137,16 +139,16 @@ task guiTests(type: AddressBookTest) {
}


task nonGuiTests(type: AddressBookTest) {
include 'seedu/address/**'
task nonGuiTests(type: FlexiTrackTest) {
include 'seedu/flexitrack/**'

jacoco {
destinationFile = new File("${buildDir}/jacoco/test.exec")
}
}

// Test mode depends on whether headless task has been run
task allTests(type: AddressBookTest) {
task allTests(type: FlexiTrackTest) {
jacoco {
destinationFile = new File("${buildDir}/jacoco/test.exec")
}
Expand Down
123 changes: 123 additions & 0 deletions collated/docs/A0127686R.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
# A0127686R
###### /DeveloperGuide.md
``` md
## Appendix E : Product Survey

####Google Calendar

#####Pros:
> Help to organise schedules and pre-planned them in advance
> Able to show schedules in multiple view (3 days, day, month or week) format
> Easy to synchronise planned schedules across multiple devices


#####Cons:
> Unable to use single line command to add new events
> Each event creation take up around 2 minutes of the user time to fill up the details
> Unable to do partial search for a particular event name
> Confusing timing display on each event. (E.g 11p for night event and 11 for morning event)


####Any.Do

#####Pros:
> Help to add a quick task to the list
> Able to invite friends in the same event or task
> Able to send notification to the user before the event start
> Able to add new task(s) to personalised folder

```
###### /UserGuide.md
``` md
## Features

> **Command Format**
> * Words in `square brackets ([])` are the parameters.
> * Items within `arrow signs (<>)` are optional.
> * Items with `...` after them can have multiple instances.
> * The order of parameters is fixed except for edit command.

#### Adding a task: `add`
#### Shortcut : `a`
Adds a task to the FlexiTrack.<br>
Format: `add [task title] < by/ [deadline] >`

Examples:
* `add CS2103 tutorial 3 `
* `add CS2103 tutorial 3 by/ Saturday`
* `a CS2103 tutorial 3 by/ tmr 9am`

#### Adding an event: `add`
#### Shortcut : `a`
Adds a event to the FlexiTrack.<br>
Format: `add [event title] from/ [starting time] to/ [ending time]`

Examples:
* `add Bintan trip from/ Saturday to/ Sunday`
* `a CS2103 Lecture from/ Friday 2pm to/ Friday 4pm `

```
###### /UserGuide.md
``` md
#### Finding a task or an event containing any keyword in their title: `find`
#### Shortcut : `f`
Finds a task ot an event whose title contain any of the given keywords.<br>
Format: `find KEYWORD [MORE_KEYWORDS]`

> * The search is non case sensitive. e.g `soccer` will match `Soccer`
> * The order of the keywords does not matter. e.g. `soccer dinner` will match `dinner soccer`
> * Only the task/event title is searched.
> * Only full words will be matched e.g. `socc` will not match `soccer` (unless 'f/' keyword is used)
> * Task or event matching at least one keyword will be returned (i.e. `OR` search).
e.g. `soccer` will match `soccer training`
> * Search by exact task name can be activated with the shortcut 'f/' before the task name.

Examples:
* `find Soccer`<br>
Returns `Soccer training` but not `soccer training`
* `find assignment dinner mid-term`<br>
Returns Any task/event having `assignment`, `dinner`, or `mid-term` in the title
* `f attend CS2103 lecture`<br>
Returns Any task/event having `attend`, `CS2103`, or `lecture`

#### Finding a specific task or an event containing an exact phrase in their title: `find f/`
#### Shortcut : `f f/`
Finds a task of an event whose title contain any of the given keywords.<br>
Format: `find f/ EXACT PHRASE`

```
###### /UserGuide.md
``` md
## Time Format
FlexiTrack support various timing input. Here are some examples!

#### Exact timing
User Input | Timing information read by FlexiTrack
---------- | :---------------
21 June 2018 4pm | Jun 21 16:00:00
1st January 7.20 | Jan 01 07:20
April 22nd 5am | Apr 22 05:00

#### Relative timing
If today is 1st of February a relative timing input is also possible with FlexiTrack

User Input | Timing information read by FlexiTrack
---------- | :---------------
Tomorrow 4pm | Feb 02 16:00:00
Next week 720am | Feb 08 07:20
3 weeks 2 pm | Feb 22 14:00
next month 8am | Mar 01 08:00

#### Notes on FlexiTrack timing
1. FlexiTrack does support year. However, make sure that you also specify the hour of the timing
as FlexiTrack will choose timing over year when it is uncertain.
2. When you do not specify the exact timing, FlexiTrack will assign your task to be 8:00 for due
date and starting time, and 17:00 for ending time.

## 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 FlexiTrack folder.

```
144 changes: 144 additions & 0 deletions collated/docs/A0127855W.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
# A0127855W
###### /DeveloperGuide.md
``` md

### Undo/Redo Implementation

Each undoable command has an execute() method and an executeUndo() method.

2 static Command stacks are maintained. One in the UndoCommand class (doneCommandStack) and the other in the RedoCommand class (undoneCommandStack). From application startup, whenever an undoable command is entered, the created command object is first populated with the data of whatever the command changes, before the execute() method is called. The changes are then applied and the entire command object is pushed into the doneCommandStack.

Subsequently, when the UndoCommand is entered, the last command entered is popped out of the doneCommandStack and the executeUndo() method is called. The command is then pushed into the undoneCommandStack.

When the RedoCommand is entered, the last command undone is popped out of the undoneCommand Stack and the execute() method is called, effectively reexecuting the undone command. The command is then pushed into the doneCommandStack to ensure that the we can undo and redo the same command over and over.

This method of implemeting the undo/redo functionality was chosen due to its simplicity of implementation, as well as the relatively light memory usage, especially when compared to the 'save entire state' method of implementation.

```
###### /UserGuide.md
``` md
#### Find free time slots: `gap`
#### Shortcut: `g`
Find and list free time slots in the schedule that is equal to or longer than the specified timing (in hours).<br>
Format: `find time [number of hours] < [number of slots to find] >`

> If there is there is a time slot longer than the required free time slot,
then the free time period will be return to you
> By default, find time will only give a single free slot when the number of slots required is not keyed in.

Examples:
* `gap 3 `<br>
You have a minimum of 3 hours free time slot between: today 5pm - 9pm.
* `g 5 3 `<br>
You have a minimum of 5 hours free time slot between: Monday 2pm - 9pm, Tuesday 1pm - 6pm and Saturday 9am - 5pm.

#### Deleting a task or event : `delete`
#### Shortcut : `d`
Deletes the specified task/event from the FlexiTrack.<br>
Format: `delete [index]`

> Deletes the task/event at the specified `index`.
The index refers to the index number shown in the most recent listing.<br>
The index **must be a positive integer** 1, 2, 3, ...

Examples:
* `delete 2`<br>
Deletes the 2nd task/event in the address book.
* `d 1`<br>
Deletes the 1st task/event in the results of the `find` command.

```
###### /UserGuide.md
``` md
#### Clear the FlexiTrack : `clear`
#### Shortcut : `c`
Clears the FlexiTrack, resetting it to a blank slate.<br>
Format: `clear`

> The command can be undone as long as the user does not exit FlexiTrack after clearing.

#### Edit a task or event: `edit`
#### Shortcut : `e`
Edits the specified task/event from the FlexiTrack.<br>
Format: `edit [index] <by/ [deadline]> <n/ [title]> <from/ [starting time]> <to/ [ending time]>`


> * Edits the task/event at the specified `index`.
The index refers to the index number shown in the most recent listing.<br>
The index **must be a positive integer** 1, 2, 3, ...
> * Edit parameters must fit the type of task / event being edited. e.g. duedate should only be edited on a task.
> * Floating tasks can be converted into tasks or events by editing the appropriate parameter.
> * User cannot edit a floating task into an event with only a starting time but no ending time or vice versa.

Examples:
* `edit 2 n/ Name Edited`<br>
Edits the title of the task/event.
* `e 1 from/ today to/ tomorrow`<br>
Edits the start and end times of the specified event.
```
###### /UserGuide.md
``` md
#### List: `list`
#### Shortcut : `l`
Lists tasks and events that match the specified filter.<br>
Format: `list <filter>`

> Accepted filters include:
> * future
> * next week
> * mark
> * block
> Unmarked floating tasks will be listed.

Examples:
* `list next month` <br>
Returns a list of next month's tasks and events

#### Undo operations : `undo`
#### Shortcut : `ud`
Undo the previous operation.<br>
Format: `undo`

> The command will only undo commands entered during the current session of FlexiTrack
> Undo works for: add, delete, clear, mark, unmark, block.

#### Redo operations : `redo`
#### Shortcut : `rd`
Redo the previously undone operation.<br>
Format: `redo`

> The command will only redo commands undone during the current session of FlexiTrack

```
###### /UserGuide.md
``` md
#### Exiting the program : `exit`
#### Shortcut : `q`
Exits the program.<br>
Format: `exit`

```
###### /UserGuide.md
``` md
## Command Summary

Command | Shortcut | Format
-------- | ---- | :--------
Add task | a | `add [task title] <fr/ [number of recurrences] ty/ [daily | weekly | monthly]> <by/ [deadline]>`
Add event | a | `add [event title] <fr/ [number of recurrences] ty/ [daily | weekly | monthly]> from/ [starting time] to/ [ending time]`
Block | b | `block [description] from/ [starting time] to/ [ending time]`
Find time | g | `gap [number of hours] < [number of slots to find] >`
Delete | d | `delete [index]`
Clear | c | `clear`
Edit | e | `edit [index] <by/ [deadline]> <n/ [title]> <from/ [starting time]> <to/ [ending time]>`
Mark | m | `mark [index]`
Unmark | u | `unmark [index]`
Find | f | `find [key words] < [key words] >`
List | l | `list <filter>`
Select | s | `select [index]`
Undo | ud | `undo`
Redo | rd | `redo`
Change Storage Path | cs | `cs [path]`
Exit | q | `exit`
Help | h | `help <command word>`
```
Loading