Пример #1
0
    public void AdicionarNovaNota()
    {
        _NotaEditor n = new _NotaEditor();

        n.notaInfo = notaDebug;
        notaDebug  = new NotaInfo();
        notas.Add(n);
    }
Пример #2
0
    void RemoverNota(_NotaEditor n)
    {
        if (notas.Contains(n) == false)
        {
            return;
        }

        notas.Remove(n);
    }
Пример #3
0
    void DrawNotaComum(_NotaEditor n)
    {
        float width = Vivaldos.WIDTH_COMPASSO / (float)n.notaInfo.duracao;

        GUI.color = Color.white;
        if (GUILayout.Button(((int)n.notaInfo.timbre).ToString() + "-" + n.notaInfo.duracao.ToString(), GUILayout.Width(width), GUILayout.Height(20f)))
        {
            EditNota(n);
        }
    }
Пример #4
0
    void TrocarTipo(_NotaEditor n)
    {
        int t = (int)n.notaInfo.tipo;

        if (t == 4)
        {
            t = -1;
        }

        t += 1;

        n.notaInfo.tipo = (TipoDeNota)t;
    }
Пример #5
0
    void AumentarTimbre(_NotaEditor n, int mult = 1)
    {
        int timbre = (int)n.notaInfo.timbre;

        if (timbre == (int)Timbre.QUATORZE)
        {
            timbre = 0;
        }

        timbre += mult;

        n.notaInfo.timbre = (Timbre)timbre;
    }
Пример #6
0
    void EditNota(_NotaEditor n)
    {
        if (Event.current.control && Event.current.alt && Event.current.shift)
        {
            RemoverNota(n);
            return;
        }


        if (Event.current.control)
        {
            if (!Event.current.shift)
            {
                AumentarTimbre(n);
            }
            else
            {
                AumentarTimbre(n, -1);
            }
            return;
        }

        if (Event.current.alt)
        {
            TrocarTipo(n);
            return;
        }

        int dur = (int)n.notaInfo.duracao;

        if (dur <= (int)Duracao.SEMIBREVE)
        {
            dur = 128;
        }

        if (dur >= (int)Duracao.SEMIFUSA)
        {
            dur = 1;
        }

        if (!Event.current.shift)
        {
            dur = dur * 2;
        }
        else
        {
            dur = dur / 2;
        }

        n.notaInfo.duracao = (Duracao)dur;
    }
Пример #7
0
    public _CompassoEditor GetCompassoEditor(Compasso compasso)
    {
        _CompassoEditor ret = new _CompassoEditor();

        compasso.info.notas.ForEach(delegate(NotaInfo e)
        {
            _NotaEditor notaEditor = new _NotaEditor();
            notaEditor.notaInfo    = e;
            ret.notas.Add(notaEditor);
        });

        ret.mCompasso = compasso;

        return(ret);
    }
Пример #8
0
	public _CompassoEditor GetCompassoEditor(Compasso compasso)
	{
		_CompassoEditor ret = new _CompassoEditor();
		
		compasso.info.notas.ForEach( delegate(NotaInfo e) 
		{
			_NotaEditor notaEditor = new _NotaEditor();
			notaEditor.notaInfo = e;
			ret.notas.Add(notaEditor);
		});
		
		ret.mCompasso = compasso;
				
		return ret;
	}
Пример #9
0
    void DrawCompasso()
    {
        EditorGUILayout.BeginHorizontal();

        GUI.color = VerificarValorDoCompasso();
        GUILayout.Button("", GUILayout.Width(30f), GUILayout.Height(30f));

        GUI.color = Color.white;

        for (int i = 0; i < notas.Count; i++)
        {
            _NotaEditor n = notas[i];

            switch (n.notaInfo.tipo)
            {
            case TipoDeNota.NOTA:
                DrawNotaComum(n);
                break;

            case TipoDeNota.PAUSA:
                DrawPausa(n);
                break;

            case TipoDeNota.NOTA_X2:
                DrawNOTA_X2(n);
                break;

            case TipoDeNota.NOTA_X3:
                DrawNOTA_X3(n);
                break;

            case TipoDeNota.NOTA_X4:
                DrawNOTA_X4(n);
                break;

            default:
                DrawNotaComum(n);
                break;
            }
        }

        GUI.color = Color.white;

        EditorGUILayout.EndHorizontal();
    }
Пример #10
0
	void DuplicarCompasso (_CompassoEditor aSerDuplicado)
	{
		if( compassos.Count == 0 )return;
		_CompassoEditor c = new _CompassoEditor();
		
		foreach( _NotaEditor n in aSerDuplicado.notas )
		{
			_NotaEditor n1 = new _NotaEditor();
			NotaInfo ni = new NotaInfo();
			
			n1.notaInfo = ni;
			ni.batida = n.notaInfo.batida;
			ni.compasso = n.notaInfo.compasso;
			ni.duracao = n.notaInfo.duracao;
			ni.timbre = n.notaInfo.timbre;
			
			c.notas.Add( n1 );
		}
		compassos.Add(c);
		
	}
