package GUI;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JPanel;
import javax.swing.ScrollPaneLayout;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JTextPane;
import java.awt.SystemColor;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JSeparator;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import Models.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.border.TitledBorder;
import javax.swing.JTextArea;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import javax.swing.JSpinner;
import javax.swing.SpinnerNumberModel;
import javax.swing.JTextField;
import javax.swing.JTabbedPane;
import java.awt.Panel;
import javax.swing.JTable;
import javax.swing.plaf.basic.BasicTabbedPaneUI.TabbedPaneLayout;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.JScrollPane;
import rmi.RmiClientMethods;
import server.ServerInterface;
import java.awt.ScrollPane;
import java.rmi.RemoteException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.swing.JComboBox;
@SuppressWarnings("serial")
public class SearchImage_GUI extends JFrame {
private final JPanel contentPanel = new JPanel();
String[] result;
JRadioButton rdbtnInternetJa;
JRadioButton rdbtnInternetNein;
private final ButtonGroup buttonGrouplicense = new ButtonGroup();
private final ButtonGroup buttonGroupInternet = new ButtonGroup();
private JTextField textFieldName;
String[] titles= {"Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", "Letztes Update", "Schlagwort"};
RmiClientMethods rmi=new RmiClientMethods();
ServerInterface sint=rmi.getInterface();
/**
* Launch the application.
*/
public static void main(String[] args) {
try {
SearchImage_GUI dialog = new SearchImage_GUI();
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Create the dialog.
*/
public SearchImage_GUI() {
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
System.exit(0);
}
});
setResizable(false);
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
| IllegalAccessException | UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
setTitle("bwLehrpool Suite *Prototyp*");
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
int top=(screenSize.height - 603) / 2;
int left=(screenSize.width - 722) / 2;
setBounds(left, top, 603, 722);
//setBounds(100, 100, 603, 722);
final DefaultTableModel modelAll = new DefaultTableModel( titles, 0 );
final DefaultTableModel model = new DefaultTableModel( titles, 0 );
getContentPane().setLayout(null);
{
JPanel panel = new JPanel();
panel.setBackground(SystemColor.menu);
panel.setBounds(10, 11, 577, 57);
getContentPane().add(panel);
panel.setLayout(null);
{
JLabel lblNewLabel = new JLabel("Suche nach VL-Image");
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);
txtpnBitteWhlenSie.setText("Hier k\u00F6nnen Sie nach Ihrem gew\u00FCnschten VL-Image suchen und dieses f\u00FCr weitere Schritte ausw\u00E4hlen");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
contentPanel.setBounds(10, 85, 577, 531);
contentPanel.setBackground(SystemColor.menu);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
contentPanel.setLayout(null);
JPanel panel_1 = new JPanel();
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);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JLabel lblNewLabel_2 = new JLabel("Anzeigename:");
lblNewLabel_2.setBounds(10, 30, 250, 20);
panel_1.add(lblNewLabel_2);
JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:");
lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
panel_1.add(lblInternetIstInnerhalb);
textFieldName = new JTextField();
textFieldName.setBounds(270, 30, 250, 20);
panel_1.add(textFieldName);
textFieldName.setColumns(10);
JLabel lblErweiterteSuche = new JLabel("<html><u>Erweiterte Suche</u></html>");
lblErweiterteSuche.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
ExtendedSearch_GUI es=new ExtendedSearch_GUI();
es.setVisible(true);
}
});
lblErweiterteSuche.setForeground(Color.BLUE);
lblErweiterteSuche.setBounds(431, 106, 89, 14);
panel_1.add(lblErweiterteSuche);
JComboBox comboBox = new JComboBox();
try {
List<String> list=sint.getAllOS();
for(int i=0;i<list.size();i++)
{
comboBox.addItem(list.get(i));
}
} catch (RemoteException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
DefaultTableModel modeltemp = new DefaultTableModel( titles, 0 );
//todo
}
});
comboBox.setBounds(270, 58, 250, 20);
panel_1.add(comboBox);
JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
SearchImage_GUI.this.setVisible(false);
MainMenue_GUI main=new MainMenue_GUI();
main.setVisible(true);
}
});
lblHauptmen.setForeground(Color.BLUE);
lblHauptmen.setBounds(10, 11, 61, 14);
contentPanel.add(lblHauptmen);
JLabel label_1 = new JLabel(">");
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
JLabel lblVlimage = new JLabel("VL-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);
contentPanel.add(label_2);
JLabel lblNewLabel_1 = new JLabel("Imageauswahl");
lblNewLabel_1.setBounds(146, 11, 85, 14);
contentPanel.add(lblNewLabel_1);
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
tabbedPane.setBounds(10, 197, 557, 300);
contentPanel.add(tabbedPane);
JScrollPane scrollPaneMyImage = new JScrollPane();
JTable tablemyImages=new JTable();
tablemyImages.setModel(model);
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();
scrollPaneMyImage.setViewportView(tablemyImages);
tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null);
JScrollPane scrollPaneCoopImages = new JScrollPane();
JTable tableCoopImages=new JTable();
tableCoopImages.setModel(model);
tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit();
tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit();
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);
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);
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);
JScrollPane scrollPaneAllImages = new JScrollPane();
JTable tableAllImages=new JTable();
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();
List<Object[]> images;
try {
images = sint.getImageList();
Iterator<Object[]> i=images.iterator();
int x=0;
while(i.hasNext())
{
i.next();
modelAll.addRow(images.get(x));
x++;
}
} catch (RemoteException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
scrollPaneAllImages.setViewportView(tableAllImages);
tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
JButton btnDownload = new JButton("Download");
btnDownload.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
FTPDownloader_GUI down=new FTPDownloader_GUI("Test");
down.setVisible(true);
SearchImage_GUI.this.setVisible(false);
}
});
btnDownload.setBounds(478, 508, 89, 23);
contentPanel.add(btnDownload);
JButton btnFilterLschen = new JButton("Filter l\u00F6schen");
btnFilterLschen.setBounds(358, 508, 110, 23);
contentPanel.add(btnFilterLschen);
{
JPanel buttonPane = new JPanel();
buttonPane.setBounds(0, 640, 597, 33);
buttonPane.setBackground(SystemColor.menu);
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane);
{
JButton okButton = new JButton("Zur\u00FCck");
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue());
//Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue());
MainMenue_GUI main=new MainMenue_GUI();
main.setVisible(true);
dispose();
}
});
okButton.setActionCommand("OK");
buttonPane.add(okButton);
getRootPane().setDefaultButton(okButton);
}
{
JButton cancelButton = new JButton("Weiter");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
EditImageAllgemein_GUI ea=new EditImageAllgemein_GUI();
ea.setVisible(true);
dispose();
}
});
cancelButton.setActionCommand("Cancel");
buttonPane.add(cancelButton);
}
}
JSeparator separator = new JSeparator();
separator.setBounds(0, 78, 597, 2);
getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
separator_1.setBounds(0, 627, 597, 2);
getContentPane().add(separator_1);
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);
JMenuItem mntmFaq = new JMenuItem("FAQ");
mnNewMenu_1.add(mntmFaq);
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mnNewMenu_1.add(mntmOtrs);
}
}