Image viewer Cornice weiterentwickeln

Du hast eine Idee für ein Projekt?
Antworten
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Das wäre meine Idee für ein Projekt. ;) Wer hätte Interesse, mitzumachen?
Mir gefällt das Projekt recht gut, und das Programm wäre ausbaufähig (open mit externen Grafikprogramm, slideshow, ... zB)

Das Projekt wurde gestoppt. Ich habe selbst einmal den Autor kontaktiert, aber er sagte definitiv, er wird keine neuen Features mehr implementieren, höchstens bugfixes. Hat er auch auf seiner Webseite vermerkt.

http://wxglade.sourceforge.net/extra/cornice.html
BlackJack

@Francesco: Die böse Sinnfrage: Was bietet das Programm was zum Beispiel XnView, IrfanView, die ganzen KDE- und GNOME-Bildbetrachter nicht haben!?

Ansonsten wäre wohl das erste was man in Angriff nehmen könnte die Portierung auf wxPython 2.8.x.

Und man müsste Windows- und Mac-Benutzer an Bord holen, die für die entsprechenden Pakete bei neuen Versionen sorgen können. Es muss ja anscheinend etwas C-Quelltext kompiliert werden.
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

BlackJack hat geschrieben:@Francesco: Die böse Sinnfrage: Was bietet das Programm was zum Beispiel XnView, IrfanView, die ganzen KDE- und GNOME-Bildbetrachter nicht haben!?

Ansonsten wäre wohl das erste was man in Angriff nehmen könnte die Portierung auf wxPython 2.8.x.

Und man müsste Windows- und Mac-Benutzer an Bord holen, die für die entsprechenden Pakete bei neuen Versionen sorgen können. Es muss ja anscheinend etwas C-Quelltext kompiliert werden.
böse Sinnfrage: dass ich das programm dann selbst leicht erweitern kann, weil es ja in wxPython geschrieben ist. Bei den bestehenden steht man an (dann muss man auch selber hineinhacken oder Feature requests stellen, die entweder abgelehnt oder so spät implementiert werden, dass man sie dann gar nicht mehr haben möchte.

Die Frage wäre dann auch noch, soll man beim wxGlade Aufbau bleiben oder das einfach umkrempeln (ohne GUI Designer).

XnView ist toll (verwende es auch hie und da, nur ist das eben Freeware und das auch nur, solange es nicht in einem Unternehmen oder sonstwie kommerziell einsetzt). Irfanview ist ein Windows programm (läuft mit win), aber das gefällt mir auch nicht. Natürlich gibt es schon viele andere (Gqview, mirage,Image viewer, image seek (alle schon einmal probiert), aber bei jedem fehlt etwas, was ein anders hat ...).

Cornice ist direkt in Python und (meiner) GUI wxPython entwickelt, und das ist eine optimal Ausgangslage (für micht).

Ja die Portierung auf wxPy 2.8 wäre sicher einmal so ziemlich das erste, was gemacht werden sollte.

Zur letzten Frage. Wär mir nicht aufgefallen, so lauffähige Pakete (py2exe) hätte ich nicht vorgesehen. Und auch keine Übersetzungen in andere Sprachen, weil ich da einfach eine Abneiung habe, mit viel Arbeit verbunden ist, wo man die Zeit besser nützen könnte, neue Features einzubauen.

Bin mir eh nicht sicher, ob ich mir das ganze wirklich antun sollte, vielleicht auf ein paar Funktionen, die sich so nach und nach ergeben, einzubauen. Ich habe bis jetzt nur einen minipatch gemacht, in dem ich das aktuelle Bild mit einem externen Editor (das Edit Menu um einen Punkt "open" (with external programm) erweitert), bearbeiten kann. ;)
BlackJack

Hey, ich wusste doch, dass ich das Programm von irgendwoher kenne: http://portableapps.com/apps/graphics_p ... e_portable

Dann habe ich das sogar schonmal benutzt. :-)
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

