Gemeinschafst projekt: rtf änliches komponente !

Vorstellungen von Programmen, welche mit Lazarus erstellt wurden.
Antworten
pluto
Lazarusforum e. V.
Beiträge: 7180
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Nein ! ich lasse es nicht ! ich weiß inzwischen ganz genau welchen umfang das hat ! zugegeben am Anfang wusste ich es nicht aber jetzt weiß ich es !

Warum schreiben wir das nicht gemeinsam !
und fertig ist die sache jeder macht das was er kann... ich kann mich z.b. um das anzeigen kümmern und um speicher Formate wie z.b. RTF, HTML, .PDF(evlt.)....

ihr sagt auch immer das gleiche also einer von uns muss damit jetzt auf höheren. Ich weiß das ihr unter eine Decke Steckt und die gleichen Ansichten habt was mein vorhaben angeht !
MFG
Michael Springwald

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

pluto hat geschrieben:Warum schreiben wir das nicht gemeinsam !


Fang mal an und leg ein vernünftiges Konzept und eine Klassenstruktur hin.
Das muss mal einer machen, wie soll man denn sonst die Arbeit aufteilen?

Sowas entsteht doch meistens anfänglich durch eine Einzelperson. Das war bei Synedit so (M.Waldenburg) und bei VTV (Mike Lischke). Wenn mal klar ist, wie der Hase laufen soll, kann man die Arbeit aufteilen.

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Also, ich weiß ja nicht was für Ansichten die anderen haben. Ich finde das ganz positiv, schließlich braucht man ja nicht immer gleich die "eierlegende Wollmilchsau" wenn man mal schnell einen Brief schreiben will. Da reichen einfache Formatiermöglichkeiten meistens völlig aus.

Allerdings sollten Variable möglich sein um z.B. Serienbriefe aus einer Datenbank erstellen zu können. Also nicht zu mächtig machen das Ding.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Strukturell muss das ding aber so aufgebaut sein das man später wenn man n kleines feature mehr haben will nicht gleich neuschreiben muss und wenn ich das tmemo hör läuten bei mir alle alarmglocken.

und pluto, glaub mir du weisst nicht welchen umfang das hat. das belegen deie fragen 100%ig
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Naja, schon als Objekt damit man im Zweifel ableiten und erweitern kann. Aber am Anfang erstmal die Grundfähigkeiten wie Schriftarten, Schriftfarbe, Blocksatz usw.. Seiteneinstellung auf Standardformate. Dann erbt man später das vorhandene. Ob da Synedit das richtige ist weiß ich nicht, das muß am Anfang aber festlegen um später möglichst gut drauf aufbauen zu können.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

schnullerbacke hat geschrieben:Naja, schon als Objekt damit man im Zweifel ableiten und erweitern kann. Aber am Anfang erstmal die Grundfähigkeiten wie Schriftarten, Schriftfarbe, Blocksatz usw.. Seiteneinstellung auf Standardformate.

Mein lieber Schnulli, das muss man erstmal hinkriegen. ;-)
Von mehr spricht im Moment ja gar keiner.

schnullerbacke hat geschrieben: Dann erbt man später das vorhandene. Ob da Synedit das richtige ist weiß ich nicht, das muß am Anfang aber festlegen um später möglichst gut drauf aufbauen zu können.


Man kann nicht auf Synedit aufbauen. Da muss man schon bei TCustomControl beginnen.
Synedit funktioniert nur mit fixen Fonts. Da sind alle Buchstaben gleich breit und alle Zeilen gleich hoch. Bei einem Richedit ist das alles nicht so.
Man kann sich aber einiges bei Synedit abgucken.

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

Beitrag von pluto »

ich denke wir sollten theo's vorschlag für eine klasse ruhig nehmen dann hätten wir was oder sehe ich das falsch ?

Ich weiß es wird schwirig aber das ist es nicht unmöglich...

was haltet ihr von den vorschlag einfach die LazarusRichView Komponente zu nehmen und zu erweitern. Dann brauchen wir nicht bei 0 anzufangen.
MFG
Michael Springwald

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Das wird eh was, das so ziemlich bei 0 anfängt. Ich kann mich ja täuschen, aber ich meine TRichEdit von Delphi setzt auch auf TMemo auf, überschreibt aber die Paint-Methode. So gesehen kann man auch gleich kleiner ansetzen.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

schnullerbacke hat geschrieben:Das wird eh was, das so ziemlich bei 0 anfängt. Ich kann mich ja täuschen, aber ich meine TRichEdit von Delphi setzt auch auf TMemo auf, überschreibt aber die Paint-Methode. So gesehen kann man auch gleich kleiner ansetzen.


Wie soll das gehen? TRichEdit kapselt das Control in Riched32.dll.
http://win32assembly.online.fr/tut33.html

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

pluto hat geschrieben:was haltet ihr von den vorschlag einfach die LazarusRichView Komponente zu nehmen und zu erweitern. Dann brauchen wir nicht bei 0 anzufangen.


