lo studio procede a spron battente!
L'altra sera ho preso tutti le classi presenti in mui.h e le ho istanziate. A parte qualche crash di aros e qualche renderizzazione sballata, a parte qualche gadget che non ho capito a che serviva ho scoperto degli oggettini che non avevo mai visto prima... Figo!
la creazione dell'interfaccia non credo sia più un problema e dire che all'inizio mi sembrava la parte più complessa.
beh a essere onesti non ho affrontato la creazione di menu ma non credo che siano poi complessi.
nei giorni scorsi ho buttato giù due o tre programmini di esempio.
finalmente le notifiche funzionano. i problemi che avevo erano collegati al fatto che non convertivo correttamente le variabili.
Molto del lavoro lo sto svolgendo sotto aros, su un netbook.
Ho dato uno sguardo su internet e ho visto che praticamente tutti i campi stringa dei gadget quali il text o lo string vengono gestiti a base di IPTR (un puntatore ad intero senza segno) e STRPTR (una specifica di conversione tra stringhe e puntatori).
Sulla base di queste prime "regole" che mi riservo di approfondire il passaggio di dati tra gadget funziona perfettamente.
Per ora ho buttato giù un piccolo "sommatore/sottrattore" e da ieri ho iniziato una piccola calcolatrice intera (fantasia=0). Sono andato su internet, ho preso l'immagine di una vecchia calcolatrice commodore, ho visto la disposizione dei tasti e l'ho riprodotta su mui. Chiaramente non ha immagini. Poi, chissà, un giorno capirò anche quello come fare.
Per ora si limita a scrivere i numeri correttamente.
Ho pensato di creare il tutto sulla base di due "stati" della macchina: normale e operazione.
In breve quando è nello stato normale carica il primo numero in una variabile.
Quando è in stato operazione (cioè dopo aver premuto un tasto operazione), se il primo operando non è zero, allora accetta il caricamento del secondo operando in una seconda variabile. La pressione di qualsiasi tasto ad eccezione del "canc" (che riporta tutto allo stato normale e azzera tutto) fa eseguire l'operazione memorizzata (insieme allo stato gli si passa un valore per quale tasto operazione è stato premuto). Allorquando l'operazione è stata eseguita il risultato viene memorizzata nel primo operando e lo stato risulta sempre "operazione", così che possa accettare un secondo operando ancora e ancora e ancora. Unica eccezione il tasto uguale: il tasto uguale scatena l'operazione ma, sebbene metta il risultato nella prima variabile, riporta la macchina allo stato normale. Così da ricominciare tutto da capo. Che poi è quel che succede in una calcolatrice vera. Per ora accetta solo interi. E non ho ancora pensato ai negativi.
Ho usato la tecnica mui quella "sconsigliata": l'enorme switch per tutti gli id. Sarà anche sconsigliata ma almeno qualcosa voglio provare dal vivo visto che è la più semplice. Poi, più avanti si andrà di hook e classi derivate. Per ora continuo a giocare!
Nessun commento:
Posta un commento