Posts Tagged ‘Download’

Sortierung der Bildlisten

Montag, März 3rd, 2014

Für die Sortierung von Bildlisten nach der Übereinstimmung der ausgewählten Filterkriterien musste ich den bisherigen Ablauf des Sortiervorgangs komplett verwerfen und neu implementieren. Die bisher eingesetzte einfache Lösung musste durch eine viel kompliziertere ersetzt werden. Diese hat nun allerdings einige Vorteile, die ich nicht mehr missen möchte.

Der größte Vorteil dabei ist, das die Sortierung robust gegenüber Änderungen ist. Wird zum Beispiel der Bildtitel verändert, so verändert sich automatisch die Position des Bildes in der Bildliste. Gerade für die Filterkriterien-Übereinstimmung ist dies total praktisch, da sich die Übereinstimmungen wahrscheinlich mit jeder Änderung an den Filterkriterien ändern werden. Ein weiterer Vorteil der neuen Sortierung ist, das der Zugriff auf die einzelnen Elemente beschleunigt werden konnte. Bisher musste nach der Ausführung einer Worker-Aufgabe die komplette Bildliste durchlaufen werden, um das entsprechende Foto wiederzufinden. Die Position des Bildes in der Bildliste lies sich leider nicht nutzen, da sich diese während der Ausführung der Aufgabe hätte ändern können. Da die interne Sortierung der Bildliste nun fest ist, kann jetzt durch eine binäre Suche jedes beliebige Element der Liste schnell gefunden werden.

Sortierte gefilterte Bildliste

Sortierte gefilterte Bildliste

Dadurch, das die Bildliste eines der zentralen Elemente des BVASystems ist, musste ich in den letzten beiden Wochen so ziemlich jede Funktion des Programmes verändern. Zuerst hoffte ich, das ich diese Änderungen nach und nach durchführen  könnte. Dies stellte sich allerdings als nicht praktikabel heraus. Es musste also alles auf einmal sein. Vor 2 Wochen sah das Programm daher total erbärmlich aus. Überall Zugriffsverletzungen, Fehler und sonstige komische Verhaltensweisen. Daher bin ich nun um so glücklicher, das die neue Sortierung einsatzbereit ist und das Programm wieder so funktioniert, wie es funktionieren soll.

Ausblick

Trotzdem habe ich mir für die nächsten 2 Wochen vorgenommen, nochmals alles gut zu testen und auftretende Fehler zu korrigieren. Außerdem werde ich ein weiteres ewiges offenes Problem, die Auswahl mehrerer Bilder, lösen. Ähnlich wie im Windows Explorer möchte ich,  wenn bei der Auswahl die Shift-Taste gedrückt wird, das alle Bilder, die sich zwischen den beiden angeklickten Fotos befinden, markiert werden.

Datenbankstrukturupdate Schlagworte

Dienstag, Mai 14th, 2013

Nach einer etwas längern Pause steht mit dem heutigen Versionsupdate (Version 2.1.4.62-dev) auch ein Datenbankstrukturupdate an. Die Aktualisierung der Datenbankstruktur erfolgt, wie bereits beim letzten Update, mit dem Administrationstool.  Details zur Aktualisierung der Datenbankstruktur könnt ihr in der Anleitung nachschlagen. 

Inhaltlich geht es bei dem Datenbankstrukturupdate ausschließlich um die Schlagworte. Eigentlich hatte ich ja bereits Tabellen für die Schlagworte angelegt. Aber als ich mir überlegt habe, wie die Schlagwortfunktionen im BVASystem aussehen sollen, wurde schnell klar, das die bestehenden Tabellen bei weitem nicht ausreichen. Folgende Funktionen/Eigenschaften sind künftig bei den Schlagworten geplant:

  • Schlagwort-Wolke

