[243] in BarnOwl Developers
[D-O-H] r419 - trunk/owl
daemon@ATHENA.MIT.EDU (asedeno@MIT.EDU)
Thu Oct 29 18:04:04 2009
Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
To: dirty-owl-hackers@mit.edu
From: asedeno@MIT.EDU
Reply-to: dirty-owl-hackers@MIT.EDU
Date: Sun, 29 Oct 2006 09:58:06 -0500 (EST)
Author: asedeno
Date: 2006-10-29 05:01:52 -0500 (Sun, 29 Oct 2006)
New Revision: 419
Modified:
trunk/owl/message.c
trunk/owl/perlconfig.c
trunk/owl/perlwrap.pm
Log:
Adding some missing owl_message_type_is functions.
Ensuring all the attributes of a message make it out to the perl hash.
Modified: trunk/owl/message.c
===================================================================
--- trunk/owl/message.c 2006-10-28 21:03:44 UTC (rev 418)
+++ trunk/owl/message.c 2006-10-29 10:01:52 UTC (rev 419)
@@ -121,7 +121,7 @@
owl_view *v;
if (m->invalid_format) {
- /* for now we assume there's jsut the one view and use that style */
+ /* for now we assume there's just the one view and use that style */
v=owl_global_get_current_view(&g);
s=owl_view_get_style(v);
@@ -352,9 +352,9 @@
return(0);
}
-int owl_message_is_type_loopback(owl_message *m)
+int owl_message_is_type_generic(owl_message *m)
{
- if (m->type==OWL_MESSAGE_TYPE_LOOPBACK) return(1);
+ if (m->type==OWL_MESSAGE_TYPE_GENERIC) return(1);
return(0);
}
@@ -370,18 +370,46 @@
return(0);
}
-int owl_message_is_pseudo(owl_message *m)
+int owl_message_is_type_jabber(owl_message *m)
{
- if (owl_message_get_attribute_value(m, "pseudo")) return(1);
+ if (m->type==OWL_MESSAGE_TYPE_JABBER) return(1);
+
return(0);
}
-int owl_message_is_type_generic(owl_message *m)
+int owl_message_is_type_icq(owl_message *m)
{
- if (m->type==OWL_MESSAGE_TYPE_GENERIC) return(1);
+ if (m->type==OWL_MESSAGE_TYPE_ICQ) return(1);
+
return(0);
}
+int owl_message_is_type_yahoo(owl_message *m)
+{
+ if (m->type==OWL_MESSAGE_TYPE_YAHOO) return(1);
+
+ return(0);
+}
+
+int owl_message_is_type_msn(owl_message *m)
+{
+ if (m->type==OWL_MESSAGE_TYPE_MSN) return(1);
+
+ return(0);
+}
+
+int owl_message_is_type_loopback(owl_message *m)
+{
+ if (m->type==OWL_MESSAGE_TYPE_LOOPBACK) return(1);
+ return(0);
+}
+
+int owl_message_is_pseudo(owl_message *m)
+{
+ if (owl_message_get_attribute_value(m, "pseudo")) return(1);
+ return(0);
+}
+
char *owl_message_get_text(owl_message *m)
{
return(owl_fmtext_get_text(&(m->fmtext)));
Modified: trunk/owl/perlconfig.c
===================================================================
--- trunk/owl/perlconfig.c 2006-10-28 21:03:44 UTC (rev 418)
+++ trunk/owl/perlconfig.c 2006-10-29 10:01:52 UTC (rev 419)
@@ -31,6 +31,7 @@
SV *hr;
char *ptr, *blessas;
int i, j;
+ owl_pair *pair;
if (!m) return &PL_sv_undef;
h = newHV();
@@ -56,6 +57,13 @@
newSVpv(owl_zephyr_get_authstr(owl_message_get_notice(m)),0),0);
}
+ j=owl_list_get_size(&(m->attributes));
+ for(i=0; i<j; i++) {
+ pair=owl_list_get_element(&(m->attributes), i);
+ hv_store(h, owl_pair_get_key(pair), strlen(owl_pair_get_key(pair)),
+ newSVpv(owl_pair_get_value(pair),0),0);
+ }
+
MSG2H(h, type);
MSG2H(h, direction);
MSG2H(h, class);
@@ -79,6 +87,7 @@
if (owl_message_is_type_zephyr(m)) blessas = "owl::Message::Zephyr";
else if (owl_message_is_type_aim(m)) blessas = "owl::Message::AIM";
+ else if (owl_message_is_type_jabber(m)) blessas = "owl::Message::Jabber";
else if (owl_message_is_type_admin(m)) blessas = "owl::Message::Admin";
else if (owl_message_is_type_generic(m)) blessas = "owl::Message::Generic";
else blessas = "owl::Message";
Modified: trunk/owl/perlwrap.pm
===================================================================
--- trunk/owl/perlwrap.pm 2006-10-28 21:03:44 UTC (rev 418)
+++ trunk/owl/perlwrap.pm 2006-10-29 10:01:52 UTC (rev 419)
@@ -88,11 +88,15 @@
sub is_deleted { return shift->{"deleted"}; }
+sub is_admin { return (shift->{"type"} eq "admin"); }
+sub is_generic { return (shift->{"type"} eq "generic"); }
sub is_zephyr { return (shift->{"type"} eq "zephyr"); }
sub is_aim { return (shift->{"type"} eq "aim"); }
-sub is_admin { return (shift->{"type"} eq "admin"); }
-sub is_generic { return (shift->{"type"} eq "generic"); }
sub is_jabber { return (shift->{"type"} eq "jabber"); }
+sub is_icq { return (shift->{"type"} eq "icq"); }
+sub is_yahoo { return (shift->{"type"} eq "yahoo"); }
+sub is_msn { return (shift->{"type"} eq "msn"); }
+sub is_loopback { return (shift->{"type"} eq "loopback"); }
# These are overridden by appropriate message types
sub is_ping { return 0; }