Skip to content

Commit 5555b11

Browse files
committed
connected delete flashcard set to main page, and passed user to DeletionScreen for later use
1 parent 7cff5f1 commit 5555b11

File tree

6 files changed

+41
-28
lines changed

6 files changed

+41
-28
lines changed

src/data/FlashcardSets.csv

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
title,description,isPrivate,flashcardSetId,ownerUsername,flashcardIds
22
test set 1,for testing study use case,false,0,testUser,0,1,2,3
33
empty test set,for testing study use case with empty set,true,1,testUser
4-
new test set,new set for testing flashcards,false,2,testUser

src/data/Users.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
username,password,isAdmin,flashcardSetIds
22
jempio,ilovejempio,false
33
ducas,badpassword,false
4-
testUser,password,false,0,1,2
4+
testUser,password,false,0,1

src/main/java/MainPage/FlashcardSetDataPanel.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import EditorMainPage.EditorMainPage;
44
import dataAccess.DBGateway;
5+
import delete_flashcardset_use_case.*;
6+
import loginAndSignupUseCase.UserLoginResponseModel;
57
import quizUseCase.*;
68
import quizUseCase.screens.QuizSettingsScreen;
79
import studyMode.*;
@@ -13,7 +15,8 @@
1315
public class FlashcardSetDataPanel extends JPanel {
1416

1517
public FlashcardSetDataPanel(String title, String description,
16-
int flashcardSetId, DBGateway gateway) {
18+
int flashcardSetId, DBGateway gateway,
19+
UserLoginResponseModel user) {
1720
Border border = BorderFactory.createTitledBorder(title);
1821

1922

@@ -47,6 +50,12 @@ public FlashcardSetDataPanel(String title, String description,
4750

4851
new QuizSettingsScreen(controller, flashcardSetId);
4952
});
53+
delete.addActionListener(e -> {
54+
DelFlashcardSetOutputBoundary presenter = new DelFlashcardSetPresenter();
55+
DelFlashcardSetInputBoundary interactor = new DelFlashcardSetInteractor(gateway, presenter);
56+
DelFlashcardSetController controller = new DelFlashcardSetController(interactor);
57+
new DeletionScreen(flashcardSetId, controller, user);
58+
});
5059

5160
this.add(buttons);
5261
this.setBorder(border);

src/main/java/MainPage/HomePage.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@ public HomePage(UserLoginResponseModel user) throws IOException {
5050
addFlashcardSetButton.addActionListener(e -> {
5151
FlashcardSetOutputBoundary presenter = new FlashcardSetPresenter();
5252
FlashcardSetFactory setFactory = new FlashcardSetFactory();
53-
FlashcardSetInteractor interactor = new FlashcardSetInteractor(flashcardSetDataAccess, presenter,
53+
FlashcardSetInteractor interactor = new FlashcardSetInteractor(gateway, presenter,
5454
setFactory);
5555
FlashcardSetController controller = new FlashcardSetController(interactor);
56-
new CreationScreen(controller, this);
56+
new CreationScreen(controller, user);
5757

5858
});
5959

@@ -86,7 +86,7 @@ public HomePage(UserLoginResponseModel user) throws IOException {
8686
this.add(labelPanel);
8787
}
8888
else {
89-
this.add(new ListOfFlashcardSetsDataPanel(idsToFlashcardSetData, gateway));
89+
this.add(new ListOfFlashcardSetsDataPanel(idsToFlashcardSetData, gateway, user));
9090
}
9191
this.setSize(1000, 1000);
9292
this.setVisible(true);

src/main/java/MainPage/ListOfFlashcardSetsDataPanel.java

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,26 @@
22

33

44
import dataAccess.DBGateway;
5-
import dataAccess.FlashcardDataAccess;
6-
import dataAccess.FlashcardSetDataAccess;
5+
import loginAndSignupUseCase.UserLoginResponseModel;
76

87
import javax.swing.*;
98
import java.awt.*;
109
import java.io.IOException;
11-
import java.util.HashMap;
1210
import java.util.Map;
1311
import java.util.Set;
1412

1513
public class ListOfFlashcardSetsDataPanel extends JPanel {
1614

1715
public ListOfFlashcardSetsDataPanel(Map<Integer, String[]> idsToFlashcardSetData,
18-
DBGateway gateway) {
16+
DBGateway gateway, UserLoginResponseModel user) {
1917
Set<Integer> flashcardSetIds = idsToFlashcardSetData.keySet();
2018

2119
for (int flashcardSetId : flashcardSetIds) {
2220
String[] data = idsToFlashcardSetData.get(flashcardSetId);
2321
String title = data[0];
2422
String description = data[1];
2523

26-
this.add(new FlashcardSetDataPanel(title, description, flashcardSetId, gateway));
24+
this.add(new FlashcardSetDataPanel(title, description, flashcardSetId, gateway, user));
2725
}
2826

2927
this.setLayout(new FlowLayout());
@@ -32,17 +30,17 @@ public ListOfFlashcardSetsDataPanel(Map<Integer, String[]> idsToFlashcardSetData
3230
}
3331

3432
public static void main(String[] args) throws IOException {
35-
JFrame f = new JFrame();
36-
37-
Map<Integer, String[]> map = new HashMap<>();
38-
map.put(0, new String[] {"test set", "for testing study use case"});
39-
map.put(1, new String[] {"empty test set", "for testing study use case with empty set"});
40-
DBGateway gateway = new DBGateway(new FlashcardDataAccess(DBGateway.getFlashcardPath()),
41-
new FlashcardSetDataAccess(DBGateway.getFlashcardSetPath()),
42-
null);
43-
44-
f.add(new ListOfFlashcardSetsDataPanel(map, gateway));
45-
f.setVisible(true);
46-
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
33+
// JFrame f = new JFrame();
34+
//
35+
// Map<Integer, String[]> map = new HashMap<>();
36+
// map.put(0, new String[] {"test set", "for testing study use case"});
37+
// map.put(1, new String[] {"empty test set", "for testing study use case with empty set"});
38+
// DBGateway gateway = new DBGateway(new FlashcardDataAccess(DBGateway.getFlashcardPath()),
39+
// new FlashcardSetDataAccess(DBGateway.getFlashcardSetPath()),
40+
// null);
41+
//
42+
// f.add(new ListOfFlashcardSetsDataPanel(map, gateway, user));
43+
// f.setVisible(true);
44+
// f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
4745
}
4846
}

src/main/java/delete_flashcardset_use_case/DeletionScreen.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package delete_flashcardset_use_case;
22

3+
import entityRequestModels.UserDsRequestModel;
4+
import loginAndSignupUseCase.UserLoginResponseModel;
5+
36
import javax.swing.*;
47
import java.awt.*;
58
import java.awt.event.ActionEvent;
@@ -8,12 +11,14 @@
811

912
// Frameworks/Drivers (Blue) layer
1013

11-
public class DeletionScreen extends JPanel implements ActionListener {
14+
public class DeletionScreen extends JFrame implements ActionListener {
1215
/**
1316
* The id of the flashcard set to be deleted
1417
*/
1518
int flashcardSetID;
1619

20+
UserLoginResponseModel user;
21+
1722
/**
1823
* The controller
1924
*/
@@ -27,10 +32,9 @@ public class DeletionScreen extends JPanel implements ActionListener {
2732
/**
2833
* A window with a title and a JButton.
2934
*/
30-
public DeletionScreen(int flashcardSetID, DelFlashcardSetController controller, JFrame application) {
35+
public DeletionScreen(int flashcardSetID, DelFlashcardSetController controller, UserLoginResponseModel user) {
3136
this.flashcardSetID = flashcardSetID;
3237
this.controller = controller;
33-
this.application = application;
3438

3539
JLabel name = new JLabel("Flashcard Set Deletion Screen");
3640
name.setAlignmentX(Component.CENTER_ALIGNMENT);
@@ -48,11 +52,14 @@ public DeletionScreen(int flashcardSetID, DelFlashcardSetController controller,
4852
delete.addActionListener(this);
4953
cancel.addActionListener(this);
5054

51-
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
55+
getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.Y_AXIS));
5256

5357
this.add(name);
5458
// this.add(id);
5559
this.add(confirmationButtons);
60+
61+
this.setVisible(true);
62+
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
5663
}
5764

5865
/**
@@ -79,7 +86,7 @@ public void actionPerformed(ActionEvent evt) {
7986
controller.delete(flashcardSetID);
8087
JOptionPane.showMessageDialog(this, "Flashcard Set #"
8188
+ flashcardSetID + " has been deleted.");
82-
application.dispose(); // exit deletion screen
89+
this.dispose(); // exit deletion screen
8390
} catch (FlashcardSetNotFound e) {
8491
JOptionPane.showMessageDialog(this, e.getMessage());
8592
}

0 commit comments

Comments
 (0)