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

Feedback #1

Open
wants to merge 111 commits into
base: feedback
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
beeba5f
Setting up GitHub Classroom Feedback
github-classroom[bot] Jun 13, 2023
ee7442c
Add assignment deadline url
github-classroom[bot] Jun 13, 2023
7e040fd
Declaring features for section 2 and 3 in FEATURES.md
carolinetpham Jun 14, 2023
86ca688
Starter classes and UML
marbleville Jun 14, 2023
c88ef71
GUI Sketch including features from sections 1,2, and 3.
carolinetpham Jun 14, 2023
73ddc9e
Merge remote-tracking branch 'origin/main'
carolinetpham Jun 14, 2023
2b11fc7
Implemented all classes and added method stubs
marbleville Jun 15, 2023
e2b9ed5
Merge remote-tracking branch 'origin/main'
marbleville Jun 15, 2023
f597041
importing FXML file starter
carolinetpham Jun 15, 2023
682529f
Merge remote-tracking branch 'origin/main'
carolinetpham Jun 15, 2023
717dbcc
importing mainScene, eventScene, and taskScene fxmls and deleting ori…
carolinetpham Jun 15, 2023
aba0253
updating mainScene.fxml
carolinetpham Jun 17, 2023
d634f94
JavaDocs and external libs
marbleville Jun 17, 2023
2f5c455
pushing fxml files
carolinetpham Jun 17, 2023
48252a6
pushing fxml
carolinetpham Jun 17, 2023
df5828b
pushing fxml
carolinetpham Jun 17, 2023
19cd4d1
pushing main fxml
carolinetpham Jun 17, 2023
6c031e5
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 17, 2023
888d4c6
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 17, 2023
50d1efd
iguiu
marbleville Jun 17, 2023
5e27494
pushing main fxml
carolinetpham Jun 17, 2023
3089e2f
pushing main fxml
carolinetpham Jun 17, 2023
44c1ad7
pushing main fxml
carolinetpham Jun 17, 2023
26eec44
pushing main fxml
carolinetpham Jun 17, 2023
7547158
pushing main fxml
carolinetpham Jun 17, 2023
5ea96af
Added initalizations for most muttons
marbleville Jun 17, 2023
9c3b592
updating fxmls
carolinetpham Jun 19, 2023
2da0583
dependancies
marbleville Jun 19, 2023
f16f5e2
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 19, 2023
51f0e26
updating fxmls
carolinetpham Jun 19, 2023
b4927f1
pushing taskQueue fxml
carolinetpham Jun 19, 2023
3a0d74f
updating mainScene
carolinetpham Jun 19, 2023
f882de4
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 19, 2023
46f441d
Started Event handers from task button
marbleville Jun 19, 2023
5ed615d
updating mainScene
carolinetpham Jun 19, 2023
3a3fdec
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 19, 2023
ed2aefd
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 20, 2023
1fc0ab0
pushing more fxmls!!!!1!!!
carolinetpham Jun 20, 2023
fc37573
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 20, 2023
aa16716
oh boy! more fxml pushing
carolinetpham Jun 20, 2023
274e60f
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 20, 2023
52132da
guess what;) more fxml pushing
carolinetpham Jun 20, 2023
d8fe359
JavaDocs and external libs
marbleville Jun 17, 2023
130faf8
pushing fxml
carolinetpham Jun 17, 2023
53b61b8
pushing fxml
carolinetpham Jun 17, 2023
e7ff113
pushing main fxml
carolinetpham Jun 17, 2023
7892384
iguiu
marbleville Jun 17, 2023
ce310a3
Started Event handers from task button
marbleville Jun 20, 2023
9c3940e
Merge remote-tracking branch 'origin/lehrhardt' into HEAD
marbleville Jun 20, 2023
a7a35f7
pushing fxml files
carolinetpham Jun 17, 2023
8e06a36
wooooooooo fxml push
carolinetpham Jun 20, 2023
61fcb21
addEvent methods
marbleville Jun 20, 2023
5b34ada
pssstttttttttt more fxml files...
carolinetpham Jun 20, 2023
1b18716
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 20, 2023
2142920
pssstttttttttt more fxml files...
carolinetpham Jun 20, 2023
acdb81d
Merge remote-tracking branch 'origin/CPham' into HEAD
marbleville Jun 20, 2023
14f13d6
fxmls... again
carolinetpham Jun 20, 2023
018100f
Added some tests for the BujoFileWriter and Day class
p27sinha Jun 21, 2023
a0cc1db
addEvent methods
marbleville Jun 21, 2023
2450b64
Merge remote-tracking branch 'origin/CPham' into HEAD
marbleville Jun 21, 2023
1ebd47e
fxml slayyyy
carolinetpham Jun 21, 2023
b15a12c
more fxmls
carolinetpham Jun 21, 2023
c8c4d65
more fxmls
carolinetpham Jun 21, 2023
09893c6
Merge remote-tracking branch 'origin/CPham' into HEAD
marbleville Jun 21, 2023
a725787
main fxml
carolinetpham Jun 21, 2023
d34b851
adding buttons etc.
marbleville Jun 21, 2023
b846487
fxmls
carolinetpham Jun 21, 2023
73332db
Merge remote-tracking branch 'origin/CPham' into HEAD
marbleville Jun 21, 2023
14b5a04
fxmls
carolinetpham Jun 21, 2023
78659f0
more
carolinetpham Jun 21, 2023
7258d79
Added some tests for the Day, Event, Task, Time and Week class
p27sinha Jun 21, 2023
f02fe95
Merge remote-tracking branch 'origin/main'
p27sinha Jun 21, 2023
63f0e05
adding buttons etc.
marbleville Jun 21, 2023
b94badf
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 21, 2023
f3889b0
more fxmls
carolinetpham Jun 21, 2023
48ed394
Merge remote-tracking branch 'origin/main' into CPham
carolinetpham Jun 21, 2023
1d64905
warningScene fxml
carolinetpham Jun 21, 2023
99ed98f
please please please
marbleville Jun 21, 2023
ca3c1ad
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 21, 2023
dc2ad74
please please please
marbleville Jun 21, 2023
72440de
saveFileScene push
carolinetpham Jun 21, 2023
792ca5b
please please please pls
marbleville Jun 21, 2023
4632cf8
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 21, 2023
6ec0896
Merge remote-tracking branch 'origin/lehrhardt' into CPham
carolinetpham Jun 21, 2023
19f8cc3
warningScene
carolinetpham Jun 21, 2023
c5478fe
warningScene
carolinetpham Jun 21, 2023
e965c65
added progress bar
carolinetpham Jun 21, 2023
8c82d14
added progress bar
carolinetpham Jun 21, 2023
3a69546
Added some tests for the Day, Event, Task, Time and Week class
p27sinha Jun 21, 2023
e61ea25
Merge remote-tracking branch 'origin/main' into lehrhardt
marbleville Jun 21, 2023
05b8dac
file saveing works
marbleville Jun 21, 2023
1113cf4
file saveing works
marbleville Jun 21, 2023
46ad0ae
Merge pull request #19 from CS-3500-OOD/lehrhardt
marbleville Jun 21, 2023
91a4e26
Merge remote-tracking branch 'origin/CPham' into lehrhardt
marbleville Jun 21, 2023
fa19d04
checks
marbleville Jun 21, 2023
aad12fa
Merge pull request #20 from CS-3500-OOD/lehrhardt
marbleville Jun 21, 2023
5e9d384
Added some tests for the Day, Event, Task, Time and Week class
p27sinha Jun 22, 2023
1f5b6be
Merge pull request #21 from CS-3500-OOD/PsinhaNew
marbleville Jun 22, 2023
7ea5935
features.md push
carolinetpham Jun 22, 2023
628b8a4
Merge pull request #22 from CS-3500-OOD/CPham
marbleville Jun 22, 2023
0e2e7f7
checks
marbleville Jun 22, 2023
ad39ca5
fixing fxml for check style
carolinetpham Jun 22, 2023
5b1b4f9
checks
marbleville Jun 22, 2023
9c1e945
checks
marbleville Jun 22, 2023
3012b93
Merge pull request #23 from CS-3500-OOD/lehrhardt
marbleville Jun 22, 2023
20ed0f4
REDAME.txt
marbleville Jun 22, 2023
57d530a
Merge pull request #24 from CS-3500-OOD/lehrhardt
marbleville Jun 22, 2023
6fa9ad4
oops
marbleville Jun 22, 2023
6a94b31
Merge pull request #25 from CS-3500-OOD/lehrhardt
marbleville Jun 22, 2023
d195e9c
GUI ss
marbleville Jun 22, 2023
b5d4bab
Merge pull request #26 from CS-3500-OOD/lehrhardt
marbleville Jun 22, 2023
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
3 changes: 2 additions & 1 deletion .idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 6 additions & 5 deletions FEATURES.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@
- Persistence

