![]() |
VirtualTreeView - Wer hat die Weiterentwicklung übernommen
Weiß zufällig jemand, wer die Weiterentwicklung des VirtualTreeView übernommen hat? Mike Lischke macht ja schon länger nicht mehr weiter. Im Blog Eintrag steht was von "Daniel Bauten and Jim Kueneman". Sind das jetzt die offiziellen, oder kocht da jeder sein eigenes Süppchen? In dem Fall würde ich auch mein eigenes Süppchen kochen und meine Patches nicht freigeben.
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Ich weiss nicht, warum Du zu dieser Vermutung/Aussage kommst. Wenn ich es richtig verstanden habe, haben die Beiden "nur" mitgeholfen.
![]() |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Melde Dich mal bei Mike. Ich denke er wird die Patches schon einpflegen bzw. Dir vielleicht auch gleich Schreibrechte auf das Repository geben. Du bist ja nun wirklich kein Nobody ;-)
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Ich denke es ist vor allem Jim Kueneman von mustangpeak
![]() Nachtrag: Ich habe ![]() inoffizielles Update veröffentlicht (nicht von mir). Die Änderungen sind jedoch leider, soviel ich gesehen habe, nicht ins offizielle Update eingeflossen. |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo zusammen,
die meisten Änderungen der letzten Zeit sind von meinem Kollegen Timo Tegtmeier und mir. ![]() Jim Kueneman hat auch einige Sachen gemacht, kümmert sich aber in erster Linie um die Setups. Ich stehe selbstverständlich mit Mike in Kontakt, damit er die Weiterentwicklung mitverfolgen und beeinflussen kann. Seit dem 16.01.2009 gibt es die Version 4.8.0, zu der Jim aber leider noch kein Setup erstellt hat. Ich frage mal bei Jim nach, ob er das in den nächsten Tagen mal tun kann. In jedem Fall sollte bei den neuen Releases die History beachtet werden. Im Fall der Version 4.8.0 haben sich nämlich einige Funktionsaufrufe leicht geändert. Ich würde mich freuen, ein bisschen Feedback über die Weiterentwicklung zu erhalten. Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo Daniel
Schön, dass ihr den VST weiterentwickelt! Hast du dir diese Änderungen schon angeschaut? Zitat:
Thomas |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo Thomas,
nein, diese Änderungen kannte ich bis jetzt nicht. Sie beziehen sich allerdings auf Version 4.5 aus dem Jahr 2007. Im Jahr 2008 ist im "offiziellen" Bereich allerdings viel passiert. Von einem automatischen Mergen über Subversion sehe ich deshalb erstmal ab ;-) Wir schauen uns die Änderungen aber mal an und prüfen, welche Dinge in die "offizielle" Version mit einfließen können. Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Na dann weiß ich ja nun, wem ich meinen VST Patch (nachdem ich ihn für die SVN/trunk Version umgeschrieben habe) zukommen lassen kann.
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo Andreas,
gerne. Wir arbeiten zwar mittlerweile schon an der "4.8.1 Beta", können aber sicherlich problemlos deine Änderungen mit einpflegen. Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo zusammen,
das Release-Datum ist "heute 09:10" ;-). Virtual Treeview 4.8.1 ist fertig und seit einer guten halben Stunde über das Repository von Mike abrufbar (Revision 175). Diese Version wurde von meinem Kollegen Timo Tegtmeier überarbeitet und enthält neben zahlreichen Bugfixes, Erweiterungen und Neuerungen auch die Patches von Andreas Hausladen und Dmitry Zegebart. Sobald Mike und Jim über die Version drübergesehen haben, gibt es (wahrscheinlich) auch ein offizielles Update. Ich hoffe, Ihr seid mit unserer Arbeit zufrieden. Schöne Grüße, Daniel Bauten |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hi Daniel,
danke für die Pflege der VST. Kurzer Bugreport für die 175: In Zeile 4897: muß
Delphi-Quellcode:
statt
procedure GetStringDrawRect(DC: HDC; const S: UnicodeString; var Bounds: TRect; DrawFormat: Cardinal);
Delphi-Quellcode:
stehen, sonst gibt es ein Problem mit D2009 wegen abweichender Deklaration.
procedure GetStringDrawRect(DC: HDC; const S: WideString; var Bounds: TRect; DrawFormat: Cardinal);
In Zeile 4645: Gibt die übliche "WideChar reduced to byte char in set expression. Consider using 'CharInSet' function..." Ich würde einen kleinen Wrapper in die Implementation mit aufnehmen:
Delphi-Quellcode:
und folgendes ersetzen:
{$IFNDEF COMPILER_12_UP}
function CharInSet(C: WideChar; const CharSet: TSysCharSet): Boolean; begin Result := Char(C) in CharSet; end; {$ENDIF}
Delphi-Quellcode:
mit
while (nCount > 0) and not (Tail^ in [WideNull, WideCR, WideLF]) and (Tail^ <> WideLineSeparator) do
Delphi-Quellcode:
Dann geht es ohne Warnung mit D2009 und davor.
while (nCount > 0) and not (CharInSet(Tail^, [WideNull, WideCR, WideLF])) and
(Tail^ <> WideLineSeparator) do Gruß Assertor |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hi Arvid,
Deine erste Anregung haben wir übernommen. Vielen Dank für den Hinweis. Zu 'CharInSet' in 'DrawTextW': In Delphi-Versionen "< 2009" ist eine Implementierung, wie Du sie vorgeschlagen hast, leider nicht möglich, da ein "Set of WideChar" definiert werden müsste (denn hier reicht 'TSysCharSet' nicht aus) - Sets dürfen aber maximal 256 Elemente haben. Die Änderungen "not (Tail^ in [WideNull, WideCR, WideLF])" kam von Andreas Hausladen und diente anscheinend lediglich der Schönheit. Wir haben deshalb an dieser Stelle wieder den vorherigen Code übernommen. Virtual Treeview 4.8.2 (Revision 176) habe ich gerade ins Repository geschoben. Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hi,
Zitat:
Zitat:
Also nochmal, vielen Dank für das Update! Gruß Assertor |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Ich sage auch vielen Dank für das Update. :thumb:
Noch eine kleine Frage von mir. Wo finde ich den die neuste Version? Bisher habe ich das Setup immer von der Seite ![]() |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hi Alex,
Zitat:
Zitat:
svn://svn.soft-gems.net/library/VirtualTreeview Oder über das Web-SVN per: ![]() Dort unten links auf "Download an archive..." klicken und Du bekommst das aktuelle Package als ZIP: ![]() Gruß Assertor |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
Glaubst du es kommt blad ein setup dafür? Ich mag das VirtualTreeView Setup gern, dieses ist so schon einfach. :stupid: |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo Alex,
die Setups macht Jim Kueneman. Ich habe ihn bereits informiert. Es wird sich (hoffentlich) in den nächsten Tagen darum kümmern. Ggfs. wartet Jim aber noch ein bisschen ab, bis sich Mike Lischke die neue Version angesehen hat. Wir müssen uns in Geduld üben ;-) Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zur Info: Benötigt werden noch die Dateien (Compilers.inc etc.) von svn://www.soft-gems.net/library/Common/ damit sich der VST installieren lässt.
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hallo zusammen,
ich habe gerade Virtual Treeview 4.8.3 ins Repository geschoben (Revision 178). Die neue Version ist nun (u.a.) auch in der Lage, den Explorerstyle von Windows Vista darzustellen. Außerdem habe ich noch mal Kontak mit Mike Lischke und Jim Kuenemann aufgenommen. Ich bin zuversichtlich, dass Virtual Treeview 4.8.3 in den nächsten Tagen unter soft-gems.net als "offizielle Version" inkl. Setup bereitgestellt wird. Daniel |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Seit Revision 175 kann man einen column header nicht mehr anklicken wenn dem ein Icon zugewiesen wurde - der Event OnHeaderClick wird nicht gefeuert. Ursache dafür scheint TVirtualTreeColumns.HandleClick() welche für Columns mit einem Icon FHeader.Treeview.DoHeaderImageClick statt FHeader.Treeview.DoHeaderClick auslöst:
Delphi-Quellcode:
procedure TVirtualTreeColumns.HandleClick(P: TPoint; Button: TMouseButton; Force, DblClick: Boolean);
... begin ... if not Items[NewClickIndex].FHasImage then // If there is no image for this column, perform normal HeaderClick. FHeader.Treeview.DoHeaderClick(NewClickIndex, Button, Shift, P.X, P.Y); else if PtInRect(Items[NewClickIndex].FImageRect, P) then if not Items[NewClickIndex].CheckBox then FHeader.Treeview.DoHeaderImageClick(NewClickIndex, Button, Shift, P.X, P.Y) else begin FHeader.Treeview.UpdateColumnCheckState(Items[NewClickIndex]); FHeader.Treeview.DoHeaderCheckBoxClick(NewClickIndex, Button, Shift, P.X, P.Y); end; FHeader.Invalidate(Items[NewClickIndex]); end ... |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hmm. Kleine Korrektur, der Event OnHeaderImageClick war mir neu. Habe also OnHeaderImageClick in meinem Tree die gleiche Prozedur wie OnHeaderClick zugewiesen. Ausgelöst wird er dennoch nicht.
Wofür sind die OnHeaderClick Events eigentlich getrennt nach "Hat Icon" / "hat kein Icon" / "hat checkbox" / "hat keine checkbox"? |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Liste der Anhänge anzeigen (Anzahl: 1)
Habs gefixt und einen Patch angehängt.
Damit wird jetzt der OnHeaderClick event ausgelöst, auch wenn die Column ein Icon hat, aber nur wenn der Klick-Punkt nicht genau auf dem Icon liegt - in letzterem Fall würde wie gehabt der OnHeaderImageClick ausgelöst. Plus: Wenn OnHeaderImageClick keine Prozedur zugewiesen ist, wird in DoHeaderImageClick als Fallback wenigstens der OnHeaderClick ausgelöst, was in jedem Fall sinnvoll ist. |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Moin,
die verschiedenen Klickprozeduren sind mehr oder weniger historisch gewachsen. Mike Lischke hat bereits angeregt, die entsprechenden Ereignisse zu vereinheitlichen und eine einheitliche Klickprozedur mit Hittest-Infos anzubieten. Ich werde das in nächster Zeit in meiner Freizeit mal in Angriff nehmen. Ausserdem möchte ich auch das unterschiedliche Verhalten des Trees bei einem Fokuswechsel je nachdem ob er via Keyboard oder Maus erfolgte beseitigen. Wenn ihr weitere Wünsche habt, könnt ihr die gern hier zusammentragen ;-) |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Die Version 4.8.3 von der
![]() Changelog ![]() |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
<meckerkasten>Leider ist das Changelog im VirtualTree SVN etwas unleserlich, da meist mehrere, teilweise über 20 logische Änderungen in einem Commit gemacht wurden. Eigentlich gehört pro Commit nur eine Änderung da rein.</meckerkasten>
Ansonsten bin ich auch gern bereit weitere Patches zu liefern, bin mir nur nie sicher wohin damit? Ich möchte ungern mit Privat-Mails nerven, praktischer und zielführender wäre ein offizieller Issue tracker in dem man Patches an Bug-Tickets anhängen kann. Vorschlag: das vorhandene ![]() ![]() ![]() |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Es geht dabei auch nicht darum, es dem Committer einfach zu gestalten, sondern darum daß eine Versionshistorie leserlich und nachvollziehbar bleibt. Wenn mehrere Änderungen ineinander vermischt in einem Diff angezeigt werden, dann kann niemand, einschließlich des Committers selbst, im nachhinein eine Versionshistorie daraus entziffern. Es ist dann eher eine Art Backup für den Entwickler - dafür braucht man aber kein SVN.
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Anderereits muss man froh sein, dass sich ein Freiwilliger findet.
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Hab ja auch nicht den Sinn Deiner "Meckerei" angezweifelt, die ist durchaus berechtigt, wenn man jede einzelne Änderung nachvollziehen möchte. Ich schätze mal, Du möchtest damit Deine eigene Version vom VST aktuell halten. Wird aber für den Pflegenden ein gewisser Mehraufwand bzw erfordert mehr Disziplin (und das für lau).
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Klar, VT als OpenSource ist supergenial! Auch Daniels Einsatz ist nicht zu unterschätzen, vielen Dank an dieser Stelle dafür!
Gerade deswegen hatte ich gedacht ich mach mal ein paar konstruktive Vorschläge wie man die Weiterentwicklung vom logistischen Standpunkt aus etwas (zukunft-)sicherer gestalten könnte. Mein eigenes Repo ist mir dabei relativ egal. Ich halte die VT Komponente und deren Weiterentwicklung für die Delphi-Szene von entscheidender Bedeutung. |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Zitat:
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Ich kann Anse nur vollkommen zustimmen!
|
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Also, wenn ihr Vorschläge für die weitere Entwicklung habt, dann her damit. Ich hab auch kein Problem mit Mails mit Vorschlägen.
Im übrigen sind die Änderungen seit 4.7.0 (mit Ausnahme der Patches von Dmitry Zegebart und Adreas Hausladen) von mir; Daniel hat sie nur committed, weil er Schreibzugriff hat und mein Chef ist ;-) Seit diesem WE hab ich auch selbst Schreibzugriff, kann also bei Bedarf Änderungen schneller umsetzen, als bislang. Ich werde in nächster Zeit das Vista-Theme nocheinmal überarbeiten und die Click-Events vereinheitlichen. Wie gesagt, wenn ihr Wünsche habt, her damit ;-) |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
@Tegi: Super Sache :thumb:
Zitat:
Vielleicht könnte man auch die Demo's und die Hilfe wieder in das Setup einbauen (oder die Beschreibung des Download's auf Mike's Seite korrigieren :duck: ) |
Re: VirtualTreeView - Wer hat die Weiterentwicklung übernomm
Also die Idee von OG Karotte möchte ich ausdrücklich unterstützen. ICh arbeite gerade an einem Project in dem ich viele
Kostenstellen aufsummiere und ein integrierter Footer, in dem ich die Gesamtsalden anzeigen lassen kann spart immer Arbeit. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz