summaryrefslogtreecommitdiffstats
path: root/Dozentenmodul/src/gui/image/DeleteImage_GUI.java
diff options
context:
space:
mode:
Diffstat (limited to 'Dozentenmodul/src/gui/image/DeleteImage_GUI.java')
-rw-r--r--Dozentenmodul/src/gui/image/DeleteImage_GUI.java373
1 files changed, 291 insertions, 82 deletions
diff --git a/Dozentenmodul/src/gui/image/DeleteImage_GUI.java b/Dozentenmodul/src/gui/image/DeleteImage_GUI.java
index 67084a75..156bfa44 100644
--- a/Dozentenmodul/src/gui/image/DeleteImage_GUI.java
+++ b/Dozentenmodul/src/gui/image/DeleteImage_GUI.java
@@ -69,26 +69,35 @@ public class DeleteImage_GUI extends JFrame {
JComboBox<String> 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" };
- ThriftConnection con=new ThriftConnection();
+ "Verantwortlicher", "Letztes Update", "ID", "Version","Template" };
+ ThriftConnection con = new ThriftConnection();
Client client = models.Client.clientcon.getClient();
final DefaultTableModel modelAll = new DefaultTableModel(titles, 0){
public boolean isCellEditable(int rowIndex, int mColIndex) {
return false;
}
};
- final DefaultTableModel modelMyImages = new DefaultTableModel(titles,0){
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- return false;
- }
- };
+ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
+ final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, 0){
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ return false;
+ }
+ };
final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
modelAll);
final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
modelMyImages);
+ final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>(
+ modelPublicVorlagen);
/**
* Create the dialog.
@@ -101,6 +110,13 @@ public class DeleteImage_GUI extends JFrame {
con.closeThriftConnection();
System.exit(0);
}
+ @Override
+ public void windowOpened(WindowEvent arg0) {
+ initTableModel(modelAll);
+ initTableModel(modelMyImages);
+ initTableModel(modelPublicVorlagen);
+ textFieldName.requestFocusInWindow();
+ }
});
// Verhindert das Vergroessern Des Fensters
setResizable(false);
@@ -154,7 +170,7 @@ public class DeleteImage_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, 92);
contentPanel.add(panel_1);
panel_1.setLayout(null);
@@ -176,13 +192,24 @@ public class DeleteImage_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);
}
}
});
@@ -191,26 +218,6 @@ public class DeleteImage_GUI extends JFrame {
panel_1.add(textFieldName);
textFieldName.setColumns(10);
- JLabel lblErweiterteSuche = new JLabel(
- "<html><u>Erweiterte Suche*Folgt noch...*</u></html>");
- lblErweiterteSuche.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent arg0) {
-
- // oeffnet das Fenster Extended GUI
- con.closeThriftConnection();
-
- // oeffnet das Fenster Extended GUI
-
- //ExtendedSearchForImages_GUI es = new ExtendedSearchForImages_GUI();
- //es.setVisible(true);
- }
- });
- lblErweiterteSuche.setForeground(Color.BLUE);
-
- lblErweiterteSuche.setBounds(332, 106, 188, 14);
- panel_1.add(lblErweiterteSuche);
-
comboBox = new JComboBox<String>();
try {
// Holt sich eine Liste aller verf\u00FCgbaren Betriebssysteme vom Server
@@ -233,11 +240,22 @@ public class DeleteImage_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);
}
}
@@ -285,42 +303,31 @@ public class DeleteImage_GUI extends JFrame {
tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent arg0) {
System.out.println(tabbedPane.getSelectedIndex());
- 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, 152, 557, 345);
contentPanel.add(tabbedPane);
- initTableModel(modelMyImages);
-
- JScrollPane scrollPaneAllImages = new JScrollPane();
- tableAllImages = new JTable();
- tableAllImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tableAllImages.setModel(modelAll);
- tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
- tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
- initTableModel(modelAll);
+
JScrollPane scrollPaneMyImage = new JScrollPane();
tablemyImages = new JTable();
tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- tablemyImages.setEnabled(true);
-
tablemyImages.setModel(modelMyImages);
-
tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
@@ -330,10 +337,8 @@ public class DeleteImage_GUI extends JFrame {
scrollPaneMyImage.setViewportView(tablemyImages);
tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
- tableAllImages.setRowSorter(rowSorterAll);
+
- scrollPaneAllImages.setViewportView(tableAllImages);
- tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
JScrollPane scrollPaneCoopImages = new JScrollPane();
JTable tableCoopImages = new JTable();
@@ -344,11 +349,41 @@ public class DeleteImage_GUI extends JFrame {
tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit();
+
+ JScrollPane scrollPanePublicVorlagen = new JScrollPane();
+ tablePublicVorlagen = new JTable();
+ tablePublicVorlagen.setModel(modelPublicVorlagen);
+ tablePublicVorlagen
+ .setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+
+ 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);
+
+ JScrollPane scrollPaneAllImages = new JScrollPane();
+ tableAllImages = new JTable();
+ tableAllImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+ tableAllImages.setModel(modelAll);
+ tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
+ tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ tableAllImages.setRowSorter(rowSorterAll);
+
+ scrollPaneAllImages.setViewportView(tableAllImages);
+ tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
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();
@@ -363,23 +398,8 @@ public class DeleteImage_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
- .setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
- 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 btnDelete = new JButton("L\u00F6schen");
btnDelete.addActionListener(new ActionListener() {
@@ -388,7 +408,8 @@ public class DeleteImage_GUI extends JFrame {
String imageid="";
String imageversion="";
int eingabe;
-
+ String username = person.verantwortlicher.getName() + " "
+ + person.verantwortlicher.getVorname();
if (tablemyImages.getSelectedRowCount() != 0) {
// frage, soll das selektierte Daten geloescht werden?
@@ -401,13 +422,13 @@ public class DeleteImage_GUI extends JFrame {
imageid = modelMyImages.getValueAt(
tablemyImages
.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 7)
+ .getSelectedRow()), 6)
.toString();
imageversion = modelMyImages.getValueAt(
tablemyImages
.convertRowIndexToModel(tablemyImages
- .getSelectedRow()), 8)
+ .getSelectedRow()), 7)
.toString();
// TODO
@@ -482,7 +503,196 @@ public class DeleteImage_GUI extends JFrame {
}
}
- } else {
+ }else if (tablePublicVorlagen.getSelectedRowCount() != 0 && modelPublicVorlagen.getValueAt(tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 4).equals(username)) {
+
+ // frage, soll das selektierte Daten geloescht werden?
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
+ JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+
+ imageid = modelPublicVorlagen.getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 6)
+ .toString();
+
+ imageversion = modelPublicVorlagen.getValueAt(
+ tablePublicVorlagen
+ .convertRowIndexToModel(tablePublicVorlagen
+ .getSelectedRow()), 7)
+ .toString();
+
+ // TODO
+ // Image darf nur geloescht werden, wenn keine
+ // Veranstaltung mehr auf das Image verweist.
+ // Unbdingt abfragen!
+
+ try {
+ if (!client.connectedToLecture(imageid,
+ imageversion)) {
+ System.out.println(imageid);
+ System.out.println(imageversion);
+ try {
+ client.deleteImageServer(imageid, imageversion);
+ if (client.deleteImageData(imageid,
+ imageversion)) {
+ // if (client.deleteImageServer(imageid
+ // ,imageversion)) {
+
+
+
+
+ DeleteImage_GUI di = new DeleteImage_GUI();
+ di.setVisible(true);
+ dispose();
+
+
+ /*
+ * } else {
+ *
+ * JOptionPane.showConfirmDialog(null,
+ * "Loeschen vom Server hat leider nicht geklappt!!"
+ * , imageversion,
+ * JOptionPane.OK_CANCEL_OPTION); }
+ */
+
+ } else {
+
+ JOptionPane
+ .showConfirmDialog(
+ null,
+ "L\u00f6schen von der DB hat leider nicht geklappt!!",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (HeadlessException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ } else {
+
+ JOptionPane.showMessageDialog(null,
+ "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
+ "Verlinkung vorhanden", JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+ }
+
+ }else if (tableAllImages.getSelectedRowCount() != 0&&modelAll.getValueAt(tableAllImages.convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 4).equals(username)) {
+
+ // frage, soll das selektierte Daten geloescht werden?
+ eingabe = JOptionPane.showConfirmDialog(null,
+ "Wollen Sie diese Daten l\u00f6schen?", "L\u00f6schen?",
+ JOptionPane.YES_NO_OPTION);
+
+ if (eingabe == JOptionPane.YES_OPTION) {
+
+ imageid = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 6)
+ .toString();
+
+ imageversion = modelAll.getValueAt(
+ tableAllImages
+ .convertRowIndexToModel(tableAllImages
+ .getSelectedRow()), 7)
+ .toString();
+
+ // TODO
+ // Image darf nur geloescht werden, wenn keine
+ // Veranstaltung mehr auf das Image verweist.
+ // Unbdingt abfragen!
+
+ try {
+ if (!client.connectedToLecture(imageid,
+ imageversion)) {
+ System.out.println(imageid);
+ System.out.println(imageversion);
+ try {
+ client.deleteImageServer(imageid, imageversion);
+ if (client.deleteImageData(imageid,
+ imageversion)) {
+ // if (client.deleteImageServer(imageid
+ // ,imageversion)) {
+
+
+
+
+ DeleteImage_GUI di = new DeleteImage_GUI();
+ di.setVisible(true);
+ dispose();
+
+
+ /*
+ * } else {
+ *
+ * JOptionPane.showConfirmDialog(null,
+ * "Loeschen vom Server hat leider nicht geklappt!!"
+ * , imageversion,
+ * JOptionPane.OK_CANCEL_OPTION); }
+ */
+
+ } else {
+
+ JOptionPane
+ .showConfirmDialog(
+ null,
+ "L\u00f6schen von der DB hat leider nicht geklappt!!",
+ "Fehler",
+ JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (HeadlessException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+
+ } else {
+
+ JOptionPane.showMessageDialog(null,
+ "Image kann nicht gel\u00f6scht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.",
+ "Verlinkung vorhanden", JOptionPane.INFORMATION_MESSAGE);
+ }
+ } catch (TException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ JOptionPane.showMessageDialog(null,
+ e.getCause()+"\n"+e.getMessage(),
+ "Debug-Message", JOptionPane.ERROR_MESSAGE);
+ }
+ }
+
+ }
+ else {
JOptionPane.showMessageDialog(null,
"Bitte w\u00e4hlen Sie ein eigenes Image aus",
@@ -590,7 +800,7 @@ public class DeleteImage_GUI extends JFrame {
}
- // Initiale Beff\u00FClung eines Table models
+ // Initiale Beffuelung eines Table models
public DefaultTableModel initTableModel(DefaultTableModel model) {
List<server.Image> images;
try {
@@ -602,17 +812,16 @@ public class DeleteImage_GUI extends JFrame {
int x = 0;
while (i.hasNext()) {
- // erzeuge Objekte f\u00FCr die Tabelle
+ // erzeuge Objekte fuer die Tabelle
Object[] obj = { images.get(x).getImageName(),
images.get(x).getLicenseRestriction(),
images.get(x).getOsName(),
images.get(x).getLectureName(),
images.get(x).getUserData(),
- images.get(x).getUpdateTime(), "", images.get(x).id,
- images.get(x).getVersion() };
- // System.out.println("id:"+images.get(x).getId());
- // F\u00FCge diese Objekte der Tabelle hinzu
-
+ 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++;
i.next();