Gambas-it
Programmazione => Progetti degli utenti => Topic aperto da: fsurfing - 15 Febbraio 2008, 00:06:26
-
cia a tutti!!,,
sto realizzando una barra laterale tipo quella di vista...
avrei bisogno dei vostri consigli su quanto già realizzato e su cosa posso ancora aggiungere alla barra per renderla anche un qualcosa di utile.
grazie a tutti
vi lascio una schermata della barra al punto in cui sono arrivato.
-
Dipende da cosa ne vuoi fare :-)
Così com'è assomiglia molto ai plug-in di SuperKaramba :-P
-
per ora sto pensando a queste funzioni:
indicatore cpu
indicatore memoria
indicatore swap
orologio
indicazione del giorno mese e anno corrente
post-it (con promemoria )
spegnimento pc programmato
lancio programmato di applicazioni
e quanto altro può essere utile!
aspetto suggerimenti!!! :oops:
per ora i primi 5 sono ok
-
Processi attiviUn calendario lunare? Orari del sorgere e tramonto del sole?
Appuntamenti importanti? Boh..
P.S.:
metti un pannellino di configurazione dove l'utente può selezionare i gadget che vuole attivi.
-
In effetti, come prima impressione, penso tu abbia esagerato con le dimensioni dell'area.
Concordo con leo, penso sia più gestibile a livello di utility in un pannello.
E' solo un consiglio...
-
md9327 ha scritto:
In effetti, come prima impressione, penso tu abbia esagerato con le dimensioni dell'area.
..
in realtà occupa una piccola parte della dimensione dello schermo, rimane inoltre a livello desktop quindi non da fastidio ad altre finestre o programmi che possono coprirla (tipo la barra di vista) con esattezza su uno schermo 1680X1050 occupa 210 pixel su un monitor 800x600 occupa 120 pixel.
ora posto l' eseguibile (sperando che Leo72 Non mi Sgridi! ma sono solo 260kb) così puoi provarla è poi mi dici! :2birre:
-
Ti farò sicuramente sapere !
Comunque perdonami, mi sono lasciato impressionare dalle dimensioni dell'immagine postata e non ho tenuto conto che era solo una zona del desktop.
Bye
-
figurati!! nessun problema! 8-)
comunque ho provato a ridurla leggermente e mi piace molto di più!! :idea:
-
L'ho scaricato e avviato subito.
Come interfaccia è piacevole, comunque occupa un quinto dei 1280 orizzontali del mio schermo; ma a parte questo mi piace.
Tanto per tua utilità, l'ho provato su una Fedora 7, senza alcun problema.
Domanda: per l'orologio che sistema hai usato ? Ti disegni l'immagine a mano ogni secondo ?
Domanda: clikkando nel riquadro, in un'area vuota trasparente, seleziono quello che c'è sotto. Ad esempio avevo una finestra a tutto schermo, dopo aver avviato la tua applicazione, ho cliccato con il destro su un'immagine e mi è comparso il menu, ma cliccando su una zona trasparente la finestra sottostante mi si è messa davanti, è normale ?
Nota: che ne diresti di mettere tutto nel pannello, esempio il menu, in modo che l'utente possa agire più facilmente ?
Complimenti !
-
bene ! sono soddisfatto del tuo feedbak (si scrive cosi?)
grazie mille per averlo provato anche su fedora!
per le dimensioni prossimamente inserirò una funzione per regolarle a piacere ( per ora la larghezza è data da 1/5 dell' altezza dello schermo, 1/6 nella versione in area download)
per quanto riquarda la trasparenza è tutto normale, infatti dove cè un controllo è possibile ottenere il menù, dove non vi sono immagini si passa direttamente alla finestra sottostante (può essere utile ad esempio per chiudere una finestra a pieno schermo sotto alla barra).
mi piaceva così ma se riesco a disegnare uno sfondo carino lo sostituisco.
per realizzare l' orologio come tutti i controlli a lancetta, ho preso spunto dagli esempi di gambas(clock)
prendi un' immagine di sfondo (quadrante orologio)
prendi l'immagine della lancetta e la ruoti di quanto serve e poi la disegni sopra all' immagine di sfondo.
-
Ok, ti ringrazio, volevo solo avere qualche altra idea per i miei progetti.
Penso sia feedback, ma in inglese non sono molto preparato :-)
Per le opzioni, sicuramente mano a mano si aggiungeranno, le idee vengono poi...
-
si pian pianino le idee vengono fuori! :-o
per ora ho aggiunto la possibilità di ridimensionare la barra versione 0.0.38
-
versione 0.0.40
implementato l'auto spegnimento programmato del pc
-
Acc... mano mano farai un'applicazione tipo WEBMIN... :-)
-
magari!!!!!! :pint:
no no stiamo con i piedi per terra ......
sarà una delle tante applicazioni terra terra che occupano solo spazio sul hd!!!!!!
:2birre:
-
ecco una schermata alla versione attuale
-
Quel "AUTO POWER OFF" fà un pò terrore... :-)
Chissa se premendolo non scoppia tutto ?
Scusami, era uno scherzo! :-S
Stai facendo un Buon lavoro!!!
-
in effetti hai ragione.......
potrebbe essere il titolo di un nuovo film horror :incredibile:
a breve dovrebbe esserci in area download il programma nella versione 0.0.51!!
-
Ok, perfetto !!! Gli stai dando giù a quanto vedo...
Ultimamente non l'ho scaricato, hai per caso ridotto le dimensioni ?
-
si si è possibile definire il numero di pixel occupati in larghezza dalla barra,
è possibile eliminare la trasparenza e metterla in primo piano.
quando sarà attiva in area download provala , ho anche migliorato l'orologio, infatti ora la lancetta delle ore si muove piu realisticamente non solo al cambio ora ma ogni minuto!! :si:
-
dalla versione 0.0.56 è presente un visualizzatore delle fasi lunari :-o
-
ok ragazzi!!!
versione 0.0.66
introdotta la possibilita di eliminare il bordo della barra,
possibilità di selezionare due colori per la barra rosso oppure blu!
modificata la grafica delle lancette dell' orologio!
-
Complimenti! Sempre più bello!
-
grazie mille!!!!!
oggi ho anche aggiunto un visualizzatore di utilizzo dei dischi :-)
versione 0.0.70 disponibile in area download
-
Aspita!!!
Non è che ti sei messo in testa di fare un'altro sistema operativo? :-))
Aricomplimenti!!!!
Ora mi toccherà guardarmi il codice, se hai distribuito i sources... Sò curioso!!!
-
il codice è ancora in una fase primordiale .... :-o
ora mi fermo un attimo e lo ottimizzo !!!!
-
Aggiunto anche un visualizzatore del traffico di rete
-
dopo una piccola pausa ho rimesso mano a feabar ..
ora è possibile decidere quali controlli visualizzare tra
cpu e memoria
orologio
datario
note -promemoria
fasi lunari
autospegnimento
traffico rete
utilizzo dischi
e visualizzazione stato led Caps-lock e Blok-num della tastiera
il tutto disponibile in area download
-
aggiunto un registratore di utilizzo
cpu
memoria
swap
rete
ed un visualizzatore grafico dei dati registrati
-
aggiunta la visualizzazione dei sensori di temperatura, tensione e ventole della scheda madre :-)
-
Bello, ma non ho ancora provato quest'ultima release.
Una domanda: spero siano configurabili gli oggetti da visualizzare, perchè altrimenti lo schermi diventa un centro esclusivo di controllo del computer... :-)
-
certo si puo configurare quale controlli visualizzare :-)
-
Continuo con i miei sinceri complimenti !
Bye
-
grazie mille!!!!! :2birre:
-
Stavo dando un'occhiata al tuo bel programmino e vorrei farti qualche domandina e, se mi permetti, anche qualche suggerimento:
1) vedo che per la configurazione scrivi su un file di testo, usando per la lettura il comando EXEC, catturando l'output e decodificando a mano le stringhe che vengono lette. Hai provato as usare la classe Settings? Questa classe si comporta nè più, nè meno come faceva windoz con i vecchi file .INI, scrivendo dei blocchi in cui inserire i parametri e il relativo valore separati da "="; credo che l'uso di questo oggetto renda la cosa più gestibile e più dinamica. Inoltre, l'accesso continuo al sistema operativo in questo modo (con EXEC) è molto più lento di avere invece la struttura costantemente in memoria e direttamente accessibile.
2) all'interno delle classi fai riferimento a specifici item dell'array di configurazione. Hai pensato di dichiarare delle costranti di classe, con la posizione assoluta, in modo da non doverti ricordare ogni volta il numero di item dell'array; inoltre, questo ti permetterebbe di modificarne la disposizione agendo esclusivamente in un solo punto.
3) stesso identico discorso sulla posizione della directory e del file di configurazione, che a mio avviso credo ti convenga dichiarare una sola volta, e fare riferimento alla costante all'interno del programma.
4) per l'accesso al programma "sensors", e il discorso è valido anche per altri comandi, non ti conviene crearti un'apposita classe, una driver? Questo concentrerebbe i metodi di lettura, e la gestione e l'implementazione sarebbe resa più facile. Inoltre alleggeriresti la FMain, che mi pare piuttosto enorme, dato che supporta praticamente tutto il programma.
Ovviamente i miei sono solo consigli, con lo scopo di aiutarti a migliorare il programma, per cui sei libero di accettarli o meno, ok?
Ciao, e continua con il lavoro, che vedo ne hai fatto parecchio!
Complimenti ancora!
-
grazie md9327 ! vedo che hai dato una bella occhiata profonda al programma! :-D
riguardo a setting in effetti stavo già pensando di utilizzare questa possibilità offerta da gambas,
per la dichiarazione delle costanti di classe mi sembra veramente un ottima idea ma non saprei come implementarla.
la creazione di varie classi mi stuzzica ma dovrei fare delle prove sulla scrittura e utilizzo classi visto che per me sono un pò un mistero.
ne ho fatta una tempo fa scopiazzando qua è la ma non sono sicuro sia corretto il modo in cui l'ho realizzata ,
la allego così se hai tempo e voglia me la correggi :oops: a livello di struttura
così ho uno spunto pratico sulla creazione di una classe.
grazie ancora per aver avuto la voglia di spulciare i sorgenti, che come hai giustamente detto tu sono enormi (Fmain circa 2000 righe di codice!)
ciao ciao
-
Per le costanti, a parte il discorso classi che è poi similare, puoi dichiararle in questo modo, scrivendole all'inizio della classe (come per le proprietà):
STATIC PUBLIC CONST NOME_COSTANTE AS Integer = 0
1) il comando STATIC ti permette di leggere la costante senza neppure crearla (vedi gb.* in Gambas);
2) PUBLIC rende la costante leggibile al di fuori della stessa classe;
3) CONST definisce l'etichetta come costante;
4) NOME_COSTANTE è il nome che dai alla costante, che di norma viene impostata in maiuscolo;
5) Con AS definisci il tipo di costante, così come per le variabili;
6) Assegni alla costante un valore, appunto, fisso e costante, che nessuno può cambiare all'interno dell'applicazione.
Come vedi la cosa è abbastanza semplice, e ti permette di definire in un solo punto determinati valori; basta che poi all'interno del programma fai riferimento al nome della costante. Se poi, per esigenze di codifica vuoi cambiare i valori, basta che modifichi quello della dichiarazione della costante (anche come tipo), e il codice ti si modifica automaticamente all'atto della compilazione. In pratica è come se in compilazione venissero sostituiti tutti i riferimenti con il valore della costante, cosa che del resto funziona realmente così in altri linguaggi.
Rigaurdo il codice che mi hai inviato, proverò a dargli un'occhiata, appena ho un pò di calma, e ti faccio sapere.
Bye
-
Ti rinvio il tuo programmino, ma tieni presente che le mie modifiche sono solo un esempio, e le variazioni al tempo possono essere molteplici.
Ho scritto un paio di righe, ma se hai dubbi non esitare a chiedere.
Ciao
-
ti ringrazio per la chiarezza nella tua spiegazione e per i chiarimenti e modifiche alla classe, ora non mi resta che mettermi al lavoro per mettere in pratica i tuoi consigli e suggerimenti.
Ancora grazie!! :2birre:
-
certo che è proprio un lavoraccio riscrivere tutto utilizzando le classi!!!! :muro:
per svariarmi un pò da questo pesantissimo fardello ho aggiunto il colore nero nelle skin del programma!
-
aggiunta distorsione immagine :-D
-
come si ottiene questo effetto?
-
con i comandi
image.implode(valore AS float)
image.swirl(valore as float)
del componente gb.image
:-)
-
dopo una bella pausa si ricomincia .. :-D
nuova versione del programma in cui tutti i controlli si possono spostare , ridimensionare e colorare come piu si vuole !!!!!!
uno screen dei primi tre controlli funzionanti di questa versione
-
una versione beta non completamente stabile