Index: trunk/Ohana/src/kapa/graph/LoadPtext.c
===================================================================
--- trunk/Ohana/src/kapa/graph/LoadPtext.c	(revision 4769)
+++ trunk/Ohana/src/kapa/graph/LoadPtext.c	(revision 6240)
@@ -3,7 +3,7 @@
 int LoadPtext () {
   
-  char buffer[256], *c;
+  char *string;
   int N, status, size;
-  double tmp, L;
+  double tX, tY, tT, L;
   Layout *layout;
   
@@ -17,29 +17,23 @@
   REALLOCATE (layout[0].ptext, Label, layout[0].Nptext);
 
-  status = read (sock, buffer, 16); 
-  buffer[16] = 0; 
-  sscanf (buffer, "%lf", &tmp); 
+  KiiScanMessage (sock, "%lf %lf %lf", &tX, &tY, &tT);
+
   L = layout[0].axis[0].dfx;
-  layout[0].ptext[N].x = L * (tmp - layout[0].axis[0].min) / (layout[0].axis[0].max - layout[0].axis[0].min) + layout[0].axis[0].fx;
+  layout[0].ptext[N].x = L * (tX - layout[0].axis[0].min) / (layout[0].axis[0].max - layout[0].axis[0].min) + layout[0].axis[0].fx;
 
-  status = read (sock, buffer, 16); 
-  buffer[16] = 0; 
-  sscanf (buffer, "%lf", &tmp); 
   L = layout[0].axis[1].dfy;
-  layout[0].ptext[N].y = L * (tmp - layout[0].axis[1].min) / (layout[0].axis[1].max - layout[0].axis[1].min) + layout[0].axis[1].fy;
+  layout[0].ptext[N].y = L * (tY - layout[0].axis[1].min) / (layout[0].axis[1].max - layout[0].axis[1].min) + layout[0].axis[1].fy;
 
-  status = read (sock, buffer, 16); 
-  buffer[16] = 0; 
-  sscanf (buffer, "%lf", &layout[0].ptext[N].angle); 
+  layout[0].ptext[N].angle = tT;
 
-  status = read (sock, buffer, 128); 
-  buffer[status] = 0; 
-  strcpy (layout[0].ptext[N].text, buffer);
+  string = KiiRecvData (sock);
+  strcpy (layout[0].ptext[N].text, string);
+  free (string);
 
   fcntl (sock, F_SETFL, O_NONBLOCK);  
   
-  c = GetRotFont (&size);
+  string = GetRotFont (&size);
   layout[0].ptext[N].size = size;
-  strcpy (layout[0].ptext[N].font, c);
+  strcpy (layout[0].ptext[N].font, string);
 
   DrawPtext (layout);
