summaryrefslogtreecommitdiffstats
path: root/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
diff options
context:
space:
mode:
Diffstat (limited to 'Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java')
-rw-r--r--Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java462
1 files changed, 462 insertions, 0 deletions
diff --git a/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java b/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
new file mode 100644
index 00000000..2954ca3b
--- /dev/null
+++ b/Dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java
@@ -0,0 +1,462 @@
+package gui.intro;
+
+import gui.image.CreateImageAllgemein_GUI;
+import gui.image.DeleteImage_GUI;
+import gui.image.SearchEditImage_GUI;
+import gui.image.SearchImage_GUI;
+import gui.lecture.CreateLectureAllgemein_GUI;
+import gui.lecture.DeleteLecture_GUI;
+import gui.lecture.EditLectureSearch_GUI;
+import gui.lecture.SearchLecture_GUI;
+
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.ScrollPane;
+import java.awt.SystemColor;
+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.net.URI;
+import java.net.URISyntaxException;
+
+import javax.swing.ButtonGroup;
+import javax.swing.ImageIcon;
+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.JTextArea;
+import javax.swing.JTextPane;
+import javax.swing.SwingConstants;
+import javax.swing.ToolTipManager;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+
+import models.Links;
+import models.SessionData;
+import util.GuiOrganizer;
+import util.OpenLinks;
+
+@SuppressWarnings("serial")
+public class MainMenue_GUI extends JFrame {
+
+ private final JPanel contentPanel = new JPanel();
+ String[] result;
+ String descNewImage, descEditImage, descDeleteImage, descSearchImage,
+ descNewLecture, descEditLecture, descDeleteLecture,
+ descSearchLecture = "";
+ JRadioButton rdbtnImageNew;
+ JRadioButton rdbtnImageEdit;
+ JRadioButton rdbtnImageSearchDownload;
+ JRadioButton rdbtnLectureNew;
+ JRadioButton rdbtnImageDelete;
+ JRadioButton rdbtnLectureEdit;
+ JRadioButton rdbtnLectureDelete;
+ JRadioButton rdbtnLectureSearch;
+ private final ButtonGroup buttonGroup = new ButtonGroup();
+ private JMenuItem mntmAbout;
+
+
+ /**
+ * Create the dialog.
+ */
+ public MainMenue_GUI() {
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent arg0) {
+ System.exit(0);
+ }
+ });
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ setTitle("bwLehrpool Suite *Prototyp* - Connected Server: "+SessionData.session.getServerAdress());
+ setBounds(0, 0, 603, 722);
+ GuiOrganizer.centerGUI(this);
+
+ getContentPane().setLayout(null);
+ {
+ JPanel panel = new JPanel();
+ panel.setBackground(SystemColor.menu);
+ panel.setBounds(10, 11, 567, 69);
+ getContentPane().add(panel);
+ panel.setLayout(null);
+ {
+ JLabel lblNewLabel = new JLabel("Hauptmen\u00FC");
+ 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("Bitte w\u00E4hlen Sie ihre gew\u00FCnschte Aktion.");
+ txtpnBitteWhlenSie.setBounds(10, 36, 509, 22);
+ panel.add(txtpnBitteWhlenSie);
+ }
+ contentPanel.setBounds(10, 104, 567, 502);
+ contentPanel.setBackground(SystemColor.menu);
+
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel);
+ contentPanel.setLayout(null);
+
+ JPanel panelImage = new JPanel();
+ panelImage.setBackground(SystemColor.menu);
+ panelImage.setBorder(new TitledBorder(null, "VL-Image",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panelImage.setBounds(10, 146, 270, 170);
+ contentPanel.add(panelImage);
+ panelImage.setLayout(null);
+
+ rdbtnImageNew = new JRadioButton("Neu");
+ rdbtnImageNew
+ .setToolTipText("Hier k\u00F6nnen Sie eine standard Laborvorlage downloaden");
+ rdbtnImageNew.setBounds(6, 22, 159, 23);
+ panelImage.add(rdbtnImageNew);
+ rdbtnImageNew.setSelected(true);
+ buttonGroup.add(rdbtnImageNew);
+ rdbtnImageNew.setBackground(SystemColor.menu);
+
+ rdbtnImageEdit = new JRadioButton("Bearbeiten");
+ rdbtnImageEdit
+ .setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
+ rdbtnImageEdit.setBounds(6, 48, 185, 23);
+ panelImage.add(rdbtnImageEdit);
+ buttonGroup.add(rdbtnImageEdit);
+ rdbtnImageEdit.setHorizontalAlignment(SwingConstants.LEFT);
+ rdbtnImageEdit.setBackground(SystemColor.menu);
+
+ rdbtnImageDelete = new JRadioButton("L\u00F6schen");
+ rdbtnImageDelete.setEnabled(true);
+ buttonGroup.add(rdbtnImageDelete);
+ rdbtnImageDelete
+ .setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
+ rdbtnImageDelete.setHorizontalAlignment(SwingConstants.LEFT);
+ rdbtnImageDelete.setBackground(SystemColor.menu);
+ rdbtnImageDelete.setBounds(6, 74, 185, 23);
+ panelImage.add(rdbtnImageDelete);
+
+ rdbtnImageSearchDownload = new JRadioButton("Suche und Download");
+ buttonGroup.add(rdbtnImageSearchDownload);
+ rdbtnImageSearchDownload
+ .setToolTipText("Hier k\u00F6nnen Sie ein bestehendes Labor zum ver\u00E4ndern downloaden");
+ rdbtnImageSearchDownload.setHorizontalAlignment(SwingConstants.LEFT);
+ rdbtnImageSearchDownload.setBackground(SystemColor.menu);
+ rdbtnImageSearchDownload.setBounds(6, 100, 185, 23);
+ panelImage.add(rdbtnImageSearchDownload);
+
+ JPanel panelDesc = new JPanel();
+ panelDesc.setLayout(null);
+ panelDesc.setBorder(new TitledBorder(UIManager
+ .getBorder("TitledBorder.border"), "Erkl\u00e4rung",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panelDesc.setBackground(SystemColor.menu);
+ panelDesc.setBounds(290, 146, 270, 170);
+ contentPanel.add(panelDesc);
+
+ ScrollPane scrollPaneDesc = new ScrollPane();
+ scrollPaneDesc.setBounds(10, 15, 250, 145);
+ final JTextArea txtDesc = new JTextArea();
+ txtDesc.setLineWrap(true);
+ txtDesc.setWrapStyleWord(true);
+ txtDesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ txtDesc.setBackground(SystemColor.menu);
+ scrollPaneDesc.add(txtDesc);
+ // Pro AUswahl
+ txtDesc.setText("Legen Sie ein neues Image an und laden Sie anschlie\u00dfend die passende .vmdk-Datei hoch. Ein Image (wenn auch von einem anderen Dozenten) ist die Voraussetzung f\u00fcr eine Veranstaltung.");
+ panelDesc.add(scrollPaneDesc);
+
+ JPanel panelVeranstaltung = new JPanel();
+ panelVeranstaltung.setLayout(null);
+ panelVeranstaltung.setBorder(new TitledBorder(UIManager
+ .getBorder("TitledBorder.border"), "Veranstaltung (VMChooser)",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panelVeranstaltung.setBackground(SystemColor.menu);
+ panelVeranstaltung.setBounds(10, 327, 270, 170);
+ contentPanel.add(panelVeranstaltung);
+
+ rdbtnLectureNew = new JRadioButton("Neu");
+ buttonGroup.add(rdbtnLectureNew);
+ rdbtnLectureNew
+ .setToolTipText("Hier k\u00F6nnen Sie Ihre Labordaten eingeben");
+ rdbtnLectureNew.setBounds(6, 24, 185, 23);
+ panelVeranstaltung.add(rdbtnLectureNew);
+ rdbtnLectureNew.setBackground(SystemColor.menu);
+
+ rdbtnLectureEdit = new JRadioButton("Bearbeiten");
+ rdbtnLectureEdit
+ .setToolTipText("Hier k\u00F6nnen Sie einen Link auf ein bestehendes Labor erzeugen");
+ rdbtnLectureEdit.setBounds(6, 50, 230, 23);
+ panelVeranstaltung.add(rdbtnLectureEdit);
+ buttonGroup.add(rdbtnLectureEdit);
+ rdbtnLectureEdit.setBackground(SystemColor.menu);
+
+ rdbtnLectureDelete = new JRadioButton("L\u00F6schen");
+ rdbtnLectureDelete
+ .setToolTipText("Hier k\u00F6nnen Sie ein Labor l\u00F6schen");
+ rdbtnLectureDelete.setBounds(6, 76, 175, 23);
+ panelVeranstaltung.add(rdbtnLectureDelete);
+ buttonGroup.add(rdbtnLectureDelete);
+ rdbtnLectureDelete.setBackground(SystemColor.menu);
+
+ rdbtnLectureSearch = new JRadioButton("Suche");
+ buttonGroup.add(rdbtnLectureSearch);
+ rdbtnLectureSearch
+ .setToolTipText("Hier k\u00F6nnen Sie ein Labor l\u00F6schen");
+ rdbtnLectureSearch.setBackground(SystemColor.menu);
+ rdbtnLectureSearch.setBounds(6, 102, 175, 23);
+ panelVeranstaltung.add(rdbtnLectureSearch);
+
+ JPanel panelNews = new JPanel();
+ panelNews.setLayout(null);
+ panelNews.setBorder(new TitledBorder(UIManager
+ .getBorder("TitledBorder.border"), "News",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panelNews.setBackground(SystemColor.menu);
+ panelNews.setBounds(290, 327, 270, 170);
+ contentPanel.add(panelNews);
+
+ ScrollPane scrollPaneNews = new ScrollPane();
+ // scrollPaneDesc.setBounds(10, 15, 250, 145);
+ scrollPaneNews.setBounds(10, 15, 250, 145);
+ JTextArea txtNews = new JTextArea();
+ txtNews.setFont(new Font("Tahoma", Font.PLAIN, 11));
+ txtNews.setBackground(SystemColor.menu);
+ txtNews.setWrapStyleWord(true);
+ txtNews.setLineWrap(true);
+ txtNews.setText("Hier werden mal die Neuigkeiten stehen. Diese kommen direkt vom Satelliten, sind als HS-spezifisch :)");
+ scrollPaneNews.add(txtNews);
+ panelNews.add(scrollPaneNews);
+
+ /*
+ * Funktion Texte f\u00fcr das Klicken der RadioButtons
+ */
+ rdbtnImageNew.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ descNewImage = "Legen Sie ein neues Image an und laden Sie anschlie\u00dfend die passende .vmdk-Datei hoch. Ein Image (wenn auch von einem anderen Dozenten) ist die Voraussetzung f\u00fcr eine Veranstaltung.";
+ txtDesc.setText(descNewImage);
+ }
+ });
+ rdbtnImageEdit.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descEditImage = "Bearbeiten Sie die hinterlegten Informationen zu einem Image oder laden Sie eine neue .vmdk-Datei hoch.";
+ txtDesc.setText(descEditImage);
+ }
+ });
+ rdbtnImageDelete.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descDeleteImage = "Suchen Sie alte und nicht mehr ben\u00f6tigte Images und l\u00f6schen Sie diese.";
+ txtDesc.setText(descDeleteImage);
+ }
+ });
+ rdbtnImageSearchDownload.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descSearchImage = "Suchen Sie nach bestimmten Images oder verschaffen Sie sich einen \u00fcberblick \u00fcber alle verf\u00fcgbaren Images. Sie k\u00f6nnen gew\u00fcnschte Images umgehend herunterladen.";
+ txtDesc.setText(descSearchImage);
+ }
+ });
+ rdbtnLectureNew.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descNewLecture = "Legen Sie eine neue Veranstaltung an und verkn\u00fcpfen Sie diese mit einem bereits vorhandenem Image. Ihre neue Veranstaltung kann auch auf dem Image eines anderen Dozenten beruhen.";
+ txtDesc.setText(descNewLecture);
+ }
+ });
+ rdbtnLectureEdit.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descEditLecture = "Bearbeiten Sie die hinterlegten Informationen zu einer Veranstaltung.";
+ txtDesc.setText(descEditLecture);
+ }
+ });
+ rdbtnLectureDelete.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descDeleteLecture = "Suchen und l\u00f6schen Sie eine Veranstaltung. Das hiermit verbundene Image bleibt erhalten.";
+ txtDesc.setText(descDeleteLecture);
+ }
+ });
+ rdbtnLectureSearch.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ descSearchLecture = "Suchen Sie nach bestimmten Veranstaltungen oder verschaffen Sie sich einen \u00fcberblick \u00fcber alle verf\u00fcgbaren Veranstaltungen. Eventuell gibt es bereits etwas passendes f\u00fcr Ihre Vorlesung.";
+ txtDesc.setText(descSearchLecture);
+ }
+ });
+ /*
+ * Ende der Radiobuttons
+ */
+
+ JLabel lblGrafik = new JLabel("");
+ // ToolTipp fuer Grafik
+ lblGrafik
+ .setToolTipText("<html>"
+ + "Ein virtuelles Labor besteht immer aus den beiden Komponenten <br>"
+ + "Image und Veranstaltung. Ein Image ist dabei die Grundlage f\u00FCr <br>"
+ + "mehrere Veranstaltungen. Somit kann eine neue Veranstaltung <br>"
+ + "erstellt werden, ohne ein neues Image hochladen zu m\u00FCssen. <br> <br> <br>"
+ + "<b>Image:</b> Das Image enth\u00E4lt die ben\u00F6tigte Software, die im <br>"
+ + "virtuellen Labor ben\u00F6tigt wird. Es wird von genau einem Dozenten <br>"
+ + "angelegt und besitzt einen allgemeinen Namen, z.B. \"Programmieren\". <br>"
+ + "Bei einem Image handelt es sich um eine Datei vom Typ VMDK. <br> <br> <br>"
+ + "<b>Veranstaltung:</b> Es k\u00F6nnen nun, basierend auf einem Image,<br>"
+ + " beliebig viele Veranstaltungen von unterschiedlichen Dozenten erstellt <br>"
+ + "werden. Diese k\u00F6nnten z.B. konkret \"Web-Entwicklung\" oder \"K\u00FCnstliche <br>"
+ + "Intelligenz\" lauten und referenzieren dabei auf das allgemeine Image <br>"
+ + "\"Programmieren\".</html>");
+ lblGrafik.setIcon(new ImageIcon(MainMenue_GUI.class
+ .getResource("/Image_zu_Veranstaltung_HDD.png")));
+ // ToolTipp lange anzeigen - 60sec
+ ToolTipManager.sharedInstance().setDismissDelay(60000);
+ ToolTipManager.sharedInstance().registerComponent(lblGrafik);
+ lblGrafik.setBounds(82, 3, 391, 110);
+ contentPanel.add(lblGrafik);
+
+ JTextPane txtpnUmDetaillierteInformationen = new JTextPane();
+ txtpnUmDetaillierteInformationen
+ .setText("Um detaillierte Informationen zu erhalten, fahren Sie bitte mit der Maus \u00FCber die Grafik.");
+ txtpnUmDetaillierteInformationen.setEditable(false);
+ txtpnUmDetaillierteInformationen.setBackground(SystemColor.menu);
+ txtpnUmDetaillierteInformationen.setBounds(10, 113, 509, 22);
+ contentPanel.add(txtpnUmDetaillierteInformationen);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBounds(0, 630, 587, 33);
+ buttonPane.setBackground(SystemColor.menu);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane);
+ {
+ JButton continueButton = new JButton("Weiter");
+
+ continueButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ // Images
+ if (rdbtnImageNew.isSelected() == true) {
+ CreateImageAllgemein_GUI sr = new CreateImageAllgemein_GUI();
+ sr.setVisible(true);
+ dispose();
+ } else if (rdbtnImageEdit.isSelected() == true) {
+ SearchEditImage_GUI si = new SearchEditImage_GUI();
+ si.setVisible(true);
+ dispose();
+ } else if (rdbtnImageDelete.isSelected() == true) {
+ DeleteImage_GUI di = new DeleteImage_GUI();
+ di.setVisible(true);
+ dispose();
+ } else if (rdbtnImageSearchDownload.isSelected() == true) {
+ // SearchMethodLecture_GUI sm = new
+ // SearchMethodLecture_GUI();
+ SearchImage_GUI si = new SearchImage_GUI();
+ si.setVisible(true);
+ dispose();
+ // Lectures
+ } else if (rdbtnLectureNew.isSelected() == true) {
+ CreateLectureAllgemein_GUI av = new CreateLectureAllgemein_GUI();
+ av.setVisible(true);
+ dispose();
+ } else if (rdbtnLectureEdit.isSelected() == true) {
+ EditLectureSearch_GUI el = new EditLectureSearch_GUI();
+ el.setVisible(true);
+ dispose();
+ } else if (rdbtnLectureDelete.isSelected() == true) {
+ DeleteLecture_GUI dl = new DeleteLecture_GUI();
+ dl.setVisible(true);
+ dispose();
+ } else if (rdbtnLectureSearch.isSelected() == true) {
+ SearchLecture_GUI sl = new SearchLecture_GUI();
+ sl.setVisible(true);
+ dispose();
+ }
+ }
+ });
+ continueButton.setActionCommand("OK");
+ buttonPane.add(continueButton);
+ getRootPane().setDefaultButton(continueButton);
+ }
+ }
+ {
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 617, 587, 2);
+ getContentPane().add(separator);
+ }
+ {
+ JSeparator separator = new JSeparator();
+ separator.setBounds(0, 91, 587, 2);
+ getContentPane().add(separator);
+ }
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnNewMenu_1 = new JMenu("Hilfe");
+ menuBar.add(mnNewMenu_1);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getFAQ());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ });
+ mnNewMenu_1.add(mntmFaq);
+
+
+ JMenuItem mntmOtrs = new JMenuItem("OTRS");
+ mntmOtrs.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent arg0) {
+
+ OpenLinks open = new OpenLinks();
+
+ URI windows;
+ try {
+ windows = new URI(Links.getOTRS());
+
+ open.openWebpage(windows);
+
+ } catch (URISyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+ });
+ mnNewMenu_1.add(mntmOtrs);
+
+ mntmAbout = new JMenuItem("About");
+ mntmAbout.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+ About_GUI ab = new About_GUI();
+ ab.setVisible(true);
+ }
+ });
+ mnNewMenu_1.add(mntmAbout);
+
+ }// end main
+}// end class