[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pingus-CVS] CVS: Games/Pingus/src/input axis_factory.cxx,1.10,1.11 butt
From: |
torangan |
Subject: |
[Pingus-CVS] CVS: Games/Pingus/src/input axis_factory.cxx,1.10,1.11 button_factory.cxx,1.9,1.10 controller.cxx,1.21,1.22 pointer_factory.cxx,1.7,1.8 scroller_factory.cxx,1.8,1.9 |
Date: |
10 Sep 2002 21:03:35 -0000 |
Update of /usr/local/cvsroot/Games/Pingus/src/input
In directory dark:/tmp/cvs-serv9330/input
Modified Files:
axis_factory.cxx button_factory.cxx controller.cxx
pointer_factory.cxx scroller_factory.cxx
Log Message:
added and applied to XMLhelper methods
Index: axis_factory.cxx
===================================================================
RCS file: /usr/local/cvsroot/Games/Pingus/src/input/axis_factory.cxx,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- axis_factory.cxx 26 Aug 2002 13:53:04 -0000 1.10
+++ axis_factory.cxx 10 Sep 2002 21:03:32 -0000 1.11
@@ -31,122 +31,122 @@
namespace Input {
- using namespace Axes;
+using namespace Axes;
- Axis* AxisFactory::create(xmlNodePtr cur)
- {
- if (!cur)
- PingusError::raise("AxisFactory called without an element");
+Axis* AxisFactory::create(xmlNodePtr cur)
+{
+ if (!cur)
+ PingusError::raise("AxisFactory called without an element");
- if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "button-axis"))
- return button_axis(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"inverted-axis"))
- return inverted_axis(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"joystick-axis"))
- return joystick_axis(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "mouse-axis"))
- return mouse_axis(cur);
+ if (XMLhelper::equal_str(cur->name, "button-axis"))
+ return button_axis(cur);
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"multiple-axis"))
- return multiple_axis(cur->children);
-
- else
- PingusError::raise(std::string("Unknown axis type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
-
- return 0; // never reached
- }
+ else if (XMLhelper::equal_str(cur->name, "inverted-axis"))
+ return inverted_axis(cur);
- Axis* AxisFactory::button_axis (xmlNodePtr cur)
- {
- char * angle_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("angle")));
- if (!angle_str)
- PingusError::raise("ButtonAxis without angle parameter");
-
- float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
- xmlFree(angle_str);
+ else if (XMLhelper::equal_str(cur->name, "joystick-axis"))
+ return joystick_axis(cur);
- cur = XMLhelper::skip_blank(cur->children);
- Button* button1 = ButtonFactory::create(cur);
+ else if (XMLhelper::equal_str(cur->name, "mouse-axis"))
+ return mouse_axis(cur);
- cur = XMLhelper::skip_blank(cur->next);
- Button* button2 = ButtonFactory::create(cur);
-
- return new ButtonAxis(angle, button1, button2);
- }
+ else if (XMLhelper::equal_str(cur->name, "multiple-axis"))
+ return multiple_axis(cur->children);
- Axis* AxisFactory::inverted_axis (xmlNodePtr cur)
- {
- return new InvertedAxis(create(cur->children));
- }
-
- Axis* AxisFactory::joystick_axis (xmlNodePtr cur)
- {
- char * angle_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("angle")));
- if (!angle_str)
- PingusError::raise("JoystickAxis without angle parameter");
+ else
+ PingusError::raise(std::string("Unknown axis type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
- char * id_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("id")));
- if (!id_str)
- PingusError::raise("JoystickAxis without id parameter");
-
- char * axis_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("axis")));
- if (!axis_str)
- PingusError::raise("JoystickAxis without axis parameter");
-
- float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
- int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
- int axis = strtol(axis_str, reinterpret_cast<char**>(NULL), 10);
-
- xmlFree(angle_str);
- xmlFree(id_str);
- xmlFree(axis_str);
-
- return new JoystickAxis(id, axis, angle);
- }
+ return 0; // never reached
+}
- Axis* AxisFactory::mouse_axis (xmlNodePtr cur)
- {
- char * angle_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("angle")));
- if (!angle_str)
- PingusError::raise("MouseAxis without angle parameter");
-
- char * axis_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("axis")));
- if (!axis_str)
- PingusError::raise("MouseAxis without axis parameter");
-
- float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
- int axis = strtol(axis_str, reinterpret_cast<char**>(NULL), 10);
-
- xmlFree(angle_str);
- xmlFree(axis_str);
-
- return new MouseAxis(axis, angle);
- }
+Axis* AxisFactory::button_axis (xmlNodePtr cur)
+{
+ char * angle_str = XMLhelper::get_prop(cur, "angle");
+ if (!angle_str)
+ PingusError::raise("ButtonAxis without angle parameter");
- Axis* AxisFactory::multiple_axis (xmlNodePtr cur)
- {
- std::vector<Axis*> axes;
-
- while (cur)
- {
- if (xmlIsBlankNode(cur))
- {
- cur = cur->next;
- continue;
- }
-
- axes.push_back(create(cur));
- cur = cur->next;
- }
+ float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
+ xmlFree(angle_str);
+
+ cur = XMLhelper::skip_blank(cur->children);
+ Button* button1 = ButtonFactory::create(cur);
+
+ cur = XMLhelper::skip_blank(cur->next);
+ Button* button2 = ButtonFactory::create(cur);
+
+ return new ButtonAxis(angle, button1, button2);
+}
+
+Axis* AxisFactory::inverted_axis (xmlNodePtr cur)
+{
+ return new InvertedAxis(create(cur->children));
+}
+
+Axis* AxisFactory::joystick_axis (xmlNodePtr cur)
+{
+ char * angle_str = XMLhelper::get_prop(cur, "angle");
+ if (!angle_str)
+ PingusError::raise("JoystickAxis without angle parameter");
+
+ char * id_str = XMLhelper::get_prop(cur, "id");
+ if (!id_str)
+ PingusError::raise("JoystickAxis without id parameter");
+
+ char * axis_str = XMLhelper::get_prop(cur, "axis");
+ if (!axis_str)
+ PingusError::raise("JoystickAxis without axis parameter");
+
+ float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
+ int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
+ int axis = strtol(axis_str, reinterpret_cast<char**>(NULL), 10);
+
+ xmlFree(angle_str);
+ xmlFree(id_str);
+ xmlFree(axis_str);
+
+ return new JoystickAxis(id, axis, angle);
+}
+
+Axis* AxisFactory::mouse_axis (xmlNodePtr cur)
+{
+ char * angle_str = XMLhelper::get_prop(cur, "angle");
+ if (!angle_str)
+ PingusError::raise("MouseAxis without angle parameter");
+
+ char * axis_str = XMLhelper::get_prop(cur, "axis");
+ if (!axis_str)
+ PingusError::raise("MouseAxis without axis parameter");
+
+ float angle = strtod(angle_str, reinterpret_cast<char**>(NULL));
+ int axis = strtol(axis_str, reinterpret_cast<char**>(NULL), 10);
+
+ xmlFree(angle_str);
+ xmlFree(axis_str);
+
+ return new MouseAxis(axis, angle);
+}
+
+Axis* AxisFactory::multiple_axis (xmlNodePtr cur)
+{
+ std::vector<Axis*> axes;
+
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur))
+ {
+ cur = cur->next;
+ continue;
+ }
- if (!axes.size())
- PingusError::raise("MultipleAxis without any axis");
+ axes.push_back(create(cur));
+ cur = cur->next;
+ }
- return new MultipleAxis(axes);
- }
+ if (!axes.size())
+ PingusError::raise("MultipleAxis without any axis");
+
+ return new MultipleAxis(axes);
+}
}
Index: button_factory.cxx
===================================================================
RCS file: /usr/local/cvsroot/Games/Pingus/src/input/button_factory.cxx,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- button_factory.cxx 9 Sep 2002 09:38:48 -0000 1.9
+++ button_factory.cxx 10 Sep 2002 21:03:32 -0000 1.10
@@ -31,125 +31,125 @@
namespace Input {
- using namespace Buttons;
-
- Button* ButtonFactory::create (xmlNodePtr cur)
- {
- if (!cur)
- PingusError::raise("ButtonFactory called without an element");
+using namespace Buttons;
- if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "double-button"))
- return double_button(XMLhelper::skip_blank(cur->children));
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"joystick-button"))
- return joystick_button(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "key-button"))
- return key_button(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"mouse-button"))
- return mouse_button(cur);
+Button* ButtonFactory::create (xmlNodePtr cur)
+{
+ if (!cur)
+ PingusError::raise("ButtonFactory called without an element");
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"multiple-button"))
- return multiple_button(cur->children);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"triple-button"))
- return triple_button(XMLhelper::skip_blank(cur->children));
+ if (XMLhelper::equal_str(cur->name, "double-button"))
+ return double_button(XMLhelper::skip_blank(cur->children));
- else
- PingusError::raise(std::string("Unknown button type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
-
- return 0; // never reached
- }
-
- Button* ButtonFactory::double_button (xmlNodePtr cur)
- {
- Button *button1, *button2;
+ else if (XMLhelper::equal_str(cur->name, "joystick-button"))
+ return joystick_button(cur);
- button1 = create(cur);
+ else if (XMLhelper::equal_str(cur->name, "key-button"))
+ return key_button(cur);
- cur = XMLhelper::skip_blank(cur->next);
- button2 = create(cur);
-
- return new DoubleButton(button1, button2);
- }
+ else if (XMLhelper::equal_str(cur->name, "mouse-button"))
+ return mouse_button(cur);
- Button* ButtonFactory::joystick_button (xmlNodePtr cur)
- {
- char * id_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("id")));
- if (!id_str)
- PingusError::raise("JoystickButton without id parameter");
+ else if (XMLhelper::equal_str(cur->name, "multiple-button"))
+ return multiple_button(cur->children);
- char * button_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("button")));
- if (!button_str)
- PingusError::raise("JoystickButton without button parameter");
-
- int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
- int button = strtol(button_str, reinterpret_cast<char**>(NULL), 10);
-
- xmlFree(id_str);
- xmlFree(button_str);
-
- return new JoystickButton(id, button);
- }
+ else if (XMLhelper::equal_str(cur->name, "triple-button"))
+ return triple_button(XMLhelper::skip_blank(cur->children));
- Button* ButtonFactory::key_button (xmlNodePtr cur)
- {
- char * key_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("key")));
- if (!key_str)
- PingusError::raise("KeyButton without key parameter");
-
- int key = KeyHelper::string_to_key(key_str);
-
- xmlFree(key_str);
+ else
+ PingusError::raise(std::string("Unknown button type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
- return new KeyButton(key);
- }
+ return 0; // never reached
+}
- Button* ButtonFactory::mouse_button (xmlNodePtr cur)
- {
- char * button_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("button")));
- if (!button_str)
- PingusError::raise("MouseButton without button parameter");
-
- int button = strtol(button_str, reinterpret_cast<char**>(NULL), 10);
- xmlFree(button_str);
-
- return new MouseButton(button);
- }
+Button* ButtonFactory::double_button (xmlNodePtr cur)
+{
+ Button *button1, *button2;
- Button* ButtonFactory::multiple_button (xmlNodePtr cur)
- {
- std::vector<Button*> buttons;
-
- while (cur)
- {
- if (xmlIsBlankNode(cur)) {
- cur = cur->next;
- continue;
- }
-
- buttons.push_back(create(cur));
+ button1 = create(cur);
+
+ cur = XMLhelper::skip_blank(cur->next);
+ button2 = create(cur);
+
+ return new DoubleButton(button1, button2);
+}
+
+Button* ButtonFactory::joystick_button (xmlNodePtr cur)
+{
+ char * id_str = XMLhelper::get_prop(cur, "id");
+ if (!id_str)
+ PingusError::raise("JoystickButton without id parameter");
+
+ char * button_str = XMLhelper::get_prop(cur, "button");
+ if (!button_str)
+ PingusError::raise("JoystickButton without button parameter");
+
+ int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
+ int button = strtol(button_str, reinterpret_cast<char**>(NULL), 10);
+
+ xmlFree(id_str);
+ xmlFree(button_str);
+
+ return new JoystickButton(id, button);
+}
+
+Button* ButtonFactory::key_button (xmlNodePtr cur)
+{
+ char * key_str = XMLhelper::get_prop(cur, "key");
+ if (!key_str)
+ PingusError::raise("KeyButton without key parameter");
+
+ int key = KeyHelper::string_to_key(key_str);
+
+ xmlFree(key_str);
+
+ return new KeyButton(key);
+}
+
+Button* ButtonFactory::mouse_button (xmlNodePtr cur)
+{
+ char * button_str = XMLhelper::get_prop(cur, "button");
+ if (!button_str)
+ PingusError::raise("MouseButton without button parameter");
+
+ int button = strtol(button_str, reinterpret_cast<char**>(NULL), 10);
+ xmlFree(button_str);
+
+ return new MouseButton(button);
+}
+
+Button* ButtonFactory::multiple_button (xmlNodePtr cur)
+{
+ std::vector<Button*> buttons;
+
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur)) {
cur = cur->next;
+ continue;
}
- return new MultipleButton(buttons);
- }
-
- Button* ButtonFactory::triple_button (xmlNodePtr cur)
- {
- Button *button1, *button2, *button3;
-
- button1 = create(cur);
-
- cur = XMLhelper::skip_blank(cur->next);
- button2 = create(cur);
+ buttons.push_back(create(cur));
+ cur = cur->next;
+ }
- cur = XMLhelper::skip_blank(cur->next);
- button3 = create(cur);
-
- return new TripleButton(button1, button2, button3);
- }
+ return new MultipleButton(buttons);
+}
+
+Button* ButtonFactory::triple_button (xmlNodePtr cur)
+{
+ Button *button1, *button2, *button3;
+
+ button1 = create(cur);
+
+ cur = XMLhelper::skip_blank(cur->next);
+ button2 = create(cur);
+
+ cur = XMLhelper::skip_blank(cur->next);
+ button3 = create(cur);
+
+ return new TripleButton(button1, button2, button3);
+}
}
Index: controller.cxx
===================================================================
RCS file: /usr/local/cvsroot/Games/Pingus/src/input/controller.cxx,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- controller.cxx 24 Aug 2002 11:37:29 -0000 1.21
+++ controller.cxx 10 Sep 2002 21:03:32 -0000 1.22
@@ -54,11 +54,11 @@
xmlNodePtr cur = doc->ROOT;
- if (!cur || strcmp(reinterpret_cast<const char*>(cur->name),
"pingus-controller") != 0)
+ if (!cur || XMLhelper::equal_str(cur->name, "pingus-controller") != 0)
PingusError::raise("Controller: invalid config file <" + configfile +
">");
cur = XMLhelper::skip_blank(cur->children);
- if (!cur || strcmp(reinterpret_cast<const char*>(cur->name),
"controller-config") != 0)
+ if (!cur || XMLhelper::equal_str(cur->name, "controller-config") != 0)
PingusError::raise("Controller: invalid config file <" + configfile +
">");
cur = XMLhelper::skip_blank(cur->children);
@@ -70,34 +70,34 @@
continue;
}
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"standard-pointer"))
+ else if (XMLhelper::equal_str(cur->name, "standard-pointer"))
standard_pointer =
PointerFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"scroller"))
+ else if (XMLhelper::equal_str(cur->name, "scroller"))
scroller =
ScrollerFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"primary-button"))
+ else if (XMLhelper::equal_str(cur->name, "primary-button"))
buttons[primary].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"secondary-button"))
+ else if (XMLhelper::equal_str(cur->name, "secondary-button"))
buttons[secondary].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"pause-button"))
+ else if (XMLhelper::equal_str(cur->name, "pause-button"))
buttons[pause].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"fast-forward-button"))
+ else if (XMLhelper::equal_str(cur->name, "fast-forward-button"))
buttons[fast_forward].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"armageddon-button"))
+ else if (XMLhelper::equal_str(cur->name, "armageddon-button"))
buttons[armageddon].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"escape-button"))
+ else if (XMLhelper::equal_str(cur->name, "escape-button"))
buttons[escape].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"action-buttons"))
+ else if (XMLhelper::equal_str(cur->name, "action-buttons"))
create_action_buttons(XMLhelper::skip_blank(cur->children));
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"action-axis"))
+ else if (XMLhelper::equal_str(cur->name, "action-axis"))
action_axis =
AxisFactory::create(XMLhelper::skip_blank(cur->children));
else
@@ -182,7 +182,7 @@
continue;
}
- if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"action-button"))
+ if (XMLhelper::equal_str(cur->name, "action-button"))
buttons[static_cast<ButtonName>(action_1 + count)].first =
ButtonFactory::create(XMLhelper::skip_blank(cur->children));
else
PingusError::raise(std::string("Wrong Element in Controller Config
(action-buttons): ") + reinterpret_cast<const char*>(cur->name));
Index: pointer_factory.cxx
===================================================================
RCS file: /usr/local/cvsroot/Games/Pingus/src/input/pointer_factory.cxx,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- pointer_factory.cxx 26 Aug 2002 13:53:04 -0000 1.7
+++ pointer_factory.cxx 10 Sep 2002 21:03:32 -0000 1.8
@@ -28,78 +28,78 @@
namespace Input {
- using namespace Pointers;
+using namespace Pointers;
+
+Pointer* PointerFactory::create (xmlNodePtr cur)
+{
+ if (!cur)
+ PingusError::raise("PointerFactory called without an element");
+
+ if (XMLhelper::equal_str(cur->name, "axis-pointer"))
+ return axis_pointer(cur);
- Pointer* PointerFactory::create (xmlNodePtr cur)
- {
- if (!cur)
- PingusError::raise("PointerFactory called without an element");
+ else if (XMLhelper::equal_str(cur->name, "mouse-pointer"))
+ return mouse_pointer();
+
+ else if (XMLhelper::equal_str(cur->name, "multiple-pointer"))
+ return multiple_pointer(cur->children);
+
+ else
+ PingusError::raise(std::string("Unknown pointer type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
+
+ return 0; // never reached
+}
- if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "axis-pointer"))
- return axis_pointer(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"mouse-pointer"))
- return mouse_pointer();
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"multiple-pointer"))
- return multiple_pointer(cur->children);
-
- else
- PingusError::raise(std::string("Unknown pointer type: ") + ((cur->name)
? reinterpret_cast<const char*>(cur->name) : ""));
-
- return 0; // never reached
- }
+Pointer* PointerFactory::axis_pointer (xmlNodePtr cur)
+{
+ char* speed_str = XMLhelper::get_prop(cur, "speed");
+ if (!speed_str)
+ PingusError::raise("AxisPointer without speed parameter");
- Pointer* PointerFactory::axis_pointer (xmlNodePtr cur)
- {
- char* speed_str = reinterpret_cast<char*>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("speed")));
- if (!speed_str)
- PingusError::raise("AxisPointer without speed parameter");
+ float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
+ xmlFree(speed_str);
- float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
- xmlFree(speed_str);
+ std::vector<Axis*> axes;
+ cur = cur->children;
- std::vector<Axis*> axes;
- cur = cur->children;
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur))
+ {
+ cur = cur->next;
+ continue;
+ }
+
+ axes.push_back(AxisFactory::create(cur));
+ cur = cur->next;
+ }
- while (cur)
- {
- if (xmlIsBlankNode(cur))
- {
- cur = cur->next;
- continue;
- }
-
- axes.push_back(AxisFactory::create(cur));
- cur = cur->next;
- }
-
- return new AxisPointer(speed, axes);
- }
+ return new AxisPointer(speed, axes);
+}
- Pointer* PointerFactory::mouse_pointer ()
- {
- return new MousePointer;
- }
+Pointer* PointerFactory::mouse_pointer ()
+{
+ return new MousePointer;
+}
- Pointer* PointerFactory::multiple_pointer (xmlNodePtr cur)
- {
- std::vector<Pointer*> pointers;
+Pointer* PointerFactory::multiple_pointer (xmlNodePtr cur)
+{
+ std::vector<Pointer*> pointers;
- while (cur)
- {
- if (xmlIsBlankNode(cur))
- {
- cur = cur->next;
- continue;
- }
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur))
+ {
+ cur = cur->next;
+ continue;
+ }
- pointers.push_back(create(cur));
- cur = cur->next;
- }
-
- return new MultiplePointer(pointers);
- }
+ pointers.push_back(create(cur));
+ cur = cur->next;
+ }
+
+ return new MultiplePointer(pointers);
+}
}
Index: scroller_factory.cxx
===================================================================
RCS file: /usr/local/cvsroot/Games/Pingus/src/input/scroller_factory.cxx,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- scroller_factory.cxx 26 Aug 2002 13:53:04 -0000 1.8
+++ scroller_factory.cxx 10 Sep 2002 21:03:32 -0000 1.9
@@ -37,146 +37,146 @@
namespace Input {
- using namespace Scrollers;
-
- Scroller*
- ScrollerFactory::create(xmlNodePtr cur)
- {
- if (!cur)
- PingusError::raise("ScrollerFactory called without an element");
-
- if ( ! strcmp(reinterpret_cast<const char*>(cur->name), "axis-scroller"))
- return axis_scroller(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"inverted-scroller"))
- return inverted_scroller(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"joystick-scroller"))
- return joystick_scroller(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"mouse-scroller"))
- return mouse_scroller(cur);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"multiple-scroller"))
- return multiple_scroller(cur->children);
-
- else if ( ! strcmp(reinterpret_cast<const char*>(cur->name),
"pointer-scroller"))
- return pointer_scroller(XMLhelper::skip_blank(cur->children));
-
- else
- PingusError::raise(std::string("Unknown scroller type: ") + ((cur->name)
? reinterpret_cast<const char*>(cur->name) : ""));
-
- return 0; // never reached
- }
-
- Scroller*
- ScrollerFactory::axis_scroller (xmlNodePtr cur)
- {
- char * speed_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("speed")));
- if (!speed_str)
- PingusError::raise("AxisScroller without speed parameter");
-
- float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
- xmlFree(speed_str);
+using namespace Scrollers;
- std::vector<Axis*> axes;
- cur = cur->children;
-
- while (cur)
- {
- if (xmlIsBlankNode(cur))
- {
- cur = cur->next;
- continue;
- }
-
- axes.push_back(AxisFactory::create(cur));
- cur = cur->next;
- }
+Scroller*
+ScrollerFactory::create(xmlNodePtr cur)
+{
+ if (!cur)
+ PingusError::raise("ScrollerFactory called without an element");
- return new AxisScroller(axes, speed);
- }
-
- Scroller*
- ScrollerFactory::inverted_scroller (xmlNodePtr cur)
- {
- char * invert_x_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("invert-x")));
- if (!invert_x_str)
- PingusError::raise("InvertedScroller without invert X parameter");
+ if (XMLhelper::equal_str(cur->name, "axis-scroller"))
+ return axis_scroller(cur);
- char * invert_y_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("invert-y")));
- if (!invert_y_str)
- PingusError::raise("InvertedScroller without invert Y parameter");
-
- bool invert_x = strtol(invert_x_str, reinterpret_cast<char**>(NULL), 10);
- bool invert_y = strtol(invert_x_str, reinterpret_cast<char**>(NULL), 10);
+ else if (XMLhelper::equal_str(cur->name, "inverted-scroller"))
+ return inverted_scroller(cur);
- xmlFree(invert_x_str);
- xmlFree(invert_y_str);
+ else if (XMLhelper::equal_str(cur->name, "joystick-scroller"))
+ return joystick_scroller(cur);
- Scroller* scroller;
- cur = XMLhelper::skip_blank(cur->children);
- scroller = create(cur);
+ else if (XMLhelper::equal_str(cur->name, "mouse-scroller"))
+ return mouse_scroller(cur);
- return new InvertedScroller(scroller, invert_x, invert_y);
- }
-
- Scroller*
- ScrollerFactory::joystick_scroller (xmlNodePtr cur)
- {
- char * id_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("id")));
- if (!id_str)
- PingusError::raise("JoystickScroller without id parameter");
+ else if (XMLhelper::equal_str(cur->name, "multiple-scroller"))
+ return multiple_scroller(cur->children);
- char * speed_str = reinterpret_cast<char *>(xmlGetProp(cur,
reinterpret_cast<const xmlChar*>("speed")));
- if (!speed_str)
- PingusError::raise("JoystickScroller without speed parameter");
-
- int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
- float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
+ else if (XMLhelper::equal_str(cur->name, "pointer-scroller"))
+ return pointer_scroller(XMLhelper::skip_blank(cur->children));
- xmlFree(id_str);
- xmlFree(speed_str);
+ else
+ PingusError::raise(std::string("Unknown scroller type: ") + ((cur->name) ?
reinterpret_cast<const char*>(cur->name) : ""));
- return new JoystickScroller(id, speed);
- }
+ return 0; // never reached
+}
- Scroller*
- ScrollerFactory::mouse_scroller (xmlNodePtr)
- {
- return new MouseScroller;
- }
+Scroller*
+ScrollerFactory::axis_scroller (xmlNodePtr cur)
+{
+ char * speed_str = XMLhelper::get_prop(cur, "speed");
+ if (!speed_str)
+ PingusError::raise("AxisScroller without speed parameter");
+
+ float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
+ xmlFree(speed_str);
- Scroller*
- ScrollerFactory::multiple_scroller (xmlNodePtr cur)
- {
- std::vector<Scroller*> scrollers;
-
- while (cur)
- {
- if (xmlIsBlankNode(cur))
- cur = cur->next;
-
- scrollers.push_back(create(cur));
- cur = cur->next;
- }
-
- return new MultipleScroller(scrollers);
- }
+ std::vector<Axis*> axes;
+ cur = cur->children;
+
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur))
+ {
+ cur = cur->next;
+ continue;
+ }
+
+ axes.push_back(AxisFactory::create(cur));
+ cur = cur->next;
+ }
- Scroller*
- ScrollerFactory::pointer_scroller (xmlNodePtr cur)
- {
- Pointer* pointer;
- Button* button;
-
- pointer = PointerFactory::create(cur);
+ return new AxisScroller(axes, speed);
+}
+
+Scroller*
+ScrollerFactory::inverted_scroller (xmlNodePtr cur)
+{
+ char * invert_x_str = XMLhelper::get_prop(cur, "invert-x");
+ if (!invert_x_str)
+ PingusError::raise("InvertedScroller without invert X parameter");
+
+ char * invert_y_str = XMLhelper::get_prop(cur, "invert-y");
+ if (!invert_y_str)
+ PingusError::raise("InvertedScroller without invert Y parameter");
- cur = XMLhelper::skip_blank(cur->next);
- button = ButtonFactory::create(cur);
+ bool invert_x = strtol(invert_x_str, reinterpret_cast<char**>(NULL), 10);
+ bool invert_y = strtol(invert_x_str, reinterpret_cast<char**>(NULL), 10);
+
+ xmlFree(invert_x_str);
+ xmlFree(invert_y_str);
+
+ Scroller* scroller;
+ cur = XMLhelper::skip_blank(cur->children);
+ scroller = create(cur);
+
+ return new InvertedScroller(scroller, invert_x, invert_y);
+}
+
+Scroller*
+ScrollerFactory::joystick_scroller (xmlNodePtr cur)
+{
+ char * id_str = XMLhelper::get_prop(cur, "id");
+ if (!id_str)
+ PingusError::raise("JoystickScroller without id parameter");
+
+ char * speed_str = XMLhelper::get_prop(cur, "speed");
+ if (!speed_str)
+ PingusError::raise("JoystickScroller without speed parameter");
+
+ int id = strtol(id_str, reinterpret_cast<char**>(NULL), 10);
+ float speed = strtod(speed_str, reinterpret_cast<char**>(NULL));
+
+ xmlFree(id_str);
+ xmlFree(speed_str);
+
+ return new JoystickScroller(id, speed);
+}
+
+Scroller*
+ScrollerFactory::mouse_scroller (xmlNodePtr)
+{
+ return new MouseScroller;
+}
+
+Scroller*
+ScrollerFactory::multiple_scroller (xmlNodePtr cur)
+{
+ std::vector<Scroller*> scrollers;
+
+ while (cur)
+ {
+ if (xmlIsBlankNode(cur))
+ cur = cur->next;
- return new PointerScroller(pointer, button);
- }
+ scrollers.push_back(create(cur));
+ cur = cur->next;
+ }
+
+ return new MultipleScroller(scrollers);
+}
+
+Scroller*
+ScrollerFactory::pointer_scroller (xmlNodePtr cur)
+{
+ Pointer* pointer;
+ Button* button;
+
+ pointer = PointerFactory::create(cur);
+
+ cur = XMLhelper::skip_blank(cur->next);
+ button = ButtonFactory::create(cur);
+
+ return new PointerScroller(pointer, button);
+}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Pingus-CVS] CVS: Games/Pingus/src/input axis_factory.cxx,1.10,1.11 button_factory.cxx,1.9,1.10 controller.cxx,1.21,1.22 pointer_factory.cxx,1.7,1.8 scroller_factory.cxx,1.8,1.9,
torangan <=
- Prev by Date:
[Pingus-CVS] CVS: Games/Pingus/src/worldobjsdata bumper_data.cxx,1.3,1.4 fake_exit_data.cxx,1.3,1.4 guillotine_data.cxx,1.3,1.4 hammer_data.cxx,1.3,1.4 laser_exit_data.cxx,1.3,1.4 smasher_data.cxx,1.3,1.4 spike_data.cxx,1.3,1.4 teleporter_data.cxx,1.2,1.3
- Next by Date:
[Pingus-CVS] CVS: Games/Pingus/src entrance_data.cxx,1.6,1.7 exit_data.cxx,1.5,1.6 groundpiece_data.cxx,1.8,1.9 hotspot_data.cxx,1.4,1.5 liquid_data.cxx,1.6,1.7 plt_xml.cxx,1.6,1.7 worldobj_data_factory.cxx,1.6,1.7 worldobj_group_data.cxx,1.7,1.8 xml_helper.cxx,1.14,1.15 xml_helper.hxx,1.8,1.9 xml_plf.cxx,1.13,1.14
- Previous by thread:
[Pingus-CVS] CVS: Games/Pingus/src/worldobjsdata bumper_data.cxx,1.3,1.4 fake_exit_data.cxx,1.3,1.4 guillotine_data.cxx,1.3,1.4 hammer_data.cxx,1.3,1.4 laser_exit_data.cxx,1.3,1.4 smasher_data.cxx,1.3,1.4 spike_data.cxx,1.3,1.4 teleporter_data.cxx,1.2,1.3
- Next by thread:
[Pingus-CVS] CVS: Games/Pingus/src entrance_data.cxx,1.6,1.7 exit_data.cxx,1.5,1.6 groundpiece_data.cxx,1.8,1.9 hotspot_data.cxx,1.4,1.5 liquid_data.cxx,1.6,1.7 plt_xml.cxx,1.6,1.7 worldobj_data_factory.cxx,1.6,1.7 worldobj_group_data.cxx,1.7,1.8 xml_helper.cxx,1.14,1.15 xml_helper.hxx,1.8,1.9 xml_plf.cxx,1.13,1.14
- Index(es):