Wenn man eine beliebige Bildliste, wie zum Beispiel ein Fotoalbum, im BVASystem betrachtet, so sollen alle dort genutzten Schlagworte in einer Schlagwort-Wolke angezeigt werden. Häufig genutzte Schlagworte sollen hierbei größer dargestellt werden, als selten genutzte Schlagworte. Damit verbunden soll ein gewisser Komfort beim Verschlagworten von Fotos entstehen, denn in der Bildliste bereits genutzte Schlagworte müssen nicht erneut per Tastatur eingegeben werden. Ein einfacher Klick reicht aus, um sie bei weiteren Fotos zu aktivieren.

  • Hierarchische Kategorien

Im alten BVASystem war es so, das Schlagworte hierarchisch angelegt werden konnten. Wurde dort zum Beispiel das Schlagwort „Ente“ als Unterschlagwort von dem Schlagwort „Vogel“ angelegt, so konnte bei der Auswahl des Schlagwortes „Ente“ das Schlagwort „Vogel“ automatisch mit ausgewählt werden. Dieses System möchte ich jetzt nicht wieder umsetzen, da es mir persönlich schwer gefallen ist, die Schlagworte in einer Baumstruktur anzuordnen. Für die künftige Implementation ist geplant, das alle Schlagwörter gleichrangig ohne großes Ordnungssystem angelegt werden können. Dies entspricht auch mehr der gängigen Vorgehensweise, bei der Schlagworte als lose Wortaufzählungen festgelegt werden.

Allerdings möchte ich die Möglichkeit bieten, das eine Gruppe von Schlagworten einer Kategorie zugeordnet werden kann. Beim Verschlagworten von Fotos, die bei einem Strandurlaub aufgenommen wurden, werden sicherlich ganz andere Schlagworte benötigt als bei Fotos, die in den Bergen aufgenommen wurden. Sofern man die Schlagwortkategorien konsequent nutzt, ist es möglich eine Schlagwortliste zu erstellen, die nur die  Schlagworte enthält, die benötigt werden um Fotos vom Strandurlaub zu verschlagworten. Mein Ziel ist, das man sich durch die Kategorien innerhalb der Schlagworte schneller zurechtfinden kann und dadurch die Verschlagwortung schneller fertigstellen kann.

  • Vorschläge für weitere Schlagworte

Bei der Eingabe von neuen Schlagworten, sollen dem Anwender bereits genutzte Schlagworte, die mit der identischen Zeichenfolge beginnen, angezeigt werden. Dadurch möchte ich sicherstellen, das nicht verschiedene Versionen eines Schlagwortes, wie zum Beispiel Schiff/Schiffe, abgespeichert werden. 

  • Automatische Zuordnungen für Schlagworte

Ähnlich wie ich es bereits bei den Fotoalben umgesetzt habe, soll es auch für die Schlagworte eine Möglichkeit zur automatischen Zuordnung geben. Hierbei denke ich vor allem an Schlagworte, die sich geografisch lokalisieren lassen. Denkbar wäre es aber zum Beispiel auch, das man Personen per Gesichtserkennung auf Fotos identifiziert. Ich werde hier versuchen, möglichst viele Ansatzpunkte umzusetzen, damit ein möglichst flexibles System entsteht.

  • Austauschbarkeit von Schlagworten

Prinzipiell möchte ich die Möglichkeit schaffen, das die Inhalte der Schlagworttabellen ausgetauscht werden können. Gerade wenn für Schlagworte Möglichkeiten zur automatische Zuordnungen definiert wurden, erscheint es mir sinnvoll, wenn sie zwischen verschiedenen Anwendern ausgetauscht werden können. Als Austauschformat soll eine XML-Struktur genutzt werden. Eventuell wird es sogar eine öffentliche Plattform geben, die zum Austausch der Schlagwort-Definitionen dienen wird.

Programmänderungen der Version 2.1.3.62-dev

