@@ -90,7 +90,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
javax.swing.table.AbstractTableModel (implements java.io.Serializable, javax.swing.table.TableModel)
java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
@@ -101,28 +101,28 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
javax.swing.JPanel (implements javax.accessibility.Accessible)
@@ -135,7 +135,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants)
@@ -146,28 +146,35 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-eu.steffo.cleaver.logic.compress.CompressConfig
-eu.steffo.cleaver.logic.crypt.CryptConfig
-eu.steffo.cleaver.Main
-eu.steffo.cleaver.logic.progress.Progress
+ eu.steffo.cleaver.logic.compress.CompressConfig
+eu.steffo.cleaver.logic.crypt.CryptConfig
+eu.steffo.cleaver.Main
+java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
-eu.steffo.cleaver.logic.split.SplitConfig
+ eu.steffo.cleaver.logic.progress.Progress
+eu.steffo.cleaver.logic.split.SplitConfig
+
+
+eu.steffo.cleaver.Test
java.lang.Thread (implements java.lang.Runnable)
-eu.steffo.cleaver.logic.Job
+ eu.steffo.cleaver.logic.Job
@@ -176,8 +183,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -199,7 +206,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-Overview
+Module
Package
Class
Tree
diff --git a/docs/package-search-index.js b/docs/package-search-index.js
index 528945b..f1d0faa 100644
--- a/docs/package-search-index.js
+++ b/docs/package-search-index.js
@@ -1 +1 @@
-packageSearchIndex = [{"l":"All Packages","url":"allpackages-index.html"},{"l":"eu.steffo.cleaver"},{"l":"eu.steffo.cleaver.errors"},{"l":"eu.steffo.cleaver.gui"},{"l":"eu.steffo.cleaver.gui.panels"},{"l":"eu.steffo.cleaver.gui.rows"},{"l":"eu.steffo.cleaver.gui.rows.option"},{"l":"eu.steffo.cleaver.logic"},{"l":"eu.steffo.cleaver.logic.compress"},{"l":"eu.steffo.cleaver.logic.crypt"},{"l":"eu.steffo.cleaver.logic.progress"},{"l":"eu.steffo.cleaver.logic.split"}]
\ No newline at end of file
+packageSearchIndex = [{"l":"All Packages","url":"allpackages-index.html"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.errors"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.gui"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.gui.panels"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.gui.rows"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.gui.rows.option"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.logic"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.logic.compress"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.logic.crypt"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.logic.progress"},{"m":"eu.steffo.cleaver","l":"eu.steffo.cleaver.logic.split"}]
\ No newline at end of file
diff --git a/docs/serialized-form.html b/docs/serialized-form.html
index aeeddba..a59ac87 100644
--- a/docs/serialized-form.html
+++ b/docs/serialized-form.html
@@ -2,10 +2,10 @@
-
+
Serialized Form
-
+
@@ -37,7 +37,7 @@ loadScripts(document, 'script');
-Overview
+Module
Package
Class
Tree
@@ -78,14 +78,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -99,7 +99,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -107,19 +107,39 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -138,7 +158,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -146,11 +166,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -162,7 +182,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -170,19 +190,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -194,7 +214,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -202,11 +222,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -218,7 +238,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -242,7 +262,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -250,7 +270,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
jobs
-java.util.ArrayList<Job > jobs
+java.util.ArrayList<Job > jobs
table
@@ -258,7 +278,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
tableModel
-JobsTablePanel.JobsTableModel tableModel
+JobsTablePanel.JobsTableModel tableModel
tableScrollPane
@@ -274,14 +294,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -289,11 +309,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
@@ -312,7 +332,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -332,7 +352,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -360,14 +380,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -394,7 +414,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -414,7 +434,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -446,7 +466,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -474,14 +494,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-
+
@@ -542,7 +562,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-Overview
+Module
Package
Class
Tree
diff --git a/docs/type-search-index.js b/docs/type-search-index.js
index 413908a..7dfc415 100644
--- a/docs/type-search-index.js
+++ b/docs/type-search-index.js
@@ -1 +1 @@
-typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopAndStitchPanel"},{"p":"eu.steffo.cleaver.logic","l":"ChopJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopPanel"},{"p":"eu.steffo.cleaver.errors","l":"ChpFileError"},{"p":"eu.steffo.cleaver.gui","l":"CleaverFrame"},{"p":"eu.steffo.cleaver.logic.compress","l":"CompressConfig"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"CompressRow"},{"p":"eu.steffo.cleaver.gui.rows","l":"CreateJobButtonRow"},{"p":"eu.steffo.cleaver.gui.panels","l":"CreateJobPanel"},{"p":"eu.steffo.cleaver.logic.crypt","l":"CryptConfig"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"CryptRow"},{"p":"eu.steffo.cleaver.gui.rows","l":"FileSelectRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"FinishedProgress"},{"p":"eu.steffo.cleaver.logic","l":"Job"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsButtonsPanel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel.JobsTableModel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"KeyRow"},{"p":"eu.steffo.cleaver","l":"Main"},{"p":"eu.steffo.cleaver.logic.progress","l":"NotStartedProgress"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"OptionRow"},{"p":"eu.steffo.cleaver.errors","l":"ProgrammingError"},{"p":"eu.steffo.cleaver.logic.progress","l":"Progress"},{"p":"eu.steffo.cleaver.gui.rows","l":"Row"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitByPartsConfig"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitBySizeConfig"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitConfig"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"SplitRow"},{"p":"eu.steffo.cleaver.logic","l":"StitchJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"StitchPanel"},{"p":"eu.steffo.cleaver.gui.rows","l":"TitleRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"WorkingProgress"}]
\ No newline at end of file
+typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopAndStitchPanel"},{"p":"eu.steffo.cleaver.logic","l":"ChopJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopPanel"},{"p":"eu.steffo.cleaver.errors","l":"ChpFileError"},{"p":"eu.steffo.cleaver.gui","l":"CleaverFrame"},{"p":"eu.steffo.cleaver.logic.compress","l":"CompressConfig"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"CompressRow"},{"p":"eu.steffo.cleaver.gui.rows","l":"CreateJobButtonRow"},{"p":"eu.steffo.cleaver.gui.panels","l":"CreateJobPanel"},{"p":"eu.steffo.cleaver.logic.crypt","l":"CryptConfig"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"CryptRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"ErrorProgress"},{"p":"eu.steffo.cleaver.gui.rows","l":"FileSelectRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"FinishedProgress"},{"p":"eu.steffo.cleaver.logic","l":"Job"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsButtonsPanel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel.JobsTableModel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"KeyRow"},{"p":"eu.steffo.cleaver","l":"Main"},{"p":"eu.steffo.cleaver.logic.progress","l":"NotStartedProgress"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"OptionRow"},{"p":"eu.steffo.cleaver.errors","l":"ProgrammingError"},{"p":"eu.steffo.cleaver.logic.progress","l":"Progress"},{"p":"eu.steffo.cleaver.gui.rows","l":"Row"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitByPartsConfig"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitBySizeConfig"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitConfig"},{"p":"eu.steffo.cleaver.logic.split","l":"SplitFileOutputStream"},{"p":"eu.steffo.cleaver.gui.rows.option","l":"SplitRow"},{"p":"eu.steffo.cleaver.logic","l":"StitchJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"StitchPanel"},{"p":"eu.steffo.cleaver","l":"Test"},{"p":"eu.steffo.cleaver.gui.rows","l":"TitleRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"WorkingProgress"}]
\ No newline at end of file
diff --git a/cleaver.iml b/eu.steffo.cleaver.iml
similarity index 100%
rename from cleaver.iml
rename to eu.steffo.cleaver.iml
diff --git a/src/eu/steffo/cleaver/Main.java b/src/eu/steffo/cleaver/Main.java
index 4aef9fb..f8d447b 100644
--- a/src/eu/steffo/cleaver/Main.java
+++ b/src/eu/steffo/cleaver/Main.java
@@ -6,9 +6,23 @@ import eu.steffo.cleaver.logic.Job;
import java.util.ArrayList;
+/**
+ * The class containing the main function.
+ */
public class Main {
+ /**
+ * The {@link ArrayList} of {@link Job Jobs} that the {@link CleaverFrame} will manipulate.
+ *
+ * @see #main(String[])
+ */
protected static ArrayList jobs;
+ /**
+ * The main function of the program.
+ * It opens a new {@link CleaverFrame} that the user will be able to interact with, and will exit the program when the frame is closed.
+ *
+ * @param args The arguments passed to the program from the command line.
+ */
public static void main(String[] args) {
jobs = new ArrayList<>();
diff --git a/src/eu/steffo/cleaver/Test.java b/src/eu/steffo/cleaver/Test.java
index b6ad08e..a523a8a 100644
--- a/src/eu/steffo/cleaver/Test.java
+++ b/src/eu/steffo/cleaver/Test.java
@@ -7,6 +7,7 @@ import eu.steffo.cleaver.logic.split.SplitFileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
+//TODO: delet this
public class Test {
public static void main(String[] args) {
OutputStream stream = new SplitFileOutputStream("test", 64);
diff --git a/src/eu/steffo/cleaver/errors/ChpFileError.java b/src/eu/steffo/cleaver/errors/ChpFileError.java
index 332220d..43b8899 100644
--- a/src/eu/steffo/cleaver/errors/ChpFileError.java
+++ b/src/eu/steffo/cleaver/errors/ChpFileError.java
@@ -1,5 +1,8 @@
package eu.steffo.cleaver.errors;
+/**
+ * An error in the parsing of the {@literal .chp} file occoured.
+ */
public class ChpFileError extends Exception {
public ChpFileError(String s) {
super(s);
diff --git a/src/eu/steffo/cleaver/errors/ProgrammingError.java b/src/eu/steffo/cleaver/errors/ProgrammingError.java
index 9483252..5dab676 100644
--- a/src/eu/steffo/cleaver/errors/ProgrammingError.java
+++ b/src/eu/steffo/cleaver/errors/ProgrammingError.java
@@ -1,4 +1,9 @@
package eu.steffo.cleaver.errors;
+/**
+ * An exception that should never be thrown during the execution of the program.
+ *
+ * It is thrown when an exception that should never be thrown is caught, such as {@link javax.xml.parsers.ParserConfigurationException}.
+ */
public class ProgrammingError extends Exception {
}
diff --git a/src/eu/steffo/cleaver/errors/package-info.java b/src/eu/steffo/cleaver/errors/package-info.java
new file mode 100644
index 0000000..65bee57
--- /dev/null
+++ b/src/eu/steffo/cleaver/errors/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * A package containing all possible exceptions thrown by Cleaver.
+ */
+package eu.steffo.cleaver.errors;
\ No newline at end of file
diff --git a/src/eu/steffo/cleaver/gui/CleaverFrame.java b/src/eu/steffo/cleaver/gui/CleaverFrame.java
index f836c09..c7b0986 100644
--- a/src/eu/steffo/cleaver/gui/CleaverFrame.java
+++ b/src/eu/steffo/cleaver/gui/CleaverFrame.java
@@ -12,13 +12,49 @@ import java.awt.event.ActionListener;
import java.util.*;
import javax.swing.*;
+/**
+ * A class providing a GUI for Cleaver made with {@link javax.swing}.
+ * It uses a vertical {@link BoxLayout} ({@link BoxLayout#PAGE_AXIS}): the panels added to it are stacked vertically, as if it was a list.
+ */
public class CleaverFrame extends JFrame {
+ /**
+ * The panel allowing the creation of new {@link Job Jobs}.
+ *
+ * @see ChopAndStitchPanel
+ */
protected final ChopAndStitchPanel chopStitchPanel;
+
+ /**
+ * The panel containing the {@link Job Jobs} {@link JTable table}.
+ *
+ * @see JobsTablePanel
+ */
protected final JobsTablePanel jobsTablePanel;
+
+ /**
+ * The panel containing jobs-related buttons, such as Delete selected or Run all .
+ *
+ * @see JobsButtonsPanel
+ */
protected final JobsButtonsPanel jobsButtonRow;
+ /**
+ * A reference to the {@link ArrayList} where the {@link Job Jobs} should be contained.
+ *
+ * @see CleaverFrame#CleaverFrame(ArrayList)
+ */
protected final ArrayList jobs;
+ /**
+ * Construct the CleaverFrame by setting its fields and adding to it the panels it should contain.
+ *
+ * The frame is passed a reference to an {@link ArrayList} of {@link Job Jobs} in order to be able to display them in the
+ * {@link eu.steffo.cleaver.gui.panels.JobsTablePanel JobsTablePanel} and to add/remove {@link Job Jobs} from it.
+ *
+ * It also creates {@link ActionListener ActionListeners} for the events that require access to the {@link #jobs jobs list}.
+ *
+ * @param jobs The reference to the previously mentioned {@link ArrayList}.
+ */
public CleaverFrame(ArrayList jobs) {
super();
diff --git a/src/eu/steffo/cleaver/gui/package-info.java b/src/eu/steffo/cleaver/gui/package-info.java
new file mode 100644
index 0000000..058e0d3
--- /dev/null
+++ b/src/eu/steffo/cleaver/gui/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * A package containing the elements for a Cleaver GUI.
+ */
+package eu.steffo.cleaver.gui;
\ No newline at end of file
diff --git a/src/eu/steffo/cleaver/logic/package-info.java b/src/eu/steffo/cleaver/logic/package-info.java
new file mode 100644
index 0000000..5411dde
--- /dev/null
+++ b/src/eu/steffo/cleaver/logic/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * A package containing the core logic of the program.
+ */
+package eu.steffo.cleaver.logic;
\ No newline at end of file
diff --git a/src/eu/steffo/cleaver/package-info.java b/src/eu/steffo/cleaver/package-info.java
new file mode 100644
index 0000000..168a5f8
--- /dev/null
+++ b/src/eu/steffo/cleaver/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * The main package of the program.
+ * It contains all the runnable functions (currently only {@link eu.steffo.cleaver.Main Main}), and all other packages.
+ */
+package eu.steffo.cleaver;
diff --git a/src/module-info.java b/src/module-info.java
new file mode 100644
index 0000000..2e10b17
--- /dev/null
+++ b/src/module-info.java
@@ -0,0 +1,19 @@
+/**
+ * A file compression, encryption and splitting utility in Java.
+ */
+open module eu.steffo.cleaver {
+ requires java.desktop;
+ requires java.xml;
+
+ exports eu.steffo.cleaver;
+ exports eu.steffo.cleaver.errors;
+ exports eu.steffo.cleaver.gui;
+ exports eu.steffo.cleaver.gui.panels;
+ exports eu.steffo.cleaver.gui.rows;
+ exports eu.steffo.cleaver.gui.rows.option;
+ exports eu.steffo.cleaver.logic;
+ exports eu.steffo.cleaver.logic.compress;
+ exports eu.steffo.cleaver.logic.crypt;
+ exports eu.steffo.cleaver.logic.progress;
+ exports eu.steffo.cleaver.logic.split;
+}
\ No newline at end of file