Matrices - di Bisi Fabrizio -------- STORIA DEL PROGRAMMA -------------------- V0.0 - 0.23 (18-20/07/95) - ho costruito gradualmente l'interfaccia grafica V1.1 (21/07/95) - cominciamo a fare sul serio: cambio di nome da Matrix in Matrices; cambiata interfaccia cosi' che ora vengono chieste separatamente le matrici implicate e le loro dimensioni. Qualora le matrici sorgente esistano gia', viene usata la copia esistente V1.2-1.5 - debug V1.6 (23/07/95) - cambia messaggio in About - controllate le fasi di uscita da un'operazione: ora premendo il gadget CLOSE su una matrice, abortendo l'operazione, si abortisce anche l'immissione di quella matrice - nel prodotto righe x colonne, scrive il numero giusto di righe nel gadget disabilitato che chiede le dimensioni della seconda matrice - fissato un bug di giovinezza: se si scriveva una matrice sopra un'altra lasciava l'altra allocata - grazie all'uso occulto di una matrice quoziente (Q) ora la matrice destinazione puo' coincidere con una sorgente. - Inoltre ora nel prodotto si fa attenzione se le 2 matrici sorgenti coincidono. Come conseguenza di questo nuovo codice la I puo' essere usata 2 volte (I*I=I, comunque) - implementata REALMENTE la copia di matrici (ohoops! scordata) V1.7 - nel prodotto viene chiesta prima una matrice (con le sue dimensioni) poi l'altra (con una sola dimensione) - implementati Read/Write nel menu matrix V1.8,9 - debug - ora viene ricordata la posizione della finestra di OGNI SINGOLA MATRICE - controllo sull'ordine massimo delle matrici (16) V1.10 - fissato bug: usando Insert e poi chiudendo la finestra restava il gadget attivato senza la matrice sotto - premendo ENTER sull'ultimo gadget non ricordava la posizione della finestra, ora si - modificando le matrici e premendo il gadget CLOSE, vengono abortite solo le modifiche - i gadget stringa vengono controllati anche senza GADGETUP - implementate funzioni Open, Save, Save As V1.11 (24/07/95) - fissato bug: col caricamento globale venivano lasciate allocate le vecchie matrici - requester "are you sure" per New, Quit, Open V1.12 - ora se si preme Save quando non c'e' nessun nome funziona come Save As... - il titolo della finestra principale diventa il titolo del progetto dopo aver usato Open o Save As, "Untitled" alla prima modifica - un '+' davanti al titolo della Main Window significa che i dati sono stati cambiati - Save e Save As vengono disabilitati quando non c'e' bisogno di loro DA FARE ------- 2.0: - 2 versioni: razionali e reali Se intendo fare veramente questo c'e' una sola soluzione: il C dovra' occuparsi SOLO di stringhe, mentre sarà il C++ a fare le conversioni aritmetiche - quando si esce da un gadget con GADGETUP il suo valore deve essere calcolato cosi' da non lasciare bad strings - possibile uso della matrice Q come matrice dell'ultimo quoziente (potrebbe essere definita anche per il determinante) - mettere Hook sui gadget stringa per le frecce PER IL FUTURO - segnalazione degli errori con un display - dimensionare i gadget stringa delle matrici sullo spazio a disposizione nello schermo andando da un minimo di 2 a un massimo di 12 caratteri - mettere Hook sui gadget stringa per i double e i razionali - interfaccia multiwindow (MA SERVE VERAMENTE?) - supporto locale.library