BlackJack hat geschrieben:Hey, ich wusste doch, dass ich das Programm von irgendwoher kenne: http://portableapps.com/apps/graphics_p ... e_portable

Dann habe ich das sogar schonmal benutzt. :-)
Ah ja. Mir gefällt Cornice auch optisch. Einfacher und klarer Aufbau. Irfanview kann vielleicht 10 mal (ist noch untertrieben, hat ja auch zig plugins), aber die komisch aufgeteilte Oberfläche, die alles andere als kompakt aussieht, mag ich nicht.

Stellt sich auch noch die Frage, ob man nicht gleich den Namen des Viewers dann ändern sollte. Extra "fragen" müsste man den Autor ohnehin nicht (weil er es ja schon so angedeutet hat, und das ganze sowieso GNU ist) (ganz sicher bin ich mir da jetzt nicht). Jedenfalls müsste man da sowieso bei der Anpassung auf 2.8 alleine schon einiges ändern, was dann zur Folge hat, dass das Programm immer unähnlicher wird. Oder man beginnt das gleich neu. Aber dazu hätte ich eigentlich keine Lust oder nicht die Zeit dafür.
BlackJack

@Francesco: Fragen *muss* man sicher nicht, aber das ganze irgendwie abzustimmen ist sicher keine schlechte Idee. Man möchte ja vielleicht auch die Leute, die bisher daran gearbeitet haben, mit ins Boot holen. Zum Beispiel die Übersetzer.

Und vielleicht gibt's ja auch schon Infrastruktur die man weiterbenutzen kann. Mailingliste!?

Und wie sieht es mit dem Repository bei Bitbucket aus!? Wenn man das "forked", welche Änderungen würde der alte Maintainer übernehmen?
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Ja das sind lauter gute Punkte. Ich weiß noch nicht, ob ich das wirklich beginnen möchte. Da hängt nämlich doch viel dran, wenn man das "gescheit" machen möchte (mit ordentlichen Projekt), oder ob man dies und das dazuhacken möchte, so dass es momentan für einen selber passt.

Zum vorigen Post: ja, das habe ich übersehen, ein dirctrlhelper muss compiliert werden.
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Francesco hat geschrieben:Das wäre meine Idee für ein Projekt. ;) Wer hätte Interesse, mitzumachen?
Mir gefällt das Projekt recht gut, und das Programm wäre ausbaufähig (open mit externen Grafikprogramm, slideshow, ... zB)
Korrektur, nicht dass das falsch stehen bleibt. Cornice hat bereits eine Slideshow, ein bisschen versteckt in der Vollbild-Ansicht (also wenn man das icon doppelclicked)
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

Francesco hat geschrieben:Ja das sind lauter gute Punkte. Ich weiß noch nicht, ob ich das wirklich beginnen möchte. Da hängt nämlich doch viel dran, wenn man das "gescheit" machen möchte (mit ordentlichen Projekt), oder ob man dies und das dazuhacken möchte, so dass es momentan für einen selber passt.
Frag in #wxPython oder in der Mailingliste, vllt hat wer Lust mitzumachen
the more they change the more they stay the same
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Dav1d hat geschrieben: Frag in #wxPython oder in der Mailingliste, vllt hat wer Lust mitzumachen
Mich wundert ja, dass es noch nie so ein richtiges Gemeinschaftsprojekt in wxPython gab. Mich würde ja ein Experiment interessieren, wo kaum Einschränkungen da sind (ausser Code nachbearbeiten oder refactoring), d.h. Funktionalitäten nicht entfernt werden. Ob aus einem solchen "Chaos" etwas entstehen würde?

Wahrscheinlich kommt dann so etwas wie der Emacs heraus, ein Grafikviewer, mit dem man auch emails schreiben kann. :lol:
Benutzeravatar
C4S3
User
Beiträge: 292
Registriert: Donnerstag 21. September 2006, 10:07
Wohnort: Oberösterreich

@Francesco:
Ich hatte auch schon daran gedacht, mich an Cornice zu versuchen, zumal es mir als Amateurfotograf sehr gelegen käme.
Es läuft auf mehreren Plattformen und hat meines Wissens eine Datenbank, um die Bilder zu katalogisieren (wie bei AcdSee).
Das beantwortet zumindest für mich die Sinnfrage (Datenbank, Kategorien, Crossplattform).
Was allerdings fehlt, sind RAW-Support (und die damit einhergehenden Funktionen).
Wie ich deinem Profil entnehmen kann, könnten wir sogar ein "User-Treffen" im "Hoamatland" veranstalten. ;)
Mich wundert ja, dass es noch nie so ein richtiges Gemeinschaftsprojekt in wxPython gab.
Chandler?
Zur letzten Frage. Wär mir nicht aufgefallen, so lauffähige Pakete (py2exe) hätte ich nicht vorgesehen. Und auch keine Übersetzungen in andere Sprachen, weil ich da einfach eine Abneiung habe, mit viel Arbeit verbunden ist, wo man die Zeit besser nützen könnte, neue Features einzubauen.
Das würde ich aber gerne versuchen. Mit den Übersetzungen habe ich schon etwas Erfahrung und auch mit Py2Exe.
(Ausserdem schreibe ich seit einiger Zeit an einer Backup/Webgalierie-Lösung für meine Fotos. Die GUI ist natürlich in wxPython geschrieben und nutzt mitunter das ThumbNailControl).
Gruß!
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Francesco hat geschrieben: Wahrscheinlich kommt dann so etwas wie der Emacs heraus, ein Grafikviewer, mit dem man auch emails schreiben kann. :lol:
Man kann ja mit Emacs auch Bilder anschauen... :wink:
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

C4S3 hat geschrieben:@Francesco:
Ich hatte auch schon daran gedacht, mich an Cornice zu versuchen, zumal es mir als Amateurfotograf sehr gelegen käme. Es läuft auf mehreren Plattformen und hat meines Wissens eine Datenbank, um die Bilder zu katalogisieren (wie bei AcdSee). Das beantwortet zumindest für mich die Sinnfrage (Datenbank, Kategorien, Crossplattform). Was allerdings fehlt, sind RAW-Support (und die damit einhergehenden Funktionen).
Das sind ja gute Voraussetzungen, motiviert zu sein. Ich würde gerne von der wxGlade Struktur wegkommen. Ist aber nur meine persönliche Präferenz. Aber dennoch eine gewisse Trennung von Logik und UI einhalten zu können.
C4S3 hat geschrieben:Wie ich deinem Profil entnehmen kann, könnten wir sogar ein "User-Treffen" im "Hoamatland" veranstalten. ;)
Gibt es in OÖ eine "Python Gemeinde"? Ich glaube, da ist das "Einzugsgebiet" zu klein. ;)
C4S3 hat geschrieben: Das würde ich aber gerne versuchen. Mit den Übersetzungen habe ich schon etwas Erfahrung und auch mit Py2Exe. (Ausserdem schreibe ich seit einiger Zeit an einer Backup/Webgalierie-Lösung für meine Fotos. Die GUI ist natürlich in wxPython geschrieben und nutzt mitunter das ThumbNailControl).
Wäre kein Problem. Ich habe nur gemeint, dass ich selber das nicht anfangen würde (und mich darum auch nicht kümmern würde). Das mit den Sprachen zieht dann auch wieder die Unicode Sache mit sich, das ist ein zusätzlicher "Abneigungsmotivator". ;)
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Eine Plugin Struktur (vielleicht wie in DrPython, das wiederrum IIRC von Gimp die Idee der Anbindung übernommen hat), wäre ebenfalls interessant. Es solle jedoch maximale Flexibilität gewährleisten, d.h. man sollte alles so implementieren können, wie wenn man es direkt ins Core Programm programmieren würde.

