summaryrefslogblamecommitdiffstats
path: root/Dozentenmodul/src/gui/EditImageTechnisch_GUI.java
blob: e6d7889898002b8984374bd502bcd4bbd704ec14 (plain) (tree)
1
2
3
4
5
6
7
8
9


            
                      

                           
                     
                            
                        
                                  
                                     

                                   

                                    

                         
 
                               








                                
                            

                             
                                      



                                                   
 




                                    














                                                                          
 







                                                                     
                                                                            

                                               
                        
                   
                                                        


                                    
                                               





                                                                                               
                                              
                                                        
                                       



                                                                                   

                

























                                                                                                                                  
 











                                                                                                                                         
                                                 







                                                             








                                                           




                                                                                                          
                                                         



                                                            
                                                             



                                                              






                                                            



                                                                   
                                                                                                        


















































                                                                                                                                                                                               
                                                          









                                                                                                                           
                                                                





                                                                                                                           
                                                                  


                                                                                                        
                                                            


                                                          
                                                    



                                                                        
                                                       
                                                          


                                                      
                                                     










                                                                                    
                                                                                   

                                                                                                                                 
















                                                                                       
                                                                              












                                                                                                             


















                                                                                                                                 
                                                                            
                                                                                                 



















                                                                        
 









                                                           




         
package gui;


import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.SystemColor;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.HashMap;
import java.util.Map;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JSeparator;
import javax.swing.JSpinner;
import javax.swing.JTextArea;
import javax.swing.JTextPane;
import javax.swing.SpinnerNumberModel;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;

import org.apache.thrift.TException;

import server.Server.Client;
import thrift.ThriftConnection;

import models.Image;

@SuppressWarnings("serial")
public class EditImageTechnisch_GUI extends JFrame {

	private final JPanel contentPanel = new JPanel();
	String[] result;
	JSpinner spinnerCPU;
	JSpinner spinnerRam;
	JRadioButton rdbtnlicenseJa;
	JRadioButton rdbtnlicenseNein;
	JRadioButton rdbtnInternetJa;
	JRadioButton rdbtnInternetNein;
	private final ButtonGroup buttonGrouplicense = new ButtonGroup();
	private final ButtonGroup buttonGroupInternet = new ButtonGroup();