## Section 2: Headlining Features

- Task Queue
- Themes
- Menu bar

## Section 3: Power Ups


## Section 3: Power Ups

- Quotes & Notes
- Progress Bar
- Sort By Name & Description

## Section 4: Quality of Life

Expand Down
Binary file added PA05_UML_Diagram.drawio.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 27 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,28 @@
# 3500 PA05 Project Repo
Java Journal!
This bullet journal program allows you to write and save task and events for a week.
You can save these to a file for later. This journa also supports adding a limit for how many
tasks you can have in a day. This is a great way to keep track of your tasks and events for the week!

[PA Write Up](https://markefontenot.notion.site/PA-05-8263d28a81a7473d8372c6579abd6481)
GUI:

- https://ibb.co/Qk6m2nH

SOLID Principles:

- Single Responsibility Principle: Each class is only responsible for a single job in the bullet
journal.
- Open/Closed Principle: The controller class and its supporting model classes are open for
extension but closed for modification. This is because the Journal class can be extended to
add more functionality, but the classes do not need to be modified to add more functionality.
- Liskov Substitution Principle: This application makes use of an abstract "Commitment" class.
This allows for the use of the "Commitment" class to be used in place of its subclasses.
- Interface Segregation Principle: Interfaces and classes in this BuJo project contain only the methods
that they require to function.
- Dependency Inversion Principle: The controller class is injected with the Week that it displays.
This allows for the controller to be independent of the Week class.

Possible Extensions:

- With my "initButton" method in the controller class, we could add a popup that allows a user to
enter a quote to be saves on the main screen. This popup would save its data to the Week class,
where it would be persisted.
5 changes: 3 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,14 @@ javafx {

dependencies {
// Jackson
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.15.1'

implementation("com.fasterxml.jackson.core:jackson-databind:2.15.0")
// JavaFX
implementation('org.controlsfx:controlsfx:11.1.2')

// JUnit
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testImplementation 'junit:junit:4.13.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'

// TestFX
Expand Down
Binary file added pa05_sketch_sections123.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 52 additions & 0 deletions src/main/java/cs3500/pa05/Driver.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
package cs3500.pa05;

import cs3500.pa05.controller.BujoController;
import cs3500.pa05.model.Week;
import cs3500.pa05.view.BujoView;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;

/**
* Represents a Java Bullet Journal game application
*/
public class Driver extends Application {

/**
* Starts the GUI for a game of Java Bullet Journal and initialized the module,
* view and controller
*
* @param stage the JavaFX stage to add elements to
*/
@Override
public void start(Stage stage) {
stage.setTitle("Bullet Journal!");

// instantiate a simple welcome GUI view
Week week = new Week();
BujoController controller = new BujoController(week, stage);
BujoView view = new BujoView(controller);

try {
// load and place the view's scene onto the stage
Scene scene = view.load();
stage.setScene(scene);

controller.run();

// render the stage
stage.show();
} catch (IllegalStateException exc) {
System.err.println("Unable to load GUI.");
}
}

/**
* Entry point for a game of Java Bullet Journal
*
* @param args the command line arguments (unused)
*/
public static void main(String[] args) {
launch();
}
}
Loading