Articoli con Tag ‘Internet’


Statistiche personali: chi ha installato Blogbabel Rank?

Aggiornamento: Blogbabel ha chiuso – tutti i servizi, widget e plugin non sono più attivi

image Ormai sono tanti i Blogger che hanno installato l’antipixel di Blogbabel, tuttavia non ne ho una traccia precisa. Quindi, giusto per curiosità, lasciate un commento a questo Post se avete installato Blogbabel Rank antipixel, in qualsiasi formato (Flash o immagine)? Grazie mille ;)

Continua...

Aprile 2008: addio all’attivazione dell’ActiveX per Flash

Sul blog di Internet Explorer (IE Automatic Component Activation (Changes to IE ActiveX Update)) è stato annunciato un’importante cambiamento che avverà introno ad aprile 2008, con il rilascio di importante patch, compresa la tanto attesa Service Pack 3. Un’anteprima, tuttavia, sarà disponibile entro dicembre 2007 dal centro download di Internet Explorer.

Nell’aprile 2006, infatti, Microsoft aveva introdotto una patch in Internet Explorer che bloccava l’interazione con i componenti ActiveX presenti in una pagina Web. Questo “blocco”, alla fine, si risolveva nella richiesta esplicita – diretta all’utente/navigatore -  di attivare il controllo (filmato Flash, QuickTime, etc…) tramite la barra spaziatrice o un click del mouse.

IE Automatic Component Activation (Changes to IE ActiveX Update)

Nel tempo, tuttavia, sono state introdotte tutta una serie di scorciatoie per evitare questa fastidiosa richiesta, scorciatoie ufficiali (proposte ad esempio dalla stessa Macromedia per Flash e da Apple per QuickTime) e non ufficiali (SWFObject o UFO, ad esempio – vedi anche Unobtrusive Flash Objects).
Secondo Microsoft gli sviluppatori non dovranno modificare nulla ad aprile 2008 nei “vecchi” siti che utilizzavano scorciatoie, tuttavia è bene dare un’occhiata al blog di Internet Explorer per i casi particolari.

Microsoft torna quindi sui suoi passi, ed effettivamente ci eravamo chiesti un po’ tutti che idiozia fosse questa dell’attivazione del controllo, “pezza” adottata per una carenza nella gestione degli ActiveX (TAG OBJECT) più che a falle nei componenti stessi. Negli altri browser, infatti, l’uso dei Plugin è accompagnato dal più solido TAG EMBED. Ultima nota:

In the coming weeks, we’ll be updating the MSDN article with descriptions of the new behavior. Keep an eye out here for when the preview goes live.

Continua...

Flash: come inizializzare componenti nel costruttore di una classe

Quando si estente una classe da un MovieClip che continene altri oggetti (MovieClip, TextField, etc…) questi ultimi potrebbero non essere “pronti” all’interno del costruttore. Questo accade soprattutto quando si utilizzano altri MovieClip estesi o i componenti (controls) di Flash. Per risolvere il problema basta sfruttare l’evento onLoad ereditato dalla classe stessa. Ad esempio immaginiamo di avere un MovieClip che contiene un campo TextField (oggetto visuale statico interno a Flash) e un oggetto TextInput (controllo inserito dal pannello componenti) e si vuole impostare qualche proprietà durante il costruttore della nostra classe MiaClasse.

Esempio Creiamo un simbolo ed inseriamo al suo interno sia l’oggetto TextField (chiamiamolo text_txt) sia l’oggetto TextInput (textinput_txt). Associamo questo simbolo ad una classe che estende un MovieClip, chiameremo la nostra classe MiaClasse. Quello che vogliamo ottenere è che durante il costruttore della nostra classe MiaClasse vengano inizializzati questi due controlli. Se proviamo ad usare un codice come questo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//
import mx.controls.TextInput;
//
class MiaClasse extends MovieClip {
    //
    private var text_txt:TextField;
    private var textinput_txt:TextInput;
    //
    function MiaClasse() {
        trace("MiaClasse::costruttore");
        //
        text_txt.text = "Ciao";
        textinput_txt.text = "Ciao";
        //
    }

}

Continua...

Editor WYSIWYG per il Web

TynyMCE 2.1.2 (3.01 alpha)

TinyMCE Giunto alla versione 3.01a (l’ultima stabile è la 2.1.2), TinyMCE supporta i seguenti browser: browser supportati: Mozilla, MSIE, FireFox, Opera and Safari (experimental) (Mozilla, MSIE, FireFox, Opera and Safari (experimental)).
Grazie al supporto dei Plugins è completamente configurabile, sia a livello di Skin (vedi immagin in basso per due esempi) sia a livello di caratteristiche supportate (vedi Plugins). Completo di language pack permette di personalizzare l’output XHTML 1.0. Utilizzabile da PHP/.NET/JSP/Coldfusion GZip compressor supporta anche Ajax per le operaqzioni di Load/Save.

