<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx</link><description>Triple-clicks and more.</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243936</link><pubDate>Mon, 18 Oct 2004 14:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243936</guid><dc:creator>Carlos</dc:creator><description>This is nit-picking, but I don't like the hit-test rectangle because it's not symmetrical around the starting point, and the code is broken when SM_CXDOUBLECLK==1.  (Even if this can't happen in practice, it's still scruffy.)  You can fix both problems by inflating a 1x1 rectangle rather than an empty rectangle.&lt;br&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243953</link><pubDate>Mon, 18 Oct 2004 15:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243953</guid><dc:creator>anonymouse</dc:creator><description>A more important question would be:&lt;br&gt;&lt;br&gt;&amp;quot;Does Raymond Chen know everything!&amp;quot;&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243963</link><pubDate>Mon, 18 Oct 2004 15:32:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243963</guid><dc:creator>asdf</dc:creator><description>Windows doesn't make sure it's an even number (hell, it doesn't even make sure it's a positive number) in the call to SystemParametersInfo.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243966</link><pubDate>Mon, 18 Oct 2004 15:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243966</guid><dc:creator>Chris Becke</dc:creator><description>Raymond Chen forgot to make his rect bottom right exclusive? Ha, that sounds like a much needed blog entry. Dealing with bottom right exclusive rects in Win32 :)</description></item><item><title>re: Bottom Right Exclusive Rects </title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243973</link><pubDate>Mon, 18 Oct 2004 15:43:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243973</guid><dc:creator>Steve Thresher</dc:creator><description>Is this what you wanted &lt;a target="_new" href="http://weblogs.asp.net/oldnewthing/archive/2004/02/18/75652.aspx"&gt;http://weblogs.asp.net/oldnewthing/archive/2004/02/18/75652.aspx&lt;/a&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243976</link><pubDate>Mon, 18 Oct 2004 15:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243976</guid><dc:creator>Chris Becke</dc:creator><description>hmmm. isn't that ironic.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243980</link><pubDate>Mon, 18 Oct 2004 15:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243980</guid><dc:creator>Matthew Riley</dc:creator><description>g_rcClick is of indeterminate value the first time through this function and is passed to PtInRect before initialized... might this pose a problem?</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243981</link><pubDate>Mon, 18 Oct 2004 15:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243981</guid><dc:creator>Merle</dc:creator><description>Why in the name of all that is sacred would you want to use *triple* clicks in an application?&lt;br&gt;&lt;br&gt;Yes, I understand Word has some magic selection behaviour where the more you click the more text is selected.  But I still don't think that's a good idea.  I would much rather have that sort of thing in a context menu where you can select.  It feels more like a &amp;quot;wow, this is so cool that I can detect this, let's give it some random functionality&amp;quot; thing to me.&lt;br&gt;&lt;br&gt;Unless you have a trackball (or glidepoint and use the buttons) it's really hard to click multiple times without moving the mouse.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243987</link><pubDate>Mon, 18 Oct 2004 16:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243987</guid><dc:creator>Raymond Chen</dc:creator><description>1. Yes, the rectangle is asymmetric, but that's how Windows has worked since 1983 and the goal here is to emulate the behavior not to fix it.&lt;br&gt;&lt;br&gt;2. asdf: I meant that the Windows control panels enforce the even-ness, not the API.&lt;br&gt;&lt;br&gt;3. Matthew: One of the subtleties of the code is that it doesn't matter what g_rcClick is initialized to.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#243999</link><pubDate>Mon, 18 Oct 2004 16:43:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:243999</guid><dc:creator>Nicholas Allen</dc:creator><description>Merle-&lt;br&gt;&lt;br&gt;Your browser probably supports triple clicking as well.  In Netscape it selects the line while in IE it selects the paragraph.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244001</link><pubDate>Mon, 18 Oct 2004 16:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244001</guid><dc:creator>Merle</dc:creator><description>Ha!  You're right.  Even if the click happens to be within the uninitialized g_rcClick, and if by wild happenstance g_tmLastClick is close to what GetMessageTime() returns (another uninitialized variable), it's a NOOP the first time through.&lt;br&gt;&lt;br&gt;Tricky.&lt;br&gt;&lt;br&gt;I'd feel safer initializing the RECT, though. ;-)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244002</link><pubDate>Mon, 18 Oct 2004 16:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244002</guid><dc:creator>Merle</dc:creator><description>Nicholas: hmm, you're right.  Even though Opera 5 pops up a contexty menu on double click, continued clicking selects text much as in Word.  Never noticed.  (never tried, actually)  Three clicks gives you text between punctuation (oddly stopping at the comma), four the paragraph.&lt;br&gt;&lt;br&gt;But I maintain my initial question: why do you want that?&lt;br&gt;&lt;br&gt;Especailly since it's not consistent between apps...</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244010</link><pubDate>Mon, 18 Oct 2004 17:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244010</guid><dc:creator>Nicholas Allen</dc:creator><description>Merle-&lt;br&gt;&lt;br&gt;Well, it's mostly because you can't just shove everything into a context menu.  Usability studies have shown that small, consistent context menus are the best way to go.  So rarely used features get pushed to more obscure trigger combinations.  At some point they should be dropped entirely but then you'd get nasty letters by the three people that use the feature all the time.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244017</link><pubDate>Mon, 18 Oct 2004 17:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244017</guid><dc:creator>Smeghead</dc:creator><description>Apple has it right, Microsoft has it wrong. &lt;br&gt;&lt;br&gt;This just in, Water is wet, the sky is blue.&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244023</link><pubDate>Mon, 18 Oct 2004 17:20:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244023</guid><dc:creator>Anon</dc:creator><description>Shouldn't:&lt;br&gt;&lt;br&gt;tmClick - g_tmLastClick &amp;gt;= GetDoubleClickTime()) {&lt;br&gt;&lt;br&gt;be:&lt;br&gt;&lt;br&gt;tmClick - g_tmLastClick &amp;gt; GetDoubleClickTime()) {</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244028</link><pubDate>Mon, 18 Oct 2004 17:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244028</guid><dc:creator>Raymond Chen</dc:creator><description>Anon: Yup, good catch. Fortunately this is undetectable in practice since no human being can do things to 1ms precision anyway.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244037</link><pubDate>Mon, 18 Oct 2004 18:04:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244037</guid><dc:creator>Henk Devos</dc:creator><description>Smeghead: Why does Apple get it right and Microsoft wrong?&lt;br&gt;I just tested on Safari and IE:Mac.&lt;br&gt;On Safari, 1 click is positioning the cursor, 2 clicks is selecting a word, 3 clicks is selecting a line.&lt;br&gt;In IE:Mac, this behavior is the same, except that 4 clicks is selecting a paragraph. They are compatible, while offering an extra option that is more useful than selecting a line.&lt;br&gt;I think Microsoft got it right and Apple got it wrong.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244070</link><pubDate>Mon, 18 Oct 2004 18:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244070</guid><dc:creator>Smeghead</dc:creator><description>Not according to the users I have to HELP.  ITs always confusion between LEFT or RIGHT and single nad double click. So yes, Apple (or xerox) got it right numbnuts.&lt;br&gt;&lt;br&gt;</description></item><item><title>Make sure you understand this</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244107</link><pubDate>Mon, 18 Oct 2004 20:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244107</guid><dc:creator>Alan De Smet</dc:creator><description>I understand that GetMessageTime's return value occasionally wraps around to 0.  But I'm not entirely clear on how your suggestion is better.&lt;br&gt;&lt;br&gt;The wrong answer is:&lt;br&gt;&lt;br&gt;    tmClick &amp;gt; g_tmLastClick + GetDoubleClickTime()&lt;br&gt;&lt;br&gt;As far as I can tell, this will actually work in practice.  Everyone should get&lt;br&gt;promoted to LONG.  GetMessageTime rolls over based on MAXLONG.  So&lt;br&gt;(g_tmLastClick+GetDoubleClickTime()) should roll over in matching behavior.&lt;br&gt;That said, relying on roll over and generally overflowing variables is A Bad&lt;br&gt;Idea, so it's wrong.  Am I correct so far?&lt;br&gt;&lt;br&gt;The right answer is apparently:&lt;br&gt;&lt;br&gt;    tmClick - g_tmLastClick &amp;gt; GetDoubleClickTime()&lt;br&gt;&lt;br&gt;However, if GetMessageTime rolled over, we've still got problems. tmClick will be small, g_tmLastClick will be very large.  (tmClick-g_tmLastClick) will be massively negative and will never trigger.  As far as I can tell any click over the rollover boundary will register as double/triple/whatever click.&lt;br&gt;&lt;br&gt;This leads me to conclude that I need to do something like so (code untested):&lt;br&gt;&lt;br&gt;LONG clickDelta = tmClick - g_tmLastClick;&lt;br&gt;if ( tmClick &amp;lt; g_tmLastClick) {&lt;br&gt;	clickDelta += MAXLONG;&lt;br&gt;}&lt;br&gt;&lt;br&gt;I suspect I'm overlooking something and would appreciate knowing what.&lt;br&gt;&lt;br&gt;(Oh, and thanks for the blog, it's fascinating reading.)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244111</link><pubDate>Mon, 18 Oct 2004 20:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244111</guid><dc:creator>Raymond Chen</dc:creator><description>Everything gets promoted to DWORD, not LONG. Does that help? (Hint: What if g_tmLastClick = 0xFFFFFFFF - GetDoubleClickTime()?)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244158</link><pubDate>Mon, 18 Oct 2004 21:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244158</guid><dc:creator>A non anon</dc:creator><description>Uhm. None of the g_* variables in the sample code are uninitialized, since global variables are zero-initialized.</description></item><item><title>nedit</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244328</link><pubDate>Tue, 19 Oct 2004 05:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244328</guid><dc:creator>Johan Thelin</dc:creator><description>The lovely editor nedit uses multiple clicks in a great way. Single click moves the carret, double click selects a line, tripple click selects a paragraph and, if I'm not missremembering, quadruple(!) click selects the entire document. Quite handy actually :)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244344</link><pubDate>Tue, 19 Oct 2004 05:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244344</guid><dc:creator>muro</dc:creator><description>OK, this is nitpicking, but anyway:&lt;br&gt;shouldn't there be another line at the end?&lt;br&gt;HANDLE_MSG(hwnd, WM_RBUTTONDOWN, OnRButtonDown);&lt;br&gt;&lt;br&gt;a pleasure to read this stuff.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244346</link><pubDate>Tue, 19 Oct 2004 05:37:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244346</guid><dc:creator>Raymond Chen</dc:creator><description>Extending to right-clicks is left as an exercise.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244347</link><pubDate>Tue, 19 Oct 2004 05:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244347</guid><dc:creator>muro</dc:creator><description>The missing line is actually funny, when you read second paragraph from the end of the article - especially the parenthesis. :-)&lt;br&gt;but sorry for nitpicking, its lame.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244348</link><pubDate>Tue, 19 Oct 2004 05:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244348</guid><dc:creator>Raymond Chen</dc:creator><description>Oh, you're right. I forgot what I wrote. (I wrote it so long ago.)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244366</link><pubDate>Tue, 19 Oct 2004 07:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244366</guid><dc:creator>Cyrus Najmabadi</dc:creator><description>Ugh, you had to write the code for this now after i spent a good half day getting this working right in some code i was writing.  What's worse is that you're the one who told me how to do it, but you weren't willing to take the time to write this up :-P&lt;br&gt;&lt;br&gt;Oh, and to those of you who are interested this was to add a feature in C# where as you click more and more we start selecting more and more of the C# code you've written based on the parse tree.&lt;br&gt;&lt;br&gt;So we'll start by selecting the expression, then the statement, the then method, then the class, namespace, etc.  Basically each successive click selects one higher level in the parse tree.&lt;br&gt;&lt;br&gt;it's a feature you grow to love :-)</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244369</link><pubDate>Tue, 19 Oct 2004 07:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244369</guid><dc:creator>krisztian pinter</dc:creator><description>i still not get that DoubleClickTime trick&lt;br&gt;&lt;br&gt;say &lt;br&gt;g_tmLastClick == ~4bil&lt;br&gt;tmClick == 10&lt;br&gt;&lt;br&gt;now 10 - ~4bil is a large number because of the overflow. it will treated as a double. OK.&lt;br&gt;&lt;br&gt;but&lt;br&gt;&lt;br&gt;g_tmLastClick == ~4bil&lt;br&gt;tmClick == 60000 (click one minute later)&lt;br&gt;&lt;br&gt;60000 - ~4bil is still a large number, so it will also be treated as double, however it is clearly a single.&lt;br&gt;&lt;br&gt;can someone explain this to me?&lt;br&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244399</link><pubDate>Tue, 19 Oct 2004 09:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244399</guid><dc:creator>muro</dc:creator><description>To clarify: consider, the difference calculation is correct:&lt;br&gt;tmClick - g_tmLastClick really calculates the time difference between the clicks correctly for our purpose, even when an overflow happens.&lt;br&gt;&lt;br&gt;First, lets show the overflow calculations with 8bits. GetDoubleClickTime() = 0x10:&lt;br&gt;0x01 - 0xff = 0x01 + ~(0xff) = 0x01 + (0x100 - 0xff) = 0x01 + 0x01 = 0x02 -&amp;gt; double click&lt;br&gt;0x21 - 0xff = 0x21 + ~(0xff) = 0x21 + (0x100 - 0xff) = 0x21 + 0x01 = 0x22 -&amp;gt; single click&lt;br&gt;&lt;br&gt;&lt;br&gt;Then the same for 32bit:&lt;br&gt;GetDoubleClickTime() = 10:&lt;br&gt;g_tmLastClick == 4bil = e.g.: 2^32 - 10&lt;br&gt;tmClick == 5:&lt;br&gt;5 - 4bil = 5 + ~(4bil) = 5 + (2^32 - 10) = 5 + 10 = 15 -&amp;gt; double click&lt;br&gt;&lt;br&gt;&lt;br&gt;tmClick == 60000 (click one minute later):&lt;br&gt;60000 - 4bil = 60000 + ~(4bil) = 60000 + (2^32 - 10) = 60000 + 10 = 60010 -&amp;gt; single click&lt;br&gt;&lt;br&gt;Sometimes it helps to think in lower precision. Makes all the scary big numbers go away :-). And off course - remember that subtraction is addition of complement. Makes it even less scary.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244400</link><pubDate>Tue, 19 Oct 2004 09:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244400</guid><dc:creator>muro</dc:creator><description>Overlooked in 32 bit part:&lt;br&gt;GetDoubleClickTime() = 10: would mean, the first 32bit example is also single click (as time difference is 15), but I hope you get the idea.&lt;br&gt;</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244414</link><pubDate>Tue, 19 Oct 2004 09:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244414</guid><dc:creator>krisztian pinter</dc:creator><description>thanks, muro!&lt;br&gt;&lt;br&gt;in my mind, result of substraction was the same as the distance. in a &amp;quot;modulo world&amp;quot;, it is not that easy.</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#244553</link><pubDate>Tue, 19 Oct 2004 15:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244553</guid><dc:creator>Raymond Chen</dc:creator><description>You can think of modulo arithmetic as points around a circle. Subtraction gives you the distance along the circumference, which doesn't care where your zero marker is.&lt;br&gt;&lt;br&gt;Another way of looking at subtraction is to view it as a translation of the circle, which is isometric (distance-preserving).</description></item><item><title>re: Implementing higher-order clicks</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#256074</link><pubDate>Thu, 11 Nov 2004 23:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:256074</guid><dc:creator>Joshua Schaeffer</dc:creator><description>Merle, triple clicks in Word are one of the biggest time savers for me. Sometimes I'm in this utmost lazy chair position where even using right-click is a tiresome expense of a few seconds. Although I personally wouldn't mind a &amp;quot;click chart&amp;quot; like so:&lt;br&gt;&lt;br&gt;1 - (normal)&lt;br&gt;2 - word&lt;br&gt;3 - sentence&lt;br&gt;4 - paragraph&lt;br&gt;5 - everything</description></item><item><title>Using modular arithmetic to avoid timing overflow problems</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#423408</link><pubDate>Tue, 31 May 2005 16:03:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:423408</guid><dc:creator>The Old New Thing</dc:creator><description>Avoiding timing overflows is easier than you think.</description></item><item><title>  Clairvoyant Interaction | Chui&amp;#8217;s counterpoint</title><link>http://blogs.msdn.com/oldnewthing/archive/2004/10/18/243925.aspx#8892220</link><pubDate>Sun, 24 Aug 2008 19:41:43 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8892220</guid><dc:creator>  Clairvoyant Interaction | Chui&amp;#8217;s counterpoint</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.redmountainsw.com/wordpress/archives/clairvoyant-interaction"&gt;http://www.redmountainsw.com/wordpress/archives/clairvoyant-interaction&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>