Пример #11
0
    void DuplicarUltimaNota()
    {
        if (notas.Count == 0)
        {
            return;
        }

        _NotaEditor novaNota     = new _NotaEditor();
        NotaInfo    novoInfo     = new NotaInfo();
        _NotaEditor qualDuplicar = notas[notas.Count - 1];

        novaNota.notaInfo = novoInfo;

        novoInfo.tipo     = qualDuplicar.notaInfo.tipo;
        novoInfo.batida   = qualDuplicar.notaInfo.batida;
        novoInfo.compasso = qualDuplicar.notaInfo.compasso;
        novoInfo.duracao  = qualDuplicar.notaInfo.duracao;
        novoInfo.timbre   = qualDuplicar.notaInfo.timbre;

        notas.Add(novaNota);
    }
Пример #12
0
    void DuplicarCompasso(_CompassoEditor aSerDuplicado)
    {
        if (compassos.Count == 0)
        {
            return;
        }
        _CompassoEditor c = new _CompassoEditor();

        foreach (_NotaEditor n in aSerDuplicado.notas)
        {
            _NotaEditor n1 = new _NotaEditor();
            NotaInfo    ni = new NotaInfo();

            n1.notaInfo = ni;
            ni.batida   = n.notaInfo.batida;
            ni.compasso = n.notaInfo.compasso;
            ni.duracao  = n.notaInfo.duracao;
            ni.timbre   = n.notaInfo.timbre;

            c.notas.Add(n1);
        }
        compassos.Add(c);
    }
Пример #13
0
	void EditNota( _NotaEditor n )
	{
		if( Event.current.control && Event.current.alt && Event.current.shift )
		{
			RemoverNota(n);
			return;
		}
	
	
		if( Event.current.control )
		{
			if ( !Event.current.shift )
					AumentarTimbre( n );
			else
					AumentarTimbre( n , -1 );
			return;
		}
		
		if( Event.current.alt )
		{
			TrocarTipo( n );
			return;
		}
	
		int dur = (int) n.notaInfo.duracao;
		
		if( dur <= (int) Duracao.SEMIBREVE ) dur = 128;
		
		if( dur >= (int) Duracao.SEMIFUSA ) dur = 1;
		
		if( !Event.current.shift )
			dur = dur * 2;
		else
			dur = dur / 2;
		
		n.notaInfo.duracao = (Duracao) dur;
	}	
Пример #14
0
	void DrawNOTA_X4( _NotaEditor n )
	{
		float width = Vivaldos.WIDTH_COMPASSO/ (float)n.notaInfo.duracao;
		
		GUI.color = Color.cyan;
		
		if( GUILayout.Button( ((int)n.notaInfo.timbre).ToString() + "-" +  n.notaInfo.duracao.ToString(), GUILayout.Width(width), GUILayout.Height(20f) ) )
		{				
			EditNota( n );
		}
	}
Пример #15
0
	void AumentarTimbre (_NotaEditor n, int mult = 1)
	{
		int timbre = (int)n.notaInfo.timbre;
		
		if( timbre == (int)Timbre.QUATORZE ) timbre = 0;
		
		timbre += mult;
		
		n.notaInfo.timbre = (Timbre) timbre;
	
	}
Пример #16
0
	public void AdicionarNovaNota()
	{
		_NotaEditor n = new _NotaEditor();
		n.notaInfo = notaDebug;
		notaDebug = new NotaInfo();
		notas.Add( n );
	}
Пример #17
0
	void DuplicarUltimaNota ()
	{
		if( notas.Count == 0 ) return;
		
			_NotaEditor novaNota = new _NotaEditor();
			NotaInfo novoInfo = new NotaInfo();
			_NotaEditor qualDuplicar = notas[notas.Count-1];
		
			novaNota.notaInfo = novoInfo;
			
			novoInfo.tipo 		= qualDuplicar.notaInfo.tipo;
			novoInfo.batida 	= qualDuplicar.notaInfo.batida;
			novoInfo.compasso 	= qualDuplicar.notaInfo.compasso;
			novoInfo.duracao 	= qualDuplicar.notaInfo.duracao;
			novoInfo.timbre 	= qualDuplicar.notaInfo.timbre;
			
			notas.Add( novaNota );
	}
Пример #18
0
	void RemoverNota (_NotaEditor n)
	{
		if( notas.Contains( n ) == false ) return;
		
		notas.Remove( n );
	}	
Пример #19
0
	void TrocarTipo (_NotaEditor n)
	{
		int t = (int) n.notaInfo.tipo;
		
		if( t == 4 ) t = -1;
		
		t += 1;
		
		n.notaInfo.tipo = (TipoDeNota) t;
	}