Continua...

RESTTest: utile estensione per FireFox

RESTTest Ecco un’interessante estensione per FireFox (oggi rilasciata la patch 2.0.0.9) scritta da Kris Zyp. RESTTest permette di eseguire send e verificare le receive verso un URL utilizzando il protocollo REST, scegliendo tra i canonici metodi GET o POST (eventualmente personalizzabili).
RESTTest può essere utilizzato per verificare il funzionamento dell’oggetto XmlHttpRequest e quindi per testare le applicazioni che fanno uso di Ajax. Possiamo quindi simulare facilmente e velocemente richieste e risposte XHR.
Questa estensione è disegnata specificatamente per lavorare con risorse di tipo REST e supporta tutti i metodi HTTP.
Nel campo POST/PUT è possibile inserire tutti i parametri che intendiamo inviare alla nostra pagina di test, nella sintassi standard:

variabile1=valore1&variabile2=valore2&[...]variabilen=valoren

Questa estensione risulta utile anche nel test dei Feed RSS di un sito o nell’analisi dei paramteri di qualsiasi servizio RPC.

Continua...

Flash e il riutilizzo del codice: componenti e librerie condivise

Nell’ottica della programmazione ad oggetti viene spontaneo realizzare componenti per riutilizzarli in altri progetti, soprattutto se questi componenti sono general-purpose. L’uso delle classi è sicuramente un primo passo nel riutilizzo del codice, tuttavia, spesso, queste classi sono legate a MovieClip anche estremamente complessi. Così nasce la necessità di “importare” sia il codice ActionScript della classe (cosa assai facile) ma anche tutti i simboli ad esso associato.

Creare Componenti in Flash

Componenti Flash Questa strada è sicuramente la più corretta da un punto di vista strettamente logico. Tuttavia, almeno nella versione Flash MX, creare un componente che quantomeno si avvicini a quelli forniti con l’ambiente di sviluppo non è impresa da poco. I componenti, infatti, soprattutto quelli visuali, richiedono tutta una serie di procedure (come l’inclusione delle interfacce UIObject o UIComponent) e la scrittura estremamente accurata della classe legata al nostro componente. Rimane comunque il fatto che creare un componente è un’esperienza interessante da fare, ma il tempo di sviluppo è davvero notevole. Inoltre un componente come si deve supporta la modalità in designtime o authortime che altro non fa che proporre un’anteprima di quello che accadrà a runtime. È possibile associare un’icona e una documentazione perfettamente integrabile nell’IDE di Flash, con tanto di intellisense durante la scrittura del codice. Ecco quindi che scegliere questa strada comporta un dispendio temporale notevole, probabilmente riservato a particolari progetti dove, ad esempio, sia proprio il componente l’obiettivo del progetto.
Ci sono software house specializzate nella produzione di componenti per Flash, sia come prodotti gratuiti che a pagamento. Esclusi quindi i componenti estremamente semplici, dove ad esempio non c’è interfaccia utente, questo metodo è ottimo ma temporalemte dispendioso e quindi poco usato nella maggioranza dei casi.

Continua...

Bug.gd: cercare e risolvere bugs

Bug.gd La collaborazione è tutto, soprattutto per i programmatori. Ecco quindi un’interesante servizio gratuito, semplice ed efficace. Bug.gd è un repository di “problemi” a 360 gradi per tutti i sistemi operativi. Con il suo database cerca di risolvere, con il contributo di tutta la comunità, qualsiasi problema, malfunzionamento, bugs e/o imprevisto capitato all’interno del nostro computer. Basta andare sul sito, navigare nel database di Bug.gd,  e vedere se qualcuno ha già avuto un problema simile al nostro. Se troviamo la soluzione bene, altrimenti, indicando il nostro indirizzo di posta elettronica, possiamo lasciare noi un messaggio di aiuto, una descrizione del nostro “bugs”, indicando quindi il tipo di problema che abbiamo. Appena qualcuno lo risolve saremo avvertiti via mail.

Continua...

Che fine ha fatto Silverlight?

Microsoft demoMicrosoft ha rilasciato un nuovo demo su Windows Home Server e la su avisione di casa elettronica. Niente di straordinario tranne il fatto che il demo è in Adobe Flash!
È curioso, infatti, che nonostante gli annunci in grande stile sul nuovo antagonista di Flash, Silverlight appunto, rilasciati nell’ultimo anno, Microsoft continui inesorabilmente ad utilizzare Adobe Flash per le sue presentazioni, rifiutando di fatto il proprio figlio. Si “era” parlato di una nuova “esperienza” di user interface, nuove features, che tuttavia nessuno – in verità – riesce davvero a vedere. Insomma, se proprio Microsoft non riesce ad usare Silverlight perchè mai lo dovrebbe fare qualcun altro?

Continua...

StageExt Class: filmati ridimensionabili in Flash

La tecnica del Fullsize (anticamera per il Fullscreen – di cui parleremo in seguito) era, fino a poco tempo fa, utilizzata soprattutto nelle applicazioni Flash (RIA), composte quindi da una più o meno complessa interfaccia utente, dove il contenitore (Adobe AIR, Browser o il Player stand-alone) ridimensionato dall’utente, costringeva ad un riposizionamento degli oggetti componenti il filmato. Al ridimensionamento del contenitore segue ovviamente una funzione di disegno o Refresh in grado di riposizionare i MovieClip o ridisegnare runtime l’interfaccia in base alle nuove dimensioni del contenitore. Oggi questa tecnica è utilizzata anche nei siti web più avanzati o articolati, rendondo l’interfaccia estremamente piì accattivante. L’implementazione di questa tecnica è abbastanza semplice e sfrutta sostanzialmente l’oggetto Stage nativo di Flash e introdotto con la versione MX. Per la sua implementazione ecco una classe che permette di ottenere le coordinate dell’area dello Stage:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/**
 *
 * @file                StageExt.as
 * @author              Giovambattista Fazioli (g.fazioli@undolog.com)
 * @web                 http://www.undolog.com
 * @email               g.fazioli@undolog.com
 */

class StageExt {
    // release
    private var __release          :String = "1.0";
    // properties
    private var __movieWidth       :Number = 0;
    private var __movieHeight      :Number = 0;
    private var __left             :Number = 0;
    private var __right            :Number = 0;
    private var __top              :Number = 0;
    private var __bottom           :Number = 23;
    //
    function StageExt(w:Number, h:Number) {
        trace("StageExt::constructor");
        //
        __movieWidth = w;
        __movieHeight = h;
        //
        Stage.addListener(this);
    }
    /**
     * onResize() event
     */

    private function onResize() {
        trace("StageExt::onResize " + Stage.width + ", " + Stage.height);
        //
        var sw:Number = Math.round(Stage.width);
        var sh:Number = Math.round(Stage.height);
        var ow:Number = Math.round(this.__movieWidth);
        var oh:Number = Math.round(this.__movieHeight);
       
        // La coordinata x (in alto a sinistra)
       
        this.__left = -Math.floor(((sw - ow) / 2));
        this.__top = -Math.floor(((sh - oh) / 2));
       
        // La coordinata x (in alto a destra)
       
        this.__right = Math.round((sw + ow) / 2);
       
        // La coordinata y (in basso)
       
        this.__bottom = Math.round((sh + oh) / 2);
    }
    /**
     * Refresh()
     */

    public function Refresh() {
        onResize();
    }
    /**
     * Left - get
     */

    public function get Left():Number {
        return (__left);
    }
    /**
     * Top - get
     */

    public function get Top():Number {
        return (__top);
    }
    /**
     * Right - get
     */

    public function get Right():Number {
        return (__right);
    }
    /**
     * Bottom - get
     */

    public function get Bottom():Number {
        return (__bottom);
    }
    /**
     * MovieWidth - get/set
     */

    public function get MovieWidth():Number {
        return (__movieWidth);
    }
    public function set MovieWidth(v:Number) {
        __movieWidth = v;
    }
    /**
     * MovieHeight - get/set
     */

    public function get MovieHeight():Number {
        return (__movieHeight);
    }
    public function set MovieHeight(v:Number) {
        __movieHeight = v;
    }
}

Continua...

script.aculo.us 1.8 preview

Anteprima della libreria di effetti Scriptaculous, la 1.8 in attesa della 2.0:

  • Prototype 1.6 (lastest trunk version)
  • Complete rewrite of Ajax.InPlaceEditor and Ajax.InPlaceCollectionEditor
  • Full CSS inheritance in Effect.Morph
  • New core effect: Effect.Tween
  • Sound: play mp3 files for sound effects; uses native playback on IE and available plugins whereever possible
  • Performance improvements
  • Tons of bugfixes

Per la lista completa dei miglioramenti vide il CHANGELOG

Continua...



Stop SOPA