Ajout de la fonction ColorIcon
This commit is contained in:
@@ -0,0 +1,35 @@
|
|||||||
|
import javax.swing.Icon;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Component;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
|
||||||
|
public class ColorIcon implements Icon {
|
||||||
|
|
||||||
|
private final Color couleur;
|
||||||
|
private final int largeur;
|
||||||
|
private final int hauteur;
|
||||||
|
|
||||||
|
public ColorIcon(Color couleur, int largeur, int hauteur) {
|
||||||
|
this.couleur = couleur;
|
||||||
|
this.largeur = largeur;
|
||||||
|
this.hauteur = hauteur;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getIconWidth() {
|
||||||
|
return largeur;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getIconHeight() {
|
||||||
|
return hauteur;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void paintIcon(Component c, Graphics g, int x, int y) {
|
||||||
|
g.setColor(couleur);
|
||||||
|
g.fillRect(x, y, largeur, hauteur);
|
||||||
|
g.setColor(Color.DARK_GRAY);
|
||||||
|
g.drawRect(x, y, largeur - 1, hauteur - 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,104 @@
|
|||||||
|
import java.sql.*;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class BaseDeDonnees {
|
||||||
|
|
||||||
|
private static final String URL = "jdbc:mariadb://dwarves.iut-fbleau.fr:3306/yolou";
|
||||||
|
private static final String USER = "yolou";
|
||||||
|
private static final String PASS = "serikhaneyolou";
|
||||||
|
|
||||||
|
/** Connexion */
|
||||||
|
public static Connection getConnexion() throws SQLException {
|
||||||
|
try {
|
||||||
|
Class.forName("org.mariadb.jdbc.Driver");
|
||||||
|
} catch (ClassNotFoundException e) {
|
||||||
|
System.out.println("Erreur : pilote MariaDB non trouvé !");
|
||||||
|
}
|
||||||
|
return DriverManager.getConnection(URL, USER, PASS);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Ajout d’un rappel (INSERT) */
|
||||||
|
public static int ajouter(Rappel r) throws SQLException {
|
||||||
|
String sql = "INSERT INTO rappel(titre, contenu, theme, rang) VALUES (?, ?, ?, ?)";
|
||||||
|
Connection cnx = getConnexion();
|
||||||
|
PreparedStatement pst = cnx.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
|
||||||
|
|
||||||
|
pst.setString(1, r.getTitre());
|
||||||
|
pst.setString(2, r.getContenu());
|
||||||
|
pst.setString(3, r.getTheme());
|
||||||
|
pst.setInt(4, r.getRang());
|
||||||
|
pst.executeUpdate();
|
||||||
|
|
||||||
|
ResultSet rs = pst.getGeneratedKeys();
|
||||||
|
int id = 0;
|
||||||
|
if (rs.next()) {
|
||||||
|
id = rs.getInt(1);
|
||||||
|
r.setId(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
rs.close();
|
||||||
|
pst.close();
|
||||||
|
cnx.close();
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Liste des rappels */
|
||||||
|
public static List<Rappel> lister() throws SQLException {
|
||||||
|
String sql = "SELECT id, titre, contenu, theme, rang FROM rappel ORDER BY rang ASC, id ASC";
|
||||||
|
List<Rappel> res = new ArrayList<>();
|
||||||
|
|
||||||
|
Connection cnx = getConnexion();
|
||||||
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
||||||
|
ResultSet rs = pst.executeQuery();
|
||||||
|
|
||||||
|
while (rs.next()) {
|
||||||
|
Rappel r = new Rappel(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getString("titre"),
|
||||||
|
rs.getString("contenu"),
|
||||||
|
rs.getString("theme"),
|
||||||
|
rs.getInt("rang")
|
||||||
|
);
|
||||||
|
res.add(r);
|
||||||
|
}
|
||||||
|
|
||||||
|
rs.close();
|
||||||
|
pst.close();
|
||||||
|
cnx.close();
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Modification d’un rappel (UPDATE) */
|
||||||
|
public static int modifier(int id, Rappel r) throws SQLException {
|
||||||
|
String sql = "UPDATE rappel SET titre=?, contenu=?, theme=?, rang=? WHERE id=?";
|
||||||
|
Connection cnx = getConnexion();
|
||||||
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
||||||
|
|
||||||
|
pst.setString(1, r.getTitre());
|
||||||
|
pst.setString(2, r.getContenu());
|
||||||
|
pst.setString(3, r.getTheme());
|
||||||
|
pst.setInt(4, r.getRang());
|
||||||
|
pst.setInt(5, id);
|
||||||
|
|
||||||
|
int rows = pst.executeUpdate();
|
||||||
|
|
||||||
|
pst.close();
|
||||||
|
cnx.close();
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Suppression d’un rappel (DELETE) */
|
||||||
|
public static int supprimer(int id) throws SQLException {
|
||||||
|
String sql = "DELETE FROM rappel WHERE id=?";
|
||||||
|
Connection cnx = getConnexion();
|
||||||
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
||||||
|
|
||||||
|
pst.setInt(1, id);
|
||||||
|
int rows = pst.executeUpdate();
|
||||||
|
|
||||||
|
pst.close();
|
||||||
|
cnx.close();
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,60 @@
|
|||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class GestionRappel {
|
||||||
|
|
||||||
|
public List<Rappel> lister() throws Exception {
|
||||||
|
return BaseDeDonnees.lister();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int ajouter(Rappel r) throws Exception {
|
||||||
|
return BaseDeDonnees.ajouter(r);
|
||||||
|
}
|
||||||
|
|
||||||
|
public int modifierParId(int id, Rappel r) throws Exception {
|
||||||
|
return BaseDeDonnees.modifier(id, r);
|
||||||
|
}
|
||||||
|
|
||||||
|
public int supprimerParId(int id) throws Exception {
|
||||||
|
return BaseDeDonnees.supprimer(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
// === petit main pour test rapide ===
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
GestionRappel g = new GestionRappel();
|
||||||
|
|
||||||
|
// Ajouter
|
||||||
|
Rappel r = new Rappel("Acheter du café", "avant 17h", "Urgent", 1);
|
||||||
|
int id = g.ajouter(r);
|
||||||
|
System.out.println("Ajouté : " + id);
|
||||||
|
|
||||||
|
// Lister
|
||||||
|
System.out.println("\nListe des rappels :");
|
||||||
|
for (Rappel x : g.lister()) {
|
||||||
|
System.out.println(" - " + x);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Modifier
|
||||||
|
r.setTitre("Acheter du café (bio)");
|
||||||
|
r.setRang(3);
|
||||||
|
|
||||||
|
g.modifierParId(r.getId(), r);
|
||||||
|
System.out.println("\nAprès modification :");
|
||||||
|
|
||||||
|
for (Rappel x : g.lister()) {
|
||||||
|
System.out.println(" - " + x);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Supprimer
|
||||||
|
// g.supprimerParId(r.getId());
|
||||||
|
// System.out.println("\nAprès suppression :");
|
||||||
|
|
||||||
|
// for (Rappel x : g.lister()) {
|
||||||
|
// System.out.println(" - " + x);
|
||||||
|
|
||||||
|
// }
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
public class Rappel {
|
||||||
|
private int id;
|
||||||
|
private String titre;
|
||||||
|
private String contenu;
|
||||||
|
private String theme;
|
||||||
|
private int rang;
|
||||||
|
|
||||||
|
public Rappel(String titre, String contenu, String theme, int rang) {
|
||||||
|
this(0, titre, contenu, theme, rang);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Rappel(int id, String titre, String contenu, String theme, int rang) {
|
||||||
|
this.id = id;
|
||||||
|
this.titre = titre;
|
||||||
|
this.contenu = contenu;
|
||||||
|
this.theme = theme;
|
||||||
|
this.rang = rang;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTitre() {
|
||||||
|
return titre;
|
||||||
|
}
|
||||||
|
public void setTitre(String titre) {
|
||||||
|
this.titre = titre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContenu() {
|
||||||
|
return contenu;
|
||||||
|
}
|
||||||
|
public void setContenu(String contenu) {
|
||||||
|
this.contenu = contenu;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTheme() {
|
||||||
|
return theme;
|
||||||
|
}
|
||||||
|
public void setTheme(String theme) {
|
||||||
|
this.theme = theme;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRang() {
|
||||||
|
return rang;
|
||||||
|
}
|
||||||
|
public void setRang(int rang) {
|
||||||
|
this.rang = rang;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
String texte = "[" + id + "] " + titre + " | " + theme + " | rang=" + rang + " | ";
|
||||||
|
if (contenu != null) {
|
||||||
|
texte = texte + contenu;
|
||||||
|
}
|
||||||
|
return texte;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user