diff options
Diffstat (limited to 'Dozentenmodul/src/gui/image/SearchEditImage_GUI.java')
| -rw-r--r-- | Dozentenmodul/src/gui/image/SearchEditImage_GUI.java | 301 |
1 files changed, 268 insertions, 33 deletions
diff --git a/Dozentenmodul/src/gui/image/SearchEditImage_GUI.java b/Dozentenmodul/src/gui/image/SearchEditImage_GUI.java index f45c0510..6d03d25c 100644 --- a/Dozentenmodul/src/gui/image/SearchEditImage_GUI.java +++ b/Dozentenmodul/src/gui/image/SearchEditImage_GUI.java @@ -17,8 +17,11 @@ import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.net.URI; import java.net.URISyntaxException; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.Iterator; import java.util.List; +import java.util.Map; import javax.swing.JButton; import javax.swing.JComboBox; @@ -43,6 +46,8 @@ import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel; import javax.swing.table.TableRowSorter; @@ -63,6 +68,16 @@ import util.OpenLinks; public class SearchEditImage_GUI extends JFrame { private final JPanel contentPanel = new JPanel(); + JLabel labelName; + JLabel labelUpdate; + JLabel labelVerantwortlicher; + JLabel labelWeitereVerantwortliche; + JLabel labelVorlage; + JLabel labelLizenzSoftware; + JLabel labelInternet; + JLabel labelRam; + JLabel labelCPU; + private JLabel labelOS; String[] result; JRadioButton rdbtnInternetJa; JRadioButton rdbtnInternetNein; @@ -73,7 +88,7 @@ public class SearchEditImage_GUI extends JFrame { boolean activeSearch=false; private JTextField textFieldName; JTabbedPane tabbedPane; - String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", + String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", "Letztes Update", "ID", "Version","Template" }; ThriftConnection con = new ThriftConnection(); Client client = models.Client.clientcon.getClient(); @@ -117,6 +132,42 @@ public class SearchEditImage_GUI extends JFrame { initTableModel(modelMyImages); initTableModel(modelAll); initTableModel(modelPublicVorlagen); + tablemyImages.getColumnModel().getColumn(1).setWidth(0); + tablemyImages.getColumnModel().getColumn(1).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(8).setWidth(0); + tablemyImages.getColumnModel().getColumn(8).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(6).setWidth(0); + tablemyImages.getColumnModel().getColumn(6).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(7).setWidth(0); + tablemyImages.getColumnModel().getColumn(7).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(1).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(1).setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(8).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(8).setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(6).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(6).setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(7).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0); + tableAllImages.getColumnModel().getColumn(1).setWidth(0); + tableAllImages.getColumnModel().getColumn(1).setMinWidth(0); + tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0); + tableAllImages.getColumnModel().getColumn(8).setWidth(0); + tableAllImages.getColumnModel().getColumn(8).setMinWidth(0); + tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0); + tableAllImages.getColumnModel().getColumn(6).setWidth(0); + tableAllImages.getColumnModel().getColumn(6).setMinWidth(0); + tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0); + tableAllImages.getColumnModel().getColumn(7).setWidth(0); + tableAllImages.getColumnModel().getColumn(7).setMinWidth(0); + tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0); textFieldName.requestFocusInWindow(); } }); @@ -134,7 +185,7 @@ public class SearchEditImage_GUI extends JFrame { // Setzt den Fenstertitel setTitle("bwLehrpool Suite *Prototyp* - Image bearbeiten"); // Zentriert das Fenster in die Bildmitte - setBounds(0, 0, 603, 722); + setBounds(0, 0, 918, 722); GuiOrganizer.centerGUI(this); final DefaultTableModel model = new DefaultTableModel(titles, 0); @@ -143,11 +194,11 @@ public class SearchEditImage_GUI extends JFrame { { JPanel panel = new JPanel(); panel.setBackground(SystemColor.menu); - panel.setBounds(10, 11, 577, 57); + panel.setBounds(10, 11, 892, 57); getContentPane().add(panel); panel.setLayout(null); { - JLabel lblNewLabel = new JLabel("Suche nach VL-Image"); + JLabel lblNewLabel = new JLabel("Imageauswahl"); lblNewLabel.setBounds(10, 11, 509, 22); panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); @@ -157,7 +208,7 @@ public class SearchEditImage_GUI extends JFrame { txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); txtpnBitteWhlenSie - .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten VL-Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen"); + .setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen"); txtpnBitteWhlenSie.setBounds(10, 36, 509, 32); panel.add(txtpnBitteWhlenSie); } @@ -171,7 +222,7 @@ public class SearchEditImage_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, 96); + panel_1.setBounds(10, 49, 557, 98); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -285,17 +336,17 @@ public class SearchEditImage_GUI extends JFrame { label_1.setBounds(69, 11, 13, 14); contentPanel.add(label_1); - JLabel lblVlimage = new JLabel("VL-Image"); + JLabel lblVlimage = new JLabel("Image"); lblVlimage.setForeground(Color.BLUE); lblVlimage.setBounds(81, 11, 45, 14); contentPanel.add(lblVlimage); JLabel label_2 = new JLabel(">"); - label_2.setBounds(133, 11, 13, 14); + label_2.setBounds(116, 11, 13, 14); contentPanel.add(label_2); JLabel lblNewLabel_1 = new JLabel("Imageauswahl"); - lblNewLabel_1.setBounds(146, 11, 85, 14); + lblNewLabel_1.setBounds(129, 11, 85, 14); contentPanel.add(lblNewLabel_1); tabbedPane = new JTabbedPane(JTabbedPane.TOP); @@ -318,12 +369,33 @@ public class SearchEditImage_GUI extends JFrame { } }); - tabbedPane.setBounds(10, 156, 557, 341); + tabbedPane.setBounds(10, 158, 557, 339); contentPanel.add(tabbedPane); JScrollPane scrollPaneMyImage = new JScrollPane(); tablemyImages = new JTable(); + tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() + { + public void valueChanged(ListSelectionEvent e) + { + String imageid = modelMyImages + .getValueAt( + tablemyImages + .convertRowIndexToModel(tablemyImages + .getSelectedRow()), 6) + .toString(); + System.out.println(imageid); + String version = modelMyImages + .getValueAt( + tablemyImages + .convertRowIndexToModel(tablemyImages + .getSelectedRow()), 7) + .toString(); + System.out.println(version); + writeImageData(imageid, version); + } + }); tablemyImages.setModel(modelMyImages); tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit(); @@ -346,6 +418,27 @@ public class SearchEditImage_GUI extends JFrame { JScrollPane scrollPanePublicVorlagen = new JScrollPane(); tablePublicVorlagen = new JTable(); + tablePublicVorlagen.getSelectionModel().addListSelectionListener( new ListSelectionListener() + { + public void valueChanged(ListSelectionEvent e) + { + String imageid = modelPublicVorlagen + .getValueAt( + tablePublicVorlagen + .convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), 6) + .toString(); + System.out.println(imageid); + String version = modelPublicVorlagen + .getValueAt( + tablePublicVorlagen + .convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), 7) + .toString(); + System.out.println(version); + writeImageData(imageid, version); + } + }); tablePublicVorlagen.setModel(modelPublicVorlagen); tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit(); @@ -354,12 +447,35 @@ public class SearchEditImage_GUI extends JFrame { tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit(); tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen); scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen); - tabbedPane.addTab("\u00D6ffentliche Vorlagen", null, + tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null); JScrollPane scrollPaneAllImages = new JScrollPane(); tableAllImages = new JTable(); + tableAllImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() + { + public void valueChanged(ListSelectionEvent e) + { + + String imageid = modelAll + .getValueAt( + tableAllImages + .convertRowIndexToModel(tableAllImages + .getSelectedRow()), 6) + .toString(); + System.out.println(imageid); + String version = modelAll + .getValueAt( + tableAllImages + .convertRowIndexToModel(tableAllImages + .getSelectedRow()), 7) + .toString(); + System.out.println(version); + writeImageData(imageid, version); + + } + }); tableAllImages.setModel(modelAll); tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit(); @@ -373,24 +489,10 @@ public class SearchEditImage_GUI extends JFrame { scrollPaneCoopImages.setViewportView(tableCoopImages); - tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages, + tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages, null); tabbedPane.setEnabledAt(3, false); - JScrollPane scrollPanePublicImages = new JScrollPane(); - JTable tablePublicImages = new JTable(); - tablePublicImages.setModel(model); - tablePublicImages.getColumnModel().getColumn(1).sizeWidthToFit(); - tablePublicImages.getColumnModel().getColumn(2).sizeWidthToFit(); - tablePublicImages.getColumnModel().getColumn(3).sizeWidthToFit(); - tablePublicImages.getColumnModel().getColumn(4).sizeWidthToFit(); - tablePublicImages.getColumnModel().getColumn(5).sizeWidthToFit(); - - scrollPanePublicImages.setViewportView(tablePublicImages); - tabbedPane.addTab("\u00D6ffentliche Images", null, - scrollPanePublicImages, null); - tabbedPane.setEnabledAt(4, false); - JButton btnDownload = new JButton("Download"); btnDownload.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { @@ -480,7 +582,7 @@ public class SearchEditImage_GUI extends JFrame { contentPanel.add(btnDownload); { JPanel buttonPane = new JPanel(); - buttonPane.setBounds(0, 640, 597, 33); + buttonPane.setBounds(0, 640, 902, 33); buttonPane.setBackground(SystemColor.menu); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane); @@ -590,13 +692,110 @@ public class SearchEditImage_GUI extends JFrame { } JSeparator separator = new JSeparator(); - separator.setBounds(0, 78, 597, 2); + separator.setBounds(0, 79, 912, 1); getContentPane().add(separator); JSeparator separator_1 = new JSeparator(); - separator_1.setBounds(0, 627, 597, 2); + separator_1.setBounds(0, 627, 912, 2); getContentPane().add(separator_1); + JPanel panel = new JPanel(); + panel.setLayout(null); + panel.setBorder(new TitledBorder(null, "Detailinformationen", + + TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel.setBackground(SystemColor.menu); + panel.setBounds(586, 85, 316, 531); + getContentPane().add(panel); + + JLabel lblName = new JLabel("Name:"); + lblName.setBounds(10, 30, 130, 14); + panel.add(lblName); + + labelName = new JLabel(""); + labelName.setBounds(150, 30, 130, 14); + panel.add(labelName); + + JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:"); + lblVerantwortlicher.setBounds(10, 105, 130, 14); + panel.add(lblVerantwortlicher); + + labelOS = new JLabel(""); + labelOS.setBounds(150, 55, 130, 14); + panel.add(labelOS); + + JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:"); + lblWeitereVerantwortliche.setBounds(10, 55, 130, 14); + panel.add(lblWeitereVerantwortliche); + + labelVerantwortlicher = new JLabel(""); + labelVerantwortlicher.setBounds(150, 105, 130, 14); + panel.add(labelVerantwortlicher); + + JLabel label = new JLabel("Weitere Verantwortliche:"); + label.setBounds(10, 130, 130, 14); + panel.add(label); + + labelWeitereVerantwortliche = new JLabel(""); + labelWeitereVerantwortliche.setBounds(150, 130, 130, 14); + panel.add(labelWeitereVerantwortliche); + + JLabel label_5 = new JLabel(""); + label_5.setBounds(150, 130, 130, 14); + panel.add(label_5); + + labelUpdate = new JLabel(""); + labelUpdate.setBounds(150, 80, 130, 14); + panel.add(labelUpdate); + + JLabel lblLetztesUpdate = new JLabel("Letztes Update:"); + lblLetztesUpdate.setBounds(10, 80, 130, 14); + panel.add(lblLetztesUpdate); + + JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:"); + lblImageIstVorlage.setBounds(10, 259, 130, 14); + panel.add(lblImageIstVorlage); + + labelVorlage = new JLabel(""); + labelVorlage.setBounds(150, 259, 130, 14); + panel.add(labelVorlage); + + labelLizenzSoftware = new JLabel(""); + labelLizenzSoftware.setBounds(150, 284, 130, 14); + panel.add(labelLizenzSoftware); + + JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:"); + lblLizenzpflichtigeSoftware.setBounds(10, 284, 130, 14); + panel.add(lblLizenzpflichtigeSoftware); + + JLabel lblInternet = new JLabel("Internet:"); + lblInternet.setBounds(10, 309, 130, 14); + panel.add(lblInternet); + + labelInternet = new JLabel(""); + labelInternet.setBounds(150, 309, 130, 14); + panel.add(labelInternet); + + JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:"); + lblEmpfehlungRam.setBounds(10, 334, 130, 14); + panel.add(lblEmpfehlungRam); + + labelRam = new JLabel(""); + labelRam.setBounds(150, 334, 130, 14); + panel.add(labelRam); + + JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:"); + lblEmpfehlungCpu.setBounds(10, 359, 130, 14); + panel.add(lblEmpfehlungCpu); + + labelCPU = new JLabel(""); + labelCPU.setBounds(150, 359, 130, 14); + panel.add(labelCPU); + + JLabel lblTechnischeDaten = new JLabel("Technische Daten:"); + lblTechnischeDaten.setBounds(10, 223, 296, 14); + panel.add(lblTechnischeDaten); + JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); @@ -666,7 +865,8 @@ public class SearchEditImage_GUI extends JFrame { images = client.getImageList(); Iterator<server.Image> i = images.iterator(); - + SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss"); int x = 0; while (i.hasNext()) { @@ -676,7 +876,7 @@ public class SearchEditImage_GUI extends JFrame { images.get(x).getOsName(), images.get(x).getLectureName(), images.get(x).getUserData(), - images.get(x).getUpdateTime(), images.get(x).id, + out.format(in.parse(images.get(x).updateTime)), images.get(x).id, images.get(x).getVersion(), images.get(x).getIsTemplate()}; // Fuege diese Objekte der Tabelle hinzu @@ -688,7 +888,7 @@ public class SearchEditImage_GUI extends JFrame { } return model; - } catch (TException e1) { + } catch (TException | ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); JOptionPane.showMessageDialog(null, @@ -697,5 +897,40 @@ public class SearchEditImage_GUI extends JFrame { } return model; } - + public void writeImageData(String id, String version){ + try { + SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss"); + Map<String,String> res=client.getImageData(id,version); + labelName.setText(res.get("name")); + labelOS.setText(res.get("os")); + labelUpdate.setText(out.format(in.parse(res.get("lastupdate")))); + labelVerantwortlicher.setText(res.get("owner")); + labelWeitereVerantwortliche.setText("Noch nicht Verfügbar"); + if(res.get("template").equals("true")){ + labelVorlage.setText("Ja"); + }else{ + labelVorlage.setText("Nein"); + } + if(res.get("license").equals("1")){ + labelLizenzSoftware.setText("Ja"); + } + else + { + labelLizenzSoftware.setText("Nein"); + } + if(res.get("internet").equals("1")){ + labelInternet.setText("Ja"); + } + else + { + labelInternet.setText("Nein"); + } + labelRam.setText(res.get("ram")); + labelCPU.setText(res.get("cpu")); + } catch (TException | ParseException e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } + } } |
