Hallo zusammen
Unterdessen habe ich schon ein paar Progrämmchen geschrieben und bin bei einigen immer wieder auf das selbe Problem gestossen.
Ich möchte den Beützer fragen, ob er ein Dokument, dass er schliesst, speichern möchte.
Natürlich soll die Frage nur erscheinen, wenn es Änderungen am Dokument gegeben hat.
Wie geht Ihr vor, um Änderungen am Dokument zu erkennen?
Ich habe da zwei verschiedene Ideen:
1.) Bei jeder Operation am Dokument wird eine Variable (bool) so gesetzt, dass sie eine Änderung am anzeigt.
2.) vom Dokument wird beim Öffnen eine Kopie im Speicher abgelegt. Beim Schliessen des aktuellen Dokuments wird mit der ursprünglichen Version verglichen.
Natürlich haben beide Vorschläge Vor- und Nachteile. Bei 1. muss man daran denken, dass man in jeder Funktion die das Dokument ändert, die Variable, die Änderungen anzeigt, setzt. Bei der 2. Variante braucht man mehr Speicher. Ausserdem muss man beim Speichern des Dokuments die Version im Speicher anpassen.
Wie macht ihr das? Habt ihr noch alternative Ideen? Gibts da irgendwelche verbreiteten Design Patterns?
Asserdem interessiert es mich, wie verschiedene Frameworks/Bibliotheken dieses Problem Angehen. Besonders C# mit Widows Forms und C++ mit Qt.
danke für eure Hilfe!
Gruss LukeS
Unterdessen habe ich schon ein paar Progrämmchen geschrieben und bin bei einigen immer wieder auf das selbe Problem gestossen.
Ich möchte den Beützer fragen, ob er ein Dokument, dass er schliesst, speichern möchte.
Natürlich soll die Frage nur erscheinen, wenn es Änderungen am Dokument gegeben hat.
Wie geht Ihr vor, um Änderungen am Dokument zu erkennen?
Ich habe da zwei verschiedene Ideen:
1.) Bei jeder Operation am Dokument wird eine Variable (bool) so gesetzt, dass sie eine Änderung am anzeigt.
2.) vom Dokument wird beim Öffnen eine Kopie im Speicher abgelegt. Beim Schliessen des aktuellen Dokuments wird mit der ursprünglichen Version verglichen.
Natürlich haben beide Vorschläge Vor- und Nachteile. Bei 1. muss man daran denken, dass man in jeder Funktion die das Dokument ändert, die Variable, die Änderungen anzeigt, setzt. Bei der 2. Variante braucht man mehr Speicher. Ausserdem muss man beim Speichern des Dokuments die Version im Speicher anpassen.
Wie macht ihr das? Habt ihr noch alternative Ideen? Gibts da irgendwelche verbreiteten Design Patterns?
Asserdem interessiert es mich, wie verschiedene Frameworks/Bibliotheken dieses Problem Angehen. Besonders C# mit Widows Forms und C++ mit Qt.
danke für eure Hilfe!
Gruss LukeS