diff --git a/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.form b/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.form index 5f2e126..bb6bd16 100644 --- a/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.form +++ b/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.form @@ -1,32 +1,18 @@
- - - - - - - - - - - - - - - - - + + - + - - + + + @@ -42,8 +28,7 @@ - - + @@ -72,8 +57,7 @@ - - + @@ -86,20 +70,10 @@ - - - - - - - - - - - + @@ -128,8 +102,7 @@ - - + @@ -138,8 +111,7 @@ - - + @@ -154,13 +126,58 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.java b/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.java index 4e8e3d5..3784728 100644 --- a/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.java +++ b/src/main/java/com/svn/utils/mirror/gui/main/MainWindow.java @@ -7,16 +7,21 @@ import com.svn.utils.mirror.gui.enums.RepositoryType; import com.svn.utils.mirror.gui.enums.SynchronizationStatus; import com.svn.utils.mirror.gui.logger.StatusLogger; import com.svn.utils.mirror.gui.model.RepositoryModel; +import com.svn.utils.mirror.gui.model.Revision; +import com.svn.utils.mirror.gui.model.RevisionModel; import com.svn.utils.mirror.gui.view.SynchronizationStatusComponent; import org.tmatesoft.svn.core.SVNException; import org.tmatesoft.svn.core.SVNURL; import javax.swing.*; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; +import java.util.List; /** * SvnMirror @@ -34,6 +39,7 @@ public class MainWindow extends JFrame implements CreateRepoInt { private JPanel rootServerLoginPanel; private JEditorPane detailsPane; private JPanel synchronizationStatusPanel; + private JList revisionsList; private StatusLogger statusLogger; private RepoAction repoAction; private SynchronizationStatusComponent synchronizationStatusComponent; @@ -57,14 +63,25 @@ public class MainWindow extends JFrame implements CreateRepoInt { setVisible(true); initSynchronizationStatusComponent(); initRemoteOrLocalComboBox(); + + //@todo temp + setRevisionList(new RevisionModel().getRevisions()); } + private void initRemoteOrLocalComboBox() { DefaultComboBoxModel repositoryTypeComboBoxModel = new DefaultComboBoxModel(); repositoryTypeComboBoxModel.addElement(new RepositoryModel(RepositoryType.REMOTE)); repositoryTypeComboBoxModel.addElement(new RepositoryModel(RepositoryType.LOCAL)); repositoryTypeComboBox.setModel(repositoryTypeComboBoxModel); + } + private void setRevisionList(List revisionList) { + DefaultListModel revisionDefaultListModel = new DefaultListModel<>(); + for (Revision revision : revisionList) { + revisionDefaultListModel.addElement(revision); + } + revisionsList.setModel(revisionDefaultListModel); } private void initSynchronizationStatusComponent() { @@ -105,6 +122,15 @@ public class MainWindow extends JFrame implements CreateRepoInt { } } }); + + revisionsList.addListSelectionListener(new ListSelectionListener() { + @Override + public void valueChanged(ListSelectionEvent e) { + if (!e.getValueIsAdjusting()) { + detailsPane.setText(revisionsList.getSelectedValue().toString()); + } + } + }); } @Override diff --git a/src/main/java/com/svn/utils/mirror/gui/model/Revision.java b/src/main/java/com/svn/utils/mirror/gui/model/Revision.java new file mode 100644 index 0000000..ab6ecac --- /dev/null +++ b/src/main/java/com/svn/utils/mirror/gui/model/Revision.java @@ -0,0 +1,18 @@ +package com.svn.utils.mirror.gui.model; + +/** + * SvnMirror + * Created by Marcin on 2015-06-17. + */ +public class Revision { + private String name; + + public Revision(String name) { + this.name = name; + } + + @Override + public String toString() { + return name; + } +} diff --git a/src/main/java/com/svn/utils/mirror/gui/model/RevisionModel.java b/src/main/java/com/svn/utils/mirror/gui/model/RevisionModel.java new file mode 100644 index 0000000..240fd44 --- /dev/null +++ b/src/main/java/com/svn/utils/mirror/gui/model/RevisionModel.java @@ -0,0 +1,26 @@ +package com.svn.utils.mirror.gui.model; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * SvnMirror + * Created by Marcin on 2015-06-17. + */ +public class RevisionModel { + private List revisions; + + public RevisionModel() { + Revision r1 = new Revision("Commit " + new Date().getTime()); + Revision r2 = new Revision("Commit " + new Date().toString()); + + revisions = new ArrayList<>(); + revisions.add(r1); + revisions.add(r2); + } + + public List getRevisions() { + return revisions; + } +}