        // Data members
        var str = new String();        
        var mod;

        // Widget controls
        var tagline = new Array(0,0,0,0,0,0,0,0,0,0);
        var title   = new Array(0,0,0,0,0,0,0,0,0,0);
        var zoom    = new Array(0,0,0,0,0,0,0,0,0,0);


        // MAIN Functions
        function txtControl(image, num, inst)
        {
           // Which counts
           mod = (inst != 0) ? tagline[num] : title[num]; 

           // Calculate level
           mod = mod % 2;


           // Increase values
           switch(inst)
           {
             case 0: title[num]++;   break;
             case 1: tagline[num]++; break;
             case 2: tagline[num]++; break;
           }

           // True position
           num = (mod  != 0) ? num + 100 : num;

          
           // Text operation
           // Determine operation
           switch(num)
           {
             // Base
             case 0: str = str.concat('<b>');
                     image.src = "/img/ctl_bold_o.gif";
                     break;

             case 1: str = str.concat('<i>');
                     image.src = "/img/ctl_italics_o.gif";
                     break;

             case 2: str = str.concat('<u>');
                     image.src = "/img/ctl_underline_o.gif";
                     break;

             case 3: str = str.concat('<center>');
                     image.src = "/img/ctl_centre_o.gif";
                     break;

             case 4: str = str.concat('<big>');
                     image.src = "/img/ctl_plus_o.gif";
                     break;

             case 5: str = str.concat('<small>');
                     image.src = "/img/ctl_minus_o.gif";
                     break;



             // Closing
             case 100: str = str.concat('</b>');
                     image.src = "/img/ctl_bold.gif";
                     break;

             case 101: str = str.concat('</i>');
                     image.src = "/img/ctl_italics.gif";
                     break;

             case 102: str = str.concat('</u>');
                     image.src = "/img/ctl_underline.gif";
                     break;

             case 103: str = str.concat('</center>');
                     image.src = "/img/ctl_centre.gif";
                     break;

             case 104: str = str.concat('</big>');
                     image.src = "/img/ctl_plus.gif";
                     break;

             case 105: str = str.concat('</small>');
                     image.src = "/img/ctl_minus.gif";
                     break;
            }


            // Returns string
            return str;
        }


        // 0 - Titles
        // 1 - Tagline
        // 2 - Zoom


        // Handles title specifics
        function strTitle(image, type)
        {
           // Fetch
           str = document.PUPPET.PUPTIT.value;

           // Do the evil voodoo
           str = txtControl(image, type, 0);


           // Return to abyss
           document.PUPPET.PUPTIT.value = str;
        }


        // Handles title specifics
        function strTagline(image, type)
        {
           // Fetch
           str = document.PUPPET.PUPTAG.value;


           // Do the evil voodoo
           str = txtControl(image, type, 1);


           // Return to abyss
           document.PUPPET.PUPTAG.value = str;
        }

        // Handles title specifics
        function strZoom(image, type)
        {
           // Fetch
           str = document.ZOOM.POST.value;


           // Do the evil voodoo
           str = txtControl(image, type, 2);


           // Return to abyss
           document.ZOOM.POST.value = str;
	}

