Applicatie ontwerp
Het is geschreven in Python, oorspronkelijk met wxPython voor de user interface en pickle om de gegevens weg te zetten en weer op te halen. Dat laatste om de interne structuur niet te hoeven omzetten in een database formaat of iets dergelijks.
De data structuur is een standaard Python dictionary waarbij de titels van de tabs als sleutel gebruikt worden en de teksten als waarden. Om het mogelijk te maken dat je tab titels kunt wijzigen heb ik dat later aangepast naar een tuple van tekst en (nieuwe) titel.
De GUI heeft als componenten een tabstrip en een multi-line tekst veld zoals die samen voorkomen in een notebook interface waarbij elke pagina van het notebook een simpel panel is met daarin een heel basic tekst editor. Geen GUI framework kan zonder een event loop voor de besturing en deze dient hier om onder andere speciale toetsencombinaties op te vangen. Er is geen menu en geen dialogen voor het opslaan en laden, wel een helpschermpje.
Bij het overzetten naar Python 3 kon ik wxPython niet meer gebruiken en ben ik overgeschakeld op PyQt, wat een beetje andere "look" opleverde, maar ik heb geprobeerd de "feel" hetzelfde te houden.
Daarna de wxPython versie herbouwd toen dat als wxPhoenix wel onder Python 3 beschikbaar kwam, en voor de aardigheid ook nog eens overgedaan in PyGTK.