Wenn du da durchsteigst.
Ich würde dann eher bei 0 anfangen. ;-)

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

Beitrag von pluto »

naja, ich werde es mal versuchen, ob ich da weiter komme....

aber ich denke das ist der beste weg für unsere RichEdit Komponete würde ich sagen... einen Teil habe ich schon verstanden(in etwa) mal sehen wie der andere Teil aussieht... es wird natürlich dauern...

Wenn wir bei 0 anfangen muss sich jemand oder müssen wir gemeinsam einen weg finden wie wir dieses Problem lösen wollen. und uns klare ziele Defnieren die wir auch erreiche können... und das Projekt in Phasen auf teilen.....

Die Frage ist ist die LazarusRichView Komponente dafür überhaupt geeignet ?
ich würde sagen ja... nach meinen ersten "blicken"
MFG
Michael Springwald

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

aber ich denke das ist der beste weg für unsere RichEdit Komponete würde ich sagen...
das selbe hast du schon bei 5 ansätzen gesat und ich schätze es werden noch 15 bevor du auf uns hörst
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

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

Beitrag von pluto »

Eins ist sicher: ich werde dieses Problem lösen die Frage ist nur wann.
Das war bis jetzt immer so... und das wird auch so bleiben.

Ihr meint nur weil es Kompliziert ist sollte ich/wir sowas nicht anfangen und versuchen hinzubekommen.....

Edit:
So ich schlage vor wir stellen unsere "streiterein" ein und fangen einfach mal an.... evlt. kommt ja was brauch bares raus.... ich denke wir sollten jetzt einfach bei 0 anfangen und Theo's Vorschlag nehmen. Es gibt Viele Problem zu lösen z.b. wo rüber wir uns gedanken machen könnten/sollten:

1: Wie immer das Markieren wie könnte das am besten gelöst werden ?

2: Jemand hat einen Text geschrieben und will in nun umformatieren d.h. ein Text war vohrer Rot und der User möchte ihn auf gelb machen

3: Das Per Tastertur ein Text geschrieben und Bearbeitet werden kann

4: Das Anzeigen von Text in unterschiedlicher Größe/Farbe/Schriftarten

5: Link, Aufzälungstypen, Grafiken und GUI Elemente

mir kommt das sovor als hätte ich das schon mal geschrieben, aber egal....
MFG
Michael Springwald

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Womit wir wieder beim Thema "composite component wizard" wären. Das soll und muß eine Komponente werden die an beliebiger Stelle im Program auf einem Formular eingesetzt werden soll. Schon deshalb sollte das selbst kein Formular sein. Um das venünftig testen und entwickeln zu können, also die nötigen Events per ActionList-Komponente oder per ToolBar-Event im graphischen Umfeld durch klicken zu erzeugen und dann ausformulieren zu können ist ein Formular denkbar schlecht geeignet. Die Events würden dann im Formular erscheinen und nicht in der Komponente, wie das eigentlich sein sollte.

Ich hab das hier bereits bis auf wenige Fehler passend gemacht. Allerdings erweist sich die LCL trotz anders lautender Behauptungen im Quelltext eben nicht als kompatibel zu Delphi. So wurde z.B. CreateParam nicht bis zum TCustomPanel durchgereicht, das wären aber für diesen Fall lediglich 2 Methoden die mit override eingehängt werden müßten. Das sollten sogar die LCL-Entwickler verschmerzen können da es keinen Einfluß auf die Funktionalität hätte. Eine andere Methode wäre das per IFDEF im Wizard zu lösen, was aber nicht wirklich elegant wäre.

Bleibt das Problem, das Ding in der IDE einzuhängen, damit es das auch zum Entwickeln z.V. stellt.

@Christien

Bevor du jetzt gleich wieder deine Tiraden losläßt, das Ding stellt für die Oberfläche ein Template-Formular ähnlich dem TFrame z.V.. Alle Aktionen und der Quelltext landen aber in der neuen Komponente. Der Wizard selbst stellt lediglich eine kleine Vorauswahl von Elternkomponenten z.V., d.h. man kann alle Steuerlemente und deren Events in der IDE auf die neue Komponente bauen ohne deshalb gleich Klimmzüge am Brotkasten machen zu müssen. Insbesondere braucht man den Kram nicht von Hand im Create-Konstruktor eintragen und zig Versuche machen, bis alle Positionen stimmen.

Am Ende erhält man eine neue Komponente die völlig losgelöst von einem Formular existiert und damit entsprechend flexibel in der IDE eingesetzt werden kann. Das entspricht genau den Zielen der OOP und stellt eine Arbeitserleichterung dar und ist keine Schikane auch wenn es dir so vorkommen mag.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

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

Beitrag von pluto »

Da wo du Probleme siehst sehe ich im Moment noch keine. ich dachte jede sichtbare Komponente ist ein einfaches Fenster . Und kann somit überall platztiert werden wo es hinsoll....
MFG
Michael Springwald

Antworten