summaryrefslogtreecommitdiff
path: root/examples/Misc/test_XtReactor2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/Misc/test_XtReactor2.cpp')
-rw-r--r--examples/Misc/test_XtReactor2.cpp59
1 files changed, 43 insertions, 16 deletions
diff --git a/examples/Misc/test_XtReactor2.cpp b/examples/Misc/test_XtReactor2.cpp
index 87aa062151e..3b153e32de4 100644
--- a/examples/Misc/test_XtReactor2.cpp
+++ b/examples/Misc/test_XtReactor2.cpp
@@ -4,6 +4,7 @@
// XtReactor implementation.
#include "ace/XtReactor.h"
+#include "ace/Reactor.h"
#include "ace/Message_Block.h"
#if defined (ACE_HAS_XT)
@@ -18,14 +19,19 @@ public:
int handle_input (ACE_HANDLE fd)
{
char c;
- if (read (0, &c, 1)==1)
- printf ("Got input '%d'\n", (int)c);
+ if (ACE_OS::read (ACE_STDIN, &c, 1)==1)
+ ACE_DEBUG ((LM_DEBUG,
+ "Got input '%d'\n",
+ (int) c));
return 0;
}
- int handle_timeout (const ACE_Time_Value &tv, const void *arg)
+ int handle_timeout (const ACE_Time_Value &tv,
+ const void *arg)
{
- printf ("Timeout! %f\n", (double) (tv.msec ()/1000.));
+ ACE_DEBUG ((LM_DEBUG,
+ "Timeout! %f\n",
+ (double) (tv.msec ()/1000.)));
return 0;
}
};
@@ -33,32 +39,52 @@ public:
static void
ActivateCB (Widget w, XtPointer, XtPointer)
{
- printf ("Button pushed!\n");
+ ACE_DEBUG ((LM_DEBUG,
+ "Button pushed!\n"));
}
int
main (int argc, char**argv)
{
// The worlds most useless user interface
- Widget top_level = XtVaAppInitialize (NULL, "buttontest", NULL, 0,
- &argc, argv, NULL, NULL);
- Widget button = XmCreatePushButton (top_level, "change", 0, 0);
+ Widget top_level = XtVaAppInitialize (NULL,
+ "buttontest",
+ NULL,
+ 0,
+ &argc,
+ argv,
+ NULL,
+ NULL);
+ Widget button = XmCreatePushButton (top_level,
+ "change",
+ 0,
+ 0);
XtManageChild (button);
- XtAddCallback (button, XmNactivateCallback, ActivateCB, NULL);
+ XtAddCallback (button,
+ XmNactivateCallback,
+ ActivateCB,
+ NULL);
// A reactor beastie.
- ACE_XtReactor reactor (XtWidgetToApplicationContext (top_level));
+ ACE_XtReactor xreactor (XtWidgetToApplicationContext (top_level));
+ ACE_XtReactor reactor (&xreactor);
// Print a message when data is recv'd on stdin...
- ACE_Event_Handler * stdin_ = new Stdin;
- reactor.register_handler (stdin_, ACE_Event_Handler::READ_MASK);
+ ACE_Event_Handler * stdin_;
+ ACE_NEW_RETURN (stdin_,
+ Stdin,
+ -1);
+ reactor.register_handler (stdin_,
+ ACE_Event_Handler::READ_MASK);
// Print a message every 10 seconds
if (reactor.schedule_timer (stdin_, 0,
ACE_Time_Value (10),
ACE_Time_Value (10)) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "schedule_timer"), -1);
-
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "%p\n",
+ "schedule_timer"), -1);
+
// Show the top_level widget
XtRealizeWidget (top_level);
@@ -69,7 +95,8 @@ main (int argc, char**argv)
int
main (int, char *[])
{
- ACE_ERROR ((LM_ERROR, "XT not configured for this platform\n"));
- return 0;
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "XT not configured for this platform\n"),
+ 0));
}
#endif /* ACE_HAS_XT */