Auch wenn ich in den letzten Wochen die meiste Zeit mit dem Datenbankstrukturupdate verbracht habe, habe ich es trotzdem geschafft, eine Funktion zu implementieren, die mir schon lange auf dem Herzen liegt. Es ist  nun möglich, die Größe von einzelnen Bildinformationspanels zu verändern. Möglich ist dies durch eine Drag&Drop-Aktion, die in den Zwischenräumen der einzelnen Panels gestartet werden kann. Während man die Maustaste gedrückt hält, wird die neue Position des Zwischenraums durch eine graue Linie gekennzeichnet. Die Größenänderung wird dann beim loslassen der Maustaste durchgeführt. Die Veränderung der Größe wird so durchgeführt, das keinerlei Lücken in der Darstellung entstehen. Es ist also durchaus möglich, das mit einer Drag&Drop-Aktion mehrere Panel in ihrer Größe verändert werden.

Angepasste Bildinformationsansicht

Angepasste Bildinformationsansicht

Ausblick

Ab jetzt sollen die Programmupdates wieder im gewohnten Rhythmus stattfinden. Für die nächsten drei Wochen habe ich mir vorgenommen, die ersten Schritte zur Implementation der Schlagwortfunktionalitäten durchzuführen. Außerdem ist geplant, das die Bildkomponente, die überall zur Anzeige der Fotos genutzt wird, um Overlay-Fenster erweitert wird. In einem dieser Fenster soll später zum Beispiel ein Übersichtbild angezeigt werden, damit man auch bei herangezoomten Bildern weiß, in welchem Bildbereich man sich befindet. Insgesamt gesehen gibt es also sehr viel zu tun, so dass ich mich am besten gleich an die Arbeit mache.

Keep it simple, stupid

Donnerstag, Februar 14th, 2013

„Keep it simple, stupid“ ist ein Satz, an den ich in den letzten Tagen häufiger denken musste. Er beschreibt ein Designkonzept, bei dem nach der einfachsten und am leichtesten zu verstehenden Lösung gestrebt wird. Auf den Weg dorthin verzettelt man sich aber meistens anständig, indem man Workaround für Workaround programmiert um das Problem vollständig zu lösen. Spätestens wenn man seinen eigenen Quelltext nach recht kurzer Zeit nicht mehr versteht, sollte man über einen alternativen Lösungsweg nachdenken.

Vor einigen Wochen ärgerte ich mich damit herum, das ich es nicht geschafft habe, die Nachbarschaftsbeziehungen der einzelnen Bildinformationspanels korrekt zu halten, wenn der Anwender einzelne Panel ausblendet. Immer wieder gab es einen Sonderfall, bei dem die Nachbarschaftsbeziehungen zerstört wurden. Normalerweise ist es nicht meine Art, aber nach einigen Tagen gab ich entnervt auf und beschloss einen Neuanfang. Ziel ist/war es einen Weg zu finden, der einfach ist, immer funktioniert und wenn möglich frei von Sonderfällen ist. „Keep it simple, stupid“ eben.

Bisher hatte ich versucht, die Nachbarschaftsbeziehungen mit jeder Aktualisierung zu prüfen und gegebenenfalls zu korrigieren. Wenn zwischen dem Panel „A“ und „B“, ein Panel „C“ eingeblendet wurde, so musste „B“ aus den Nachbarschaftsbeziehungen von „A“ entfernt und „C“ hinzugefügt werden. Bei „B“ musste der Nachbar „A“ entfernt und der Nachbar „C“ hinzugefügt werden. Bei „C“ ist es am einfachsten, denn da musste nur „A“und „B“ als Nachbar hinzugefügt werden. Hört sich einfach an, aber leider ist dies auch der einfachste Fall. Zum Beispiel habe ich die Nachbarn, die ober- und unterhalb von „A“ und „B“ liegen könnten in dem Beispiel gar nicht berücksichtigt. 

Debugdialog der Bildinformationspanel

Debugdialog der Bildinformationspanel

