28.01.2013
Moin allerseits !
Hatte heute mal ein bisschen Langeweile, also hier mal ein sinnloser Thread..
Was hier rein kommt? Keine Ahnung, wie der Titel schon sagt ein bisschen Software, falls ich mal Zeit zum programmieren habe ..
Achja, und als kleine Vorwarnungen: Ich kann NICHT gut erklären. Das heißt das Verständnis wird nicht unbedingt das beste sein ^^.
--------------------------------------
~ Download ~
Naja egal, hier "Sinnlose Software #1". Ist noch in der frühen Beta-Phase
Ich wurde schon des öfteren gefragt, mit dem DeviantArt-Bild-Dingens rauszurücken, also habe ich mir heute mal kurz Zeit genommen und was kleines dazu gebastelt. Da ich wirklich nur sehr wenig Zeit darauf verwendet habe, ist das ganze nicht sehr toll geschrieben - Aber wenigstens funktioniert es.
Uund das wars, die anderen 2 Plugins sind irgendwo in den tiefen meiner Festplatte, und für andere hatte ich noch keine Idee..
Eigenes Plugin erstellen? Easy peasy!
Was würde es nützen, wenn man gar nicht mal eigene Plugins erstellen könnte ? Naja, endlich der Teil der auch Spaß macht. Man sollte leichte Java-Kenntnisse haben, jedoch muss man kein Profi sein.
//Out-To-Date da ich die API mittlerweile verändert habe! \\
------------------------------
Und das wars auch schon. Nicht gerade viel, und vor allem nichts sinnvolles, aber das habe ich ja auch nirgends erwähnt.
MfG
http://www.fimfiction-static.net/images/characters/rainbow_dash.png
Hatte heute mal ein bisschen Langeweile, also hier mal ein sinnloser Thread..
Was hier rein kommt? Keine Ahnung, wie der Titel schon sagt ein bisschen Software, falls ich mal Zeit zum programmieren habe ..
Achja, und als kleine Vorwarnungen: Ich kann NICHT gut erklären. Das heißt das Verständnis wird nicht unbedingt das beste sein ^^.
--------------------------------------
~ Download ~
Naja egal, hier "Sinnlose Software #1". Ist noch in der frühen Beta-Phase
Ich wurde schon des öfteren gefragt, mit dem DeviantArt-Bild-Dingens rauszurücken, also habe ich mir heute mal kurz Zeit genommen und was kleines dazu gebastelt. Da ich wirklich nur sehr wenig Zeit darauf verwendet habe, ist das ganze nicht sehr toll geschrieben - Aber wenigstens funktioniert es.
Getauft: Keine Ahnung. Die JAR-Datei ist Utility getauft, das Programm selbst hat Utils als Titel, aber Sinnlose Software #1 trifft wohl am ehesten zu. (Öffnen)
Was genau ist das?
Wie oben bereits gesagt, ein kleines Java-Programm.
Was für einen Nutzen hat es / Was kann es?
Was für einen Nutzen es hat? Als allein stehendes Programm? Gar nichts.
Was es als allein stehendes Programm kann? Gar nichts. Naja, eine GUI öffnet sich, welche aber nur eine verbesserte Konsole ist (C&P ohne Umwege ftw !).
Wofür ist es nun?
Wie oben bereits erwähnt - Alleine nützt es rein gar nichts. Es ist eine kleine Konsole; Welche aber als Haupt-Funktionalität ein Plugin-System hat. Das heißt, es kann etwas nützen, wenn man es mit Erweiterungen füttert.
Ui, und wieder merkt man wie schlecht ich erklären kann..
Kurz gefasst:
Die Konsole lädt verschiedene JAR Dateien als Erweiterungs-Module nach, und diese JAR Dateien können 2 Funktionen haben:
- Auf Befehle reagieren: Sobald man in der Konsole etwas was mit "/" anfängt eingibt, werden alle registrierten Befehle gefeuert.
- Auf Inputs reagieren: Sobald man irgendetwas in der Konsole eingibt, werden alle registrierten InputListener gefeuert.
Uund nochmal anders formuliert:
Ladet euch einfach die verschiedenen Module runter, falls ihr sie braucht. Wie man sie benutzt wird in der Beschreibung stehen.
Wie oben bereits gesagt, ein kleines Java-Programm.
Was für einen Nutzen hat es / Was kann es?
Was für einen Nutzen es hat? Als allein stehendes Programm? Gar nichts.
Was es als allein stehendes Programm kann? Gar nichts. Naja, eine GUI öffnet sich, welche aber nur eine verbesserte Konsole ist (C&P ohne Umwege ftw !).
Wofür ist es nun?
Wie oben bereits erwähnt - Alleine nützt es rein gar nichts. Es ist eine kleine Konsole; Welche aber als Haupt-Funktionalität ein Plugin-System hat. Das heißt, es kann etwas nützen, wenn man es mit Erweiterungen füttert.
Ui, und wieder merkt man wie schlecht ich erklären kann..
Kurz gefasst:
Die Konsole lädt verschiedene JAR Dateien als Erweiterungs-Module nach, und diese JAR Dateien können 2 Funktionen haben:
- Auf Befehle reagieren: Sobald man in der Konsole etwas was mit "/" anfängt eingibt, werden alle registrierten Befehle gefeuert.
- Auf Inputs reagieren: Sobald man irgendetwas in der Konsole eingibt, werden alle registrierten InputListener gefeuert.
Uund nochmal anders formuliert:
Ladet euch einfach die verschiedenen Module runter, falls ihr sie braucht. Wie man sie benutzt wird in der Beschreibung stehen.
Plugin-Liste (Öffnen)
DeviantArt (Öffnen)
~ Download ~
~Source~
Das Plugin, welches mich heute dazu gebracht hat überhaupt dieses Programm zu erstellen.
Was es tut?
Ganz einfach. Gebt entweder die URL zu der Deviation selbst, oder die Bild-URL ein, und es konvertiert sie euch. Beispiel:
URL: http://mykoklyt.deviantart.com/art/But-350890453
Output:
Wie man es benutzt:
1. Gebt so viele URL's ein wie ihr wollt. Als Input natürlich.
2. Gibt /da convert [cb:false/true] ein (Alles in den eckigen Klammern ist optional - Das Argument "cb" zum Beispiel sagt, ob ihr die konvertierten Links gleich ins Clipboard nehmen wollt oder nicht)
3. Profit! Scherz, einfach den Output rauskopieren, und benutzen. Rauskopieren ist bei cb:true (Standard) NICHT nötig!
Öhm, ja, das wars eigentlich auch schon mit diesem Plugin - Um Nachrichten einzustellen einfach in die jeweilige Config gehen.
~Source~
Das Plugin, welches mich heute dazu gebracht hat überhaupt dieses Programm zu erstellen.
Was es tut?
Ganz einfach. Gebt entweder die URL zu der Deviation selbst, oder die Bild-URL ein, und es konvertiert sie euch. Beispiel:
URL: http://mykoklyt.deviantart.com/art/But-350890453
Output:
Beschreibung (Öffnen)
MykoKlyt schrieb:Traced from season 2 episode 7 "May the Best Pet Win!"
Created with Ponyscape version 0.3
Just finished a vector I started some time ago.
1. Gebt so viele URL's ein wie ihr wollt. Als Input natürlich.
2. Gibt /da convert [cb:false/true] ein (Alles in den eckigen Klammern ist optional - Das Argument "cb" zum Beispiel sagt, ob ihr die konvertierten Links gleich ins Clipboard nehmen wollt oder nicht)
3. Profit! Scherz, einfach den Output rauskopieren, und benutzen. Rauskopieren ist bei cb:true (Standard) NICHT nötig!
Öhm, ja, das wars eigentlich auch schon mit diesem Plugin - Um Nachrichten einzustellen einfach in die jeweilige Config gehen.
Uund das wars, die anderen 2 Plugins sind irgendwo in den tiefen meiner Festplatte, und für andere hatte ich noch keine Idee..
Eigenes Plugin erstellen? Easy peasy!
Was würde es nützen, wenn man gar nicht mal eigene Plugins erstellen könnte ? Naja, endlich der Teil der auch Spaß macht. Man sollte leichte Java-Kenntnisse haben, jedoch muss man kein Profi sein.
//Out-To-Date da ich die API mittlerweile verändert habe! \\
Spoiler (Öffnen)
Step 1
Erstelle ein neues Projekt.
Adde die vorher heruntergeladene "Utility.jar" als externe Library.
Step 2
Erstelle deine Hauptklasse. Implementiere das Interface "Plugin".
Njoa, da erklären irgendwie nicht so mein Ding ist, zeige ich es einfach mal anhand eines Beispieles - Unser Plugin soll uns irgendetwas mitteilen, sobald wir einen Befehl/Input gegeben haben.
Der Code ist kommentiert.
Hauptklasse:
So, nun registrieren wir mal einen Befehl & InputListener:
Cmdbsp:
Ilbsp:
Kann man natürlich in der selben Klasse machen, aber, wie gesagt, Grundlagen vorausgesetzt.
Jetzt einfach als Jar Datei exportieren, in den "Plugins" Ordner (Von der Hauptjar generiert) werfen, und bäm!
.. Ja, das mal in Kurzform.
Erstelle ein neues Projekt.
Adde die vorher heruntergeladene "Utility.jar" als externe Library.
Step 2
Erstelle deine Hauptklasse. Implementiere das Interface "Plugin".
Njoa, da erklären irgendwie nicht so mein Ding ist, zeige ich es einfach mal anhand eines Beispieles - Unser Plugin soll uns irgendetwas mitteilen, sobald wir einen Befehl/Input gegeben haben.
Der Code ist kommentiert.
Hauptklasse:
Code:
// !! GRUNDGERÜST !! \\
import de.flyingclaw.utils.*;
public class Bsp implements Plugin/*Das Interface Plugin implementieren*/ {
PluginManager mngr; //Wichtig! Der PluginManager gibt uns Zugriff auf all das "interne" Zeug. zB Befehle registrieren
@Override
public PluginManager getManager() { //Eine Methode welche den Manager zurückgibt.
return mngr;
}
@Override
public String getName() { // Hier müssen wir den Namen des Plugins zurückgeben lassen.
return "Beispiel";
}
@Override
public String getVersion() { //.. Und hier die Version.
return "v1.0";
}
@Override
public void onDisable() { //Wird ausgeführt wenn das Programm beendet wird. Kommen wir später zu.
}
@Override
public void onEnable() { //Wird ausgeführt wenn das Programm gestartet wird. Kommen wir später zu.
}
@Override
public void setManager(PluginManager arg0) { //Wichtig! Diese Methode wird vom Hauptprogramm aufgerufen und gibt euch den Manager. Also das zuweisen nicht vergessen!
mngr = arg0;
}
}
So, nun registrieren wir mal einen Befehl & InputListener:
Code:
@Override
public void onEnable() {
mngr.out("{" + getName() + " " + getVersion() + "}Wurde aktiviert!"); //Nachricht ausgeben beim starten
c = new Cmdbsp(this); //Zuweisen
il = new Ilbsp(this); //Zuweisen
getManager().registerCommand(c); //registrieren
getManager().registerInputListener(il); //registrieren
}
Cmdbsp:
Code:
public class Cmdbsp implements Command {
@Override
public void onCommand(String befehl, String[] argumente) {
if(befehl.equalsIgnoreCase("bsp")){
main.getManager().out("Juhu, auf Befehl reagiert!");
}
}
Bsp main;
public Cmdbsp(Bsp main){
this.main = main;
}
}
Code:
public class Ilbsp implements InputListener {
@Override
public void listenToInput(String input) {
if(input.equalsIgnoreCase("machwas")){
main.getManager().out("Reagiert auf Input 8)");
}
}
Bsp main;
public Ilbsp(Bsp m){main = m;}
}
Kann man natürlich in der selben Klasse machen, aber, wie gesagt, Grundlagen vorausgesetzt.
Jetzt einfach als Jar Datei exportieren, in den "Plugins" Ordner (Von der Hauptjar generiert) werfen, und bäm!
.. Ja, das mal in Kurzform.
Und das wars auch schon. Nicht gerade viel, und vor allem nichts sinnvolles, aber das habe ich ja auch nirgends erwähnt.
MfG
http://www.fimfiction-static.net/images/characters/rainbow_dash.png