Changeset 1b6b2f3
- Timestamp:
- Oct 27, 2006, 1:17:18 PM (16 years ago)
- Branches:
- master, barnowl_perlaim, debian, release-1.4, release-1.5, release-1.6, release-1.7, release-1.8, release-1.9
- Children:
- e74c01c
- Parents:
- dd16bdd
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
commands.c
r216c734 r1b6b2f3 2379 2379 if (argc==2) { 2380 2380 owl_global_set_buffercommand(&g, argv[1]); 2381 owl_global_set_buffercallback(&g, owl_function_aimlogin);2381 owl_global_set_buffercallback(&g, &owl_callback_aimlogin); 2382 2382 owl_function_start_password("AIM Password: "); 2383 2383 return(NULL); -
functions.c
r4211f50b r1b6b2f3 320 320 321 321 owl_global_set_buffercommand(&g, line); 322 owl_global_set_buffercallback(&g, &owl_ function_zwrite);322 owl_global_set_buffercallback(&g, &owl_callback_zwrite); 323 323 } 324 324 … … 351 351 352 352 owl_global_set_buffercommand(&g, line); 353 owl_global_set_buffercallback(&g, &owl_ function_aimwrite);353 owl_global_set_buffercallback(&g, &owl_callback_aimwrite); 354 354 } 355 355 … … 376 376 377 377 owl_global_set_buffercommand(&g, "loopwrite"); 378 owl_global_set_buffercallback(&g, &owl_function_loopwrite); 378 owl_global_set_buffercallback(&g, &owl_callback_loopwrite); 379 } 380 381 void owl_callback_zwrite(owl_editwin *e) { 382 owl_function_zwrite(owl_editwin_get_command(e), 383 owl_editwin_get_text(e)); 379 384 } 380 385 … … 486 491 } 487 492 493 void owl_callback_aimwrite(owl_editwin *e) { 494 owl_function_aimwrite(owl_editwin_get_command(e), 495 owl_editwin_get_text(e)); 496 } 497 488 498 void owl_function_aimwrite(char *line, char *msg) 489 499 { … … 562 572 } 563 573 564 void owl_function_loopwrite(char *line, char *msg) 574 void owl_callback_loopwrite(owl_editwin *e) { 575 owl_function_loopwrite(owl_editwin_get_text(e)); 576 } 577 578 void owl_function_loopwrite(char *msg) 565 579 { 566 580 owl_message *min, *mout; … … 932 946 owl_function_error("Error subscribing to login messages from file."); 933 947 } 948 } 949 950 void owl_callback_aimlogin(owl_editwin *e) { 951 owl_function_aimlogin(owl_editwin_get_command(e), 952 owl_global_get_response(&g)); 934 953 } 935 954 … … 1324 1343 void owl_function_run_buffercommand() 1325 1344 { 1326 char *buff; 1327 void (*cb)(char*, char*); 1328 1329 buff=owl_global_get_buffercommand(&g); 1330 cb=owl_global_get_buffercallback(&g); 1331 if(!cb) { 1332 owl_function_error("Internal error: No callback for buffercommand %s", buff); 1333 } else { 1334 cb(buff, owl_editwin_get_text(owl_global_get_typwin(&g))); 1335 } 1345 owl_editwin_do_callback(owl_global_get_typwin(&g)); 1336 1346 } 1337 1347 … … 2167 2177 } 2168 2178 if (cc) owl_free(cc); 2169 } 2170 2171 /* aim */ 2172 if (owl_message_is_type_aim(m)) { 2179 } else if (owl_message_is_type_aim(m)) { 2180 /* aim */ 2173 2181 if (owl_message_is_direction_out(m)) { 2174 2182 buff=owl_sprintf("aimwrite %s", owl_message_get_recipient(m)); … … 2176 2184 buff=owl_sprintf("aimwrite %s", owl_message_get_sender(m)); 2177 2185 } 2178 } 2179 2186 } else { 2187 char *cmd; 2188 if((type==0 && (cmd=owl_message_get_attribute_value(m, "replycmd"))) 2189 || (type==1 && (cmd=owl_message_get_attribute_value(m, "replysendercmd")))) { 2190 buff = owl_strdup(cmd); 2191 } 2192 } 2193 2180 2194 if (enter) { 2181 2195 owl_history *hist = owl_global_get_cmd_history(&g); -
global.c
r4211f50b r1b6b2f3 68 68 g->searchstring=NULL; 69 69 g->starttime=time(NULL); /* assumes we call init only a start time */ 70 g->buffercommand=NULL;71 70 g->newmsgproc_pid=0; 72 71 … … 241 240 242 241 void owl_global_set_buffercommand(owl_global *g, char *command) { 243 if (g->buffercommand) owl_free(g->buffercommand); 244 g->buffercommand=owl_strdup(command); 242 owl_editwin_set_command(owl_global_get_typwin(g), command); 245 243 } 246 244 247 245 char *owl_global_get_buffercommand(owl_global *g) { 248 if (g->buffercommand) return(g->buffercommand); 249 return(""); 250 } 251 252 void owl_global_set_buffercallback(owl_global *g, void (*cb)(char*,char*)) { 253 g->buffercallback = cb; 254 } 255 256 void (*owl_global_get_buffercallback(owl_global *g))(char*,char*) { 257 return g->buffercallback; 246 return owl_editwin_get_command(owl_global_get_typwin(g)); 247 } 248 249 void owl_global_set_buffercallback(owl_global *g, void (*cb)(owl_editwin*)) { 250 owl_editwin_set_callback(owl_global_get_typwin(g), cb); 251 } 252 253 void (*owl_global_get_buffercallback(owl_global *g))(owl_editwin*) { 254 return owl_editwin_get_callback(owl_global_get_typwin(g)); 258 255 } 259 256 -
owl.h
r39c036d r1b6b2f3 442 442 int dotsend; 443 443 int echochar; 444 445 char *command; 446 void (*callback)(struct _owl_editwin*); 447 void *cbdata; 444 448 } owl_editwin; 445 449 … … 536 540 int haveconfig; 537 541 int config_format; 538 char *buffercommand; 539 void (*buffercallback)(char *cmd, char *msg); 542 void *buffercbdata; 540 543 owl_editwin tw; 541 544 owl_viewwin vw; -
perlglue.xs
rdd16bdd r1b6b2f3 100 100 owl_cmddict_add_cmd(owl_global_get_cmddict(&g), &cmd); 101 101 102 void queue_message(msg) 102 void queue_message(msg) 103 103 SV *msg 104 104 PREINIT: … … 111 111 I32 len; 112 112 CODE: 113 { 113 114 if(!SvROK(msg) || SvTYPE(SvRV(msg)) != SVt_PVHV) { 114 115 croak("Usage: owl::queue_message($message)"); … … 131 132 } 132 133 } 134 owl_message_set_isprivate(m); 135 if(owl_message_is_type_admin(m)) { 136 if(!owl_message_get_attribute_value(m, "adminheader")) 137 owl_message_set_attribute(m, "adminheader", ""); 138 } 133 139 134 140 owl_global_messagequeue_addmsg(&g, m); 141 }
Note: See TracChangeset
for help on using the changeset viewer.