diff options
| author | Nino Breuer | 2014-11-11 16:49:04 +0100 |
|---|---|---|
| committer | Nino Breuer | 2014-11-11 16:49:04 +0100 |
| commit | b8ef5d05efbc773eb87844911e8b103ce5acfca8 (patch) | |
| tree | f39ed66637a73dd91d76da240571a9ca2c6f8559 /dozentenmodul/src | |
| parent | main mainu now not resizable (diff) | |
| download | tutor-module-b8ef5d05efbc773eb87844911e8b103ce5acfca8.tar.gz tutor-module-b8ef5d05efbc773eb87844911e8b103ce5acfca8.tar.xz tutor-module-b8ef5d05efbc773eb87844911e8b103ce5acfca8.zip | |
h
Diffstat (limited to 'dozentenmodul/src')
6 files changed, 237 insertions, 119 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java index c80d5a52..88a63883 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java @@ -122,7 +122,7 @@ public class PermissionEditImage_GUI extends JFrame { // TODO Auto-generated catch block e.printStackTrace(); } - setTitle("bwLehrpool Suite - Image erzeugen"); + setTitle("bwLehrpool Suite - Image bearbeiten"); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -136,12 +136,12 @@ public class PermissionEditImage_GUI extends JFrame { panel.setLayout(null); { JLabel lblNewLabel = new JLabel( - "Image Berechtigungen (Nur zur Veranschaulichung)"); + "Image Berechtigungen"); lblNewLabel.setBounds(10, 11, 509, 22); panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); } - + JTextPane txtpnBitteWhlenSie = new JTextPane(); txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); diff --git a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java index bac85d04..cfb83308 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java @@ -98,7 +98,7 @@ public class SearchEditImage_GUI extends JFrame { Component c = null; int requiredPermission = 1; // 0=Read, 1= Write, 2=LinkAllowed, 3=Admin String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung" };// Angezeigt + "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" };// Angezeigt // werden // aber // nur @@ -561,11 +561,12 @@ public class SearchEditImage_GUI extends JFrame { labelVerantwortlicher.setBounds(10, 272, 296, 14); panel.add(labelVerantwortlicher); - JLabel label = new JLabel("Weitere Verantwortliche:"); - label.setBounds(10, 284, 130, 14); - panel.add(label); + JLabel lblWeitereAnsprechpartner = new JLabel("Weitere Ansprechpartner:"); + lblWeitereAnsprechpartner.setBounds(10, 284, 130, 14); + panel.add(lblWeitereAnsprechpartner); labelWeitereVerantwortliche = new JLabel(""); + labelWeitereVerantwortliche.setToolTipText("Weitere Personen die Zugriff auf dieses Image haben"); labelWeitereVerantwortliche.setBounds(10, 297, 296, 14); panel.add(labelWeitereVerantwortliche); @@ -735,8 +736,8 @@ public class SearchEditImage_GUI extends JFrame { // Hole eine Liste der passenden Images images = client.getImageListPermissionWrite(person.verantwortlicher .getUserID()); - System.out.println("User is: " - + person.verantwortlicher.getUserID()); + //System.out.println("User is: " + // + person.verantwortlicher.getUserID()); // images = client.getImageList(person.verantwortlicher.getUserID(), // requiredPermission); @@ -760,7 +761,9 @@ public class SearchEditImage_GUI extends JFrame { out.format(in.parse(images.get(x).updateTime)), images.get(x).id, images.get(x).getVersion(), images.get(x).getIsTemplate(), - images.get(x).getDescription()}; + images.get(x).getDescription(), + byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) + }; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); @@ -831,9 +834,28 @@ public class SearchEditImage_GUI extends JFrame { labelID.setText(res.get("id")); labelVersion.setText(res.get("version")); textAreadesc.setText(res.get("desc")); + res.clear(); + + List<String> contacts = client.getAdditionalImageContacts(id); + labelWeitereVerantwortliche.setText(""); + for (int i = 0; i < contacts.size(); i++) + { + labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText()+(contacts.get(i))); + } + labelWeitereVerantwortliche.setToolTipText(labelWeitereVerantwortliche.getText()); + + } catch (TException | ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } + + public static String byteToGigabyte(long bytes, boolean si) { + int unit = si ? 1000 : 1024; + if (bytes < unit) return bytes + " B"; + int exp = (int) (Math.log(bytes) / Math.log(unit)); + String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp-1) + (si ? "" : "i"); + return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre); + } } diff --git a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java index c32107bf..050b81d8 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java @@ -64,7 +64,7 @@ import org.apache.thrift.TException; import server.generated.Server.Client;
import thrift.ThriftConnection;
-import util.GuiOrganizer;
+
import util.OpenLinks;
@SuppressWarnings("serial")
@@ -101,7 +101,7 @@ public class SearchImage_GUI extends JFrame { boolean activeSearch = false;
Component c = null;
String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung",
- "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung" }; // Angezeigt
+ "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" }; // Angezeigt
// werden
// aber
// nur
@@ -138,6 +138,7 @@ public class SearchImage_GUI extends JFrame { return false;
}
};
+
final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
modelAll);
final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>(
@@ -160,22 +161,13 @@ public class SearchImage_GUI extends JFrame { ArrayList<RowFilter<Object, Object>> finalFilters = new ArrayList<RowFilter<Object, Object>>();
+
/**
* Create the dialog.
*/
public SearchImage_GUI(Component formerGUI) {
-
- orFilters.add(RowFilter.regexFilter(".", 0)); //search for anything
- orFilter = RowFilter.orFilter(orFilters);
-
- andFilters.add(RowFilter.regexFilter("1", 8));
- andFilter = RowFilter.andFilter(andFilters);
-
- finalFilters.add(andFilter);
- finalFilters.add(orFilter);
-
- templateFilter = RowFilter.andFilter(finalFilters);
+
addWindowListener(new WindowAdapter() {
@Override
@@ -327,11 +319,6 @@ public class SearchImage_GUI extends JFrame { public void keyReleased(KeyEvent e) {
// Textfield eingabe auslesen
String stext = textFieldName.getText().trim();
-
-
-
-
-
// Wenn Textfield nicht leer
if (stext != "")
@@ -357,7 +344,8 @@ public class SearchImage_GUI extends JFrame { finalFilters.add(andFilter);
finalFilters.add(orFilter);
templateFilter = RowFilter.andFilter(finalFilters);
- rowSorterPublicVorlagen.setRowFilter(templateFilter); //TODO füttere finalFilter mit andFilter und orFilter --> TEST
+ rowSorterPublicVorlagen.setRowFilter(templateFilter); //füttere finalFilter mit andFilter und orFilter
+
}
else
{ //refresh list
@@ -365,6 +353,7 @@ public class SearchImage_GUI extends JFrame { String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname();
orFilters.clear();
+ andFilters.clear();
orFilters.add(RowFilter.regexFilter(username, 4)); //case insensitive, filter for anything
orFilter = RowFilter.andFilter(orFilters);
@@ -378,6 +367,7 @@ public class SearchImage_GUI extends JFrame { orFilters.add(RowFilter.regexFilter("1", 8));
orFilter = RowFilter.orFilter(orFilters);
rowSorterPublicVorlagen.setRowFilter(orFilter);
+
}
tablemyImages.clearSelection();
@@ -412,24 +402,22 @@ public class SearchImage_GUI extends JFrame { }
// Registriert Auswahlaenderungen der Box
comboBox.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
+ public void actionPerformed(ActionEvent arg0)
+ {
// Prueft das die Auswahl nicht leer ist
if (comboBox.getSelectedItem().toString() != "") {
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 {
+ 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));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(username, 4));
+ rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8));
rowSorterAll.setRowFilter(null);
}
}
@@ -442,7 +430,7 @@ public class SearchImage_GUI extends JFrame { lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
- // oeffnet das Hauuetmenue
+ // oeffnet das Hauptmenue
SearchImage_GUI.this.setVisible(false);
MainMenue_GUI main = new MainMenue_GUI(c);
@@ -471,26 +459,30 @@ public class SearchImage_GUI extends JFrame { contentPanel.add(lblNewLabel_1);
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+
+ //not needed anymore, as the filters are set by the full text search completely
+ /*
tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent arg0) {
- if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false) {
+ if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false)
+ {
String username = person.verantwortlicher.getName() + " "
+ person.verantwortlicher.getVorname();
- rowSorterMyImages.setRowFilter(RowFilter.regexFilter(
- username, 4));
- } else if (tabbedPane.getSelectedIndex() == 1
- && activeSearch == false) {
- rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(
- "true", 8));
- } else if (tabbedPane.getSelectedIndex() == 2
- && activeSearch == false) {
- rowSorterAll.setRowFilter(null);
+ //rowSorterMyImages.setRowFilter(RowFilter.regexFilter(username, 4));
+ }
+ else if (tabbedPane.getSelectedIndex() == 1&& activeSearch == false)
+ {
+ //rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8)); //--> caused bug: no initial list in public images
+ }
+ else if (tabbedPane.getSelectedIndex() == 2 && activeSearch == false)
+ {
+ //rowSorterAll.setRowFilter(null);
}
}
});
-
+ */
tabbedPane.setBounds(10, 158, 557, 339);
contentPanel.add(tabbedPane);
@@ -535,7 +527,7 @@ public class SearchImage_GUI extends JFrame { if (tablemyImages.getSelectedRow() != -1) {
String imageid = modelMyImages.getValueAt(
tablemyImages
- .convertRowIndexToModel(tablemyImages //fehler nur, wenn zeile selektiert und dann suche eingegeben wird!
+ .convertRowIndexToModel(tablemyImages
.getSelectedRow()), 6)
.toString();
String version = modelMyImages.getValueAt(
@@ -555,6 +547,7 @@ public class SearchImage_GUI extends JFrame { tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
+
tablemyImages.setRowSorter(rowSorterMyImages);
scrollPaneMyImage.setViewportView(tablemyImages);
@@ -592,8 +585,11 @@ public class SearchImage_GUI extends JFrame { tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit();
tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit();
+
tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen);
+
scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
+
tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null);
tableAllImages.setRowSorter(rowSorterAll);
@@ -992,11 +988,13 @@ public class SearchImage_GUI extends JFrame { out.format(in.parse(images.get(x).updateTime)),
images.get(x).id, images.get(x).getVersion(),
images.get(x).getIsTemplate(),
- images.get(x).getDescription()};
- System.out.println("filling templates..."+images.get(x).getIsTemplate());
+ images.get(x).getDescription(),
+ byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false)
+ };
+ //System.out.println("filling templates..."+images.get(x).getIsTemplate());
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
- System.out.println(model.getValueAt(x, 9));
+ //System.out.println(model.getValueAt(x, 9));
x++;
i.next();
@@ -1034,11 +1032,15 @@ public class SearchImage_GUI extends JFrame { out.format(in.parse(images.get(x).updateTime)),
images.get(x).id, images.get(x).getVersion(),
images.get(x).getIsTemplate(),
- images.get(x).getDescription()};
- System.out.println("filling templates..."+images.get(x).getIsTemplate());
+ images.get(x).getDescription(),
+ byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) //filesize made readable
+
+ };
+ //System.out.println(images.get(x).getImageSize()+" "+images.get(x).getImageName());
+ //System.out.println("filling templates..."+images.get(x).getIsTemplate());
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
- System.out.println(model.getValueAt(x, 9));
+ //System.out.println(model.getValueAt(x, 9));
x++;
i.next();
@@ -1073,13 +1075,16 @@ public class SearchImage_GUI extends JFrame { Object[] obj = { images.get(x).getImageName(),
images.get(x).getLicenseRestriction(),
images.get(x).getOsName(),
- images.get(x).getLectureName(),
+ images.get(x).getImageName(),
images.get(x).getUserData(),
out.format(in.parse(images.get(x).updateTime)),
images.get(x).id, images.get(x).getVersion(),
images.get(x).getIsTemplate(),
- images.get(x).getDescription()};
+ images.get(x).getDescription(),
+ byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false)
+ };
// Fuege diese Objekte der Tabelle hinzu
+
model.addRow(obj);
x++;
i.next();
@@ -1118,7 +1123,6 @@ public class SearchImage_GUI extends JFrame { labelInternet.setText("");
labelRam.setText("");
labelCPU.setText("");
-
}
public void writeImageData(String id, String version) {
@@ -1151,9 +1155,26 @@ public class SearchImage_GUI extends JFrame { labelID.setText(res.get("id"));
labelVersion.setText(res.get("version"));
textAreadesc.setText(res.get("desc"));
+
+ List<String> contacts = client.getAdditionalImageContacts(id);
+ labelWeitereVerantwortliche.setText("");
+ for (int i = 0; i < contacts.size(); i++)
+ {
+ labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText()+(contacts.get(i)));
+ }
+ labelWeitereVerantwortliche.setToolTipText(labelWeitereVerantwortliche.getText());
+
} catch (TException | ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
+
+ public static String byteToGigabyte(long bytes, boolean si) {
+ int unit = si ? 1000 : 1024;
+ if (bytes < unit) return bytes + " B";
+ int exp = (int) (Math.log(bytes) / Math.log(unit));
+ String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp-1) + (si ? "" : "i");
+ return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre);
+ }
}
diff --git a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java index 22cee572..879ae879 100644 --- a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java +++ b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java @@ -376,7 +376,7 @@ public class Login_GUI extends JFrame { LOGGER.debug("Session-ID: " + result.sessionId); LOGGER.debug("Token: " + result.authToken); setStatus(Color.green, "Daten erhalten.", null); - + String hochschule = user.eMail.substring(user.eMail.indexOf("@") + 1); person.verantwortlicher.setUsername(lblusername.getText().trim()); @@ -389,6 +389,7 @@ public class Login_GUI extends JFrame { // Spaeter ueber result.getRole zum Beispiel die Rolle holen person.verantwortlicher.setRole("Dozent"); showMainMenu(); + } // end bwLehrpool-Login } diff --git a/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java b/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java index 415aea3c..929f9b2d 100644 --- a/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java @@ -99,7 +99,7 @@ public class EditLectureLink_GUI extends JFrame { boolean activeSearch = false; Component c = null; String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template" }; + "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung" }; ThriftConnection con = new ThriftConnection(); Client client = models.Client.clientcon.getClient(); final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) { @@ -126,6 +126,19 @@ public class EditLectureLink_GUI extends JFrame { modelPublicVorlagen); private JTextField textField; + + RowFilter orFilter = null; + List<RowFilter<Object,Object>> orFilters = new ArrayList<RowFilter<Object,Object>>(); + + //needed for templates, filter for name OR desc AND temp_flag --> (name || desc) && (temp_flag) + RowFilter andFilter = null; + List<RowFilter<Object,Object>> andFilters = new ArrayList<RowFilter<Object,Object>>(); + + //the final filter which handles the search in the templates + RowFilter templateFilter = null; + ArrayList<RowFilter<Object, Object>> finalFilters = new ArrayList<RowFilter<Object, Object>>(); + + private static final String HELP_MESSAGE = "<html><div align=\"center\">" + "Ändern Sie hier das Image, zu dem Ihre Veranstaltung gehört.<br />" + "Wählen Sie das Image aus, das zu Ihrer Veranstaltung passt und klicken Sie anschließend auf \"Veranstaltung ändern und abschließen\"." @@ -178,32 +191,28 @@ public class EditLectureLink_GUI extends JFrame { tablemyImages.getColumnModel().getColumn(7).setWidth(0); tablemyImages.getColumnModel().getColumn(7).setMinWidth(0); tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(9).setWidth(0); + tablemyImages.getColumnModel().getColumn(9).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(1) - .setMinWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(1) - .setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(1).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(1).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(3) - .setMinWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(3) - .setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(3).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(3).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(8) - .setMinWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(8) - .setMaxWidth(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(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); + tablePublicVorlagen.getColumnModel().getColumn(7).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(9).setWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(9).setMinWidth(0); + tablePublicVorlagen.getColumnModel().getColumn(9).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(1).setWidth(0); tableAllImages.getColumnModel().getColumn(1).setMinWidth(0); @@ -220,6 +229,10 @@ public class EditLectureLink_GUI extends JFrame { tableAllImages.getColumnModel().getColumn(7).setWidth(0); tableAllImages.getColumnModel().getColumn(7).setMinWidth(0); tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0); + tableAllImages.getColumnModel().getColumn(9).setWidth(0); + tableAllImages.getColumnModel().getColumn(9).setMinWidth(0); + tableAllImages.getColumnModel().getColumn(9).setMaxWidth(0); + textFieldName.requestFocusInWindow(); } }); @@ -290,26 +303,61 @@ public class EditLectureLink_GUI extends JFrame { public void keyReleased(KeyEvent e) { String stext = textFieldName.getText(); // Wenn Textfield nicht leer - if (stext != "") { + 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 { + orFilters.clear(); + andFilters.clear(); + finalFilters.clear(); + + orFilters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive + //preparation for search via lecture description. "9" has to be corrected as the index of titles + orFilters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive + + orFilter = RowFilter.orFilter(orFilters); + + rowSorterAll.setRowFilter(orFilter); + rowSorterMyImages.setRowFilter(orFilter); + + andFilters.add(RowFilter.regexFilter("1", 8)); + andFilter = RowFilter.andFilter(andFilters); + + finalFilters.add(andFilter); + finalFilters.add(orFilter); + templateFilter = RowFilter.andFilter(finalFilters); + rowSorterPublicVorlagen.setRowFilter(templateFilter); + } + 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); + + String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname(); + + orFilters.clear(); + andFilters.clear(); + orFilters.add(RowFilter.regexFilter(username, 4)); //case insensitive, filter for anything + orFilter = RowFilter.andFilter(orFilters); + + rowSorterMyImages.setRowFilter(orFilter); + rowSorterAll.setRowFilter(orFilter); + + //in addition, templates can only be shown when they really are templates! + orFilters.clear(); + orFilters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive + orFilters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive + orFilters.add(RowFilter.regexFilter("1", 8)); + orFilter = RowFilter.orFilter(orFilters); + rowSorterPublicVorlagen.setRowFilter(orFilter); + } + + tablemyImages.clearSelection(); + tableAllImages.clearSelection(); + tablePublicVorlagen.clearSelection(); + + resetLectureInfo(); } @@ -335,20 +383,15 @@ public class EditLectureLink_GUI extends JFrame { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { 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)); + 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)); + rowSorterMyImages.setRowFilter(RowFilter.regexFilter(username, 4)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8)); rowSorterAll.setRowFilter(null); } } @@ -388,6 +431,8 @@ public class EditLectureLink_GUI extends JFrame { contentPanel.add(lblNewLabel_1); tabbedPane = new JTabbedPane(JTabbedPane.TOP); + //not needed anymore, as the filters are set by the full text search completely + /* tabbedPane.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent arg0) { if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false) { @@ -407,7 +452,7 @@ public class EditLectureLink_GUI extends JFrame { } }); - + */ tabbedPane.setBounds(10, 158, 557, 339); contentPanel.add(tabbedPane); @@ -415,6 +460,9 @@ public class EditLectureLink_GUI extends JFrame { tableAllImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { + + if(tableAllImages.getSelectedRow() != -1) + { String imageid = modelAll.getValueAt( tableAllImages @@ -427,7 +475,7 @@ public class EditLectureLink_GUI extends JFrame { .getSelectedRow()), 7) .toString(); writeImageData(imageid, version); - + } } }); tableAllImages.setModel(modelAll); @@ -441,6 +489,9 @@ public class EditLectureLink_GUI extends JFrame { tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { + + if(tablemyImages.getSelectedRow() != -1) + { String imageid = modelMyImages.getValueAt( tablemyImages .convertRowIndexToModel(tablemyImages //selber fehler wie bei image @@ -452,6 +503,7 @@ public class EditLectureLink_GUI extends JFrame { .getSelectedRow()), 7) .toString(); writeImageData(imageid, version); + } } }); tablemyImages.setModel(modelMyImages); @@ -469,6 +521,8 @@ public class EditLectureLink_GUI extends JFrame { tablePublicVorlagen.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { + if(tablePublicVorlagen.getSelectedRow() != -1) + { String imageid = modelPublicVorlagen .getValueAt( tablePublicVorlagen @@ -482,6 +536,7 @@ public class EditLectureLink_GUI extends JFrame { .getSelectedRow()), 7) .toString(); writeImageData(imageid, version); + } } }); tablePublicVorlagen.setModel(modelPublicVorlagen); @@ -935,9 +990,9 @@ public class EditLectureLink_GUI extends JFrame { labelVerantwortlicher.setBounds(10, 272, 296, 14); panel.add(labelVerantwortlicher); - JLabel label = new JLabel("Weitere Verantwortliche:"); - label.setBounds(10, 284, 130, 14); - panel.add(label); + JLabel lblWeitereAnsprechpartner = new JLabel("Weitere Ansprechpartner:"); + lblWeitereAnsprechpartner.setBounds(10, 284, 130, 14); + panel.add(lblWeitereAnsprechpartner); labelWeitereVerantwortliche = new JLabel(""); labelWeitereVerantwortliche.setBounds(10, 297, 296, 14); @@ -1120,12 +1175,12 @@ public class EditLectureLink_GUI extends JFrame { images.get(x).getUserData(), out.format(in.parse(images.get(x).updateTime)), images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate() }; + images.get(x).getIsTemplate(), + images.get(x).getDescription()}; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); x++; i.next(); - } return model; @@ -1155,7 +1210,8 @@ public class EditLectureLink_GUI extends JFrame { images.get(x).getUserData(), out.format(in.parse(images.get(x).updateTime)), images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate() }; + images.get(x).getIsTemplate(), + images.get(x).getDescription()}; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); x++; @@ -1168,7 +1224,22 @@ public class EditLectureLink_GUI extends JFrame { } - + private void resetLectureInfo() { + //reset the detailed information on the right hand side when changing search string + labelID.setText(""); + labelVersion.setText(""); + labelName.setText(""); + textAreadesc.setText(""); + labelOS.setText(""); + labelUpdate.setText(""); + labelVerantwortlicher.setText(""); + labelWeitereVerantwortliche.setText(""); + labelVorlage.setText(""); + labelLizenzSoftware.setText(""); + labelInternet.setText(""); + labelRam.setText(""); + labelCPU.setText(""); + } diff --git a/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java index d2ab3a45..09e5f116 100644 --- a/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java @@ -329,6 +329,8 @@ public class SearchLecture_GUI extends JFrame { {
public void valueChanged(ListSelectionEvent e)
{
+ if(tableAllLectures.getSelectedRow() != -1)
+ {
String imageid = modelAll
.getValueAt(
tableAllLectures
@@ -346,6 +348,7 @@ public class SearchLecture_GUI extends JFrame { e1.printStackTrace();
}
}
+ }
});
tableAllLectures.setModel(modelAll);
tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
|
