Minor changes
This commit is contained in:
parent
09066e09de
commit
57b1fc9a5e
7 changed files with 73 additions and 42 deletions
|
@ -3,7 +3,7 @@ type: docker
|
|||
name: default
|
||||
|
||||
steps:
|
||||
- name: gnu-linux
|
||||
image: maven
|
||||
commands:
|
||||
- mvn clean package
|
||||
- name: maven
|
||||
image: maven
|
||||
commands:
|
||||
- mvn clean package
|
|
@ -34,7 +34,7 @@ public class Feed {
|
|||
* A hírcsatornához tartozó cikkek listája
|
||||
*/
|
||||
@XStreamAlias("articleList")
|
||||
private List<Article> articleList = new ArrayList<>();;
|
||||
protected List<Article> articleList = new ArrayList<>();;
|
||||
|
||||
/**
|
||||
* A hírcsatorna nevének lekérése
|
||||
|
|
|
@ -41,7 +41,8 @@ public class FeedData extends AbstractTableModel {
|
|||
}
|
||||
}
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
//Nincs? Semmi gond,mostmár lesz!
|
||||
save(filename);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
@ -87,13 +88,13 @@ public class FeedData extends AbstractTableModel {
|
|||
public String getColumnName(int oszlop) {
|
||||
switch (oszlop) {
|
||||
case 0:
|
||||
return "Cím";
|
||||
return "Title";
|
||||
case 1:
|
||||
return "Szerző";
|
||||
return "Author";
|
||||
case 2:
|
||||
return "Dátum";
|
||||
return "Date";
|
||||
default:
|
||||
return "Leírás";
|
||||
return "Description";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -16,15 +16,33 @@ import java.util.ArrayList;
|
|||
import java.util.Enumeration;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* A program fő ablakának megvalósítása
|
||||
*/
|
||||
public class FeedFrame extends JFrame {
|
||||
|
||||
/**
|
||||
* A Cikkeket tároló táblázat
|
||||
*/
|
||||
public JTable table;
|
||||
private JScrollPane scrollPane;
|
||||
/**
|
||||
* @see FeedData
|
||||
*/
|
||||
private FeedData data;
|
||||
private JMenuBar menubar;
|
||||
private JTree feeds;
|
||||
private TableRowSorter<FeedData> sorter;
|
||||
/**
|
||||
* A képernyő bal oldalán megjelenő fa. Itt lehet a csatornákat rendezni,csoportok esetén átnevezni,valamint eltávolítani.
|
||||
*/
|
||||
private JTree tree;
|
||||
/**
|
||||
* A fa legfelső eleme
|
||||
*/
|
||||
private DefaultMutableTreeNode treeRoot;
|
||||
/**
|
||||
* A táblázatot rendező objektum
|
||||
*/
|
||||
private TableRowSorter<FeedData> sorter;
|
||||
/**
|
||||
* Ebba fájlba menti a program az adatait
|
||||
*/
|
||||
private static String saveFile = "feeds.xml";
|
||||
|
||||
public FeedFrame() {
|
||||
|
@ -49,7 +67,7 @@ public class FeedFrame extends JFrame {
|
|||
*/
|
||||
private void initTable() {
|
||||
table = new JTable();
|
||||
scrollPane = new JScrollPane(table);
|
||||
JScrollPane scrollPane = new JScrollPane(table);
|
||||
table.setModel(data);
|
||||
table.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
|
@ -107,7 +125,7 @@ public class FeedFrame extends JFrame {
|
|||
* Menusáv inicializálása
|
||||
*/
|
||||
private void initMenuBar() {
|
||||
menubar = new JMenuBar();
|
||||
JMenuBar menubar = new JMenuBar();
|
||||
JMenu file = new JMenu("File");
|
||||
JMenu Help = new JMenu("Help");
|
||||
JMenuItem addFeed = new JMenuItem("Add Feed");
|
||||
|
@ -153,23 +171,23 @@ public class FeedFrame extends JFrame {
|
|||
*/
|
||||
private void initTree() {
|
||||
treeRoot = data.getRootNode();
|
||||
feeds = new JTree(treeRoot);
|
||||
feeds.addMouseListener(new SwitchFeed());
|
||||
feeds.setEditable(false);
|
||||
feeds.setDragEnabled(true);
|
||||
feeds.setDropMode(DropMode.ON_OR_INSERT);
|
||||
feeds.setTransferHandler(new TreeTransferHandler());
|
||||
feeds.getSelectionModel().setSelectionMode(
|
||||
tree = new JTree(treeRoot);
|
||||
tree.addMouseListener(new SwitchFeed());
|
||||
tree.setEditable(false);
|
||||
tree.setDragEnabled(true);
|
||||
tree.setDropMode(DropMode.ON_OR_INSERT);
|
||||
tree.setTransferHandler(new TreeTransferHandler());
|
||||
tree.getSelectionModel().setSelectionMode(
|
||||
TreeSelectionModel.CONTIGUOUS_TREE_SELECTION);
|
||||
expandTree(feeds);
|
||||
feeds.addMouseListener(new MouseAdapter() {
|
||||
expandTree(tree);
|
||||
tree.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
if (SwingUtilities.isRightMouseButton(e)) {
|
||||
|
||||
int row = feeds.getClosestRowForLocation(e.getX(), e.getY());
|
||||
feeds.setSelectionRow(row);
|
||||
DefaultMutableTreeNode selected = (DefaultMutableTreeNode) feeds.getSelectionPath().getLastPathComponent();
|
||||
int row = tree.getClosestRowForLocation(e.getX(), e.getY());
|
||||
tree.setSelectionRow(row);
|
||||
DefaultMutableTreeNode selected = (DefaultMutableTreeNode) tree.getSelectionPath().getLastPathComponent();
|
||||
if (selected.isLeaf()) {
|
||||
FeedGroup feedGroup = (((DefaultMutableTreeNode) selected.getParent()).isRoot()) ? null : (FeedGroup) ((DefaultMutableTreeNode) selected.getParent()).getUserObject();
|
||||
FeedPopUpMenu popUpMenu = new FeedPopUpMenu((Feed) selected.getUserObject(), feedGroup, selected);
|
||||
|
@ -183,7 +201,7 @@ public class FeedFrame extends JFrame {
|
|||
}
|
||||
}
|
||||
});
|
||||
add(feeds, BorderLayout.WEST);
|
||||
add(tree, BorderLayout.WEST);
|
||||
|
||||
}
|
||||
|
||||
|
@ -233,7 +251,7 @@ public class FeedFrame extends JFrame {
|
|||
data.addFeed(f);
|
||||
treeRoot.add(f.getTreeNode());
|
||||
table.updateUI();
|
||||
feeds.updateUI();
|
||||
tree.updateUI();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -296,8 +314,8 @@ public class FeedFrame extends JFrame {
|
|||
|
||||
@Override
|
||||
public void mousePressed(MouseEvent e) {
|
||||
int selRow = feeds.getRowForLocation(e.getX(), e.getY());
|
||||
TreePath selPath = feeds.getPathForLocation(e.getX(), e.getY());
|
||||
int selRow = tree.getRowForLocation(e.getX(), e.getY());
|
||||
TreePath selPath = tree.getPathForLocation(e.getX(), e.getY());
|
||||
if (selRow != -1) {
|
||||
if (e.getClickCount() == 2) {
|
||||
if (selRow == 0) data.limitTo(null);
|
||||
|
@ -588,7 +606,7 @@ public class FeedFrame extends JFrame {
|
|||
}
|
||||
data.save(saveFile);
|
||||
|
||||
feeds.updateUI();
|
||||
tree.updateUI();
|
||||
updateTable();
|
||||
}
|
||||
});
|
||||
|
@ -617,7 +635,7 @@ public class FeedFrame extends JFrame {
|
|||
feed.setName(newname.getText());
|
||||
data.save(saveFile);
|
||||
table.updateUI();
|
||||
feeds.updateUI();
|
||||
tree.updateUI();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -17,11 +17,7 @@ public class FeedGroup extends Feed {
|
|||
* A hírcsatornák listája
|
||||
*/
|
||||
List<Feed> feedList = new ArrayList<Feed>();
|
||||
/**
|
||||
* A csoport cikkjeinek listája
|
||||
*/
|
||||
@XStreamOmitField
|
||||
List<Article> articleList = new ArrayList<Article>();
|
||||
|
||||
|
||||
public FeedGroup(String name){
|
||||
super(name);
|
||||
|
|
|
@ -3,21 +3,33 @@ package eu.toldi.rss;
|
|||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Hírcsatornákat tároló objektum
|
||||
*/
|
||||
public class FeedList {
|
||||
|
||||
/**
|
||||
* A hírcsatornák listája
|
||||
*/
|
||||
private List<Feed> list= new ArrayList<Feed>();
|
||||
|
||||
|
||||
/**
|
||||
* Üres hírcsatorna konstruktora
|
||||
*/
|
||||
public FeedList() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Hírcsatorna lista létrehozása listából
|
||||
* @param list
|
||||
*/
|
||||
public FeedList(List<Feed> list) {
|
||||
this.list = list;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hírcsatorna hozzáadása a listához
|
||||
* @param f
|
||||
* @param f hozzáadandó hírcsatorna
|
||||
*/
|
||||
public void add(Feed f) {
|
||||
list.add(f);
|
||||
|
|
|
@ -11,6 +11,10 @@ public class UpdaterThread extends Thread{
|
|||
//Tíz perc várakozás
|
||||
private static long updateInterval = 10*60*1000;
|
||||
|
||||
/**
|
||||
*
|
||||
* @param data Ezt az objektumot használja majd frissítésre
|
||||
*/
|
||||
public UpdaterThread(FeedData data){
|
||||
this.data = data;
|
||||
}
|
||||
|
|
Reference in a new issue