diff options
| author | tspitzer | 2013-09-04 15:31:41 +0200 |
|---|---|---|
| committer | tspitzer | 2013-09-04 15:31:41 +0200 |
| commit | 4294c84358d487624060cc1ef7edfd439871c717 (patch) | |
| tree | 1f1fe64068c305336cdc7abda2d4c07e547d6866 /Dozentenmodul/src/GUI | |
| parent | Login mit Funktionalität versehen (diff) | |
| download | tutor-module-4294c84358d487624060cc1ef7edfd439871c717.tar.gz tutor-module-4294c84358d487624060cc1ef7edfd439871c717.tar.xz tutor-module-4294c84358d487624060cc1ef7edfd439871c717.zip | |
neue features
- Erstes Wizard Fenster mit Rohlingsauswahl
- Erste Version des Downloaders ohne Progressbar
Diffstat (limited to 'Dozentenmodul/src/GUI')
| -rw-r--r-- | Dozentenmodul/src/GUI/ActionChooser.java | 231 | ||||
| -rw-r--r-- | Dozentenmodul/src/GUI/Downloader.java | 117 | ||||
| -rw-r--r-- | Dozentenmodul/src/GUI/LoginWindow.java | 50 |
3 files changed, 388 insertions, 10 deletions
diff --git a/Dozentenmodul/src/GUI/ActionChooser.java b/Dozentenmodul/src/GUI/ActionChooser.java new file mode 100644 index 00000000..75fa232b --- /dev/null +++ b/Dozentenmodul/src/GUI/ActionChooser.java @@ -0,0 +1,231 @@ +package GUI;
+
+
+import java.awt.EventQueue;
+
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.border.EmptyBorder;
+import javax.swing.JMenuBar;
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import java.awt.Color;
+import javax.swing.JLabel;
+import javax.swing.SwingConstants;
+import java.awt.Font;
+import javax.swing.JRadioButton;
+import javax.swing.GroupLayout;
+import javax.swing.GroupLayout.Alignment;
+import javax.swing.LayoutStyle.ComponentPlacement;
+import javax.swing.ButtonGroup;
+import javax.swing.JButton;
+
+
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.swt.widgets.Display;
+
+import Wizard.newVLRohlingWizard;
+
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+import java.awt.Desktop;
+import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
+
+@SuppressWarnings("serial")
+public class ActionChooser extends JFrame {
+
+ private JPanel contentPane;
+ private final ButtonGroup buttonGroup = new ButtonGroup();
+
+ /**
+ * Launch the application.
+ */
+ public static void main(String[] args) {
+ EventQueue.invokeLater(new Runnable() {
+ public void run() {
+ try {
+ ActionChooser frame = new ActionChooser();
+ frame.setVisible(true);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ }
+
+ /**
+ * Create the frame.
+ */
+ public ActionChooser() {
+
+ //Setzt das Look and Feel auf System
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ setTitle("Dozentenmodul");
+ setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+ setBounds(100, 100, 450, 300);
+
+ JMenuBar menuBar = new JMenuBar();
+ setJMenuBar(menuBar);
+
+ JMenu mnSuche = new JMenu("Suche");
+ menuBar.add(mnSuche);
+
+ JMenuItem mntmVlSuchen = new JMenuItem("VL suchen");
+ mntmVlSuchen.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ //tod
+ }
+ });
+
+ mnSuche.add(mntmVlSuchen);
+
+ JMenu mnHilfe = new JMenu("Hilfe");
+ menuBar.add(mnHilfe);
+
+ JMenuItem mntmNeuigkeiten = new JMenuItem("Neuigkeiten");
+ mntmNeuigkeiten.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ //todo
+ }
+ });
+ mnHilfe.add(mntmNeuigkeiten);
+
+ JMenuItem mntmFaq = new JMenuItem("FAQ");
+ mntmFaq.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ //todo
+ }
+ });
+ mnHilfe.add(mntmFaq);
+
+ JMenuItem mntmTicketErstellen = new JMenuItem("Ticket erstellen");
+ mntmTicketErstellen.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ if(Desktop.isDesktopSupported()){
+ Desktop desk=Desktop.getDesktop();
+ if(desk.isSupported(Desktop.Action.BROWSE)){
+ try {
+ URI uri=new URI("https://otrs.rz.hs-offenburg.de/otrs/customer.pl");
+ try {
+ desk.browse(uri);
+ } catch (IOException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ } catch (URISyntaxException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }
+ }
+ }
+ });
+ mnHilfe.add(mntmTicketErstellen);
+ contentPane = new JPanel();
+ contentPane.setBackground(Color.WHITE);
+ contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+ setContentPane(contentPane);
+
+ JLabel labelChoose = new JLabel("Bitte w\u00E4hlen Sie Ihre durchzuf\u00FChrende Aktion aus");
+ labelChoose.setFont(new Font("Tahoma", Font.PLAIN, 14));
+ labelChoose.setHorizontalAlignment(SwingConstants.CENTER);
+
+ JRadioButton rdbtnNew = new JRadioButton("Erstellen einer neuen VL");
+ rdbtnNew.setHorizontalAlignment(SwingConstants.CENTER);
+ rdbtnNew.setBackground(Color.WHITE);
+ buttonGroup.add(rdbtnNew);
+
+ JRadioButton rdbtnNewRohling = new JRadioButton("Erstellen einer neuen VL auf Basis einer VL Rohling");
+ rdbtnNewRohling.setBackground(Color.WHITE);
+ buttonGroup.add(rdbtnNewRohling);
+
+ JRadioButton rdbtnCopyExisiting = new JRadioButton("Kopieren einer bestehenden VL");
+ rdbtnCopyExisiting.setBackground(Color.WHITE);
+ buttonGroup.add(rdbtnCopyExisiting);
+
+ JRadioButton rdbtnLinkExisting = new JRadioButton("Verlinken einer bestehenden VL");
+ rdbtnLinkExisting.setBackground(Color.WHITE);
+ buttonGroup.add(rdbtnLinkExisting);
+
+ JButton btnWeiter = new JButton("Weiter");
+ btnWeiter.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent arg0) {
+
+ WizardDialog wizardDialog = new WizardDialog(Display.getDefault().getActiveShell(),new newVLRohlingWizard());
+ wizardDialog.create();
+ dispose();
+ wizardDialog.open();
+
+
+ }
+ });
+
+ JRadioButton rdbtnEditVL = new JRadioButton("Bearbeiten einer bestehenden VL");
+ buttonGroup.add(rdbtnEditVL);
+ rdbtnEditVL.setBackground(Color.WHITE);
+ GroupLayout gl_contentPane = new GroupLayout(contentPane);
+ gl_contentPane.setHorizontalGroup(
+ gl_contentPane.createParallelGroup(Alignment.LEADING)
+ .addGroup(Alignment.TRAILING, gl_contentPane.createSequentialGroup()
+ .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(labelChoose, GroupLayout.PREFERRED_SIZE, 424, GroupLayout.PREFERRED_SIZE)
+ .addContainerGap())
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(btnWeiter)
+ .addContainerGap(359, Short.MAX_VALUE))
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(rdbtnLinkExisting)
+ .addContainerGap(253, Short.MAX_VALUE))
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(rdbtnCopyExisiting)
+ .addContainerGap(253, Short.MAX_VALUE))
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(rdbtnEditVL)
+ .addContainerGap(319, Short.MAX_VALUE))
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(rdbtnNewRohling)
+ .addContainerGap(163, Short.MAX_VALUE))
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(rdbtnNew)
+ .addContainerGap(287, Short.MAX_VALUE))
+ );
+ gl_contentPane.setVerticalGroup(
+ gl_contentPane.createParallelGroup(Alignment.LEADING)
+ .addGroup(gl_contentPane.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(labelChoose)
+ .addGap(33)
+ .addComponent(rdbtnNew)
+ .addPreferredGap(ComponentPlacement.RELATED)
+ .addComponent(rdbtnNewRohling)
+ .addPreferredGap(ComponentPlacement.RELATED)
+ .addComponent(rdbtnEditVL)
+ .addPreferredGap(ComponentPlacement.RELATED)
+ .addComponent(rdbtnCopyExisiting)
+ .addPreferredGap(ComponentPlacement.UNRELATED)
+ .addComponent(rdbtnLinkExisting)
+ .addGap(18)
+ .addComponent(btnWeiter)
+ .addContainerGap())
+ );
+ contentPane.setLayout(gl_contentPane);
+
+ }
+}
diff --git a/Dozentenmodul/src/GUI/Downloader.java b/Dozentenmodul/src/GUI/Downloader.java new file mode 100644 index 00000000..8a44c38b --- /dev/null +++ b/Dozentenmodul/src/GUI/Downloader.java @@ -0,0 +1,117 @@ +package GUI;
+
+import java.awt.BorderLayout;
+import java.awt.FlowLayout;
+
+import javax.swing.JButton;
+import javax.swing.JDialog;
+import javax.swing.JFileChooser;
+import javax.swing.JPanel;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.border.EmptyBorder;
+import java.awt.Color;
+import javax.swing.SwingConstants;
+import javax.swing.JLabel;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.io.File;
+import javax.swing.JProgressBar;
+
+import ftp.ftp;
+
+public class Downloader extends JDialog {
+
+ private final JPanel contentPanel = new JPanel();
+ JLabel lblNewLabel;
+ JProgressBar progressBar;
+ ftp f=new ftp();
+ /**
+ * Launch the application.
+ */
+ public static void main(String[] args) {
+ try {
+ Downloader dialog = new Downloader();
+ dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
+ dialog.setVisible(true);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Create the dialog.
+ */
+ public Downloader() {
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (ClassNotFoundException | InstantiationException
+ | IllegalAccessException | UnsupportedLookAndFeelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ setBackground(Color.WHITE);
+ setTitle("Downloader");
+ setBounds(100, 100, 450, 218);
+ getContentPane().setLayout(new BorderLayout());
+ contentPanel.setBackground(Color.WHITE);
+ contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
+ getContentPane().add(contentPanel, BorderLayout.CENTER);
+ contentPanel.setLayout(null);
+ {
+ JButton btnSpeicherortAuswhlen = new JButton("Speicherort ausw\u00E4hlen");
+ btnSpeicherortAuswhlen.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ JFileChooser fc=new JFileChooser();
+ fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+
+ fc.showOpenDialog(getParent());
+ File dir=fc.getSelectedFile();
+ lblNewLabel.setText(dir.getAbsolutePath());
+ }
+ });
+ btnSpeicherortAuswhlen.setBounds(10, 11, 141, 23);
+ btnSpeicherortAuswhlen.setVerticalAlignment(SwingConstants.TOP);
+ btnSpeicherortAuswhlen.setHorizontalAlignment(SwingConstants.LEFT);
+ contentPanel.add(btnSpeicherortAuswhlen);
+ }
+
+ lblNewLabel = new JLabel("C:\\");
+ lblNewLabel.setBounds(169, 11, 255, 23);
+ contentPanel.add(lblNewLabel);
+
+ JButton btnDownloadStarten = new JButton("Download starten");
+ btnDownloadStarten.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent e) {
+ progressBar.setValue(0);
+ long fsize=f.getFileSize("BESCHREIBUNG.xml");
+ f.getFile("BESCHREIBUNG.xml", lblNewLabel.getText().toString());
+ }
+ });
+ btnDownloadStarten.setBounds(10, 106, 141, 23);
+ contentPanel.add(btnDownloadStarten);
+
+ progressBar = new JProgressBar(0,100);
+ progressBar.setBounds(10, 45, 414, 30);
+ contentPanel.add(progressBar);
+ {
+ JPanel buttonPane = new JPanel();
+ buttonPane.setBackground(Color.WHITE);
+ buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
+ getContentPane().add(buttonPane, BorderLayout.SOUTH);
+ {
+ JButton okButton = new JButton("OK");
+ okButton.setActionCommand("OK");
+ buttonPane.add(okButton);
+ getRootPane().setDefaultButton(okButton);
+ }
+ {
+ JButton cancelButton = new JButton("Zur\u00FCck");
+ cancelButton.setActionCommand("Cancel");
+ buttonPane.add(cancelButton);
+ }
+ }
+ }
+}
diff --git a/Dozentenmodul/src/GUI/LoginWindow.java b/Dozentenmodul/src/GUI/LoginWindow.java index e272ac2b..0ebea43d 100644 --- a/Dozentenmodul/src/GUI/LoginWindow.java +++ b/Dozentenmodul/src/GUI/LoginWindow.java @@ -1,6 +1,6 @@ package GUI;
-import java.awt.BorderLayout;
+
import java.awt.EventQueue;
import java.awt.Image;
@@ -19,7 +19,9 @@ import auth.Ldap; import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JPasswordField;
+import java.awt.Color;
+@SuppressWarnings("serial")
public class LoginWindow extends JFrame {
private JPanel contentPane;
@@ -33,6 +35,7 @@ public class LoginWindow extends JFrame { EventQueue.invokeLater(new Runnable() {
public void run() {
try {
+ //Aufruf und Anzeige des Login Fensters
LoginWindow frame = new LoginWindow();
frame.setVisible(true);
} catch (Exception e) {
@@ -46,54 +49,81 @@ public class LoginWindow extends JFrame { * Create the frame.
*/
public LoginWindow() {
+
+ //Fenster darf nicht vergrößert werden
+ setResizable(false);
try {
- //System.out.println(UIManager.getSystemLookAndFeelClassName().toString());
+ //Setzt das Look and Feel auf System
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
| IllegalAccessException | UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
- setTitle("Dozentenmodul Login");
+ //Titel des Fensters setzen
+ setTitle("Dozentenmodul");
+ //Aktion die beim Schließen durchgeführt werden soll
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setBounds(100, 100, 450, 300);
+ //Größe des Fensters definieren
+ setBounds(100, 100, 300, 300);
+ //Erzeugen eines Panels
contentPane = new JPanel();
+ //Hintergrund Farbe des Panels setzen
+ contentPane.setBackground(Color.WHITE);
+ //Rahmen des Fensters setzen
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
+ //Layout setzen
contentPane.setLayout(null);
-
+ //Label für das Logo erzeugen
JLabel imgLabel = new JLabel();
-
- imgLabel.setBounds(10, 11, 350, 64);
-
+ //Größe und Position des Logos festelegen
+ imgLabel.setBounds(10, 11, 270, 64);
+ //Pfadangabe des Logos
ImageIcon icon = new ImageIcon("img/Logo_bwLehrpool.png","Logo");
- Image scaled=icon.getImage().getScaledInstance(350, 64, 0);
+ //Skalierung des Logos
+ Image scaled=icon.getImage().getScaledInstance(270, 64, 0);
imgLabel.setIcon(new ImageIcon(scaled));
+ //Hinzufügen des Logos in das Fenster
contentPane.add(imgLabel);
+ //Erzeugen und Hinzufügen des Labels
JLabel LabelUser = new JLabel("bwIDM-Benutzername:");
LabelUser.setBounds(10, 86, 134, 20);
contentPane.add(LabelUser);
+ //Erzeugen und Hinzufügen des Textfeldes
username = new JTextField();
username.setBounds(154, 86, 125, 20);
contentPane.add(username);
username.setColumns(10);
+ //Erzeugen und Hinzufügen des Labels
JLabel LabelPass = new JLabel("bwIDM-Passwort:");
LabelPass.setBounds(10, 117, 134, 20);
contentPane.add(LabelPass);
+ //Erzeugen, Hinzufügen und definierung der Aktion des Buttons
JButton BtnLogin = new JButton("Login");
BtnLogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
+ //Aufruf der Ldap Klasse, welche die Ldap überprüfung vornimmt
Ldap check=new Ldap();
- check.LdapAuth(username.getText(), new String(pass.getPassword()));
+ boolean login=check.LdapAuth(username.getText(), new String(pass.getPassword()));
+ if(login==true)
+ {
+ //Erstellen einer Instanz der Aktionsauswahl
+ ActionChooser ac=new ActionChooser();
+ ac.setVisible(true);
+ //Schließen des Fensters nach erfolgreichen Login
+ dispose();
+ }
}
});
BtnLogin.setBounds(10, 179, 134, 23);
contentPane.add(BtnLogin);
+ //Erzeugen und Hinzufügen des Passwortfeldes
pass = new JPasswordField();
pass.setBounds(154, 117, 125, 20);
contentPane.add(pass);
|
