Hello! What do you think about the development of my plugin? Can you give me some suggestions or criticisms? For me it's almost finish. Thanks. Square87
Index: protocol.tcl =================================================================== --- protocol.tcl (revisione 7951) +++ protocol.tcl (copia locale) @@ -1040,6 +1040,8 @@ cmsn_draw_online 1 1 #an event used by guicontactlist to know when we changed our nick ::Event::fireEvent myNickChange protocol + #an event used by amsnlogplus + ::plugins::PostEvent myPSMChange evPar } @@ -3785,6 +3787,8 @@ send_dock STATUS [::MSN::myStatusIs] #an event used by guicontactlist to know when we changed our nick ::Event::fireEvent myNickChange protocol + #an event plugin used by amsnlogplus + ::plugins::PostEvent myNickChanged evPar } ::abook::saveToDisk } @@ -3828,6 +3832,8 @@ } } ::Event::fireEvent contactPSMChange protocol $contact + set evPar(contact) contact + ::plugins::PostEvent contactPSMChanged evPar } method handleNOT { command payload } { @@ -4841,15 +4847,17 @@ if {$user_name != [::abook::getNick $user]} { + + set nick_changed 1 + #Nick differs from the one on our list, so change it #in the server list too - ::abook::setContactData $user nick $user_name + ::abook::setContactData $user nick $user_name $nick_changed # ::MSN::changeName $user [encoding convertto utf-8 $encoded_user_name] 1 #an event used by guicontactlist to know when we changed our nick ::Event::fireEvent contactNickChange protocol $user - set nick_changed 1 if {[::config::getKey protocol] == 11} { if {$::msnp13 != 1} { Index: loging.tcl =================================================================== --- loging.tcl (revisione 7951) +++ loging.tcl (copia locale) @@ -17,9 +17,11 @@ # Opens the log file by email address, called from WriteLog # WriteLog has to check if fileid already exists before calling this proc - proc StartLog { email } { + proc StartLog { email {fileid 0}} { + set evPar(email) email + set evPar(fileid) fileid + ::plugins::PostEvent start_log evPar - # if we got no profile, set fileid to 0 if { [LoginList exists 0 [::config::getKey login]] == 0 } { LogArray $email set 0 @@ -275,6 +277,15 @@ set user [trans deliverfail] } + set evPar(chatid) chatid + set evPar(user) user + set evPar(msg) msg + set evPar(fontformat) fontformat + set evPar(failed) failed + set evPar(color) color + #set evPar(OIMtstamp) OIMtstamp + ::plugins::PostEvent put_log evPar + if {[::OIM_GUI::IsOIM $chatid]} { ::log::WriteLog $chatid "\|\"LITA$user :\|\"L$color $msg\n" 0 $chatid } else { @@ -335,8 +346,10 @@ if { $fileid != 0 } { if { $conf == 0 } { puts -nonewline $fileid "\|\"LRED\[[trans lconvstarted [clock format [clock seconds] -format "%d %b %Y %T"]]\]\n" + StartLog $email $fileid } else { puts -nonewline $fileid "\|\"LRED\[[trans lenteredconf $email [clock format [clock seconds] -format "%d %b %Y %T"]] \(${users}\) \]\n" + StartLog $user_list $fileid } puts -nonewline $fileid "\|\"LGRA[timestamp] $txt" } @@ -356,7 +369,11 @@ foreach user_info $user_list { set fileid [LogArray [lindex $user_info 0] get] if { $fileid != 0 } { + set temp_usr_name $usr_name ;#because it could be changed in leaves_conf event + set evPar(usr_name) usr_name + ::plugins::PostEvent leaves_conf evPar puts -nonewline $fileid "\|\"LRED\[[trans lleftconf $usr_name]\]\n" + set usr_name $temp_usr_name } if { [llength $user_list] == 1 } { ConfArray [lindex $user_info 0] set 3 @@ -381,6 +398,8 @@ set login [lindex $user_info 0] set fileid [LogArray $login get] if { $login != $usr_name && $fileid != 0} { + set evPar(usr_name) usr_name + ::plugins::PostEvent joins_conf evPar puts -nonewline $fileid "\|\"LRED\[[trans ljoinedconf $usr_name]\]\n" } } Index: gui.tcl =================================================================== --- gui.tcl (revisione 7951) +++ gui.tcl (copia locale) @@ -5327,7 +5327,7 @@ #/////////////////////////////////////////////////////////////////////// proc change_name_ok {} { set new_name [.change_name.f.nick_entry get] - if {$new_name != ""} { + if {$new_name != "" && [::abook::getContactData myself MFN] != $new_name} { if { [string length $new_name] > 130} { set answer [::amsn::messageBox [trans longnick] yesno question [trans confirm]] if { $answer == "no" } { Index: abook.tcl =================================================================== --- abook.tcl (revisione 7951) +++ abook.tcl (copia locale) @@ -388,7 +388,7 @@ #user_login: the user_login you want to set data to #field: the field you want to set #data: the data that will be contained in the given field - proc setContactData { user_login field data } { + proc setContactData { user_login field data {nick_changed 0}} { global pgc variable users_data @@ -430,6 +430,8 @@ set user_data(raw_nick) $data #post event for amsnplus set evPar(data) data + set evPar(user_login) user_login + set evPar(nick_changed) nick_changed ::plugins::PostEvent parse_nick evPar set user_data(nick) $data
amsnlogplus.tar.gz
Description: GNU Zip compressed data
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ Amsn-devel mailing list Amsn-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/amsn-devel