~ubuntu-branches/ubuntu/precise/kalzium/precise

« back to all changes in this revision

Viewing changes to src/psetable/statemachine.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Philip Muškovac
  • Date: 2011-07-03 12:28:58 UTC
  • Revision ID: james.westby@ubuntu.com-20110703122858-q1yyxncs89e4w0hs
Tags: upstream-4.6.90+repack
Import upstream version 4.6.90+repack

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**********************************************************************
 
2
 Statemachine
 
3
 
 
4
 Copyrigth (C) 2010      by Etienne Rebetez
 
5
 
 
6
 This is free software; you can redistribute it and/or modify
 
7
 it under the terms of the GNU Lesser General Public License as published by
 
8
 the Free Software Foundation; either version 2.1 of the License, or
 
9
 (at your option) any later version.
 
10
 
 
11
 This software is distributed in the hope that it will be useful,
 
12
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
14
 GNU General Public License for more details.
 
15
 
 
16
 You should have received a copy of the GNU General Public License
 
17
 along with this program; if not, write to the Free Software
 
18
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 
19
 02110-1301, USA.
 
20
 
 
21
 **********************************************************************/
 
22
 
 
23
#include "statemachine.h"
 
24
 
 
25
StateSwitcher::StateSwitcher(QStateMachine *machine)
 
26
        : QState(machine)
 
27
{
 
28
}
 
29
 
 
30
void StateSwitcher::addState(QState *state, QAbstractAnimation *animation, const int &id)
 
31
{
 
32
    StateSwitchTransition *trans = new StateSwitchTransition(id);
 
33
    trans->setTargetState(state);
 
34
    addTransition(trans);
 
35
    trans->addAnimation(animation);
 
36
}
 
37
 
 
38
 
 
39
void StateSwitcher::switchToState(const int &n)
 
40
{
 
41
    machine()->postEvent(new StateSwitchEvent(n));
 
42
}
 
43