From 6e1827810388387804b9700f7ba6f5a377c6241a Mon Sep 17 00:00:00 2001 From: Tobias Spitzer Date: Fri, 25 Jul 2014 12:15:09 +0200 Subject: Suchfenster um Reiter Vorlage ergänzt --- Dozentenmodul/src/gui/image/SearchImage_GUI.java | 169 ++++++++++++++++------- 1 file changed, 120 insertions(+), 49 deletions(-) (limited to 'Dozentenmodul/src/gui/image/SearchImage_GUI.java') diff --git a/Dozentenmodul/src/gui/image/SearchImage_GUI.java b/Dozentenmodul/src/gui/image/SearchImage_GUI.java index c20ecc99..0ee6d4a3 100644 --- a/Dozentenmodul/src/gui/image/SearchImage_GUI.java +++ b/Dozentenmodul/src/gui/image/SearchImage_GUI.java @@ -68,10 +68,12 @@ public class SearchImage_GUI extends JFrame { JComboBox comboBox; JTable tableAllImages; JTable tablemyImages; + JTable tablePublicVorlagen; private JTextField textFieldName; JTabbedPane tabbedPane; + boolean activeSearch=false; String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "Schlagwort", "ID", "Version" }; + "Verantwortlicher", "Letztes Update", "ID", "Version","Template" }; ThriftConnection con = new ThriftConnection(); Client client = models.Client.clientcon.getClient(); final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){ @@ -84,11 +86,17 @@ public class SearchImage_GUI extends JFrame { return false; } }; + final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, 0){ + public boolean isCellEditable(int rowIndex, int mColIndex) { + return false; + } + }; final TableRowSorter rowSorterAll = new TableRowSorter( modelAll); final TableRowSorter rowSorterMyImages = new TableRowSorter( modelMyImages); - + final TableRowSorter rowSorterPublicVorlagen = new TableRowSorter( + modelPublicVorlagen); /** * Create the dialog. @@ -104,6 +112,9 @@ public class SearchImage_GUI extends JFrame { @Override public void windowOpened(WindowEvent arg0) { + initTableModel(modelAll); + initTableModel(modelMyImages); + initTableModel(modelPublicVorlagen); textFieldName.requestFocusInWindow(); } }); @@ -158,7 +169,7 @@ public class SearchImage_GUI extends JFrame { panel_1.setBackground(SystemColor.menu); panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", TitledBorder.LEADING, TitledBorder.TOP, null, null)); - panel_1.setBounds(10, 49, 557, 131); + panel_1.setBounds(10, 49, 557, 98); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -180,12 +191,24 @@ public class SearchImage_GUI extends JFrame { // Wenn Textfield nicht leer if (stext != "") { + activeSearch=true; // Filtere nach der Eingabe rowSorterAll.setRowFilter(RowFilter.regexFilter( textFieldName.getText(), 0)); rowSorterMyImages.setRowFilter(RowFilter.regexFilter( textFieldName.getText(), 0)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( + textFieldName.getText(), 0)); + }else{ + activeSearch=false; + String username = person.verantwortlicher.getName() + " " + + person.verantwortlicher.getVorname(); + rowSorterMyImages.setRowFilter(RowFilter.regexFilter( + username, 4)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( + "true", 8)); + rowSorterAll.setRowFilter(null); } } }); @@ -194,22 +217,6 @@ public class SearchImage_GUI extends JFrame { panel_1.add(textFieldName); textFieldName.setColumns(10); - JLabel lblErweiterteSuche = new JLabel( - "Erweiterte Suche *Folgt noch*"); - lblErweiterteSuche.addMouseListener(new MouseAdapter() { - @Override - public void mouseClicked(MouseEvent arg0) { - // oeffnet das Fenster Extended GUI - - ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI(); - es.setVisible(true); - } - }); - lblErweiterteSuche.setForeground(Color.BLUE); - - lblErweiterteSuche.setBounds(360, 106, 160, 14); - panel_1.add(lblErweiterteSuche); - comboBox = new JComboBox(); try { // Holt sich eine Liste aller verfuegbaren Betriebssysteme vom Server @@ -232,11 +239,22 @@ public class SearchImage_GUI extends JFrame { public void actionPerformed(ActionEvent arg0) { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { - // Filtert nach dem ausgewaehlten Betriebssystem + activeSearch=true; rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox .getSelectedItem().toString(), 2)); rowSorterMyImages.setRowFilter(RowFilter.regexFilter( comboBox.getSelectedItem().toString(), 2)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( + comboBox.getSelectedItem().toString(), 2)); + }else{ + activeSearch=false; + String username = person.verantwortlicher.getName() + " " + + person.verantwortlicher.getVorname(); + rowSorterMyImages.setRowFilter(RowFilter.regexFilter( + username, 4)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( + "true", 8)); + rowSorterAll.setRowFilter(null); } } @@ -279,23 +297,26 @@ public class SearchImage_GUI extends JFrame { tabbedPane = new JTabbedPane(JTabbedPane.TOP); tabbedPane.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent arg0) { - if (tabbedPane.getSelectedIndex() == 0) { + if (tabbedPane.getSelectedIndex() == 0 && activeSearch==false) { String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname(); // String username="Spitzer Tobias"; rowSorterMyImages.setRowFilter(RowFilter.regexFilter( username, 4)); - } else if (tabbedPane.getSelectedIndex() == 1) { - - } + }else if(tabbedPane.getSelectedIndex()==1 && activeSearch==false){ + //System.out.println("Yeah"); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8)); + } else if(tabbedPane.getSelectedIndex()==2 && activeSearch==false){ + rowSorterAll.setRowFilter(null); + } } }); - tabbedPane.setBounds(10, 197, 557, 300); + tabbedPane.setBounds(10, 158, 557, 339); contentPanel.add(tabbedPane); - initTableModel(modelMyImages); + JScrollPane scrollPaneAllImages = new JScrollPane(); tableAllImages = new JTable(); @@ -305,7 +326,7 @@ public class SearchImage_GUI extends JFrame { tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit(); - initTableModel(modelAll); + JScrollPane scrollPaneMyImage = new JScrollPane(); tablemyImages = new JTable(); @@ -319,6 +340,19 @@ public class SearchImage_GUI extends JFrame { scrollPaneMyImage.setViewportView(tablemyImages); tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null); + + JScrollPane scrollPanePublicVorlagen = new JScrollPane(); + tablePublicVorlagen = new JTable(); + tablePublicVorlagen.setModel(modelPublicVorlagen); + tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit(); + tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit(); + tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit(); + tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit(); + tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit(); + tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen); + scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen); + tabbedPane.addTab("\u00D6ffentliche Vorlagen", null, + scrollPanePublicVorlagen, null); tableAllImages.setRowSorter(rowSorterAll); scrollPaneAllImages.setViewportView(tableAllImages); @@ -332,11 +366,12 @@ public class SearchImage_GUI extends JFrame { tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit(); + scrollPaneCoopImages.setViewportView(tableCoopImages); tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages, null); - tabbedPane.setEnabledAt(2, false); + tabbedPane.setEnabledAt(3, false); JScrollPane scrollPanePublicImages = new JScrollPane(); JTable tablePublicImages = new JTable(); @@ -350,44 +385,79 @@ public class SearchImage_GUI extends JFrame { scrollPanePublicImages.setViewportView(tablePublicImages); tabbedPane.addTab("\u00D6ffentliche Images", null, scrollPanePublicImages, null); - tabbedPane.setEnabledAt(3, false); - - JScrollPane scrollPanePublicVorlagen = new JScrollPane(); - JTable tablePublicVorlagen = new JTable(); - tablePublicVorlagen.setModel(model); - tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit(); - tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit(); - tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit(); - tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit(); - tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit(); - - scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen); - tabbedPane.addTab("\u00D6ffentliche Vorlagen", null, - scrollPanePublicVorlagen, null); tabbedPane.setEnabledAt(4, false); JButton btnDownload = new JButton("Download"); btnDownload.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { // oeffnet den Downloader - + String username = person.verantwortlicher.getName() + " " + + person.verantwortlicher.getVorname(); + if (tabbedPane.getSelectedIndex() == 0) { if (tablemyImages.getSelectedRow() != -1) { String imageid = modelMyImages.getValueAt( tablemyImages.convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7).toString(); + .getSelectedRow()), 6).toString(); Image.image.setImageId(imageid); String imageversion = modelMyImages.getValueAt( tablemyImages.convertRowIndexToModel(tablemyImages - .getSelectedRow()), 8).toString(); + .getSelectedRow()), 7).toString(); Image.image.setVersion(imageversion); SearchImage_GUI.this.setVisible(false); - FTPDownloader_GUI down = new FTPDownloader_GUI(); + FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI(); down.setVisible(true); - } else { + }} else if(tabbedPane.getSelectedIndex()==1) + { + System.out.println("yeah"); + if (tablePublicVorlagen.getSelectedRow() != -1 && modelPublicVorlagen.getValueAt(tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen.getSelectedRow()), 4).equals(username)==true) { + String imageid = modelPublicVorlagen + .getValueAt( + tablePublicVorlagen + .convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), + 6).toString(); + + Image.image.setImageId(imageid); + String imageversion = modelPublicVorlagen + .getValueAt( + tablePublicVorlagen + .convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), + 7).toString(); + + Image.image.setVersion(imageversion); + + SearchImage_GUI.this.setVisible(false); + FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI(); + down.setVisible(true); + }}else if(tabbedPane.getSelectedIndex()==2) + { + if (tableAllImages.getSelectedRow() != -1 && modelAll.getValueAt(tableAllImages.convertRowIndexToModel(tableAllImages.getSelectedRow()), 4).equals(username)==true) { + String imageid = modelAll + .getValueAt( + tableAllImages + .convertRowIndexToModel(tableAllImages + .getSelectedRow()), + 6).toString(); + + Image.image.setImageId(imageid); + String imageversion = modelAll + .getValueAt( + tableAllImages + .convertRowIndexToModel(tableAllImages + .getSelectedRow()), + 7).toString(); + + Image.image.setVersion(imageversion); + + SearchImage_GUI.this.setVisible(false); + FTPSearchDownloader_GUI down = new FTPSearchDownloader_GUI(); + down.setVisible(true); + }} else { JOptionPane.showMessageDialog(null, "Bitte w\u00e4hlen Sie ein Image f\u00fcr den Download aus", "Message", JOptionPane.INFORMATION_MESSAGE); @@ -506,8 +576,9 @@ public class SearchImage_GUI extends JFrame { images.get(x).getOsName(), images.get(x).getLectureName(), images.get(x).getUserData(), - images.get(x).getUpdateTime(), "", images.get(x).id, - images.get(x).getVersion() }; + images.get(x).getUpdateTime(), images.get(x).id, + images.get(x).getVersion(), + images.get(x).getIsTemplate()}; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); x++; -- cgit v1.2.3-55-g7522