Update package version to 9.0.13
[platform/core/uifw/isf.git] / ism / src / scim_signals.cpp
1 /*
2  * Most code of this file are came from Inti project.
3  */
4
5 /* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable. */
6
7 /*
8  * Smart Common Input Method
9  *
10  * Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
11  * Copyright (c) 2002 The Inti Development Team.
12  * Copyright (c) 2000 Red Hat, Inc.
13  * Copyright 1999, Karl Einar Nelson
14  *
15  *
16  * This library is free software; you can redistribute it and/or
17  * modify it under the terms of the GNU Lesser General Public
18  * License as published by the Free Software Foundation; either
19  * version 2 of the License, or (at your option) any later version.
20  *
21  * This library is distributed in the hope that it will be useful,
22  * but WITHOUT ANY WARRANTY; without even the implied warranty of
23  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24  * GNU Lesser General Public License for more details.
25  *
26  * You should have received a copy of the GNU Lesser General Public
27  * License along with this program; if not, write to the
28  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
29  * Boston, MA  02111-1307  USA
30  *
31  * $Id: scim_signals.cpp,v 1.7 2005/01/10 08:30:54 suzhe Exp $
32  */
33
34 #define Uses_SCIM_OBJECT
35 #define Uses_SCIM_SIGNALS
36 #define Uses_SCIM_SLOT
37 #define Uses_SCIM_CONNECTION
38
39 #include "scim_private.h"
40 #include "scim.h"
41
42 namespace scim {
43
44 /*  SlotNode
45  */
46
47 SlotNode::SlotNode(Slot *l_slot)
48 : Node(l_slot), is_blocked(false)
49 {
50 }
51
52 SlotNode::~SlotNode()
53 {
54 }
55
56 void
57 SlotNode::block()
58 {
59     is_blocked = true;
60 }
61
62 void
63 SlotNode::unblock()
64 {
65     is_blocked = false;
66 }
67
68 void
69 SlotNode::disconnect()
70 {
71     Node::disconnect ();
72     is_blocked = true;
73 }
74
75 /*  Signal;
76  */
77
78 Signal::Signal()
79 {
80 }
81
82 Signal::~Signal()
83 {
84 }
85
86 SlotNode*
87 Signal::connect(Slot *slot)
88 {
89     SlotNode *node = new SlotNode(slot);
90     connection_list.push_back(node);
91     return node;
92 }
93
94 void
95 Signal::reset()
96 {
97     connection_list.clear ();
98 }
99
100 } // namespace scim
101
102 /*
103 vi:ts=4:nowrap:ai:expandtab
104 */