début raccourcis claviers

This commit is contained in:
NonoL3Robot
2022-02-26 13:26:40 +01:00
parent 78c209d3f6
commit a2688984c4
6 changed files with 113 additions and 32 deletions
-28
View File
@@ -1,28 +0,0 @@
/*
* RaccourcisClavier.java, 26/02/2022
* IUT Rodez 2021-2022, INFO 2
* pas de copyright, aucun droits
*/
package lecteur_pdf;
import javax.swing.*;
import java.util.HashMap;
import java.util.Map;
/**
* Gestionnaire des raccourcis claviers de l'application
*
* @author Léo Franch
* @author Lucas Vabre
* @author Noé Villeneuve
* @author Tristan Nogaret
*/
public class RaccourcisClavier {
/**
* TODO
*/
public static Map<JMenuItem, KeyStroke> gestionnaireRaccourcis = new HashMap<>();
}
@@ -7,7 +7,7 @@
package lecteur_pdf.menuBar.menuItems;
import lecteur_pdf.IhmPdf;
import lecteur_pdf.RaccourcisClavier;
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
import javax.swing.*;
@@ -47,7 +47,8 @@ public class MenuItem extends JMenuItem {
KeyStroke raccourcis = KeyStroke.getKeyStroke((char) key);
setAccelerator(raccourcis);
RaccourcisClavier.gestionnaireRaccourcis.put(this, raccourcis);
RaccourcisClavier.raccourcis.put(this.getText(), raccourcis);
RaccourcisClavier.gestionnaireRaccourcis.put(this, this.getText());
}
/**
@@ -60,6 +61,7 @@ public class MenuItem extends JMenuItem {
KeyStroke raccourcis = KeyStroke.getKeyStroke(key, mask);
setAccelerator(raccourcis);
RaccourcisClavier.gestionnaireRaccourcis.put(this, raccourcis);
RaccourcisClavier.raccourcis.put(this.getText(), raccourcis);
RaccourcisClavier.gestionnaireRaccourcis.put(this, this.getText());
}
}
@@ -7,6 +7,7 @@
package lecteur_pdf.menuBar.menuItems;
import lecteur_pdf.IhmPdf;
import lecteur_pdf.raccourcisClavier.RaccourcisClavier;
/**
* TODO commentaires
@@ -26,7 +27,7 @@ public class ModifierTouches extends MenuItem {
super(parent, "Modifier Touches");
addActionListener(e -> {
// TODO Ouverture de la fenêtre de dialogue de modification des touches
new RaccourcisClavier();
});
}
@@ -0,0 +1,31 @@
package lecteur_pdf.raccourcisClavier;
import javax.swing.*;
import java.awt.*;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
public class RaccourcisClavier extends JFrame {
public static Map<String, KeyStroke> raccourcis
= new HashMap<>();
public static Map<JMenuItem, String> gestionnaireRaccourcis =
new HashMap<>();
public RaccourcisClavier() {
super("Modification des raccourcis claviers");
JPanel panel = new JPanel();
for (String nomOptions : raccourcis.keySet()) {
panel.add(new ligneRaccourci(nomOptions,
(char) raccourcis.get(nomOptions).getKeyCode(),
false));
}
add(panel);
pack();
setSize(500, 500);
setResizable(false);
setVisible(true);
}
}
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="lecteur_pdf.raccourcisClavier.ligneRaccourci">
<grid id="27dc6" binding="optionsRaccourcis" layout-manager="GridLayoutManager" row-count="1" column-count="3" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<xy x="20" y="20" width="500" height="400"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="5fe9f" class="javax.swing.JLabel" binding="raccourciLabel">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Label"/>
</properties>
</component>
<component id="8ab7f" class="javax.swing.JTextField" binding="inputTextField">
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="150" height="-1"/>
</grid>
</constraints>
<properties/>
</component>
<component id="37960" class="javax.swing.JCheckBox" binding="ctrlCheckBox">
<constraints>
<grid row="0" column="2" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="CheckBox"/>
</properties>
</component>
</children>
</grid>
</form>
@@ -0,0 +1,38 @@
/*
* ligneRaccourci.java, 25/02/2022
* IUT Rodez 2022-2022, INFO2
* pas de copyright, aucun droits
*/
package lecteur_pdf.raccourcisClavier;
import javax.swing.*;
/**
* TODO class comment
*/
public class ligneRaccourci extends JPanel {
private JLabel raccourciLabel;
private JTextField inputTextField;
private JCheckBox ctrlCheckBox;
private JPanel optionsRaccourcis;
public ligneRaccourci(String labelName, char raccourcis, boolean ctrl) {
raccourciLabel.setText(labelName);
inputTextField.setText(String.valueOf(raccourcis));
ctrlCheckBox.setSelected(ctrl);
add(optionsRaccourcis);
}
public JLabel getRaccourciLabel() {
return raccourciLabel;
}
public JTextField getInputTextField() {
return inputTextField;
}
public JCheckBox getCtrlCheckBox() {
return ctrlCheckBox;
}
}