PLXINE-Unit

Zur Vorstellung von Komponenten und Units für Lazarus
pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Ich dachte an sowas: FormatInfo('%FileName, %TimeM, %TimeS',[]);
FileName = Der Aktuelle Datei Namen
TimeM Die Minuten
TimeS die Sekunden
und soweiter.
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

So, ich hab jetzt mal was gebastelt...
Beispiel:

Code: Alles auswählen

Showmessage(player.Get_Formated_Info('Titel: {$TITLE}'#10+
                                     'Interpret: '+TIF_INTERPRET+#10+
                                     'Länge: {$HOUR}:{$MINUTE}:{$SECOND} Stunden'));
Dateianhänge
plxine.pas
(11.03 KiB) 79-mal heruntergeladen
Zuletzt geändert von Teekeks am Mi 24. Mär 2010, 19:49, insgesamt 1-mal geändert.

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Genau an sowas habe ich gedacht. Nur sollten die Variablen in ein Array übergeben werden. Also Praktisch so:
player.Get_Formatet_Info('{TITLE}, Länge:.... Aktuelle Position:...',[TITLE, HOUR, Minute,....]);
Somit hätte der User mehr Möglichkeiten die Ausgabe zu beeinflussen.

Wenn du deine Änderungen Abgeschlossen hast, werde ich sie Übernehmen, oder sollte das vielleicht sogar ein LazForge Projekt werden ? ich glaube das würde sich nicht lohnen oder ?
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Wie meist du das der da mehr Optionen hat?
Ich finde das so mehr Möglichkeiten bestehen.
Du könntest einen ewig langen String übergeben und da irgendwo mitten drin einfach so diese Tags verwenden, welche dann automatisch ersetzt werden.
Wenn das nicht komfortabel ist :)

Das mit LazForge finde ich nicht schlecht, dann würden das auch mehr Leute finden...

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Du könntest einen ewig langen String übergeben und da irgendwo mitten drin einfach so diese Tags verwenden, welche dann automatisch ersetzt werden.
Wenn das nicht komfortabel ist

Nun ja, so musst du ab und zu Casten das führt zu Unübersichtlichkeit. Außerdem könnte der User eine 0 wollen z.b. bei sowas 04:40 oder aber so 4:40. Wer weiß das schon. Und es sieht nicht schön aus wenn man so ein String hat:
Showmessage('test1' + Test1 + 'Test2' + IntTostr(Zahl) + ....);
Das muss nicht sein..... wenn du weiß was ich meine.

Das mit LazForge finde ich nicht schlecht, dann würden das auch mehr Leute finden...

Dann müssten wir das Projekt anders nennen. Z.B. MediaPlayer oder so.Vielleicht bekommen wir dann auch die Probleme bei den Video Wiedergabe in den Griff. Angeblich soll man auch TV und DVD mit XINE Schauen können, kaffein macht das z.b. sehr gut und es nutzt XINE. Ich habe schon oft in den Sourcecode von Kaffein geschaut.

Anderen Seits habe ich schon einige Spannende Projekte am laufen, aber dieses Projekt würde Eigentlich auch dem "TextFlowControl(Vorher: Text Engine)" zu gute kommen, wenn es so weit ist.... Also: Wenn sich mehr Leute für das Projekt Interessieren, werde ich das in Erwägung ziehen.
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Ich würde mich da schon mal melden :)

Aber nun zum Format:
Wie wäre es wenn ich einfach beide Varianten einbauen würde?
Dann wären wir alle zufrieden... :D

Das wird aber glaub ich nicht ganz so einfach... mal ausprobieren ;)

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Hi!
Ich hab jetzt endlich verstanden was du eigentlich meintest mit dem oben :)

Ich baue nur noch ein paar mehr Parameter ein und dann hast du deine Funktion...

Diese stelle hier:

Code: Alles auswählen

+TIF_INTERPRET+

sollte eigentlich nur zeigen dass das auch funktioniert, du kannst natürlich stattdessen auch das hier nehmen:

Code: Alles auswählen

Showmessage(player.Get_Formated_Info('Titel: {$TITLE}'#10+
                                     'Interpret: {$INTERPRET}'#10+
                                     'Länge: {$HOUR}:{$MINUTE}:{$SECOND} Stunden'));

womit wir dann bei deinem vor schlag wären :D

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Ich baue nur noch ein paar mehr Parameter ein und dann hast du deine Funktion...

Besten Dank. Hätte ich ja auch selbst gemacht, aber wenn du schon mal dabei bist....


womit wir dann bei deinem vor schlag wären

