bme-develop Mailing List for Be-messeng-er (Page 9)
Status: Planning
Brought to you by:
sirmik
You can subscribe to this list here.
| 2004 |
Jan
(7) |
Feb
(15) |
Mar
(45) |
Apr
(46) |
May
(18) |
Jun
(6) |
Jul
(12) |
Aug
(45) |
Sep
(7) |
Oct
(9) |
Nov
(37) |
Dec
(24) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(6) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Daniel G. <al7...@ma...> - 2004-04-05 06:17:15
|
Hello, > > Simon how is the BNetEndpoint logger class going?. I would like to > > have > > it to debug my P2P replys. Right now every time I send a P2P > > message > > my > > chatting session is disconnected, I might be sending wrong stuff. I > > would be great if the view would log in hex format also, to be able > > to > > view the binary information of P2P messages. > > I am getting to the stage of integrating it. It seems to work for the > DS handler, but no windows get created for the other BNetEndpoints. I > couldn't really see where they were created though (I think they were > not done with "new", which may be a problem). > > Is the P2P stuff sent as simple binary data then? Hmm, I can't think > how to detect what is ASCII and what is binary - any ideas? > Actually all P2P messages have a binary header and footer. But the data could be either text or binary depending on the message. I think, for now it would be good to have an option to display the traffic either as text or hex format. Or have both views like the hex viewer DiskProbe in BeOS. Regards, Daniel. |
|
From: Daniel G. <al7...@ma...> - 2004-04-05 06:06:24
|
Hi > >Look into the MsnList class, there is something for sorting the > >BOutlineList. > >It would be something like this to sort a list. > > static int cmpListItem(void*,void*); //It has to be static. > > int (*ptrSort) (void*,void*); > > ptrSort = cmpListItem; > > ... > > list- >SortItems(ptrSort); > > > Yes I already looked at that code, but didn't understand it....what > doest > this mean? int (*ptrSort) (void*,void*); anyway changing the > comparison > method to static did the trick... > Essentially it's how to declare a pointer to a function, a function pointer in c++; type (*pointer) (type parameter1, type paramaeter2, ...); Daniel |
|
From: Sir M. <obe...@ho...> - 2004-04-04 12:11:57
|
Hi guys!, >You only commited Bme.proj, iconprefs.txt and constats.h >If you wanted to commit the StringTokenizer an IconManger code you >first have to add to the repository and the do the commit. > They should be in the repository now...hope it worked :D >Look into the MsnList class, there is something for sorting the >BOutlineList. >It would be something like this to sort a list. > static int cmpListItem(void*,void*); //It has to be static. > int (*ptrSort) (void*,void*); > ptrSort = cmpListItem; > ... > list- >SortItems(ptrSort); > Yes I already looked at that code, but didn't understand it....what doest this mean? int (*ptrSort) (void*,void*); anyway changing the comparison method to static did the trick... regards, Tim _________________________________________________________________ MSN Search, for accurate results! http://search.msn.nl |
|
From: Simon T. <sim...@ga...> - 2004-04-04 07:37:29
|
> Hello, > > Just to let you know I have commited some changes to the cvs > repository. > Added the Common namespace. > Changes to handle P2P messages. Cool. > Simon how is the BNetEndpoint logger class going?. I would like to > have > it to debug my P2P replys. Right now every time I send a P2P message > my > chatting session is disconnected, I might be sending wrong stuff. I > would be great if the view would log in hex format also, to be able > to > view the binary information of P2P messages. I am getting to the stage of integrating it. It seems to work for the DS handler, but no windows get created for the other BNetEndpoints. I couldn't really see where they were created though (I think they were not done with "new", which may be a problem). Is the P2P stuff sent as simple binary data then? Hmm, I can't think how to detect what is ASCII and what is binary - any ideas? > Regards, > > Daniel Simon |
|
From: Daniel G. <al7...@ma...> - 2004-04-03 22:11:53
|
> Well guys, > > I uploaded some emoticon code into cvs, at least I hope I did :S > > This is what I get: > > ? src/UserInterface/StringTokenizer.h > ? src/UserInterface/StringTokenizer.cpp > ? src/UserInterface/IconManager.h > ? src/UserInterface/IconManager.cpp > ? src/UserInterface/IconLoader.h > ? src/UserInterface/IconLoader.cpp > ? src/UserInterface/IconHandler.h > ? src/UserInterface/IconHandler.cpp > ? src/UserInterface/Emoticon.h > ? Bme.cs > ? Bme > ? (Objects.Bme) > Checking in Bme.proj; > /cvsroot/bme/Bme/Bme.proj,v <-- Bme.proj > new revision: 1.4; previous revision: 1.3 > done > Checking in icons/iconprefs.txt; > /cvsroot/bme/Bme/icons/iconprefs.txt,v <-- iconprefs.txt > new revision: 1.2; previous revision: 1.1 > done > Checking in src/constants.h; > /cvsroot/bme/Bme/src/constants.h,v <-- constants.h > new revision: 1.2; previous revision: 1.1 > done > cvs [commit aborted]: received interrupt signal > You only commited Bme.proj, iconprefs.txt and constats.h If you wanted to commit the StringTokenizer an IconManger code you first have to add to the repository and the do the commit. > it isn't finished yet...but I working on it...I hope I will get it > working > by the end of next week....btw anyone now, how to pass a comparison > function > to BList's SortItems? > Look into the MsnList class, there is something for sorting the BOutlineList. It would be something like this to sort a list. static int cmpListItem(void*,void*); //It has to be static. int (*ptrSort) (void*,void*); ptrSort = cmpListItem; ... list- >SortItems(ptrSort); Daniel |
|
From: Daniel G. <al7...@ma...> - 2004-04-03 19:03:05
|
Hello, Just to let you know I have commited some changes to the cvs repository. Added the Common namespace. Changes to handle P2P messages. Simon how is the BNetEndpoint logger class going?. I would like to have it to debug my P2P replys. Right now every time I send a P2P message my chatting session is disconnected, I might be sending wrong stuff. I would be great if the view would log in hex format also, to be able to view the binary information of P2P messages. Regards, Daniel |
|
From: Sir M. <obe...@ho...> - 2004-04-03 19:00:48
|
Well guys, I uploaded some emoticon code into cvs, at least I hope I did :S This is what I get: ? src/UserInterface/StringTokenizer.h ? src/UserInterface/StringTokenizer.cpp ? src/UserInterface/IconManager.h ? src/UserInterface/IconManager.cpp ? src/UserInterface/IconLoader.h ? src/UserInterface/IconLoader.cpp ? src/UserInterface/IconHandler.h ? src/UserInterface/IconHandler.cpp ? src/UserInterface/Emoticon.h ? Bme.cs ? Bme ? (Objects.Bme) Checking in Bme.proj; /cvsroot/bme/Bme/Bme.proj,v <-- Bme.proj new revision: 1.4; previous revision: 1.3 done Checking in icons/iconprefs.txt; /cvsroot/bme/Bme/icons/iconprefs.txt,v <-- iconprefs.txt new revision: 1.2; previous revision: 1.1 done Checking in src/constants.h; /cvsroot/bme/Bme/src/constants.h,v <-- constants.h new revision: 1.2; previous revision: 1.1 done cvs [commit aborted]: received interrupt signal it isn't finished yet...but I working on it...I hope I will get it working by the end of next week....btw anyone now, how to pass a comparison function to BList's SortItems? regards, Mik _________________________________________________________________ Play online games with your friends with MSN Messenger http://messenger.msn.nl/ |
|
From: Simon T. <sim...@ga...> - 2004-04-02 17:53:06
|
[snip] > >The GIF translator only decodes the first frame of any animated > > images. > >Actually drawing them shouldn't be a problem (I have a few ideas on > >that), once we have a list of BBitmaps for each of the frames in the > >animation. > > > It's a shame the translation kit can't deal with more complex > format's like > animated gifs, and vector image formats...Btw, Simon, about that list > of > BBitmaps...we'll also need something to store the delays between > frames, > won't we? I think that also should be in the emoticon object... Yes, I had thought of that, but forgot to mention it to you. It should be part of the emoticon object, yes. > > > >I've also just made it much more lightweight, so resize performance > > far > >exceeds BTextView (I've tested a BListView with 15000 NetListItems > > like > >in the screenshot - still resizes in real time). Memory usuage is > > high > >though (the width of every character is cached), so I might try a > >compromise. > > > As I said, nice! btw Simon, I don't now for sure how you're dealing > with > those character sizes...but would it be possible to store only the > character > widths in an array? I think utf-8 hasn't to much characters, if I'm > not > mistaken, it is encoded as a byte, right? so we have 256 characters, > if you > store those 256 character lengths in an array, you needn't store that > much > information...and you can use these 256 lengths to calculate the > length of > the entire string...or am I completely mistaken? (and visualizing > this too > simple) Yes, you are completely mistaken! UTF-8 encodes the entire unicode character set, some 16,000 or so characters I think. Although only a subset are used. Even so, caching the width of individual characters would mean every time you need to calculate word wrapping, you would have to loop through the string, look up each individual character's width, and add them together. I currently store the width up to that character number in an array, and have a seperate array for the width up to the next preffered wrap point (space, dash, etc). I'm thinking of getting rid of the individual character caching, and just keep the wrap-point caching. Speed will still be blazing fast until the window is small enough that a single long word has to be wrapped in the middle. Then that will require app server calls, so will slow down. But I think for the majority of cases that would work fine and would save a lot of memory too. > > > Not yet... mmm... I have made some changes in the Network > > > handlers > > > code, change some things to get p2p messages again (somehow it > > > got > > > broken when I changed to BLoopers), and a few other changes. So > > > far.. > > > looks good! There might be an improvement on stability ... > > > maybe.. > > > je, > > > I need you guys to test it because you do a better work on > > > testing > > > than > > > I :D . > > > >lol no problem. > > > hehe, I think it's because we use it a lot, especially, now since I'm > almost > using beOS and bme all day....Do those p2p messages also have > something to > do with bme crashing when chatting with someone who uses the latest > windoze > msn? btw, great work! I experienced that crash today too. > > > I promise I will get it up there on friday evening (my time). > > > > Ok, so we'll have the code by saturday morning, thnx! > > > > Good work team!! > > > >Yay! > > > Group hug :D! lol > Tim Simon |
|
From: Sir M. <obe...@ho...> - 2004-04-02 10:56:16
|
aloha amigos :D, > > Hello guys, sorry I have not reply till now, it's been a busy week. > >No problem > Like Simon said in the interview at tbj, we're all busy people :D but then again I think we're progressing nicely.... >The BHandler should help with multithreading issues - the protocol >handlers or the conversation windows can simply target a BHandler with >a message, the BHandler can pick up the messages in order and parse >them in it's own thread (which owns all the icon data), then send a >parsed-text message back to the window. The other approach would be to >have a shared pointer passed around all the time, and I'm not too keen >on that approach - also I'm not sure how thread-safe it would be. > The reason Simon points out is the main reason. We also could handle all icon messages in the app's MessageReceived method, but that would be a mess. If we have a separate handler things are separated nicely. Also if the code works, other IM projects just have to plug in the Handler in to their code and they will have emoticon support. The multi-threading issues weigh more heavily though. >The GIF translator only decodes the first frame of any animated images. >Actually drawing them shouldn't be a problem (I have a few ideas on >that), once we have a list of BBitmaps for each of the frames in the >animation. > It's a shame the translation kit can't deal with more complex format's like animated gifs, and vector image formats...Btw, Simon, about that list of BBitmaps...we'll also need something to store the delays between frames, won't we? I think that also should be in the emoticon object... > >I've also just made it much more lightweight, so resize performance far >exceeds BTextView (I've tested a BListView with 15000 NetListItems like >in the screenshot - still resizes in real time). Memory usuage is high >though (the width of every character is cached), so I might try a >compromise. > As I said, nice! btw Simon, I don't now for sure how you're dealing with those character sizes...but would it be possible to store only the character widths in an array? I think utf-8 hasn't to much characters, if I'm not mistaken, it is encoded as a byte, right? so we have 256 characters, if you store those 256 character lengths in an array, you needn't store that much information...and you can use these 256 lengths to calculate the length of the entire string...or am I completely mistaken? (and visualizing this too simple) > > Not yet... mmm... I have made some changes in the Network handlers > > code, change some things to get p2p messages again (somehow it got > > broken when I changed to BLoopers), and a few other changes. So far.. > > looks good! There might be an improvement on stability ... maybe.. > > je, > > I need you guys to test it because you do a better work on testing > > than > > I :D . > >lol no problem. > hehe, I think it's because we use it a lot, especially, now since I'm almost using beOS and bme all day....Do those p2p messages also have something to do with bme crashing when chatting with someone who uses the latest windoze msn? btw, great work! > > I promise I will get it up there on friday evening (my time). > > Ok, so we'll have the code by saturday morning, thnx! > > Good work team!! > >Yay! > Group hug :D! Tim _________________________________________________________________ Hotmail en Messenger on the move http://www.msn.nl/communicatie/smsdiensten/hotmailsmsv2/ |
|
From: Simon T. <sim...@ga...> - 2004-04-02 08:19:37
|
> Hello guys, sorry I have not reply till now, it's been a busy week. No problem > > > maybe also write a BHandler to handle the > > > icons...IconManager or something...My idea is this: the handler > > > will > > > be > > > owned by the main application object and the windows will send > > > messages to > > > that app to request for: > > > -the entire list of emoticon objects > > > -a message item representing an entire text with emoticons in it > > > -a bitmap for one part of text(can be used when typing text in a > > > textbox and > > > instantly changing that to emoticons) > > > > > > what do you guys think? > > > > I agree with a BHandler owned by the be_app, that sounds fine. I > > think > > we need a class to parse text that is passed a simple char * or > > BString > > of a bit of text, and returns some kind of custom structure > > containing > > processed text - ie the raw characters along with emoticons and > > thier > > offsets, plus maybe url detection and things like that. > > > It sounds ok, but does it really need to be a BHandler, why not just > a > Class with some methods to do the parsing, load the images, convert > strings to icon enabled messages, etc. What are the benefits of using > a > BHandler instead of just regular class? > Don't get me wrong, I am not saying it's a bad idea, just want to > know > the reasons why either approach would be better. The BHandler should help with multithreading issues - the protocol handlers or the conversation windows can simply target a BHandler with a message, the BHandler can pick up the messages in order and parse them in it's own thread (which owns all the icon data), then send a parsed-text message back to the window. The other approach would be to have a shared pointer passed around all the time, and I'm not too keen on that approach - also I'm not sure how thread-safe it would be. > > > > > > > >Where the number after each frame represents the number of > > > > hundreths > > > > of > > > >seconds to display the frame for, and the final 0 means to loop > > > >forever. > > > > > > > We can do it like this....but why? If we do it like this we > > > better > > > use the > > > gifs(get some gif animation code from the web)...I think > > > converting > > > gifs to > > > a file like this is a lot of work, and we're just working around > > > the > > > problem, introducing another file format in stead of the > > > gifs....anyway it > > > can be done, but it's a lot of work... > > > > How else are we going to load the animated images? The translation > > kit > > doesn't support animated images, and I couldn't find a free library > > on > > the web to handle reading GIFs (probably due to patent restrictions > > of > > the GIF format). If you have easier ideas that will work, by all > > means > > implement them! > > > I thought there was a translator for GIFs, isn't there? But I don't > know how we are going to paint animated gifs into the views, there > should be some code out there we could use as examples, I never dealt > with animated gifs before. All the animations I have worked on have > always involved threads looping through a bunch of images. The GIF translator only decodes the first frame of any animated images. Actually drawing them shouldn't be a problem (I have a few ideas on that), once we have a list of BBitmaps for each of the frames in the animation. > > > >Other news: > > > > > > > >I've finally got a BListItem class that does proper automatic > > > > text > > > >wrapping, performance seems similar to a BTextView on resizing a > > > > lot > > > > of > > > >items. > > > > > > > Nice work! have a screenshot? > > > > http://si-msn.port5.com/bme2.png > > > Great work! It looks good. I've also just made it much more lightweight, so resize performance far exceeds BTextView (I've tested a BListView with 15000 NetListItems like in the screenshot - still resizes in real time). Memory usuage is high though (the width of every character is cached), so I might try a compromise. > > > P.s. Daniel did you upload your latest code into cvs? > > > Not yet... mmm... I have made some changes in the Network handlers > code, change some things to get p2p messages again (somehow it got > broken when I changed to BLoopers), and a few other changes. So far.. > looks good! There might be an improvement on stability ... maybe.. > je, > I need you guys to test it because you do a better work on testing > than > I :D . lol no problem. I had a problem with the CVS version before, where whenever I built the code, the deskbar replicant didn't work. I think I may have been using an old beta of the OBOS translation kit; moved to beta 3 now, and it works well. That means I can be a bit more active in development. > I promise I will get it up there on friday evening (my time). > > Good work team!! Yay! > Regards, > Daniel > Simon |
|
From: Daniel G. <al7...@ma...> - 2004-04-02 07:15:15
|
Hello guys, sorry I have not reply till now, it's been a busy week. > > maybe also write a BHandler to handle the > > icons...IconManager or something...My idea is this: the handler > > will > > be > > owned by the main application object and the windows will send > > messages to > > that app to request for: > > -the entire list of emoticon objects > > -a message item representing an entire text with emoticons in it > > -a bitmap for one part of text(can be used when typing text in a > > textbox and > > instantly changing that to emoticons) > > > > what do you guys think? > > I agree with a BHandler owned by the be_app, that sounds fine. I > think > we need a class to parse text that is passed a simple char * or > BString > of a bit of text, and returns some kind of custom structure > containing > processed text - ie the raw characters along with emoticons and thier > offsets, plus maybe url detection and things like that. > It sounds ok, but does it really need to be a BHandler, why not just a Class with some methods to do the parsing, load the images, convert strings to icon enabled messages, etc. What are the benefits of using a BHandler instead of just regular class? Don't get me wrong, I am not saying it's a bad idea, just want to know the reasons why either approach would be better. > > > > > >Where the number after each frame represents the number of > > > hundreths > > > of > > >seconds to display the frame for, and the final 0 means to loop > > >forever. > > > > > We can do it like this....but why? If we do it like this we better > > use the > > gifs(get some gif animation code from the web)...I think converting > > gifs to > > a file like this is a lot of work, and we're just working around > > the > > problem, introducing another file format in stead of the > > gifs....anyway it > > can be done, but it's a lot of work... > > How else are we going to load the animated images? The translation > kit > doesn't support animated images, and I couldn't find a free library > on > the web to handle reading GIFs (probably due to patent restrictions > of > the GIF format). If you have easier ideas that will work, by all > means > implement them! > I thought there was a translator for GIFs, isn't there? But I don't know how we are going to paint animated gifs into the views, there should be some code out there we could use as examples, I never dealt with animated gifs before. All the animations I have worked on have always involved threads looping through a bunch of images. > > >Other news: > > > > > >I've finally got a BListItem class that does proper automatic text > > >wrapping, performance seems similar to a BTextView on resizing a > > > lot > > > of > > >items. > > > > > Nice work! have a screenshot? > > http://si-msn.port5.com/bme2.png > Great work! It looks good. > > P.s. Daniel did you upload your latest code into cvs? > Not yet... mmm... I have made some changes in the Network handlers code, change some things to get p2p messages again (somehow it got broken when I changed to BLoopers), and a few other changes. So far.. looks good! There might be an improvement on stability ... maybe.. je, I need you guys to test it because you do a better work on testing than I :D . I promise I will get it up there on friday evening (my time). Good work team!! Regards, Daniel |
|
From: Simon T. <sim...@ga...> - 2004-03-31 13:17:49
|
> Hi, > > I think I'm going to rewrite the code a bit today so we only need > tabs and > spaces in the text file... OK. > maybe also write a BHandler to handle the > icons...IconManager or something...My idea is this: the handler will > be > owned by the main application object and the windows will send > messages to > that app to request for: > -the entire list of emoticon objects > -a message item representing an entire text with emoticons in it > -a bitmap for one part of text(can be used when typing text in a > textbox and > instantly changing that to emoticons) > > what do you guys think? I agree with a BHandler owned by the be_app, that sounds fine. I think we need a class to parse text that is passed a simple char * or BString of a bit of text, and returns some kind of custom structure containing processed text - ie the raw characters along with emoticons and thier offsets, plus maybe url detection and things like that. > >--in icon prefs file---- > >/icons/standard/angel.png (a) (A) ; Angel > >[...] > >/icons/standard/wink.anim ;) ;-) ; Winking smiley > >--------- > Uhm, the file format is currently like this :D : > /icons/standard/angel.png Angel ; (a) (A) > like you suggested.... Ah good, I was trying to make my example match the current format. > > > >--in wink.anim---- > >icons/standard/wink1.png 10 > >icons/standard/wink2.png 50 > >icons/standard/wink3.png 10 > >0 > >---------- > > > >Where the number after each frame represents the number of hundreths > > of > >seconds to display the frame for, and the final 0 means to loop > >forever. > > > We can do it like this....but why? If we do it like this we better > use the > gifs(get some gif animation code from the web)...I think converting > gifs to > a file like this is a lot of work, and we're just working around the > problem, introducing another file format in stead of the > gifs....anyway it > can be done, but it's a lot of work... How else are we going to load the animated images? The translation kit doesn't support animated images, and I couldn't find a free library on the web to handle reading GIFs (probably due to patent restrictions of the GIF format). If you have easier ideas that will work, by all means implement them! > >Other news: > > > >I've finally got a BListItem class that does proper automatic text > >wrapping, performance seems similar to a BTextView on resizing a lot > > of > >items. > > > Nice work! have a screenshot? http://si-msn.port5.com/bme2.png > regards, > > Tim Simon > P.s. Daniel did you upload your latest code into cvs? |
|
From: Sir M. <obe...@ho...> - 2004-03-31 09:53:49
|
Hi, I think I'm going to rewrite the code a bit today so we only need tabs and spaces in the text file...maybe also write a BHandler to handle the icons...IconManager or something...My idea is this: the handler will be owned by the main application object and the windows will send messages to that app to request for: -the entire list of emoticon objects -a message item representing an entire text with emoticons in it -a bitmap for one part of text(can be used when typing text in a textbox and instantly changing that to emoticons) what do you guys think? >--in icon prefs file---- >/icons/standard/angel.png (a) (A) ; Angel >[...] >/icons/standard/wink.anim ;) ;-) ; Winking smiley >--------- Uhm, the file format is currently like this :D : /icons/standard/angel.png Angel ; (a) (A) like you suggested.... > >--in wink.anim---- >icons/standard/wink1.png 10 >icons/standard/wink2.png 50 >icons/standard/wink3.png 10 >0 >---------- > >Where the number after each frame represents the number of hundreths of >seconds to display the frame for, and the final 0 means to loop >forever. > We can do it like this....but why? If we do it like this we better use the gifs(get some gif animation code from the web)...I think converting gifs to a file like this is a lot of work, and we're just working around the problem, introducing another file format in stead of the gifs....anyway it can be done, but it's a lot of work... >Other news: > >I've finally got a BListItem class that does proper automatic text >wrapping, performance seems similar to a BTextView on resizing a lot of >items. > Nice work! have a screenshot? regards, Tim P.s. Daniel did you upload your latest code into cvs? _________________________________________________________________ Talk with your online friends with MSN Messenger http://messenger.msn.nl/ |
|
From: Simon T. <sim...@ga...> - 2004-03-31 08:27:46
|
> Hey guys, > > just wanted to say that the icon loading code for emoticons works > now...it > parses the emoticon prefs file(I changed the structure of that!), and > loads > the bitmaps, for now only static bitmaps and no animation. The code > is still > a bit dirty though and I will improve it in the following days, along > with a > quick thingy that displays the icons....Simon due to my way of > implementing > I could make it entirely tab seperated...there's a ";" between the > description of the icons and the shortcuts...will see if I can change > it in > the future, > > regards, > > Tim Good news, well done. I've been looking at the animated ones - my simple solution of combining all the frames into 1 static image will not work as some of the gifs have different pauses after different frames. My current thinking was that we could have a new text file to describe animated emots. Maybe something like this: --in icon prefs file---- /icons/standard/angel.png (a) (A) ; Angel [...] /icons/standard/wink.anim ;) ;-) ; Winking smiley --------- --in wink.anim---- icons/standard/wink1.png 10 icons/standard/wink2.png 50 icons/standard/wink3.png 10 0 ---------- Where the number after each frame represents the number of hundreths of seconds to display the frame for, and the final 0 means to loop forever. Other news: I've finally got a BListItem class that does proper automatic text wrapping, performance seems similar to a BTextView on resizing a lot of items. Simon |
|
From: Sir M. <obe...@ho...> - 2004-03-30 19:24:28
|
Hey guys, just wanted to say that the icon loading code for emoticons works now...it parses the emoticon prefs file(I changed the structure of that!), and loads the bitmaps, for now only static bitmaps and no animation. The code is still a bit dirty though and I will improve it in the following days, along with a quick thingy that displays the icons....Simon due to my way of implementing I could make it entirely tab seperated...there's a ";" between the description of the icons and the shortcuts...will see if I can change it in the future, regards, Tim _________________________________________________________________ Protect your PC - get McAfee.com VirusScan Online http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963 |
|
From: Simon T. <sim...@ga...> - 2004-03-28 11:28:17
|
> Aloha Daniel,
>
> >Hello. I found a few problem with some of the changes.
> >The problem lays in that the MSN protocol uses the charset=3DUTF8 and
> > so
> >does BeOS for all the GUI text displaying classes. The problem is
> > that
> >BString cannot handle UTF8. So when you get the message body like
> > this:
> > BString im;
> > message->FindString("body",&im);
> >you get some problems for most of other non ascii characters, for
> >example =E1,=E9,=ED,=F3,=FA, =F1 (If you don't see this character change the
> >encoding of the e-mail to Latin-1). I use these chars a lot since
> > most
> >of my conversations are in spanish. I think the best way to handle
> >messages is to use char pointers instead of BStrings, to avoid any
> >problems with character encodings.
> Ohoh...didn't know that...the guys at BeShare said that the BStrings
> would
> handle UTF8 well....so it does not...I never experienced those
> problems
> because those characters aren't used much here...I changed it to
> BString
> because the BString code is better organized, has more options and is
> a lot
> easier than those c methods, which I find quite difficult to
> use....but if
> it can't be done with BStrings then we have to use char* code...btw,
> what
> about c++ strings=3F can they be used, they are object oriented to and
> have
> most of the methods a BString has...or maybe implement our own
> version of a
> BString using the c methods=3F
I'm too late; I see Daniel already has it figured out. A BString is
really just a variable size char array, with some extra methods and
things, but it makes no assumptions about the encoding, so CountChars
just returns the number of bytes. It's no big deal to add UTF-8
handling, as Daniel has done.
About using BStrings at all - if there is a lot of string manipulation
to be done, I agree that BStrings are easier (I used it quite a lot in
my emoticon-enabled text view), but if you don't need to do much to the
string I would prefer if it was kept as a char* to reduce overhead.
> >
> >On a separate note, some suggetions for changes
> >
> >Maybe move the "\r\n" replacing code to the MsnSBHandler to make the
> >MsnChatter easier, clearer more straight forward, doing all the hard
> >work in the Protocol classes.
> >
> Ah ok! it was more a quick fix for those problems, your suggestion is
> better...btw, we have to try if we have to change the sending code
> to...so
> we change the beOS \n to \r\n....so testing is needed where one
> person uses
> MSN 6.0...
Beat me to that as well! I was going to mention converting from \n to \
r\n before sending, and moving it into the protocol code. Great minds
think alike :D
> >into this:
> > rgb=5Fcolor rgb =3D rgb=5Fcolor();
> > msg.AddData("color",B=5FRGB=5FCOLOR=5FTYPE,(const void*)&
> >rgb,sizeof(rgb));
> > ...
> > const rgb=5Fcolor *rgb; ssize=5Ft sz=5Fcolor;
> > message->FindData("color",B=5FRGB=5FCOLOR=5FTYPE,(const void**)&rgb,&
> >sz=5Fcolor);
> >
> I just copied your code...let's change it to this indeed...where is
> the
> rgb=5Fcolor code located btw=3F maybe I then can work on choosing a color
> ,font,
> etc too...
>
> >Create two methods in common.cpp
> >char * getDateStr(char *str, const char *format, int size);
> >char * getTimeStr(char *str, const char *format, int size);
> >
> >What do tou guys think=3F
> >
> Ok with me...btw another suggestion from me...I'm working on another
> beOS
> project and I use constants in this way:
>
> namespace Messages
> {
> const uint32 START=5FSIMULATION =3D 'STsi';
> const uint32 STOP=5FSIMULATION =3D 'SPsi';
> const uint32 SIMULATION=5FSETTINGS =3D 'SIse';
>
> const uint32 SET=5FSIMULATION=5FSETTINGS =3D 'STss';
> const uint32 NEW=5FCAMERA=5FDATA =3D 'NEcd';
>
> const uint32 UPDATE=5FMSG =3D 'UPms';
> const uint32 UPDATE=5FFAILURE =3D 'UPfa';
> const uint32 NEW=5FCOORDINATES =3D 'NEco';
> }
Erm I suppose that's OK - uses more memory though I think.
> other constants are in other namespace, I personally prefer this
> approach to
> the c #define part because it's easier to understand...what do you
> think=3F
> also I would prefer putting the methods in common.cpp in a namespace
> because
> you can see that it's a method from common.cpp a lot easier:
>
> old: thismethod();
> new: Common::thismethod();
Yes have the common stuff in a new namespace, I'd like to reduce the
number of "common" methods and things as much as possible though.
> what do you think=3F I know it's quite a job to change all the
> #defines to
> namespace...but I'm willing to change the code in that way...if you
> agree
> with it....
OK by me.
> regards,
>
> Tim
|
|
From: Daniel G. <al7...@ma...> - 2004-03-27 19:01:50
|
Hi again.
> >Hello. I found a few problem with some of the changes.
> >The problem lays in that the MSN protocol uses the charset=3DUTF8 and=20
> > so
> >does BeOS for all the GUI text displaying classes. The problem is=20
> > that
> >BString cannot handle UTF8. So when you get the message body like=20
> > this:
> > BString im;
> > message->FindString("body",&im);
> >you get some problems for most of other non ascii characters, for
> >example =E1,=E9,=ED,=F3,=FA, =F1 (If you don't see this character chan=
ge the
> >encoding of the e-mail to Latin-1). I use these chars a lot since=20
> > most
> >of my conversations are in spanish. I think the best way to handle
> >messages is to use char pointers instead of BStrings, to avoid any
> >problems with character encodings.
> Ohoh...didn't know that...the guys at BeShare said that the BStrings=20
> would=20
> handle UTF8 well....so it does not...I never experienced those=20
> problems=20
> because those characters aren't used much here...I changed it to=20
> BString=20
> because the BString code is better organized, has more options and is=20
> a lot=20
> easier than those c methods, which I find quite difficult to=20
> use....but if=20
> it can't be done with BStrings then we have to use char* code...btw,=20
> what=20
> about c++ strings? can they be used, they are object oriented to and=20
> have=20
> most of the methods a BString has...or maybe implement our own=20
> version of a=20
> BString using the c methods?
>=20
I worked the problem!! The BString works good, the only problem was=20
that you ware using CountChars() to insert the message into the=20
TextView. I changed it to insertion.Length() and fix the problem, no=20
more ugly squares or missing chars, so I think we are good with=20
BStrings as long a we keep in mind this problem.
>
> Ok with me...btw another suggestion from me...I'm working on another=20
> beOS=20
> project and I use constants in this way:
>=20
> namespace Messages
> {
> const uint32 START_SIMULATION =3D 'STsi';
> const uint32 STOP_SIMULATION =3D 'SPsi';
> const uint32 SIMULATION_SETTINGS =3D 'SIse';
>=20
> const uint32 SET_SIMULATION_SETTINGS =3D 'STss';
> const uint32 NEW_CAMERA_DATA =3D 'NEcd';
>=20
> const uint32 UPDATE_MSG =3D 'UPms';
> const uint32 UPDATE_FAILURE =3D 'UPfa';
> const uint32 NEW_COORDINATES =3D 'NEco';
> }
>=20
> other constants are in other namespace, I personally prefer this=20
> approach to=20
> the c #define part because it's easier to understand...what do you=20
> think?=20
> also I would prefer putting the methods in common.cpp in a namespace=20
> because=20
> you can see that it's a method from common.cpp a lot easier:
>=20
> old: thismethod();
> new: Common::thismethod();
>=20
> what do you think? I know it's quite a job to change all the=20
> #defines to=20
> namespace...but I'm willing to change the code in that way...if you=20
> agree=20
> with it....
>=20
I agree with using namespace.=20
For instance, MsnProtocolConstants, MsnProtocolMessages,=20
MsnProtocolCommands, etc, etc...
I can start making the changes for the Common namespace
|
|
From: Sir M. <obe...@ho...> - 2004-03-27 17:32:08
|
Guys.... RED ALERT...Bme crashes when someone chats with you from the latest Windoze MSN...it's the latest version of our code I think and the stack crawl indicates a crash in the handleMsg method...(don't know the class)...weirdest thing is it hasn't got these problems in the version before that (bme)...the one Daniel sent us via mail.... regards, Tim _________________________________________________________________ Play online games with your friends with MSN Messenger http://messenger.msn.nl/ |
|
From: Sir M. <obe...@ho...> - 2004-03-27 15:34:13
|
Aloha Daniel,
>Hello. I found a few problem with some of the changes.
>The problem lays in that the MSN protocol uses the charset=UTF8 and so
>does BeOS for all the GUI text displaying classes. The problem is that
>BString cannot handle UTF8. So when you get the message body like this:
> BString im;
> message->FindString("body",&im);
>you get some problems for most of other non ascii characters, for
>example á,é,í,ó,ú, ñ (If you don't see this character change the
>encoding of the e-mail to Latin-1). I use these chars a lot since most
>of my conversations are in spanish. I think the best way to handle
>messages is to use char pointers instead of BStrings, to avoid any
>problems with character encodings.
Ohoh...didn't know that...the guys at BeShare said that the BStrings would
handle UTF8 well....so it does not...I never experienced those problems
because those characters aren't used much here...I changed it to BString
because the BString code is better organized, has more options and is a lot
easier than those c methods, which I find quite difficult to use....but if
it can't be done with BStrings then we have to use char* code...btw, what
about c++ strings? can they be used, they are object oriented to and have
most of the methods a BString has...or maybe implement our own version of a
BString using the c methods?
>
>On a separate note, some suggetions for changes
>
>Maybe move the "\r\n" replacing code to the MsnSBHandler to make the
>MsnChatter easier, clearer more straight forward, doing all the hard
>work in the Protocol classes.
>
Ah ok! it was more a quick fix for those problems, your suggestion is
better...btw, we have to try if we have to change the sending code to...so
we change the beOS \n to \r\n....so testing is needed where one person uses
MSN 6.0...
>into this:
> rgb_color rgb = rgb_color();
> msg.AddData("color",B_RGB_COLOR_TYPE,(const void*)&
>rgb,sizeof(rgb));
> ...
> const rgb_color *rgb; ssize_t sz_color;
> message->FindData("color",B_RGB_COLOR_TYPE,(const void**)&rgb,&
>sz_color);
>
I just copied your code...let's change it to this indeed...where is the
rgb_color code located btw? maybe I then can work on choosing a color ,font,
etc too...
>Create two methods in common.cpp
>char * getDateStr(char *str, const char *format, int size);
>char * getTimeStr(char *str, const char *format, int size);
>
>What do tou guys think?
>
Ok with me...btw another suggestion from me...I'm working on another beOS
project and I use constants in this way:
namespace Messages
{
const uint32 START_SIMULATION = 'STsi';
const uint32 STOP_SIMULATION = 'SPsi';
const uint32 SIMULATION_SETTINGS = 'SIse';
const uint32 SET_SIMULATION_SETTINGS = 'STss';
const uint32 NEW_CAMERA_DATA = 'NEcd';
const uint32 UPDATE_MSG = 'UPms';
const uint32 UPDATE_FAILURE = 'UPfa';
const uint32 NEW_COORDINATES = 'NEco';
}
other constants are in other namespace, I personally prefer this approach to
the c #define part because it's easier to understand...what do you think?
also I would prefer putting the methods in common.cpp in a namespace because
you can see that it's a method from common.cpp a lot easier:
old: thismethod();
new: Common::thismethod();
what do you think? I know it's quite a job to change all the #defines to
namespace...but I'm willing to change the code in that way...if you agree
with it....
regards,
Tim
_________________________________________________________________
Hotmail en Messenger on the move
http://www.msn.nl/communicatie/smsdiensten/hotmailsmsv2/
|
|
From: Daniel G. <al7...@ma...> - 2004-03-27 15:15:32
|
Hello > Somebody has replied to that on BeBits - looks like libsocket.so is > only in BONE, whereas the user has only just installed BeOS, so is > probably using net_server. > > The other possiblilty is he has not update to 5.0.3 - mozilla > requires > that in order to work (specifically the update to 5.0.1 must be > applied > first as that changes some of the network libs, then the update to > 5.0.3). I'll post that as a response. > I thin that might be the reason. > > any idea what's wrong? would that be a BeMSN error, or is something > > wrong > > with his install....Daniel am I right if I say that we haven't got > > any > > specific BONE code, but we just compiled it for BONE? maybe it's a > > BONE > > error? > > That's right. The only thing thats specific to BONE or net_server is the cryptlib, everything else is the same for both. We only have one Bme, using two versions of cryptlib. Daniel |
|
From: Daniel G. <al7...@ma...> - 2004-03-27 14:56:17
|
Hello. I found a few problem with some of the changes.
The problem lays in that the MSN protocol uses the charset=3DUTF8 and so=20
does BeOS for all the GUI text displaying classes. The problem is that=20
BString cannot handle UTF8. So when you get the message body like this:
BString im;
message->FindString("body",&im);
you get some problems for most of other non ascii characters, for=20
example =E1,=E9,=ED,=F3,=FA, =F1 (If you don't see this character change =
the=20
encoding of the e-mail to Latin-1). I use these chars a lot since most=20
of my conversations are in spanish. I think the best way to handle=20
messages is to use char pointers instead of BStrings, to avoid any=20
problems with character encodings.=20
On a separate note, some suggetions for changes
Maybe move the "\r\n" replacing code to the MsnSBHandler to make the=20
MsnChatter easier, clearer more straight forward, doing all the hard=20
work in the Protocol classes.
Change the color in messages from this
rgb_color rgb =3D rgb_color();
msg.AddInt8("red",rgb.red);
msg.AddInt8("green",rgb.green);
msg.AddInt8("blue",rgb.blue);
into this:
rgb_color rgb =3D rgb_color();
msg.AddData("color",B_RGB_COLOR_TYPE,(const void*)&
rgb,sizeof(rgb));
...
const rgb_color *rgb; ssize_t sz_color;
message->FindData("color",B_RGB_COLOR_TYPE,(const void**)&rgb,&
sz_color);=20
Create two methods in common.cpp
char * getDateStr(char *str, const char *format, int size);
char * getTimeStr(char *str, const char *format, int size);
What do tou guys think?
|
|
From: Simon T. <sim...@ga...> - 2004-03-27 10:10:31
|
Somebody has replied to that on BeBits - looks like libsocket.so is only in BONE, whereas the user has only just installed BeOS, so is probably using net_server. The other possiblilty is he has not update to 5.0.3 - mozilla requires that in order to work (specifically the update to 5.0.1 must be applied first as that changes some of the network libs, then the update to 5.0.3). I'll post that as a response. Simon > Hi guys, > > just spotted this in the bebits talkback: > > "Sorry if this is a realy simple question / fix. This is my first > hour using > BeOS. Im realy enjoying it a lot. Just trying to get an msn client > working. > The one that came with this BeOS install seems to crash on signin. > Thread > name w>Sign In. > > I thought that it may be because of MSN protocol updates (I use > kopete on > SuSE Linux so I've experienced this already) > > I downloaded the latest version of BeMSN which is suppose to have > support > for protocol8. I copied the libcl.so.3.10 to the link given in the > zip file. > > When I launch BeMSN I get error Missing Library libsocket.so > > Is there a specific location to execute BeMSN from? Some sort of link > I have > to create? I saw nothing in the Readme.txt file on this. I did an > updatedb > and locate libsocket.so and it did not return any results from a > terminal. > > Any help would be great." > > any idea what's wrong? would that be a BeMSN error, or is something > wrong > with his install....Daniel am I right if I say that we haven't got > any > specific BONE code, but we just compiled it for BONE? maybe it's a > BONE > error? > > regards, > > Tim > > _________________________________________________________________ > Play online games with your friends with MSN Messenger > http://messenger.msn.nl/ > > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IBM Linux Tutorials > Free Linux tutorial presented by Daniel Robbins, President and CEO of > GenToo technologies. Learn everything from fundamentals to system > administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > _______________________________________________ > bme-develop mailing list > bme...@li... > https://lists.sourceforge.net/lists/listinfo/bme-develop > |
|
From: Sir M. <obe...@ho...> - 2004-03-27 10:04:13
|
Hi guys, just spotted this in the bebits talkback: "Sorry if this is a realy simple question / fix. This is my first hour using BeOS. Im realy enjoying it a lot. Just trying to get an msn client working. The one that came with this BeOS install seems to crash on signin. Thread name w>Sign In. I thought that it may be because of MSN protocol updates (I use kopete on SuSE Linux so I've experienced this already) I downloaded the latest version of BeMSN which is suppose to have support for protocol8. I copied the libcl.so.3.10 to the link given in the zip file. When I launch BeMSN I get error Missing Library libsocket.so Is there a specific location to execute BeMSN from? Some sort of link I have to create? I saw nothing in the Readme.txt file on this. I did an updatedb and locate libsocket.so and it did not return any results from a terminal. Any help would be great." any idea what's wrong? would that be a BeMSN error, or is something wrong with his install....Daniel am I right if I say that we haven't got any specific BONE code, but we just compiled it for BONE? maybe it's a BONE error? regards, Tim _________________________________________________________________ Play online games with your friends with MSN Messenger http://messenger.msn.nl/ |
|
From: Sir M. <obe...@ho...> - 2004-03-26 17:58:50
|
Hey daniel, Simon figured it out what I was doing wrong...files are in cvs now, regards, Tim _________________________________________________________________ Hotmail en Messenger on the move http://www.msn.nl/communicatie/smsdiensten/hotmailsmsv2/ |
|
From: Sir M. <obe...@ho...> - 2004-03-26 16:20:58
|
Hi, >When you do a commit without a message, you cvs will go into vi (the text >editor) mode, so you can enter the message into the log. There is a message >on the log for every commit. Do you know who to use vi? It a command base >editor, type "a" to append text, "i" to insert, ":wq" to save and close >the log. > what kind of message do you mean? pff I think I will have to read the cvs manual :S....I don't know vi, and rather keep it that way...I heard it's terrible ;) regards, Tim _________________________________________________________________ Play online games with your friends with MSN Messenger http://messenger.msn.nl/ |