In der neuen Version des BVASystems bin ich meinem Ziel, eine einfache Lösung zu implementieren, nun einen großen Schritt nähergekommen. Den neuen Ansatz habe ich zum Testen in der Debug-Ansicht der Bildinformationspanels integriert. Ihr könnt diese Debug-Ansicht öffnen, in dem ihr auf das BVASystem-Icon in der Überschrift eines Bildinformationpanels klickt. Dort können  alle Nachbarschaftsbeziehungen neu bestimmt werden. Insgesamt gesehen ist der Aufwand natürlich größer, aber da im BVASystem aktuell nur 8 Panel benutzt werden können, hält sich der zeitliche Verlust in Grenzen. Auf meinem Entwicklungsrechner dauerte eine komplette Neubestimmung nur 0,03 ms. In den nächsten Tagen habe ich nun vor, die bestehende Lösung zu ersetzen, damit ich überprüfen kann, ob die neue Lösung wirklich immer funktioniert.

Fertigstellung der manuellen Bildbewertung

Montag, September 17th, 2012

Bis auf einige Kleinigkeiten ist heute nun auch die manuelle Bildbewertung fertig implementiert. Leider hat die Umsetzung etwas länger gedauert, als ich eigentlich geplant hatte. Zum einen hatte ich den Aufwand für die Nutzerinteraktion unterschätzt und zum zweiten setzte mich eine Krankheit für knapp eine Woche außer Gefecht. Nun ist aber endlich die 50. Version der Bildverwaltung fertig und steht zum Download bereit.

Wie funktioniert die manuelle Bildbewertung?

Die manuelle Bildbewertung setzt sich aus einer Reihe von  Unterbewertungen zusammen, die wiederum Unterbewertungen enthalten können. Als Anwender hat man nun die Wahl, ob man einfach und schnell nur die gängigen 1 bis 5 Sterne vergeben möchte, oder ob jede einzelne Unterbewertung separat gesetzt werden soll. Wird eine Bewertung, die weitere Unterbewertungen enthält, festgelegt, so werden gleichzeitig die Unterbewertungen auf den gleichen Wert gesetzt. Andersherum werden übergeordnete Bewertungen durch eine Mittelwertbildung berechnet.

Manuelle Bildbewertung im ungespeicherten Zustand

Manuelle Bildbewertung im ungespeicherten Zustand

Bereits wenn man die Maus über die Sterne bewegt, wird visuell dargestellt, wie sich das Setzten der Bewertung auswirken wird. Das eigentliche Setzen der Bewertung geschieht, indem auf den gewünschten Stern geklickt wird. Alternativ steht ein Popupmenü zur Verfügung, in dem auch bereits gesetzte Bewertungen wieder entfernt werden können. Sobald mindestens eine Bewertung geändert wurde, werden auf der linken Seite 2 Knöpfe sichtbar. Einer dient zur Speicherung der Änderungen und mit dem zweiten können die Änderungen verworfen werden. Die Speicherung der Bildbewertungen geschieht, wie alle anderen Datenbankänderungen auch, mit Hilfe des Workers.

Ausblick

Die Bildbewertung wird mich auch in der nächsten Version des BVASystems noch einmal beschäftigen, denn ich möchte die fehlenden Kleinigkeiten nicht aus den Augen verlieren. Zum einen möchte ich den Anwender durch eine Frage darauf aufmerksam machen, das wenn er innerhalb der Bildliste navigieren möchte, nicht gespeicherte Bewertungen verloren gehen. Die gleiche Information möchte ich anzeigen, wenn die Bildinformationsansicht verlassen wird. Außerdem erachte ich es für sinnvoll, das die globale manuelle Bewertung  per Tastaturkürzel zu erreichen ist. Wahrscheinlich werde ich Strg+1 für 1 Stern, Strg+2 für 2 Sterne, usw. dafür auswählen. Die Tastaturkürzel sollen dabei global, das heißt in jedem Anzeigemodi funktionieren.

Weiterhin in Planung ist eine Erweiterung des EXIF-Moduls. Vorhandene GPS-Informationen sollen ausgelesen und in dem entsprechenden Bildinformationspanel angezeigt werden.

Störrische Datenbanksysteme

Samstag, März 17th, 2012

Eigentlich wollte ich heute hier berichten, das das BVASystem 2.1.0.39-dev nun 3 verschiedene Datenbankmanagementsysteme unterstützt. Leider gab es in den letzten Tagen eine Reihe von Problemen, so das es aktuell nur 2 Datenbanksysteme (MySQL und Firebird) sind. In der nächsten Version werde ich Oracle als drittes Datenbanksystem nachreichen.

Probleme mit Firebird

Schon zu Beginn der Arbeiten zur neuen Version des BVASystems gab es die ersten Probleme. Firebird nutzt ein komplett anderes System um eine Datenbankverbindung aufzubauen als MySQL oder Oracle. Firebird benötigt den Pfad und Dateinamen der Datenbankdatei, um eine Verbindung herzustellen. Da ich Pfad und Dateiname im Administrationstool nicht erfasst habe, war es mir nicht möglich, für alle 3 Datenbanksysteme den gleichen Einstellungsdialog zu verwenden. Also musste ich in den sauren Apfel beißen und einen weiteren Einstellungsdialog entwickeln.

Das zweite Problem war, das auch später im BVASystem immer wieder der Pfad und der Dateiname der Datenbank benötigt wird. Da ich dies absolut nicht wollte, habe ich recht lange nach einer Lösung gesucht und auch eine gefunden. Die Lösung heißt: „aliases.conf“ Im Programmverzeichnis von Firebird liegt eine aliases.conf, in der ein Alias für eine Kombination aus Pfad und Dateiname angelegt werden kann. Das BVASystem Administrationstool legt den benötigten Alias, bei der Erstellung der Datenbankstruktur, mit an. Die einzige Aufgabe, die manuell ausgeführt werden muss, ist ein Neustart des Datenbankservers. Ohne Neustart steht der neue Alias noch nicht zur Verfügung und die Datenbankverbindung schlägt fehl.

Probleme mit Oracle

