terça-feira, 14 de agosto de 2012

quinta-feira, 2 de agosto de 2012

GoogleMaps - Um problema extremely annoying!

Veja bem,

Estava eu trablahando com uma googlemaps API e o mapa não aparecia de jeito nenhum.
400 linhas de script e nada.
Testei fora do framework Yii o qual uso, e funcionava, dentro do Yii não funcionava.
3 horas depois, descobri que é necessário colocar esta linha.

"google.maps.event.addDomListener(window, 'load', initialize);";

Mas que pertubação!

Et c'est tout!

A bientôt.

quarta-feira, 1 de agosto de 2012

CSharp - Pra que serve esse tipo de Enum?

Hoje respondi uma pergunta e achei interessante colocar aqui.

Para que serve enums binários?

Exemplo:


    [Flags]
    public enum EnumGrimoire
    {
        MorganaLefey = 0,
        Merlin = 1,
        Teserac = 1 << 1,
        Nostradamus = 1 << 2,
        Merovingio = 1 << 3,
        AzraMahai = 1 << 4,
        Taliesin = 1 << 5
    }

Veja bem. O que tem acima pode ser traduzido como:


        MorganaLefey = 0,
        Merlin = 1,
        Teserac = 2,
        Nostradamus = 4,
        Merovingio = 8,
        AzraMahai = 32,
        Taliesin = 64

É bem esquisito né? Pois é, mas é útil para fazer o seguinte tipo de construção abaixo:



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplicationParaTestarEnumsMisticos
{
    class Program
    {
        static void Main(string[] args)
        {
            greatWizards(EnumGrimoire.MorganaLefey | EnumGrimoire.Merlin | EnumGrimoire.Nostradamus);
        }

        static void greatWizards(PropostaWorkflowAcoes penmWizardry)
        {
            if (penmWizardry == (EnumGrimoire.MorganaLefey | EnumGrimoire.Merlin))
            {
               Console.Write("Você escolheu dois arqui inimigos. Cuidado!");
            }
            Console.ReadLine();
        }
    }

    [Flags]
    public enum EnumGrimoire
    {
        MorganaLefey = 0,
        Merlin = 1,
        Teserac = 1 << 1,
        Nostradamus = 1 << 2,
        Merovingio = 1 << 3,
        AzraMahai = 1 << 4,
        Taliesin = 1 << 5
    }
}