Das Programm bleibt schlanker und es gibt keine Meinungsverschiedenheiten, was in das Programm hineingehört und was nicht.
lunar

Eine generische Plugin-Struktur mit „maximaler Flexibilität“ (schönes Buzzword) zu entwickeln, ist nicht einfach. Man entwirft eine Schnittstelle ohne immanenten Nutzen, da man ja von vorne herein nicht weiß, welche Plugins es irgendwann einmal geben könnte. Insofern muss man relativ gut raten können, welche API für Plugins nötig sein könnte, und welchem Zweck Plugins irgendwann einmal dienen könnten.

Man muss sich also sehr gut mit dem Programm auskennen, und insofern ist eine Plugin-Schnittstelle wohl nicht der geeignete Einstieg.
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

lunar hat geschrieben:Eine generische Plugin-Struktur mit „maximaler Flexibilität“ (schönes Buzzword) zu entwickeln, ist nicht einfach. Man muss sich also sehr gut mit dem Programm auskennen, und insofern ist eine Plugin-Schnittstelle wohl nicht der geeignete Einstieg.
Denke ich nicht unbedingt, dass das allzuschwierig ist. Salopp gesagt. Man muss einem Plugin einfach ein paar grundlegende Objekte mitgeben oder zur Verfügung stellen (zb das Top Level frame). Vielleicht ist das etwas brachial, aber man kann damit allerhand machen.

Man muss sich aber genauso gut im Programm auskennen, wenn man im Core Bereich etwas ändern möchte. So gesehen bleibt es "ghupft wie ghatscht". ;)

Ich habe auch einmal pycrust in ähnlicher Weise (ich habe mich an DrPython orientiert) gehackt, um Plugins zu erstellen. Ging eigentlich relativ einfach.
BlackJack

@Francesco: Ich denke Du schätzt das falsch ein. Bei DrPython sieht man doch ganz gut dass das entweder zu Plugins führt, die dauernd "kaputt" gehen, oder das man von nichts im Programm mehr die Struktur ändern darf. Einfach ein "god object" an dem *alles* hängt, überall zu übergeben ist keine durchdachte Plugin-Schnittstelle. Sowas kann man natürlich einfach in ein Programm reinhacken -- das ist es dann aber auch: ein Hack. Eine gute Plugin-Schnittstelle entkoppelt die Komponenten ordentlich voneinander statt alles zu einem grossen Klumpen zusammen zu schweissen.
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

BlackJack hat geschrieben:@Francesco: Ich denke Du schätzt das falsch ein. Bei DrPython sieht man doch ganz gut dass das entweder zu Plugins führt, die dauernd "kaputt" gehen, oder das man von nichts im Programm mehr die Struktur ändern darf.
Das ist beides richtig. Ich habe jedoch nicht behauptet, dass es vorbildlich sei, sondern einfach und wie gesagt "brachial".
BlackJack hat geschrieben: Einfach ein "god object" an dem *alles* hängt, überall zu übergeben ist keine durchdachte Plugin-Schnittstelle. Sowas kann man natürlich einfach in ein Programm reinhacken -- das ist es dann aber auch: ein Hack. Eine gute Plugin-Schnittstelle entkoppelt die Komponenten ordentlich voneinander statt alles zu einem grossen Klumpen zusammen zu schweissen.
Ich hoffe ich bin immer noch lernfähig. Ein Python Projekt mit einer vorbildlichen Plugin Schnittstelle wäre interessant. Ich mein, Python Programme mit plugins gibt es ja doch eine gewisse Anzahl (auch Editra glaube ich, dann Boa Constructor, ...) . Weiß jmd. wo das so richtig schön gelöst wurde? Oder ist es eher so, dass es sehr individuell ist, und keine "Schablone" drauf anwenden kann?
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Ein Plugin sollte nicht direkt auf die Anwendung zugreifen oder diese ändern. Es sollte bestimmte Funktionen, GUI Elemente etc. bereitstellen und auf Events reagieren können.
Antworten