From f544294c245bec1d2f031942e8f40bd7648c51b3 Mon Sep 17 00:00:00 2001 From: Fitorec Date: Sat, 1 Jul 2017 00:36:13 -0500 Subject: [PATCH] put the base code --- icon.png | Bin 0 -> 2440 bytes icon.svg | 76 +++++ pom.xml | 26 ++ .../com/mundosica/wifi/manager/CoarseGrid.png | Bin 0 -> 973 bytes .../com/mundosica/wifi/manager/LoginLogo.png | Bin 0 -> 10440 bytes .../wifi/manager/MainController.java | 204 +++++++++++++ .../com/mundosica/wifi/manager/MainView.fxml | 25 ++ .../mundosica/wifi/manager/Model/Config.java | 51 ++++ .../wifi/manager/Model/ParseProfile.java | 84 +++++ .../mundosica/wifi/manager/Model/Profile.java | 289 ++++++++++++++++++ .../com/mundosica/wifi/manager/NetshWlan.java | 140 +++++++++ .../mundosica/wifi/manager/WifiManager.java | 62 ++++ .../java/com/mundosica/wifi/manager/style.css | 121 ++++++++ 13 files changed, 1078 insertions(+) create mode 100644 icon.png create mode 100644 icon.svg create mode 100644 pom.xml create mode 100644 src/main/java/com/mundosica/wifi/manager/CoarseGrid.png create mode 100644 src/main/java/com/mundosica/wifi/manager/LoginLogo.png create mode 100644 src/main/java/com/mundosica/wifi/manager/MainController.java create mode 100644 src/main/java/com/mundosica/wifi/manager/MainView.fxml create mode 100644 src/main/java/com/mundosica/wifi/manager/Model/Config.java create mode 100644 src/main/java/com/mundosica/wifi/manager/Model/ParseProfile.java create mode 100644 src/main/java/com/mundosica/wifi/manager/Model/Profile.java create mode 100644 src/main/java/com/mundosica/wifi/manager/NetshWlan.java create mode 100644 src/main/java/com/mundosica/wifi/manager/WifiManager.java create mode 100644 src/main/java/com/mundosica/wifi/manager/style.css diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a5d3a7c1eb2c9170dfc95d0ddc0181bb52d2145e GIT binary patch literal 2440 zcmV;333v91P)@QJ%R;7!X?q3Q}g6 zPAk(IxhEkoNGcY`&eS@VV(CK|s!oBzAUac(j)azmlFNH+v84_pwCJFgNA3xvD2UUd zl@QPnxFOuL`r+Qhyzcv)VEg}c@7Zgw^7Xxr=9s|Q|EE44*V60nuyP;l%jX7an8ncIHHxy)OlWxb9p8#EsVb`+;)xp6HFQa+alM2odVxF#YkUI7IWhu{9cI1ivO$S|nZUT%1g0N4Q* z^2JJW+`?45yytkQQj)`b2eF)W?Kw)lu|>Orf@GX707XcOJQyfj{z&%FLXQs zr{*!R^%@`G&XV?m3e~D?DGl;&w#phR8G0>3K$I%rD_N>*GF!Q$eLtZi0CnXo7G-so z%FiOKj^t52?sv3gsjFAm0j8?31elen4uK!~gRG7Hj-t+@PM|nLomW&?J)l3o99~U0 zQ)20$F2HmV)&b)(=w4qO#1F9mgetfPhr^i=Q8?g>@L z2yvL;-_DWfG#JTfmFFn@>;%lX5zYgY2Z@x_@~psD1VFzZE26;0TVcTM`Bb19$PBg*FOVQ4ID(vcsMbKJDdnh6czyeQ`H{_hXhvogX~ErcybQ6 zUXSoTke^IemDvUw9Su{4!=Dp1AF}9YTRa_!a6;ixvUeU}vcm3=#s2z=#4}aw)j5`m zQZewG3Zv7aA|0QzdZ2DLr2;id{GbX%fcjX<{V__58knLC5g4veO8jJOy5sOpsGOz# zTGk0@92@<6ZRiGt(WVHaQW5TiD&Y0*7was_1UA$A9dAR}rOKAPTwWjfdp?UxYB@%| zO{ogAQRV};cN57&S!RHURcd$1EI1IqvF zz+GvoZj_KkE0CKl$<9z=V}3J_c7HsxMV-Y=1A;DY*0iSmWhfa0eqCJ4LbsgXuFe-1*EL!$ zzz9(afy*j<1pF=1#@=LAAp&o>K~|vI6ll~mXMqHW`oKxkI#ztNPxTTO;s=T0ZTL!vR;Kf#0HX+FQ zqZYU2z#4@LSC|Sldnoz(@HYzXTW?(U_ZtIh*XuE{|Guq}=&l(=l5 zH(WLhW)^Mbt#|@ws>r|6!ZwBbJmzw=ILLSdK$X9GYzzQ}?OC3_u}N9AtAUvSaqpjPQ)dlxiRrfLH})y{G1c?dfEQzBYE?QAVi{@&`Ez zomN&VZ1lodI}C?Y>Bx`W$pwK%Pq^^8uN?u%3G)(US9O^Pj-+3br{ME|N|UdZ4eftA zNR8P;vkL1yFxYM=t*y6XWfbB?>8-G?bDeRQyP_t~37mJ`XcU23EA=~Snv~;yHT!?U z+Vv)P2|#HL7g3&c*(ea*fb=U5ry?7xQ}~GoB$iAJ@@eNwJtC|iw#7kUit7X*EXpkZ zww{}+?Kt@@Zn~bwZs2Qf8df+^9AtX;nW)FWB%o@rK&Ec`w;mN_->Prz95S|Mw>$~Un>B6 + + +image/svg+xml \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..f91871b --- /dev/null +++ b/pom.xml @@ -0,0 +1,26 @@ + + + 4.0.0 + com.mundosica + Wifi-Manager + 1.0-SNAPSHOT + jar + + UTF-8 + 1.8 + 1.8 + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.3.2 + + + + + + + diff --git a/src/main/java/com/mundosica/wifi/manager/CoarseGrid.png b/src/main/java/com/mundosica/wifi/manager/CoarseGrid.png new file mode 100644 index 0000000000000000000000000000000000000000..9f54e7b5063630ce41e2f916c563f68ed5a1d16f GIT binary patch literal 973 zcmaJ=O^ee&7!Fp7yHH#N4=Tuz1rM^#S3ff}?zT;93ual`f;n!QOxw^+CQYU`?Lih# zdJ*=dAb9rVAMl_oiy(N`)sy%K)RP`Wopjr-2Wwz5^A6ARyr1)6XZvPi_3|piFo}9i zZP0xsTIb^Q|LGvUMz>3(qLU`>kdfgdrfA_d0(Hmeq6RXo@!$q$)R%gDbrLa9hJjnB-(TE$RIP7n8t*@agVxwXd;9U-Yv!#+GiWO1LXHpd@l~L1KH7lg^bFPZb zp@Up9=US)S;!GF}BoL3_fz{wEJ|d8{ZF}(kD@@tHoCMvEA9-{d(rJ4(=w7t{or0-8#H_|50oJ z*M1+q?wq~wYilER^nU;G`72LWYCq%c!Ly6{hw?kP&%~IA`t=TZ_3cOW!0MH4^?7Oc F-X96cFmV6? literal 0 HcmV?d00001 diff --git a/src/main/java/com/mundosica/wifi/manager/LoginLogo.png b/src/main/java/com/mundosica/wifi/manager/LoginLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..b901bd9f599c7577ed4a54cc0d3485f0fc0ed182 GIT binary patch literal 10440 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 CJ+GSp literal 0 HcmV?d00001 diff --git a/src/main/java/com/mundosica/wifi/manager/MainController.java b/src/main/java/com/mundosica/wifi/manager/MainController.java new file mode 100644 index 0000000..86fcf8a --- /dev/null +++ b/src/main/java/com/mundosica/wifi/manager/MainController.java @@ -0,0 +1,204 @@ +/* + * Licencia MIT + * + * Copyright (c) 2017 @Fitorec . + * + * Se concede permiso, de forma gratuita, a cualquier persona que obtenga una + * copia de este software y de los archivos de documentación asociados + * (el "Software"), para utilizar el Software sin restricción, incluyendo sin + * limitación los derechos a usar, copiar, modificar, fusionar, publicar, + * distribuir, sublicenciar, y/o vender copias del Software, y a permitir a las + * personas a las que se les proporcione el Software a hacer lo mismo, sujeto a + * las siguientes condiciones: + * + * El aviso de copyright anterior y este aviso de permiso se incluirán en todas + * las copias o partes sustanciales del Software. + * + * EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O + * IMPLÍCITA, INCLUYENDO PERO NO LIMITADO A GARANTÍAS DE COMERCIALIZACIÓN, + * IDONEIDAD PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS + * AUTORES O TITULARES DEL COPYRIGHT SERÁN RESPONSABLES DE NINGUNA RECLAMACIÓN, + * DAÑOS U OTRAS RESPONSABILIDADES, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O + * CUALQUIER OTRO MOTIVO, QUE SURJA DE O EN CONEXIÓN CON EL SOFTWARE O EL USO U + * OTRO TIPO DE ACCIONES EN EL SOFTWARE. + * + */ +package main.java.com.mundosica.wifi.manager; + +import java.io.File; +import java.net.URL; +import java.util.ResourceBundle; +import javafx.event.ActionEvent; +import javafx.event.EventHandler; +import javafx.event.EventType; +import javafx.fxml.FXML; +import javafx.fxml.Initializable; +import javafx.scene.control.Alert; +import javafx.scene.control.Alert.AlertType; +import javafx.scene.control.ButtonType; +import javafx.scene.control.ContextMenu; +import javafx.scene.control.MenuButton; +import javafx.scene.control.MenuItem; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableColumn.CellEditEvent; +import javafx.scene.control.TableView; +import javafx.scene.control.TextField; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.control.cell.TextFieldTableCell; +import javafx.scene.input.KeyCode; +import javafx.scene.input.KeyEvent; +import javafx.scene.input.MouseButton; +import javafx.scene.input.MouseEvent; +import javafx.stage.FileChooser; +import javafx.stage.FileChooser.ExtensionFilter; +import main.java.com.mundosica.wifi.manager.Model.Config; +import main.java.com.mundosica.wifi.manager.Model.Profile; + +/** + * + * @author @Fitorec + */ +public class MainController implements Initializable { + + @FXML + private TableView tableProfiles; + @FXML + private TableColumn columnSttus; + @FXML + private TableColumn columnName; + @FXML + private TableColumn columnMode; + @FXML + private TableColumn columnAuth; + @FXML + private TableColumn columnKey; + @FXML + private MenuButton buscarType; + @FXML + private TextField buscarField; + + private static final ExtensionFilter filterXml = new ExtensionFilter("Archivo de Configuración", "*.xml"); + + private Profile currentProfile() { + return (Profile) tableProfiles.getSelectionModel().getSelectedItem(); + } + + /** + * + * @param e + */ + @FXML + public void importar(ActionEvent e) { + FileChooser fileChooser = new FileChooser(); + fileChooser.setTitle("Importar Configuración"); + fileChooser.getExtensionFilters().add(filterXml); + //fileChooser.setInitialFileName(p.); + File selectedFile = fileChooser.showOpenDialog(WifiManager.stage); + } + + public void exportar() { + Profile p = currentProfile(); + FileChooser fileChooser = new FileChooser(); + System.out.println("Directorio: " + Config.getSavePath()); + fileChooser.setTitle("Exportar red " + p.getName()); + fileChooser.getExtensionFilters().add(filterXml); + fileChooser.setInitialDirectory(new File(Config.getSavePath())); + fileChooser.setInitialFileName(p.getFileName()); + File selectedFile = fileChooser.showSaveDialog(WifiManager.stage); + if (selectedFile != null) { + Profile.export(p, selectedFile.getAbsolutePath()); + } + } + + /** + * + * @param ke + */ + @FXML + public void buscar(KeyEvent ke) { + String search = buscarField.getText(); + String type = ""; + if (search.length() == 0) { + this.tableProfiles.getItems().clear(); + this.tableProfiles.setItems(Profile.list()); + } + this.tableProfiles.getItems().clear(); + this.tableProfiles.setItems(Profile.search(search, type)); + System.out.println(search); + } + /** + * + * @param ke + */ + @FXML + public void keyOnTable(KeyEvent ke) { + KeyCode code = ke.getCode(); + if (code.toString() == "DELETE") { + Alert alert = new Alert(AlertType.WARNING, "¿Estas seguro de borrar?", ButtonType.YES, ButtonType.CANCEL); + alert.showAndWait(); + if (alert.getResult() == ButtonType.YES) { + Profile p = (Profile) tableProfiles.getSelectionModel().getSelectedItem(); + NetshWlan.delete(p); + this.tableProfiles.getItems().clear(); + this.tableProfiles.setItems(Profile.remove(p)); + } + } + } + + @Override + public void initialize(URL url, ResourceBundle rb) { + tableProfiles.setEditable(true); + columnName.setCellValueFactory( + new PropertyValueFactory("name") + ); + columnMode.setCellValueFactory( + new PropertyValueFactory("connectionMode") + ); + columnAuth.setCellValueFactory( + new PropertyValueFactory("authentication") + ); + columnKey.setCellFactory(TextFieldTableCell.forTableColumn()); + columnKey.setOnEditCommit( + new EventHandler>() { + @Override + public void handle(CellEditEvent t) { + /*t.getOldValue(); + t.getNewValue();*/ + } + } + ); + columnKey.setCellValueFactory( + new PropertyValueFactory("keyMaterial") + ); + Profile.loadList(); + this.tableProfiles.getItems().clear(); + this.tableProfiles.setItems(Profile.list()); + + /// Menu + ContextMenu cm = new ContextMenu(); + MenuItem mi1 = new MenuItem("Exportar"); + mi1.setOnAction(new EventHandler() { + public void handle(ActionEvent e) { + exportar(); + } + }); + cm.getItems().add(mi1); + MenuItem mi2 = new MenuItem("Compartir"); + cm.getItems().add(mi2); + MenuItem mi3 = new MenuItem("Eliminar"); + cm.getItems().add(mi3); + tableProfiles.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler() { + @Override + public void handle(MouseEvent t) { + if (t.getButton() == MouseButton.SECONDARY) { + cm.show(tableProfiles , t.getScreenX() , t.getScreenY()); + Profile prof = (Profile) tableProfiles.getSelectionModel().getSelectedItem(); + System.out.println("Profile: " + prof.getName()); + } + } + // buscar + }); + //buscarType.se + } + +} diff --git a/src/main/java/com/mundosica/wifi/manager/MainView.fxml b/src/main/java/com/mundosica/wifi/manager/MainView.fxml new file mode 100644 index 0000000..a9f3e34 --- /dev/null +++ b/src/main/java/com/mundosica/wifi/manager/MainView.fxml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + +