diff options
| author | unknown | 2014-02-26 16:28:11 +0100 |
|---|---|---|
| committer | unknown | 2014-02-26 16:28:11 +0100 |
| commit | d07c7effb917fdb0e6092761b4c0d0f42c3895f7 (patch) | |
| tree | 7bb7ebdc3a9b252fbd2675cbd92996110d58075c /Dozentenmodul/src/GUI/SearchImage_GUI.java | |
| parent | Kommunikation von BwLehrpool Suite zu BwLehrpool Suite Server läuft nun über ... (diff) | |
| download | tutor-module-d07c7effb917fdb0e6092761b4c0d0f42c3895f7.tar.gz tutor-module-d07c7effb917fdb0e6092761b4c0d0f42c3895f7.tar.xz tutor-module-d07c7effb917fdb0e6092761b4c0d0f42c3895f7.zip | |
-Suchfenster verbessert
- On The Fly nach Name funktioniert nun
- Tab Meine Images nun Funktionsfähig
-Möglichkeit der Konfiguration der Anwendung ist geschaffen, somit können die beiden GUIs BillOfRights und der Link zu vmware player für immer ausgeblendet werden
-Thrift ist nun fertig implementiert
Diffstat (limited to 'Dozentenmodul/src/GUI/SearchImage_GUI.java')
| -rw-r--r-- | Dozentenmodul/src/GUI/SearchImage_GUI.java | 139 |
1 files changed, 86 insertions, 53 deletions
diff --git a/Dozentenmodul/src/GUI/SearchImage_GUI.java b/Dozentenmodul/src/GUI/SearchImage_GUI.java index d9ee091f..64b37898 100644 --- a/Dozentenmodul/src/GUI/SearchImage_GUI.java +++ b/Dozentenmodul/src/GUI/SearchImage_GUI.java @@ -15,7 +15,6 @@ import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
-import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -35,11 +34,18 @@ import javax.swing.JTabbedPane; import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.JTextPane;
+import javax.swing.RowFilter;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableModel;
+import javax.swing.table.TableRowSorter;
+
+import models.person;
import org.apache.thrift.TException;
@@ -55,10 +61,16 @@ public class SearchImage_GUI extends JFrame { JRadioButton rdbtnInternetNein;
JComboBox<String> comboBox;
JTable tableAllImages;
+ JTable tablemyImages;
private JTextField textFieldName;
+ JTabbedPane tabbedPane;
String[] titles= {"Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", "Letztes Update", "Schlagwort"};
ThriftConnection con=new ThriftConnection();
Client client=con.getThriftConnection();
+ final DefaultTableModel modelAll = new DefaultTableModel( titles, 0 );
+ final DefaultTableModel modelMyImages = new DefaultTableModel( titles, 0 );
+ final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>( modelAll );
+ final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>( modelMyImages );
/**
* Launch the application.
@@ -80,26 +92,31 @@ public class SearchImage_GUI extends JFrame { addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
+ //Beendet die Anwendung nach klick auf X
System.exit(0);
}
});
+ //Verhindert das Vergrößern Des Fensters
setResizable(false);
try {
+ //Setzt das Look & Feel auf System
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
| IllegalAccessException | UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
+ //Setzt den Fenstertitel
setTitle("bwLehrpool Suite *Prototyp*");
+ //Zentriert das Fenster in die Bildmitte
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- int top=(screenSize.height - 603) / 2;
- int left=(screenSize.width - 722) / 2;
+ int top=(screenSize.height - 722) / 2;
+ int left=(screenSize.width - 603) / 2;
setBounds(left, top, 603, 722);
- final DefaultTableModel modelAll = new DefaultTableModel( titles, 0 );
+
final DefaultTableModel model = new DefaultTableModel( titles, 0 );
@@ -146,26 +163,23 @@ public class SearchImage_GUI extends JFrame { panel_1.add(lblInternetIstInnerhalb);
textFieldName = new JTextField();
+ //Key Listener der Tastatureingabe registriert
textFieldName.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
+ //Textfield eingabe auslesen
String stext=textFieldName.getText();
- modelAll.setRowCount(0);
- initTableModel(modelAll);
-
+
+ //Wenn Textfield nicht leer
if(stext!="")
- for(int i=0;i<modelAll.getRowCount();i++){
+ {
+ //Filtere nach der Eingabe
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(textFieldName.getText(), 0));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(textFieldName.getText(), 0));
- if(modelAll.getValueAt(i, 0).toString().startsWith(stext)){
-
- }
- else
- {
- modelAll.removeRow(i);
- }
- }
- }
- });
+ }
+ }});
+
textFieldName.setBounds(270, 30, 250, 20);
panel_1.add(textFieldName);
@@ -175,6 +189,7 @@ public class SearchImage_GUI extends JFrame { lblErweiterteSuche.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
+ //Öffnet das Fenster Extended GUI
ExtendedSearch_GUI es=new ExtendedSearch_GUI();
es.setVisible(true);
}
@@ -186,35 +201,31 @@ public class SearchImage_GUI extends JFrame { comboBox = new JComboBox<String>();
try {
+ //Holt sich eine Liste aller verfügbaren Betriebssysteme vom Server
List<String> list=client.getAllOS();
+ //Leeres Item hinzufügen
comboBox.addItem("");
for(int i=0;i<list.size();i++)
{
- comboBox.addItem(list.get(i));
+ //Hinzufügen der verfügbaren Betriebssysteme
+ comboBox.addItem(list.get(i));
}
} catch (TException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
+ //Registriert Auswahländerungen der Box
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
- modelAll.setRowCount(0);
- initTableModel(modelAll);
- String selItem=comboBox.getSelectedItem().toString();
- if(selItem!="")
+ //Prüft das die Auswahl nicht leer ist
+ if(comboBox.getSelectedItem().toString()!="")
{
- for(int i=0;i<modelAll.getRowCount();i++){
-
- if(modelAll.getValueAt(i, 2).equals(selItem)){
-
- }
- else
- {
- modelAll.removeRow(i);
- }
+ //Filtert nach dem ausgewählten Betriebssystem
+ rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2));
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2));
}
}
- }
+
});
comboBox.setBounds(270, 58, 250, 20);
panel_1.add(comboBox);
@@ -223,7 +234,7 @@ public class SearchImage_GUI extends JFrame { lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
-
+ //Öffnet das Hauütmenü
SearchImage_GUI.this.setVisible(false);
MainMenue_GUI main=new MainMenue_GUI();
main.setVisible(true);
@@ -250,19 +261,37 @@ public class SearchImage_GUI extends JFrame { lblNewLabel_1.setBounds(146, 11, 85, 14);
contentPanel.add(lblNewLabel_1);
- JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane = new JTabbedPane(JTabbedPane.TOP);
+ tabbedPane.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent arg0) {
+ System.out.println(tabbedPane.getSelectedIndex());
+ if(tabbedPane.getSelectedIndex()==0){
+
+
+
+ }
+ else if(tabbedPane.getSelectedIndex()==1){
+ String username="Spitzer Tobias";
+ rowSorterMyImages.setRowFilter(RowFilter.regexFilter(username, 4));
+ //rowSorterMyImages.toggleSortOrder(0);
+ }
+
+ }
+ });
tabbedPane.setBounds(10, 197, 557, 300);
contentPanel.add(tabbedPane);
JScrollPane scrollPaneMyImage = new JScrollPane();
- JTable tablemyImages=new JTable();
- tablemyImages.setModel(model);
+ tablemyImages=new JTable();
+ tablemyImages.setModel(modelMyImages);
tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit();
tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit();
+ initTableModel(modelMyImages);
+ tablemyImages.setRowSorter(rowSorterMyImages);
JScrollPane scrollPaneAllImages = new JScrollPane();
tableAllImages=new JTable();
@@ -272,7 +301,9 @@ public class SearchImage_GUI extends JFrame { tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit();
tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit();
-
+ initTableModel(modelAll);
+ tableAllImages.setRowSorter(rowSorterAll);
+
scrollPaneAllImages.setViewportView(tableAllImages);
tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
@@ -290,6 +321,7 @@ public class SearchImage_GUI extends JFrame { scrollPaneCoopImages.setViewportView(tableCoopImages);
tabbedPane.addTab("Kooperative Images", null, scrollPaneCoopImages, null);
+ tabbedPane.setEnabledAt(2, false);
JScrollPane scrollPanePublicImages = new JScrollPane();
JTable tablePublicImages=new JTable();
@@ -302,6 +334,7 @@ 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();
@@ -314,12 +347,15 @@ public class SearchImage_GUI extends JFrame { scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen);
tabbedPane.addTab("\u00D6ffentliche Vorlagen", null, scrollPanePublicVorlagen, null);
+ tabbedPane.setEnabledAt(4, false);
+
- initTableModel(modelAll);
+
JButton btnDownload = new JButton("Download");
btnDownload.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
+ //Öffnet den Downloader
FTPDownloader_GUI down=new FTPDownloader_GUI("Test");
down.setVisible(true);
SearchImage_GUI.this.setVisible(false);
@@ -336,7 +372,8 @@ public class SearchImage_GUI extends JFrame { {
JButton okButton = new JButton("Zur\u00FCck");
okButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(ActionEvent e) {
+ //Öffnet das Hauptmenü
MainMenue_GUI main=new MainMenue_GUI();
main.setVisible(true);
dispose();
@@ -350,6 +387,7 @@ public class SearchImage_GUI extends JFrame { JButton cancelButton = new JButton("Weiter");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
+
EditImageAllgemein_GUI ea=new EditImageAllgemein_GUI();
ea.setVisible(true);
dispose();
@@ -371,12 +409,6 @@ public class SearchImage_GUI extends JFrame { JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
- JMenu mnNewMenu = new JMenu("Suchen");
- menuBar.add(mnNewMenu);
-
- JMenuItem mntmVlSuche = new JMenuItem("VL Suche");
- mnNewMenu.add(mntmVlSuche);
-
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
@@ -387,23 +419,24 @@ public class SearchImage_GUI extends JFrame { mnNewMenu_1.add(mntmOtrs);
}
-
+ //Initiale Beffülung eines Table models
public DefaultTableModel initTableModel(DefaultTableModel model){
List<server.Image> images;
try {
+ //Hole eine Liste der Images
images = client.getImageList();
Iterator<server.Image> i=images.iterator();
- List<Object[]> ListObj = new ArrayList<Object[]>();
+
int x=0;
while(i.hasNext())
{
-
- i.next();
- Object [] obj={images.get(x).getImageName(),images.get(x).getLicenseRestriction(),images.get(x).getOsName(),images.get(x).getLectureName(),images.get(x).getUpdateTime(),images.get(x).getUserData()};
- ListObj.add(obj);
- model.addRow(ListObj.get(x));
+ //erzeuge Objekte für 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()};
+ //Füge diese Objekte der Tabelle hinzu
+ model.addRow(obj);
x++;
+ i.next();
}
|