	/**
	 * Create the dialog.
	 */
	public EditImageTechnisch_GUI() {
		addWindowListener(new WindowAdapter() {
			@Override
			public void windowClosing(WindowEvent arg0) {
				//Beendet die Anwendung bei Klick auf das X 
				System.exit(0);
			}
			
		});
		//Verhindert das Vergrößern des Fensters
		setResizable(false);
		
		try {
			//setzt das Look & Feel
			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
		} catch (ClassNotFoundException | InstantiationException
				| IllegalAccessException | UnsupportedLookAndFeelException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		//Setzt den Titel des Fensters
		setTitle("bwLehrpool Suite *Prototyp*");
		//Zentriert das Fenster
		Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
		int top=(screenSize.height - 722) / 2;
		int left=(screenSize.width - 603) / 2;
		setBounds(left, top, 603, 722);
	
		
		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("Eingabe Ihrer Daten");
				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("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an");
			txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
			panel.add(txtpnBitteWhlenSie);
		}
		contentPanel.setBounds(10, 85, 577, 493);
		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, "Informationen zum Image", TitledBorder.LEADING, TitledBorder.TOP, null, null));
		panel_1.setBounds(10, 66, 557, 95);
		contentPanel.add(panel_1);
		panel_1.setLayout(null);
		
		JLabel lblNewLabel_2 = new JLabel("Image enth\u00E4lt lizenzpflichtige Software:");
		lblNewLabel_2.setBounds(10, 30, 250, 20);
		panel_1.add(lblNewLabel_2);
		
		rdbtnlicenseJa = new JRadioButton("Ja");
		rdbtnlicenseJa.setSelected(true);
		buttonGrouplicense.add(rdbtnlicenseJa);
		rdbtnlicenseJa.setBounds(266, 29, 109, 23);
		panel_1.add(rdbtnlicenseJa);
		
		rdbtnlicenseNein = new JRadioButton("Nein");
		buttonGrouplicense.add(rdbtnlicenseNein);
		rdbtnlicenseNein.setBounds(377, 29, 109, 23);
		panel_1.add(rdbtnlicenseNein);
		if(Image.image.isLicensed()==true){
			rdbtnlicenseJa.setSelected(true);
		}
		else
		{
			rdbtnlicenseNein.setSelected(true);
		}
		

		
		JLabel lblInternetIstInnerhalb = new JLabel("Internet ist innerhalb des Image gesperrt:");
		lblInternetIstInnerhalb.setBounds(10, 58, 250, 20);
		panel_1.add(lblInternetIstInnerhalb);
		
		rdbtnInternetJa = new JRadioButton("Ja");
		buttonGroupInternet.add(rdbtnInternetJa);
		rdbtnInternetJa.setBounds(266, 57, 109, 23);
		panel_1.add(rdbtnInternetJa);
		
		rdbtnInternetNein = new JRadioButton("Nein");
		rdbtnInternetNein.setSelected(true);
		buttonGroupInternet.add(rdbtnInternetNein);
		rdbtnInternetNein.setBounds(377, 57, 109, 23);
		panel_1.add(rdbtnInternetNein);
		if(Image.image.isInternet()==true){
			rdbtnInternetJa.setSelected(true);
		}
		else
		{
			rdbtnInternetNein.setSelected(true);
		}
		JLabel lblHauptmen = new JLabel("Hauptmen\u00FC");
		lblHauptmen.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent arg0) {
				//Macht dieses Fenster unsichtbar und das vorhergehende Fenster sichtbar
				EditImageTechnisch_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("Neu");
		lblNewLabel_1.setBounds(146, 11, 46, 14);
		contentPanel.add(lblNewLabel_1);
		
		JPanel panel_2 = new JPanel();
		panel_2.setLayout(null);
		panel_2.setBorder(new TitledBorder(null, "Empfehlung bezüglich Ressourcen", TitledBorder.LEADING, TitledBorder.TOP, null, null));
		panel_2.setBackground(SystemColor.menu);
		panel_2.setBounds(10, 172, 557, 338);
		contentPanel.add(panel_2);
		
		JTextArea txtrHinweisSolltenSie = new JTextArea();
		txtrHinweisSolltenSie.setBackground(SystemColor.menu);
		txtrHinweisSolltenSie.setFont(new Font("Tahoma", Font.PLAIN, 13));
		txtrHinweisSolltenSie.setText("Hinweis: Sollten Sie keine Software einsetzen, die viele Ressourcen ben\u00F6tigt,\r\nk\u00F6nnen Sie sich an den Beispielwerten orientieren.");
		txtrHinweisSolltenSie.setBounds(10, 25, 537, 55);
		panel_2.add(txtrHinweisSolltenSie);
		
		JLabel lblNewLabel_3 = new JLabel("Wie viel Arbeitsspeicher empfehlen Sie f\u00FCr das Image:");
		lblNewLabel_3.setBounds(10, 91, 280, 20);
		panel_2.add(lblNewLabel_3);
		
		JLabel lblMindestens = new JLabel("mindestens");
		lblMindestens.setBounds(315, 91, 60, 20);
		panel_2.add(lblMindestens);
		
		spinnerRam = new JSpinner();
		spinnerRam.setModel(new SpinnerNumberModel(1, 1, 8, 1));
		spinnerRam.setBounds(385, 88, 29, 20);
		spinnerRam.setValue(Image.image.getRam());
		panel_2.add(spinnerRam);
		
		JLabel lblGbyte = new JLabel("GByte");
		lblGbyte.setBounds(424, 91, 46, 20);
		panel_2.add(lblGbyte);
		
		JTextArea txtrBeispielWindows = new JTextArea();
		txtrBeispielWindows.setText("Beispiel:\r\nWindows 7 32/64 Bit: 2 GByte\r\nLinux/Unix 32/64 Bit:  1 GByte");
		txtrBeispielWindows.setFont(new Font("Tahoma", Font.PLAIN, 11));
		txtrBeispielWindows.setBackground(SystemColor.menu);
		txtrBeispielWindows.setBounds(20, 111, 280, 55);
		panel_2.add(txtrBeispielWindows);
		
		JTextArea txtrBeispielWindows_1 = new JTextArea();
		txtrBeispielWindows_1.setText("Beispiel:\r\nWindows 7 32/64 Bit: 1 Kern\r\nLinux/Unix 32/64 Bit:  1 Kern");
		txtrBeispielWindows_1.setFont(new Font("Tahoma", Font.PLAIN, 11));
		txtrBeispielWindows_1.setBackground(SystemColor.menu);
		txtrBeispielWindows_1.setBounds(20, 226, 280, 55);
		panel_2.add(txtrBeispielWindows_1);
		
		JLabel lblWieVieleCpus = new JLabel("Wie viele CPUs empfehlen Sie f\u00FCr das Image:");
		lblWieVieleCpus.setBounds(10, 201, 280, 20);
		panel_2.add(lblWieVieleCpus);
		
		JLabel label_3 = new JLabel("mindestens");
		label_3.setBounds(315, 201, 60, 20);
		panel_2.add(label_3);
		
		spinnerCPU = new JSpinner();
		spinnerCPU.setModel(new SpinnerNumberModel(1, 1, 4, 1));
		spinnerCPU.setBounds(385, 198, 29, 20);
		spinnerCPU.setValue(Image.image.getCpu());
		panel_2.add(spinnerCPU);
		
		JLabel lblKerne = new JLabel("Kerne");
		lblKerne.setBounds(424, 201, 46, 20);
		panel_2.add(lblKerne);
		{
			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) {
						//Setzt die Imagewerte in das Model
						Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue());
						Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue());
						if(rdbtnInternetJa.isSelected()==true)
						{
							Image.image.setInternet(true);
						}
						else
						{
							Image.image.setInternet(false);
						}
						
						if(rdbtnlicenseJa.isSelected()==true)
						{
							Image.image.setLicensed(true);
						}
						else
						{
							Image.image.setLicensed(false);
						}
						//Öffnet das vorherige Fenster
						EingabeImageAllgemein_GUI sr=new EingabeImageAllgemein_GUI();
						sr.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) {
						Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue());
						Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue());
						if(rdbtnInternetJa.isSelected()==true)
						{
							Image.image.setInternet(true);
						}
						else
						{
							Image.image.setInternet(false);
						}
						
						if(rdbtnlicenseJa.isSelected()==true)
						{
							Image.image.setLicensed(true);
						}
						else
						{
							Image.image.setLicensed(false);
						}
						//Öffnet das nächste Fenster
						FTPEditUploader_GUI ea=new FTPEditUploader_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_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);
		
	}
	
	

	}