Elektronika, programowanie, hobby

Lista zmian

0.58

+ Dodana mozliwość wprowadzania pociągów towarowych
* Drobne poprawki i usprawnienia

0.57

* Polskie komunikaty VCL
+ Z okna ‚Dane linii’ można już wyjść klawiszem Esc [z.i. Myszora]
* Program odczytuje pliki ustawień z poprzednich wersji (dotychczas był w stanie jedynie skasować plik z ustawieniami z poprzedniej wersji). Ustawienia, których nie obejmuje starszy plik przyjmują wartości domyślne i stary plik jest zastępowany nowym.
* Nie może się już zdarzyć, że numer pociągu będzie wyświetlany przy poziomej linii (był wtedy nieczytelny)
* Jeszcze edytor linii: poprawiony kolejny błąd pojawiający się w sytuacji gdy wpisano kilometraż stacji już istniejącej. [thx Myszor]
* Edytor pociągów – poprawka w obsłudze klawiatury

0.56

* Rozszerzone działanie klawisza Esc w oknie pociągu. Jeśli nie jesteśmy trybie edycji danych rozkładu to służy on zamknięciu okna. [z inicjatywy Myszora]
* Kontrolki bezużyteczne w systemach starszych niż Win2000 nie są już aktywne gdy program jest odpalony na starych Windwosach [z.i. Myszora]
+ Nowy (opcjonalny) sposób obsługi kliknięć na wykresie. Kliknięcie po raz pierwszy na pociągu powoduje jego zaznaczenie i wyświetlenie podstawowych informacji na pasku zadań. Drugie kliknięcie otwiera okno danych pociągu. W opcjach można wybrać ‚stare’ zachowanie programu. [z.i. Myszora]
* W oknie ‚Zapisz Jako…’ nie ma już typu pliku ‚Wszystkie pliki *.*’ [thx Myszor]
* Poprawiona kolejnosc focusów w oknie ‚Dane linii’ [thx Myszor]
* Usunięty błąd, który powodował powstawanie wyjątku gdy wpisano nową stację z już istniejącym kilometrażem [thx Myszor]
+ Nawigacja w oknie głównym: Strzałkami możemy wybierać pociąg (zaznaczenie), Enter otwiera okno pociągu
* Poprawione ‚przeskakiwanie’ do kolejnej kratki w oknie pociągu. Teraz jeśli wskażemy konkretną kratkę myszą bądź kursorem to pierwszy Enter nie spowoduje przeskoku do następnej [z.i. Myszora]
* Usunięcie niepotrzebnych odświeżeń wykresu gdy linia czasu jest wyświetlana zawsze, a klikniemy prawy przycisk myszy [thx Tomek K.]
* Usunięty błąd polegający na błędach przy zapisywaniu pliku gdy w nazwie pierwszej lub ostatniej stacji na liście był znak specjalny ‚/’ [thx Myszor]

0.55

* poprawiono wyświetlanie na pasku statusu godziny ‚pod kursorem’. Teraz reaguje już ona na ustawienie ‚Stylu’ w opcjach.
* przy okazji powyższego wyszedł mały problem z konwersją z czasu ‚zegarowego’ na ‚SRJ’. Ten pierwszy jest oczywiście 6-krotnie dokładniejszy. Aby uniknąć przeskakiwania minut dla końcówek sekundowych 58 i 59 przy przełączeniu w tryb SRJ zdecydowałem się na zokrąglannie przy tej konwersji w dół.
Tak więc konwersja części minut z czasu zegarowego na SRJ wygląda tak:

--------------------------------------------------------------------------------------------------
 | Czas 'Zegarowy' | 00-05 | 06-11 | 12-17 | 18-23 | 24-29 | 30-35 | 36-41 | 42-47 | 48-53 | 54-59 |
 | Czas 'SRJ' | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
 --------------------------------------------------------------------------------------------------

Jeśli wpisujemy czas w formacie SRJ to po konwersja w drugą stronę będzie wyglądać następująco:

 --------------------------------------------------------------------------------------------------
 | Czas 'SRJ' | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
 | Czas 'Zegarowy' | 00 | 06 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 |
 --------------------------------------------------------------------------------------------------