Nein noch nicht ganz. Schau dir mal den Format Befehl an. Dann weiß du was ich meine. Im Moment kann man z.b. noch nicht den Dateinamen Ändern. Ob z.b. mit Erweiterung, oder ohne.
Ich mach noch mal ein Beispiel:
Dein Code sieht so aus:

Code: Alles auswählen

Showmessage(player.Get_Formated_Info('Titel: {$TITLE}'#10+
                                     'Interpret: {$INTERPRET}'#10+
                                     'Länge: {$HOUR}:{$MINUTE}:{$SECOND} Stunden'));


Meiner würde so aussehen:

Code: Alles auswählen

Showmessage(player.Get_Formated_Info('Titel: %TITLE Interpret: %Interpret',[VarTitle, VarInterpret);

Siehst du was ich meine ? Deine Funktion macht das Automatisch, aber so ähnlich hatte ich mir das vorgestellt. Das ist Praktisch eine Funktion gibt, die Informationen über eine Audio Datei zurück gibt und eine Funktion, um diese Auszuwerten. Auf diese Art und weiße könnte der User noch mehr Einfluss nehmen. Z.B. könnte er den VarTitle verändern, wie auch immer. Ob das ganze Sinn macht weiß ich nicht genau, aber ich könnte es mir schon vorstellen, dass es genutzt würde. und im Moment erzeugst du ja einen recht Langen String, bei mir wären das Viele kleine und nicht nur Strings sogar auch Interger.
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Hmmm, ich verstehe immer noch nicht was an deiner Procedure vorteilhafter wäre...
Wenn ich z.B. auch schon so was hier einbaue:

Code: Alles auswählen

TIF_MINUTE           = '{$MINUTE}';
 TIF_HOUR             = '{$HOUR}';
 TIF_SECOND           = '{$SECOND}';
 TIF_MINUTE_SHORT     = '{$MINUTE_SHORT}';
 TIF_SECOND_SHORT     = '{$SECOND_SHORT}';
 TIF_HOUR_SHORT       = '{$HOUR_SHORT}';

Dann könnte man sich wahlweise die Zeit mit Null anzeigen lassen, oder ohne (short).

Ich glaube es ist besser wenn du diese Funktion schreibst, ich habe anscheinend immer noch nicht verstanden was du genau willst :(
Denn, ist VarTitle nun ein Parameter (konstante) oder eine eigene Variable die man beliebig setzen kann.
Im ersten Fall wäre das nur eine umständlichere Variante von dem was ich schon habe, und im 2. kann man auch ein normales format nehmen...
Oder verstehe ich den Sinn dieser geplanten Funktion falsch?

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Denn, ist VarTitle nun ein Parameter (konstante) oder eine eigene Variable die man beliebig setzen kann.

VarTitel wäre eine Variable, die vom User gesetzt werden kann. Sie kann auch von einer Vorhanden Funktion gesetzt werden.

Im ersten Fall wäre das nur eine umständlichere Variante von dem was ich schon habe,

Bei dir müsste man einen recht Langen String erzeugen.

Oder verstehe ich den Sinn dieser geplanten Funktion falsch?

Ich glaube das ist der Fall.


Ich glaube es ist besser wenn du diese Funktion schreibst, ich habe anscheinend immer noch nicht verstanden was du genau willst

OK ! Da du schon Meta Daten ermitteln kannst, werde ich sie natürlich für diese Funktion verwenden. Ich hoffe dann verstehst du auch, warum ich diese Funktion haben möchte.... Mache ich gleich Morgen...
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

OK. Dann einigen wir uns so...
Meine Funktion ab ich nun schon mal vorläufig fertig.
benutze am besten overload; zum überladen, damit du 2x den selben Namen benutzen kannst... (das weist du ja vermutlich schon...)
Dateianhänge
plxine.pas
(13.9 KiB) 89-mal heruntergeladen

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

benutze am besten overload; zum überladen, damit du 2x den selben Namen benutzen kannst... (das weist du ja vermutlich schon...

Eigentlich wollte ich sie auch anders nennen z.b. FormatInfo oder so ähnlich. Ich werde vielleicht einiges aus deiner Funktion verwenden können. Mal sehen.
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Bleibt meine Version zusätzlich noch erhalten?
Das man praktisch beide Varianten hat....

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: PLXINE-Unit

Beitrag von pluto »

Deine lasse ich auf jeden Fall drin. Schaden tut es ja nicht, wenn man mehr Alternativen hat.
MFG
Michael Springwald

Teekeks
Beiträge: 359
Registriert: Mi 27. Mai 2009, 20:54
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
CPU-Target: x86
Wohnort: Cottbus

Re: PLXINE-Unit

Beitrag von Teekeks »

Das ist schön!
Und wie weit bist du schon?

Das mit dem svn solltest du dir echt überlegen...

Antworten