Auch Oracle erwies sich als nicht weniger störrisch. Die notwendigen Datenbankscripte waren relativ schnell entwickelt, aber bei der von mit genutzten Version 9 lassen sich absolut keine Trigger erzeugen. Per SQLPlus funktionieren die einzelnen Befehle der Scripte wunderbar, aber beim Administrationstool werden vom ODBC-Treiber die Zeilenwechsel durch einen doppelten Wagenrücklauf (#13) ersetzt. Oracle schimpft dann bei der Übersetzung der Trigger, das ein ungültiges Zeichen gefunden wurde. Tests mit der Version 10 funktionierten dagegen einwandfrei. Daher habe ich mich entschlossen, die Unterstützung von Oracle 9 wieder zu entfernen bzw. sie durch Version 11 zu ersetzten. Da ich dafür allerdings mindestens 1 Woche benötige, habe ich entschieden, Oracle auf die nächste Programmversion zu verschieben. Ich hoffe, das dies dann das letzte Problem war, auf dem Weg zur Unterstützung von 3 Datenbanksystemen.

Ausblick

Neben der Oracle Unterstützung habe ich vor, noch einen Programmfehler aus dem BVASystem zu entfernen. Zum Beispiel stürzt das Programm leider ab, wenn ein Bild mit fehlerhaften Exif-Header geladen wird. Außerdem habe ich vor, die Installationsanleitung anzupassen, da nun die Erstellung der Datenbank mit dem Administrationstool einfacher geworden ist.

 

Eine Hürde weniger

Sonntag, Februar 26th, 2012

Ich freue mich gerade, da wieder ein sehr wichtiger Punkt auf meiner Todo-Liste abgeschlossen werden konnte. Das Administrationstool, welches sich seit einigen Versionen mit im Installationspaket befindet, ist nun in der Lage, die für das BVASystem notwendige Datenbankstruktur zu erzeugen. Die manuelle Einrichtung der Datenbank, mit Hilfe der MySQL-Workbench entfällt nun. Dadurch sollte es für technisch nicht so erfahrene Anwender einfacher sein, das BVASystem einzurichten.

Ausblick

Mein aktueller Zeitplan sieht so aus, das es noch eine weitere Zwischenversion vor der Veröffentlichung der nächsten stabilen Softwareversion geben wird. In dieser Zwischenversion werde ich die Datenbankscripte, die dem Administrationstool hinterlegt sind so erweitern, das 2 weitere Datenbankmanagementsysteme vom BVASystem verwendet werden können. Wahrscheinlich werden es Oracle und Firebird werden. Aber ganz sicher bin ich mir bei der Auswahl noch nicht. Nach der Zwischenversion heißt es dann noch einmal intensives Testen und wahrscheinlich auch intensives Fehlerbeseitigen.

Wie funktioniert das Anlegen der Datenbankstruktur mit dem Administrationstool?

Das Anlegen der Datenbankstruktur ist recht einfach. Im Administrationstool wählt man dafür im Hauptmenü den Eintrag „Datenbankstruktur erstellen“ aus. Es öffnet sich dann folgender Dialog:

Administrationstool: Datenbankstruktur erzeugen

Administrationstool: Datenbankstruktur erzeugen

In diesem Dialog muss man als erstes die Verbindungsdaten zum Datenbankserver eintragen und anschließend auf „Verbinden“ klicken. Wenn die Verbidnung hergestellt wurde, aktiviert sich die untere Hälfte des Dialoges. Hier wählt man nun aus, ob das BVASystem in ein bestehendes Datenbankschema integriert oder ob ein neues Datenbankschema angelegt werden soll. In beiden Fällen muss der Name für das Datenbankschema festgelegt werden. Als letztes hat man noch die Wahl, wer der Besitzer der Datenbanktabellen sein soll und ob ein Standardbenutzer angelegt werden soll. Wenn alle Einstellungen ausgewählt wurden, schließt man die Auswahl mit Druck auf den Knopf „Struktur erstellen“ ab. Anschließend wird die Datenbankstruktur automatisch erstellt. In der Log-Ansicht wird der Anwender über Erfolg bzw. Misserfolg der einzelnen Arbeitsschritte informiert.

Erweiterung des Exif-Moduls

Donnerstag, Dezember 22nd, 2011

Ich hatte ja kaum damit gerechnet, aber ich habe es doch tatsächlich geschaft, in diesem Jahr noch eine Entwicklerversion fertigzustellen. Die Fertigstellung der stabilen Softwareversion war genau der Motivationsschub, den ich gebraucht habe. Es macht doch deutlich mehr Spaß, etwas neues zu entwickeln als immer nur Fehler zu suchen und zu korrigieren. Dies nun wird aber die definitiv letzte Version des Jahres sein, denn viel Zeit ist ja nicht mehr und die Feiertage möchte ich ehrlich gesagt nicht am Rechner verbringen.

Was wurde neu implementiert?

Wie bereits angekündigt, war das Ziel für diese Version, das die ungenutzen EXIF-Datenbankfelder genutzt werden. Dazu wurde als erstes natürlich das EXIF-Modul angepasst, welches die entsprechenden Daten aus dem Header ausliest. Außerdem wurden die internen Datenkomponenten so angepasst, das neuen Informationen nach dem Auslesen im Speicher gehalten werden können. Dort stehen die Informationen für zukünfige Erweiterungen am Programm jederzeit zur Verfügung. Die dritte Änderung erfolgte beim Bildimport, denn hier werden die neuen Datenbankfelder gefüllt.

Um nicht nur unsichtbare Änderungen zu programmieren, habe ich noch die Metadatenzuordnungen erweitert. Es kann nun den zusätzlichen Metadatentyp „Verwendete Kamera“ für die automatischen Zuordnungen genutzt werden.

Metadaten mit neuem Metadatentyp "Verwendete Kamera"

Metadaten mit neuem Metadatentyp "Verwendete Kamera"

Was kommt als nächstes?

Eigentlich habe ich vor, als nächstes größere Änderungen an der Oberfläche vorzunehmen. Die neu hinzugekommenen EXIF-Datenfelder müssen in der Oberfläche angezeigt werden. Dazu möchte ich der Miniaturbilder und Filmstreifenansicht, bei dem „Bild markieren“ Knopf einen weiteren Knopf hinzufügen. Durch diesen soll sich ein PopUp-Dialog öffnen, auf dem die EXIF-Daten angezeigt werden. Außerdem soll neben den 3 bekannten Ansichten eine vierte Ansicht hinzukommen,  auf der alle gespeicherten Daten zu einem Bild angezeigt werden. Hier soll im Gegensatz zu dem PopUp-Dialog eine Navigation innerhalb der aktiven Bildliste möglich sein.

Diese Änderungen werden aber wohl etwas nach hinten verschoben, da ich aller Wahrscheinlichkeit nach meine Entwicklungsumgebung auf den neusten technischen Stand bringen will. Mein Delphi 2005 ist mittlerweile bald 8 Jahre alt und es ist wohl von Vorteil, wenn man es durch etwas zukunftssicheres ersetzt. Ich habe in der letzten Woche bereits kurz erfolgreich getestet, ob eine Umstellung auf das neue Delphi XE2 prinzipell machbar ist. In den nächsten Wochen werde ich berichten, zu welchen Veränderungen der Wechsel beim BVASystem führt. Ich hoffe, das ich bei der Umstellung nicht auf allzuviele Probleme treffe und ich mich dann schnell wieder auf die eigentliche Weiterentwicklung konzentrieren kann.

Lizenzierung Teil 3

Montag, November 28th, 2011

Mit der ab heute verfügbaren Version 2.0.0.31, ist das Lizenzsystem endlich abgeschlossen. Dafür, das ich darin möglichst wenig Arbeit stecken wollte, hat es mich doch eine ganze Weile beschäftigt. Dabei sind mir Inhalte eigentlich wichtiger, als so verwaltungstechnischer Kram. Aber nun ist es ja abgeschlossen und wird mich hoffentlich nicht so schnell wieder belästigen.

Der wichtigste Änderungspunkt an der neuen Version ist wohl, das ich Änderungen an der Datenbankstruktur vorgenommen habe. Ihr müsst also einmal wieder eure Datenbank aktualisieren oder neu erstellen. Die Änderungen werden zum Großteil in der aktuellen Version noch nicht genutzt. Sie sind hauptsächlich für die nächsten Punkte bestimmt, die ich im kommenden Jahr implementieren will. Ich möchte aber, das wenn ihr die stabile Software Version einsetzt, möglichst lange auch die Testversionen probieren könnt, ohne das ihr 2 verschiedene Datenbanken benötigt.  Theoretisch sollte dies jetzt auch die letzte Datenbankänderung sein, die per MySQL-Tools erledigt werden muss. Demnächst werde ich ein kleines Tool schreiben, mit dem ihr die Datenbankänderungen bequemer vornehmen könnt.

Bei der Fehlerkorrektur habe ich auch ein gutes Stück geschafft. Sogar einen hässlichen Totalabsturz, der bei einem fehlerhaften EXIF-Header auftrat konnte ich beseitigen. Entgegen meiner Ankündigung, das keinerlei neue Funktionen zu erwarten sind, habe ich 2 Kleinigkeiten umgesetzt, welche die Nutzbarkeit des Programmes doch merklich steigern.

Zum ersten kann nun, wenn der Eingabefocus auf einer der Bildkomponenten liegt, der Vollbildmodus mit der „Enter“ Taste geöffnet werden. Dadurch ist es nun möglich, das man den Vollbildmodus komplett per Tastatur bedienen kann. Die zweite Kleinigkeit betrifft die Sortierung der Bilder in den Bildlisten. Bisher war es so, das nach dem Programmstart eine Standardsortierung (Bildname aufsteigend) aktiv gewesen ist. Wollte man dauerhaft die Bilder anders sortiert haben, so musste man nach jedem Programmstart seine Wunschsortierung wieder einstellen. Nun ist es so, das beim Beenden des Programmes die aktive Sortierung gespeichert und beim nächsten Programmstart wieder aktiviert wird.

Zur Zeit sieht es danach aus, als wenn die nächste Updatemeldung hier für die erste stabile Version reserviert ist. Die Anzahl der gefundenen Fehler hält sich in Grenzen und es sind nur noch wenige Sachen an der Homepage zu erledigen. Ich hoffe, das es in 2-3 Wochen gut zu schaffen ist.

Lizenzierung Teil 2

Montag, November 7th, 2011

Nach einer kleinen Urlaubspause, in der ich mir die Nordseeluft kräftig um die Nase habe wehen lassen, geht es nun wieder zügig weiter. Das Ziel, die stabile Softwareversion, ist fest im Blick und lässt sich langsam am Horizont erahnen. Ich bin jetzt an einem Stand angekommen, an dem fast alle Funktionen, die die Version enthalten soll, implementiert sind. Von daher schätze ich, das die Version 2.0.0.32 oder 2.0.0.33 die stabile Softwareversion sein wird. Es fehlen also noch noch 2 oder 3 Versionsschritte.

Die noch fehlende Funktion hängt mit der Lizenzierung zusammen. Neu in der heute veröffentlichten Version ist, das ihr die Seriennummer im Programm eingeben könntet, wenn ihr eine habt. Der dafür vorgesehende Dialog prüft, ob es sich um eine gültige Seriennummer handelt. Wenn sie gültig ist, wird die eingegebene Nummer in den Programmeinstellungen gespeichert. Jetzt fehlt nur noch, das die Software die Seriennummer beim Start prüft und somit den Hinweisdialog nicht mehr anzeigt. Diese Funktionalität habe ich mir für die nächste Programmversion vorgenommen.

Dialog zur Eingabe der Seriennummer

Dialog zur Eingabe der Seriennummer

Außerdem ist es recht wichtig, das ich jetzt noch möglichst viele Fehler beseitige, die noch im Programm vorhanden sind. Daher habe ich einen Großteil der letzten Entwicklungstage damit verbracht, gefundene Fehler zu beseitigen. Ich hoffe, das nun beim Testen keine größeren Probleme gefunden werden, die meinen abgesteckten Zeitplan gefährden könnten.

Lizenzierung Teil 1

Mittwoch, Oktober 12th, 2011

Mit dem heutigen Update des BVASystems kommt wahrscheinlich eine eher unbeliebte Funktion zum Programm hinzu. Kurz nach dem Programmstart öffnet sich, unhabhängig aller Benutzerinteraktionen, ein kleiner Hinweis auf die unlizenzierte Verwendung des Programms. Man möge mir diesen Dialog entschuldigen, aber ich stecke sehr viel Herzblut in die Bildverwaltung, ohne auch nur einen kleinen geldlichen Vorteil zu haben. Ich erhoffe mir, dass wenigstens die Kosten für die Entwicklungsumgebung und die Kosten für diese Homepage durch die Lizenzierung getragen werden können.

Shareware Hinweis

Shareware Hinweis

In der nächsten Version werde ich dann die Möglichkeit schaffen, das Lizenznummern eingetragen und geprüft werden können, damit ihr auch eine Chance habt, den ungeliebten Hinweisdialog zu verbannen.

Aber auch funktional hat sich in den letzten 2 Wochen einiges getan. Die Vollbildansicht bietet nun deutlich mehr Funktionen. Es kann innerhalb der aktuellen Bildliste navigiert werden, es kann zwischen Graubildansicht und Normalansicht gewechselt werden, das aktuelle Bild kann gedreht werden und es kann sogar eine Slideshow gestartet werden.

Als zweite wichtige Neuerung ist es nun möglich, dass Fotos aus einem Fotoalbum entfernt werden können, ohne das sie gänzlich aus der Datenbank gelöscht werden. Es wäre schon ziemlich dumm, wenn die Bilder automatisch zu Fotoalben zugeordnet werden und der Anwender keine Chance hat zu korrigieren.