Ale uwaga: program przechowuje i zapisuje czas w wewnętrznym (i bardzo precyzyjnym) formacie Delphi. Tak więc jeśli mamy podane dokładne sekundy to po przejściu na czas SRJ lub rezygnacji z ich wyświetlania (nawet po zapisaniu pliku) nie zostaną one utracone.
Innymi słowy powyższe konwersje są dokonywane ‚w locie’ w zależności od aktualnych ustawień wyświetlania, a w pliku (i pamięci) są przechowywane w formacie ‚niezależnym’.
* Edytor linii: przy usuwaniu/zmianie danych punktu kursor nie wędruje już na początek listy
* Ułatwione wpisywanie pociągów – obsługa z klawiatury
– dodanie nowego pociągu ustawia fokus na numer pociągu
– możliwość potwierdzania numeru, typu oraz godzin enterem
– potwierdzanie enterem lub przechodzenie pomiędzy polami tabulatorem powoduje automatyczne przejście do właściwych pól
– możliwość wyjścia z trybu edycji rozkładu jazdy pociągu poprzez Esc
* Bardziej kulturalne zachowanie programu w sytuacji gdy w systemie nie ma zainstalowanej drukarki
+ Możliwość wyświetlania półprzeźroczystych okien danych (okna ‚Linia’ i ‚Pociągi’). Funkcja ma raczej charakter ‚bajeru’, ale może być przydatna gdyż likwiduje problem zasłaniania wykresu przez okienka. BTW: Funkcja działa tylko w systemach nowszych niż Windows 2000.
+ Nowa zakładka w opcjach – ‚Okna’ – umożliwia sterowanie funkcją przeźroczystych okien oraz dodatkowo pozwala zapisać w pliku konfiguracyjnym pozycję okien danych.

0.54 (2.09.2003)

+ zmiana niby niewielka, ale chyba ważna: czas może być już podawany z dokładnością co do sekundy
– możliwość wyboru sposobu podawania czasu: tak jak na zegarze lub tak jak w SRJ (z dokładnością do 1/10 minuty)
– zmiana formatu plików – czas jest zapisywany w formacie Delphi co raczej wyklucza możliwość ręcznej edycji plików (i tak niedługo bedą binarne, więc mała strata), ale za to umożliwia bezproblemowe przejście pomiędzy różnymi stylami wyświetlania czasu
! Uwaga: Program czyta pliki z poprzednich wersji (automatyczne rozpoznawanie), ale zapisuje już tylko w nowym formacie
+ możliwość wyboru wyświetlania linii aktualnego czasu (ciągle lub gdy wciśnięty prawy klawisz myszy) oraz możliwość wyboru koloru linii
+ okno opcji:
– możliwość ustawienia sposobu wyświetlania linii aktualnego czasu i jej koloru
– możliwość wyboru stylu wyświetlenia czasu
! Uwaga: Po wybraniu funkcji ‚Zapisz ustawienia’ program zapisze bieżące opcje w katalogu roboczym w pliku ‚timegraph.ini’, przy starcie aplikacji plik ten jest odczytywany automatycznie
* Bym zapomniał! Timegraph powstaje już w Delphi 7 (poprzednie wersje w Delphi 6)

0.53

* kilometraż stacji możemy już podawać normalnie (przecinek w oknie dialogowym jest widoczny normalnie)
* poprawki w module drukowania
+ podczas przeglądania pociągów aktualnie wyświetlany kurs jest podświetlony w głównym oknie
* lepiej dzałające pole do wprowadzania numeru pociągu (nie akceptuje już pociągów o numerze 0)
* poprawne wyświetlanie i drukowanie „przecinkowych” kilometraży
+ kliknięcie w głównym oknie pociągu wyświetla okienko z jego rozkładem

0.52 (25.11.2002)

+ dodana funkcja: ‚Usuń wszystkie pociągi’
* zwiększono dokładność kilometrażu: można już podawać lokalizację stacji z dokładnością do 2 miejsc po przecinku (10 metrów) [z inicjatywy Kiefera]
! Uwaga: W okienku ‚Dane->Linia’ w odpowiednim polu wartość podajemy _bez przecinka_ np.: 15,43 wpisujemy jako 1543; 0,45 jako 045 itd. (prawdopodobnie wkrótce sie to zmieni!)
! można już wpisywać ujemne kilometraże; w zasadzie wszystko poza wyświetlaniem tychże będzie działało Ok.

0.51 BETA (23.11.2002)

