예제 #1
0
    public void hover_AnimateClickedStartImpl(object sender)
    {
        // Aqui vou começar a simulação remotamente

        // Lock down all editing operations.
        DisableInkOverlay();
        if (bodytag.Visible)
            bodytag.Hide();

        // Habilita o botão pause.
        hover.Enabled = false;

        hover.getAnimateTag().Image = Global.LoadImage("Resources.PauseAnimate.ico");
        menuttip.SetToolTip(hover.getAnimateTag(),"Pause");
        hover.getAnimateTag().Show();

        // Fork the document for animation.
        MagicDocument animedoc = doc.Clone();

        // Run the animation!
        engine = new AnimationEngine();
        engine.Start(animedoc,this);

        engine.setPause(false);
    }
예제 #2
0
    private void hover_AnimateClicked(object sender, EventArgs e)
    {
        dbg.WriteLine("----- hover_AnimateClicked -----");

        PhysicsIllustrator.SmartTag.SmartTag tag = sender as PhysicsIllustrator.SmartTag.SmartTag;

        // Running or stopping?
        if (inkoverlay.Enabled)
        {
            // Aqui vou mandar o evento para o servidor!
            // Este evento eh para o início da simulação
            Global.clienteEnvia.EnviaEvento(new ArrayList(),"Start");

            // Lock down all editing operations.
            DisableInkOverlay();
            if (bodytag.Visible) bodytag.Hide();

            // Habilita o botão pause.
            hover.Enabled = false;

            tag.Image = Global.LoadImage("Resources.PauseAnimate.ico");
            menuttip.SetToolTip(tag,"Pause");
            tag.Show();

            // Fork the document for animation.
            MagicDocument animedoc = doc.Clone();

            // Transformar o engine de simulação em uma Thread!

            // Run the animation!
            engine = new AnimationEngine();
            engine.Start(animedoc,this);

            engine.setPause(false);

        }
        else // Pausa
        {
            if(engine.getPause()) // Está pausado!
            {
                // Aqui vou mandar o evento para o servidor!
                // Este evento eh para o resume
                Global.clienteEnvia.EnviaEvento(new ArrayList(),"Resume");

                engine.setPause(false);
                tag.Image  =  Global.LoadImage("Resources.PauseAnimate.ico");
                menuttip.SetToolTip(tag,"Pause");
                tag.Visible = true;
                tag.Show();

                 hover.getPauseTag().Visible = false;

            }
            else // Está rodando
            {

                // Aqui vou mandar o evento para o servidor!
                // Este evento eh para o pause
                Global.clienteEnvia.EnviaEvento(new ArrayList(),"Pause");

                engine.setPause(true);
                // Devo pausar e mudar o ícone do botão

                tag.Image  =  Global.LoadImage("Resources.ResumeAnimate.ico");
                menuttip.SetToolTip(tag,"Resume");

                hover.getPauseTag().Image  =  Global.LoadImage("Resources.StopAnimation.ico");
                menuttip.SetToolTip(hover.getPauseTag(),"Stop");
                hover.getPauseTag().Visible = true;
                hover.getPauseTag().Show();

            }
        }
    }