* usunięte drobne błędy dotyczące proponowanych nazw plików
* kompletnie przepisany moduł rysujacy (może wreszcie będzie bez błędów :))
* można już usuwać pierwszą i ostatnią stację na liście (kompletnie przepisana funkcja usuwająca stacje :))
* usuniete błędy dotyczące zapisywania nowych pociągów
+ okienko danych o pociągu przyjmie juz wszelkie wpisy i nie powinny sie pojawiac komunikaty typu ‚Invalid time’; można również wpisywać tylko czas przyjazdu lub odjazdu – drugie pole przyjmie automatycznie taką samą wartość
+ usuwanie postojów w stacji: należy wskazać przyjazd lub odjazd pociagu z danej stacji, a następnie kliknąć stosowną ikonkę
+ okienko pociągów wyświetla już stacje w kolejności odpowiadającej kierunkowi jazdy pociągu
+ usuwanie pociągów

0.50 BETA (21.10.2002)

* usuniety blad przy wklejaniu z Hafasa: godzina odjazdu z pierwszej stacji byla ustawiana na 00:00 (w pewnych sytuacjach)
* usuniety blad: ogranieczenie na ilosc wpisow w tabeli kursow – poprawiono
+ Jeszcze o edytorze linii: klikniecie ‚Zapisz’ ustawia fokus na wpisywanie nazwy nastepnej stacji [z inicjatywy Myszora]
+ Edytor linii: Dodane opisy pod Edit/Combo boxami [z.i. Myszora]
* Liczbę torów z powrotem można wpisywać ręcznie, ale nie zdecydowałem się na razie na możliwośc podania liczby >2, a to ze względu na brak takowych informacji nawet w SRJ
* Edytor pociągów: troche kosmetyki, czyli dopracowywanie okienka (np. przycisk zamknij [z.i. Myszora])
+ Normalnie działająca funkcja ‚Zapisz’ (a nie tylko ‚Zapisz jako…’)
! Błąd, ktorego nie chce mi się już dziś usuwać: Usuwanie pierwszej i ostatniej stacji na liście może doprowadzić do błędów!
+ Kolejna rzecz z inicjatywy Myszora: plik wykonywalny jest spakowany UPXem

0.49 BETA (06.10.2002)

* poprawna kolorystyka zaraz po odświeżeniu ekranu [thx Myszor]
* dużo zmian w edytorze linii (choć nie widać ich na pierwszy rzut oka!), mają one na celu głównie prostą i szybką obsługę z klawiatury
– po pojawieniu sie okna z danymi linii fokus od razu jest ustawiony na listę, więc można sobie wygodnie strzałkami lub kółkiem od myszki podswietlenie przesuwać
– Enter przechodzi do edycji istniejącej/wprowadzania nowej stacji
– Shift+Enter: wprowadzanie nowej stacji
– Esc: wyjście z trybu edycji/wprowadzania danych (czyli po ludzku: fokus na liste ;))
– Enter gdy wprowadzamy nazwę/kilometraż/typ punktu: przejście do wprowadzania następnej (w prawo) wartości (czyli to samo co Tab, który zresztą tez działa)
– Enter gdy wprowadzamy liczbę torów: zapisanie stacji, przestawienie fokusu na nazę stacji oraz (jeśli wpisywano nową stację) przejście do następnej ‚pustej’ pozycji na liście
– Shift+Enter gdy wprowadzamy kilometraż/typ punktu: j.w. (z pominięciem wprowadzania typu punktu i liczby torów – automatyczne przyjęcie wartości z poprzedniej stacji)
– nazwę stacji można pisać małą literą – zostanie to automatycznie poprawione (UWAGA! dotyczy tylko pierwszego członu w przypadku wielowyrazowej nazwy stacji, a to ze względu na fakt, iż istnieją nazwy, których drugi człon zaczyna się od małej litery, np. Luboń k/Poznania – niezwykle ważny węzeł dla MK jadących rano do Wolsztyna z Dolnego Śląska :))
– nie trzeba już ręcznie kasować przypomnienia ‚(wpisz nazwę punktu)’ jeśli chcemy ją rzeczywiście wpisać
– nie można już wpisywać punktu bez nazwy, ani z nazwą ‚(wpisz nazwę punktu)’
– kliknięcie przycisku ‚Zapisz’ podobnie jak w przypadku obsługi klawiaturą przenosi do następnej pozycji na liście jesli wpisywano nową stację
[to wszystko zostało zrobione po propozycji Piotrka B. (dla niego też thx), który prosił o zrealizowanie ostatniego punktu, ale ‚troche’ temat rozwinąłem :)]
+ edycja pociagow i wklejanie z Hafasa