<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>mfc &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/mfc/</link>
	<description>Feed of posts on WordPress.com tagged "mfc"</description>
	<pubDate>Mon, 30 Nov 2009 01:14:06 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Neu! Unser Ersatzteil-Finder für Brother MFC-9760]]></title>
<link>http://druckerservicekiel.wordpress.com/2009/11/29/neu-unser-ersatzteil-finder-fur-brother-mfc-9760/</link>
<pubDate>Sun, 29 Nov 2009 09:58:05 +0000</pubDate>
<dc:creator>druckerservicekiel</dc:creator>
<guid>http://druckerservicekiel.wordpress.com/2009/11/29/neu-unser-ersatzteil-finder-fur-brother-mfc-9760/</guid>
<description><![CDATA[Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-9760 ist fertig! Wir haben dafür d]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div>
<div>
<div>
<p>Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-9760 ist fertig!</p>
<p>Wir haben dafür die passenden Explosionszeichnungen in’s Netz gestellt. Die am häufigsten benötigten Ersatzteile sind in der Zeichnung eingefärbt. Mit einem KLICK auf das Ersatzteil werden Sie direkt zum Shopartikel geführt und können diesen einfach in den Warenkorb legen.</p>
<p>Kein langes raussuchen der Ersatzteilnummer mehr. Ein Klick genügt.</p>
<p>Probieren Sie es einfach aus!</p>
<p><a href="http://www.ds-kiel.de/wbc.php?&#38;tpl=pgruppen.html&#38;rid=318" target="_blank">Hier der Link zur MFC-9760 Übersicht</a></p>
<p>Über ein Feedback würden wir uns sehr freuen. Bloggen Sie doch einfach Ihre Vorschläge/Kritik. Wir sind dankbar für jeden Vorschlag.</p>
<p>Danke sagt der <a href="http://www.ds-kiel.de/">Drucker-Service-Kiel</a></p>
</div>
</div>
</div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[MFC 23: Unstoppable, Thales vs. Lister]]></title>
<link>http://bahiamma.wordpress.com/2009/11/25/mfc-23-unstoppable-thales-vs-lister/</link>
<pubDate>Wed, 25 Nov 2009 05:49:57 +0000</pubDate>
<dc:creator>Bahia MMA</dc:creator>
<guid>http://bahiamma.wordpress.com/2009/11/25/mfc-23-unstoppable-thales-vs-lister/</guid>
<description><![CDATA[MFC 23 CARD PRINCIPAL Thales Leites (14-3) vs. Dean “The Boogeyman” Lister (11-6) Jason “The Athlete]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div id="attachment_537" class="wp-caption aligncenter" style="width: 465px"><a href="http://bahiamma.wordpress.com/files/2009/11/mfc23-banner_medium.jpg"><img class="size-full wp-image-537" title="mfc23-banner_medium" src="http://bahiamma.wordpress.com/files/2009/11/mfc23-banner_medium.jpg" alt="" width="455" height="183" /></a><p class="wp-caption-text">MFC 23</p></div>
<p>CARD PRINCIPAL</p>
<p>Thales Leites (14-3) vs. Dean “The Boogeyman” Lister (11-6)<br />
Jason “The Athlete” MacDonald (21-13) vs. “King” Solomon Hutcherson (11-5)<br />
Bryan “The Beast” Baker (10-1) vs. Art “Pachuco” Santore (18-6)<br />
Ryan “The Big Deal” Jimmo (11-1) vs. Emanuel “The Hardcore Kid” Newton (12-5-1)<br />
Marvin “The Beastman” Eastman (16-11) vs. Dwayne Lewis (9-4)</p>
<p>CARD PRELIMINAR</p>
<p>Jesse Juarez (11-5) vs. Joe “Jitsu” Christopher (9-2)<br />
Ryan “The Vanilla Gorilla” Fortin (5-1) vs. Nick “The Quiet Assassin” Penner (8-1).<br />
Ryan Machan (9-3) vs. “Rajin” Kajan Johnson (16-10)</p>
<address>Fonte: MMAWeekly</address>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[MFC Celebra Aniversario en Rep. Dominicana]]></title>
<link>http://pnsconsolacion.org/2009/11/16/mfc-celebra-aniversario-en-rep-dominicana/</link>
<pubDate>Mon, 16 Nov 2009 11:21:14 +0000</pubDate>
<dc:creator>pnsconsolacion</dc:creator>
<guid>http://pnsconsolacion.org/2009/11/16/mfc-celebra-aniversario-en-rep-dominicana/</guid>
<description><![CDATA[Recientemente el Movimiento Familiar Cristiano celebró el IV encuentro nacional del III milenio dond]]></description>
<content:encoded><![CDATA[Recientemente el Movimiento Familiar Cristiano celebró el IV encuentro nacional del III milenio dond]]></content:encoded>
</item>
<item>
<title><![CDATA[Dialogs and Controls - Default Behaviour]]></title>
<link>http://tlev.wordpress.com/2009/11/12/dialogs-and-controls-default-behaviour/</link>
<pubDate>Thu, 12 Nov 2009 15:04:54 +0000</pubDate>
<dc:creator>Lev Berner</dc:creator>
<guid>http://tlev.wordpress.com/2009/11/12/dialogs-and-controls-default-behaviour/</guid>
<description><![CDATA[This essay covers: PreTranslateMessage and message interception mechanism Avoiding having the Enter ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>This essay covers:</p>
<ul>
<li><code>PreTranslateMessage</code> and message interception mechanism</li>
<li>Avoiding having the Enter and Escape keys terminate the dialog</li>
<li>The WM_GETDLGCODE message</li>
</ul>
<p>The interception mechanism in MFC is implemented through the magic of <code>CWnd</code> class virtual method <code>PreTranslateMessage</code>. When window receives the message, before actually handling it, it bubbles the message up through its parent and grandparents, all the way up to the topmost window, calling <code>CWnd::PreTranslateMessage</code> for each one. Something like this:</p>
<p><code><br />
BOOL CWnd::PreTranslateMessage(MSG* pMsg)<br />
{<br />
for (pWnd = /* window that sent msg */; pWnd; pWnd=pWnd-&#62;getParent())<br />
if (pWnd-&#62;PreTranslateMessage(pMsg))<br />
return TRUE;</code></p>
<p><code> </code></p>
<p><code>return FALSE;  // not handled<br />
}<br />
</code></p>
<p><code>PreTranslateMessage</code> return value can be either TRUE, meaning that message were handled, or FALSE otherwise. If all the windows in the hierarchy will return FALSE in their <code>PreTranslateMessage</code>, the message will eventually be handled by the window that initialy received the message. But if one of the windows in the hierarchy returns TRUE the hall sequence breaks down and no other window, including the one that initiated the sequence, will have the chance to process the message. Thus allowing any of the parent windows to hijack the message.</p>
<p>By default <code>CDialog</code> is programmed to intercept some of its child controls messages. Two important of them concerning keyboard input are ENTER and ESC key strokes. The dialog handlers for these events are <code>OnOk</code> and <code>OnCancel</code> corespondingly. The default behaviour for both of these handlers is to close the dialog.</p>
<p>This default behaviour can sometimes be the cause of unwanted behaviour. For instance, lets say that your dialog has a number of text input fields that user should fill in. What you probably like to be is when the user finishes filling one input field and presses ENTER, the focus is switched to the next input field. But what you get is that the dialog will close upon the first time user hits the ENTER button.</p>
<p>There are a couple of ways to change the default behaviour. First one is simply to override the default handler s.t it will suite your needs. For instance, if you wish that your dialog will stay open despite ENTER key, just delete the body of <code>OnOk</code> method.</p>
<p><code><br />
void MyDialog::OnOK()<br />
{<br />
// CDialog::OnOk();<br />
}<br />
</code><br />
Or you can even override <code>PreTranslateMessage</code> itself, like this:<br />
<code><br />
BOOL MyDialog::PreTranslateMessage(MSG* pMsg)<br />
{<br />
if(pMsg-&#62;message==WM_KEYDOWN)<br />
{<br />
if(pMsg-&#62;wParam==VK_RETURN)<br />
return TRUE; // the message shouldn't be dispatched any farther<br />
}</code></p>
<p><code> </code></p>
<p><code>return CDialog::PreTranslateMessage(pMsg); // default handler<br />
}<br />
</code></p>
<p>The other way and in my opinion, the preferred one, is to give the responsibility for non-standard behaviour to the control itself. But since we want to implement non-standard behaviour we can&#8217;t use any of standard MFC controls and thus make a new control by ourselves. From first glance it seems odd, but if you think about it a bit, it&#8217;s perfectly logical and its much more natural than altering the default handlers or the message route.</p>
<p>If you want some new behaviour, it makes much more sence to create a new class that encapsulates it and not to impose non-standard behaviour on standard objects. The standard objects were designed to work certain way, don&#8217;t try to twist them around to impose on them un-natural behaviour. You want a new behavior- build a new class!</p>
<p>And actually it isn&#8217;t complicated at all. After all you don&#8217;t have to write new control from the scratch, it&#8217;s perfectly alright to derive it from standard MFC control &#8211; and this can be accomplished just with few clicks in VS. After your class is created, just override the WM_GETDLGCODE message handler like this:</p>
<p><code><br />
UINT EnterEdit::OnGetDlgCode()<br />
{<br />
// ask dialog superclass not to handle keyboard input that intented for me<br />
return CEdit::OnGetDlgCode() &#124; DLGC_WANTALLKEYS;<br />
}<br />
</code><br />
The message about ENTER keystroke will still reach the parent dialog via interception mechanism, but now it will know not to handle it.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How to create a CEdit to display only float numbers]]></title>
<link>http://vcpptips.wordpress.com/2009/11/09/how-to-create-a-cedit-to-display-only-float-numbers/</link>
<pubDate>Mon, 09 Nov 2009 13:09:37 +0000</pubDate>
<dc:creator>Sanoop S P</dc:creator>
<guid>http://vcpptips.wordpress.com/2009/11/09/how-to-create-a-cedit-to-display-only-float-numbers/</guid>
<description><![CDATA[    Have you ever face a situation to make an edit box that support only floating point numbers. Tha]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignleft size-full wp-image-703" title="Description" src="http://vcpptips.wordpress.com/files/2009/07/description.jpg" alt="Description" width="150" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;">Have you ever face a situation to make an <span style="color:#0000ff;">edit box</span> that <span style="color:#0000ff;">support only floating point numbers</span>. That means the edit box <span style="color:#0000ff;">do not accept more than one . <span style="color:#000000;">(dot)</span> and characters</span>. How shall we do it? Just a trick! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><img class="alignleft size-full wp-image-706" title="HowCanIDoIt1" src="http://vcpptips.wordpress.com/files/2009/07/howcanidoit13.jpg" alt="HowCanIDoIt1" width="200" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;">First of all we have to a <span style="color:#0000ff;">derive a new CEdit class</span> to our project and make a control of that on our window. Then we need to put a handler for <span style="color:#0000ff;">WM_CHAR</span> and <span style="color:#0000ff;">EN_UPDATE </span>messages for our custom edit class. Within the WM_CAHR message handler we can <span style="color:#0000ff;">backup the existing value</span> and within the EN_UPDATE message handler we can <span style="color:#0000ff;">check the modified value</span>. If its a valid double value, then only we need to update this with the edit control otherwise we can keep the previous value.</p>
<p><img class="alignleft size-full wp-image-689" title="MyCodeSnippet" src="http://vcpptips.wordpress.com/files/2009/07/mycodesnippet1.jpg" alt="MyCodeSnippet" width="150" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p>MyEdit.h</p>
<pre>class CMyEdit : public CEdit
{
   DECLARE_DYNAMIC(CMyEdit)
public:
   CMyEdit();
   virtual ~CMyEdit();
protected:
   DECLARE_MESSAGE_MAP()
   afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
   afx_msg void OnUpdate();
private:
   CString m_strPrevValue;
   int m_nLastSel;
};</pre>
<p>MyEdit.cpp</p>
<pre>CMyEdit::CMyEdit()
{
   m_nLastSel = 0;
}

CMyEdit::~CMyEdit()
{
}

BEGIN_MESSAGE_MAP(CMyEdit, CEdit)
   ON_WM_CHAR()
   ON_CONTROL_REFLECT(EN_UPDATE, OnUpdate)
END_MESSAGE_MAP()

void CMyEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
   GetWindowText(m_strPrevValue);
   m_nLastSel = GetSel();
   CEdit::OnChar(nChar, nRepCnt, nFlags);
}
void CMyEdit::OnUpdate()
{
   CString str;
   GetWindowText(str);
   errno = 0;
   LPTSTR endPtr;
   double doubleValue = _tcstod(str, &#38;aEndPtr);
   if (*endPtr)
   {
      SetWindowText(m_strPrevValue);
      SetSel(m_nLastSel);
   }
}</pre>
<p><img class="alignleft size-full wp-image-823" title="MyNote" src="http://vcpptips.wordpress.com/files/2009/10/mynote1.jpg" alt="MyNote" width="100" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;">If you want to allows only digits to be entered into the edit control just use the style <span style="color:#0000ff;">ES_NUMBER</span>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[タイ株式市場　11月9日（月）の注目株。]]></title>
<link>http://settrade.wordpress.com/2009/11/09/%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e5%b8%82%e5%a0%b4%e3%80%8011%e6%9c%889%e6%97%a5%ef%bc%88%e6%9c%88%ef%bc%89%e3%81%ae%e6%b3%a8%e7%9b%ae%e6%a0%aa%e3%80%82/</link>
<pubDate>Mon, 09 Nov 2009 04:07:38 +0000</pubDate>
<dc:creator>settrade</dc:creator>
<guid>http://settrade.wordpress.com/2009/11/09/%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e5%b8%82%e5%a0%b4%e3%80%8011%e6%9c%889%e6%97%a5%ef%bc%88%e6%9c%88%ef%bc%89%e3%81%ae%e6%b3%a8%e7%9b%ae%e6%a0%aa%e3%80%82/</guid>
<description><![CDATA[JUBILE &#8211; JUBILEE ENTERPRISE PUBLIC COMPANY LIMITED IPO価格2.80バーツで本日より取引開始。（10時10分現在3.16バーツ） KAS]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>JUBILE &#8211; JUBILEE ENTERPRISE PUBLIC COMPANY LIMITED<br />
IPO価格2.80バーツで本日より取引開始。（10時10分現在3.16バーツ）</p>
<p>KASET &#8211; THAI HA PUBLIC COMPANY LIMITED<br />
証券取引所はKASET株を本日11月9日より27日まで、現金取引のみのキャッシュバランスに。</p>
<p>KCE &#8211; KCE ELECTRONICS PUBLIC COMPANY LIMITED<br />
2009年度第3四半期決算の純利益は1億2千3百万バーツ。前年同期は1千万バーツほどであった。</p>
<p>MINT &#8211; MINOR INTERNATIONAL PUBLIC COMPANY LIMITED<br />
2009年度第3四半期決算の純利益はおよそ1億5千2百万バーツ。前年同期は3億7千6百万バーツであった。</p>
<p>ADVANC &#8211; ADVANCED INFO SERVICE PUBLIC COMPANY LIMITED<br />
2009年度第3四半期決算の純利益はおよそ41億8千万バーツ。前年同期は45億3千万バーツであった。また、来年度1Q にも実施されるとされる3G通信免許入札にをなえて現金勘定を増やしている。</p>
<p>SAMART &#8211; SAMART CORPORATION PUBLIC COMPANY LIMITED<br />
（タイ、カンボジア間の関係悪化に関して）カンボジアでのSAMART社のビジネスは通常通り。おそらく問題は激化せずに早目に鎮静化に向かうとの予想。</p>
<p>CGS &#8211; COUNTRY GROUP SECURITIES PUBLIC COMPANY LIMITED<br />
来年度は顧客企業の上場を3～6社計画している。上場申請（ファイリング）は、来年年明けから順次行う予定</p>
<p>THAI &#8211; THAI AIRWAYS INTERNATIONAL PUBLIC COMPANY LIMITED<br />
第3四半期の目標未達は受け入れるしかない。航空料金を値下げしたので第4四半期は売り上げが改善する見込み。</p>
<p>MFC &#8211; MFC ASSET MANAGEMENT PUBLIC COMPANY LIMITED<br />
2009年度は利益の伸びを15-20％と予想。NAV（純資産）は当初計画に近い2600億バーツ。</p>
<p>DTAC &#8211; TOTAL ACCESS COMMUNICATION PUBLIC COMPANY LIMITED<br />
Mobile Broadband Operatorとしての地位を目指す。3Gライセンス取得後に大きく動く予定。</p>
<p>FOCUS &#8211; FOCUS DEVELOPMENT AND CONSTRUCTION PUBLIC COMPANY LIMITED<br />
経営陣は来年度半ばにも、新規8階建てコンドミニアム（建売マンション）建設価格3億バーツほどの物件を計画中。</p>
<p>THCOM &#8211; THAICOM PUBLIC COMPANY LIMITED<br />
タイ-カンボジア関係が緊張しているが、現状ビジネスには影響がない模様。</p>
<p><a href="http://stock.blogmura.com/thailandstock/"><img src="http://stock.blogmura.com/thailandstock/img/thailandstock88_31.gif" width="88" height="31" border="0" alt="にほんブログ村 株ブログ タイ株へ" /></a><br /><a href="http://stock.blogmura.com/thailandstock/">にほんブログ村</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Brother MFC-7420 under Linux without the proprietary Brother drivers]]></title>
<link>http://masterofpc.wordpress.com/2009/11/08/brother-mfc-7420-under-linux-without-the-proprietary-brother-drivers/</link>
<pubDate>Sun, 08 Nov 2009 12:25:14 +0000</pubDate>
<dc:creator>masterofpc</dc:creator>
<guid>http://masterofpc.wordpress.com/2009/11/08/brother-mfc-7420-under-linux-without-the-proprietary-brother-drivers/</guid>
<description><![CDATA[So, today I found out a very interesting thing&#8230;I wondered for a long time if I could connect m]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>So, today I found out a very interesting thing&#8230;I wondered for a long time if I could connect my printer (MFC-7420) to a non-x86 Linux machine (SPARC!) to have a print server. Well I failed&#8230;I failed again, but here&#8217;s how I eventually succeded:<br />
Let&#8217;s take a look at what the filterMFC7420 CUPS wrapper (from the official <a href="http://solutions.brother.com/linux/en_us/">Brother-Linux-Package</a> for the MFC7420) does when it gets a file to print:<br />
When you pass a ps file through the /usr/local/Brother/lpd/psconvert2 and then through rawtobr2 out comes a data file of an unknown type. But if you look at it with a hex editor, you see the following:<br />
<code>%-12345X@PJL<br />
@PJL JOB NAME="Brother HL-XXX"<br />
@PJL SET RAS1200MODE = OFF<br />
@PJL SET RESOLUTION = 600<br />
@PJL SET ECONOMODE = OFF<br />
@PJL SET SOURCETRAY = TRAY1<br />
@PJL SET MEDIATYPE = REGULAR<br />
@PJL SET ORIENTATION = PORTRAIT<br />
@PJL SET PAPER = LETTER<br />
@PJL SET PAGEPROTECT = AUTO<br />
@PJL ENTER LANGUAGE = PCL<br />
E&#38;u600D*t600R*b1030m5021w</code><br />
This is crazy! The rawtobr2 binary just somehow translates the postscript file to some GDI/PJL-language-file! And it seems that they used the same language as for the HL-XXXX series of printers&#8230;.this means, we could have full linux support without the proprietary Brother drivers. Which then means&#8230;.my printer could run on my SPARC machines <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Later, I proved this is really true:<br />
Take one MFC-7420. Connect it through USB to a computer running Linux. Start the CUPS service. With a browser, go to http://localhost:631 &#8211; Administration tab. And click on Find new printers. Follow the instructions and then as printer driver select &#8220;Brother HL-5050 Foomatic/hl1250&#8243; (the foomatic package needs to be installed!!) then finish. Set the printer options and print a test page <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Hurray! We have it!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Austausch Papiereinzugsrolle für verschiedene Brother Geräte LM4300001]]></title>
<link>http://druckerservicekiel.wordpress.com/2009/11/07/austausch-papiereinzugsrolle-fur-verschiedene-brother-gerate-lm4300001/</link>
<pubDate>Sat, 07 Nov 2009 13:21:49 +0000</pubDate>
<dc:creator>druckerservicekiel</dc:creator>
<guid>http://druckerservicekiel.wordpress.com/2009/11/07/austausch-papiereinzugsrolle-fur-verschiedene-brother-gerate-lm4300001/</guid>
<description><![CDATA[Unsere neue Einbauhilfe ist fertig. Die Einzugsrolle hat die Brother Art-Nr.: LM4300001 Uns sind fol]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Unsere neue Einbauhilfe ist fertig.</p>
<p>Die Einzugsrolle hat die Brother Art-Nr.: LM4300001</p>
<p><strong>Uns sind folgende Geräte bekannt:</strong><br />
Brother MFC-7420<br />
Brother MFC-7820N<br />
Brother MFC-7225N<br />
Brother DCP-7010<br />
Brother DCP-7025<br />
Brother FAX 2820<br />
Brother FAX 2920</p>
<p>weitere sind möglich.</p>
<p><img class="alignleft size-full wp-image-401" title="schwierigkeitsgrad4" src="http://druckerservicekiel.wordpress.com/files/2009/11/schwierigkeitsgrad4.gif" alt="schwierigkeitsgrad4" width="180" height="22" /></p>
<p>Zum <a title="zum Shop Artikel" href="http://www.ds-kiel.de/wbc.php?&#38;tpl=produktdetail.html&#38;pid=36996" target="_blank">Artikel</a></p>
<p>Für Kunden, die diesen Artikel bei uns gekauft haben, ist die Anleitung kostenlos, die Schutzgebühr beträgt 6,90 Eur</p>
<p><img class="alignleft size-full wp-image-419" title="LM4300001wz-200" src="http://druckerservicekiel.wordpress.com/files/2009/11/lm4300001wz-2001.jpg" alt="LM4300001wz-200" width="200" height="186" /></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Reset beim Brother MFC-9880 und anderen]]></title>
<link>http://druckerservicekiel.wordpress.com/2009/11/04/reset-beim-brother-mfc-9880-und-anderen/</link>
<pubDate>Wed, 04 Nov 2009 14:40:06 +0000</pubDate>
<dc:creator>druckerservicekiel</dc:creator>
<guid>http://druckerservicekiel.wordpress.com/2009/11/04/reset-beim-brother-mfc-9880-und-anderen/</guid>
<description><![CDATA[Um den Brother MFC-9880 auf seine Ausgangskonfiguration zurückzustellen führen Sie folgende Prozedur]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Um den Brother MFC-9880 auf seine Ausgangskonfiguration zurückzustellen führen Sie folgende Prozedur durch.</p>
<p><span style="text-decoration:underline;"><strong>HINWEIS !</strong></span><br />
Bitte beachten Sie, das sämtliche Einstellungen gelöscht werden und durch evtl. Fehleingaben, das Gerät, nicht mehr funktionsfähig ist! Falsche Eingaben in diesem Modus können zur Folge haben, dass grundsätzliche Funktionen des Gerätes nicht mehr verfügbar sind. Halten Sie sich deshalb bitte genau an die Anweisungen.</p>
<p>- Netzstecker ziehen</p>
<p>- drücken Sie und halten Sie die “Menü“ Taste weiterhin gedrückt während Sie den<br />
Netzstecker GLEICHZEITIG wieder einstecken und die “Menü“ Taste<br />
ca. 20 Sekunden gedrückt halten</p>
<p>- Im Display erscheint MAINTENANCE</p>
<p>- lassen Sie die “Menü“ Taste los</p>
<p>- drücken Sie jetzt auf dem Ziffernblock die “0“ und “1“</p>
<p>- Im Display erscheint PARAMETER INIT  (Das Gerät initialisiert sich neu)</p>
<p>- Im Display erscheint MAINTENANCE</p>
<p>- Im Ziffernblock die Tasten  “0“ und “1“ drücken</p>
<p>- Im Display erscheint PARAMETER INIT  (Das Gerät initialisiert sich neu)</p>
<p>- Im Display erscheint MAINTENANCE</p>
<p>- Die Tasten &#8220;9&#8243; und &#8220;9&#8243; drücken, um den MAINTENANCE Mode zu verlassen</p>
<p>- GGfls nochmal Netzstecker, am Gerät, ziehen</p>
<p>Bei bestimmten Modellen bestätigen Sie die Abfrage “Select?“ mit der “Start s/w“ Taste.</p>
<p>Je nach Modell haben die Tasten eine andere Beschriftung, z.B. “Menü“ = “Menü/Eingabe“ = “Funktion“ = “Sicherer Druck“ (nur MFC-9420) oder “Eingabe“ = “Menü/Eingabe“ = “OK“ Taste.</p>
<p>Bei bestimmten Modellen bestätigen Sie die Abfrage “Select?“ mit der “Start s/w“ Taste.</p>
<p>Ein <strong>Tip</strong> vom <a href="http://www.ds-kiel.de/" target="_blank">Drucker-Service-Kiel</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[The Curse Of Extensibility]]></title>
<link>http://hamagudi.com/2009/11/04/the-curse-of-extensibility/</link>
<pubDate>Wed, 04 Nov 2009 14:23:29 +0000</pubDate>
<dc:creator>hamagudi</dc:creator>
<guid>http://hamagudi.com/2009/11/04/the-curse-of-extensibility/</guid>
<description><![CDATA[My first tryst with Microsoft&#8217;s developer tools was when I started learning MCF back in 1997-9]]></description>
<content:encoded><![CDATA[My first tryst with Microsoft&#8217;s developer tools was when I started learning MCF back in 1997-9]]></content:encoded>
</item>
<item>
<title><![CDATA[How can we detect memory leaks in our program]]></title>
<link>http://vcpptips.wordpress.com/2009/11/03/how-can-we-detect-memory-leaks-in-our-program/</link>
<pubDate>Tue, 03 Nov 2009 03:12:24 +0000</pubDate>
<dc:creator>Sanoop S P</dc:creator>
<guid>http://vcpptips.wordpress.com/2009/11/03/how-can-we-detect-memory-leaks-in-our-program/</guid>
<description><![CDATA[    We know that memory is always at a premium. So as a programmer we have to to ensure minimum memo]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignleft size-full wp-image-727" title="Description" src="http://vcpptips.wordpress.com/files/2009/09/description.jpg" alt="Description" width="150" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;">We know that <span style="color:#0000ff;">memory is always at a premium</span>. So as a programmer we have to to ensure <span style="color:#0000ff;">minimum memory consumption as possible</span> and necessary to <span style="color:#0000ff;">avoid memory leaks</span> from the program. How can we detect memory leaks in our program.</p>
<p><img class="alignleft size-full wp-image-730" title="HowCanIDoIt1" src="http://vcpptips.wordpress.com/files/2009/09/howcanidoit1.jpg" alt="HowCanIDoIt1" width="200" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"><span style="color:#0000ff;">MFC </span>provides a structure <span style="color:#0000ff;">CMemoryState </span>to detect memory leaks in our program. This diagnostics method only help to detect memory leaks caused when memory allocated using the <span style="color:#0000ff;">new operator</span> is <span style="color:#0000ff;">not deallocated using delete</span>.</p>
<p><img class="alignleft size-full wp-image-689" title="MyCodeSnippet" src="http://vcpptips.wordpress.com/files/2009/07/mycodesnippet1.jpg" alt="MyCodeSnippet" width="150" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<pre>void DetectMemoryLeak()
{
   CMemoryState oldMemState, newMemState, diffMemState;
   oldMemState.Checkpoint();
   /* new memory is allocated in the heap */
   int *p = new int;
   /* heap memory is not yet deallocated */
   newMemState.Checkpoint();
   if(diffMemState.Difference(oldMemState,newMemState))
   {
      AfxMessageBox(_T("Detects Memory Leak"));
   }
}</pre>
<p><img class="alignleft size-full wp-image-823" title="MyNote" src="http://vcpptips.wordpress.com/files/2009/10/mynote1.jpg" alt="MyNote" width="100" height="40" /></p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;"> </p>
<p style="text-align:justify;">CMemoryState will not address the leaks caused by <span style="color:#0000ff;">malloc </span>, <span style="color:#0000ff;">LocalAlloc </span>&#38; <span style="color:#0000ff;">GlobalAlloc</span>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Neu! Unser Ersatzteil-Finder für Brother MFC-8840]]></title>
<link>http://druckerservicekiel.wordpress.com/2009/10/26/neu-unser-ersatzteil-finder-fur-brother-mfc-8840/</link>
<pubDate>Mon, 26 Oct 2009 13:27:38 +0000</pubDate>
<dc:creator>druckerservicekiel</dc:creator>
<guid>http://druckerservicekiel.wordpress.com/2009/10/26/neu-unser-ersatzteil-finder-fur-brother-mfc-8840/</guid>
<description><![CDATA[Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-8840 ist fertig! Wir haben dafür d]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div>
<div>
<div>
<p>Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-8840 ist fertig!</p>
<p>Wir haben dafür die passenden Explosionszeichnungen in’s Netz gestellt. Die am häufigsten benötigten Ersatzteile sind in der Zeichnung eingefärbt. Mit einem KLICK auf das Ersatzteil werden Sie direkt zum Shopartikel geführt und können diesen einfach in den Warenkorb legen.</p>
<p>Kein langes raussuchen der Ersatzteilnummer mehr. Ein Klick genügt.</p>
<p>Probieren Sie es einfach aus!</p>
<p><a href="http://www.ds-kiel.de/wbc.php?&#38;tpl=pgruppen.html&#38;rid=232" target="_blank">Hier der Link zur MFC-8440 Übersicht</a></p>
<p>Über ein Feedback würden wir uns sehr freuen. Bloggen Sie doch einfach Ihre Vorschläge/Kritik. Wir sind dankbar für jeden Vorschlag.</p>
<p>Danke sagt der <a href="http://www.ds-kiel.de/">Drucker-Service-Kiel</a></p>
</div>
</div>
</div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Neu! Unser Ersatzteil-Finder für Brother MFC-8440]]></title>
<link>http://druckerservicekiel.wordpress.com/2009/10/23/neu-unser-ersatzteil-finder-fur-brother-mfc-8440/</link>
<pubDate>Fri, 23 Oct 2009 05:23:37 +0000</pubDate>
<dc:creator>druckerservicekiel</dc:creator>
<guid>http://druckerservicekiel.wordpress.com/2009/10/23/neu-unser-ersatzteil-finder-fur-brother-mfc-8440/</guid>
<description><![CDATA[Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-8440 ist fertig! Wir haben dafür d]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div>
<div>
<p>Unser neuer Ersatzteilfinder (Artikelfinder) für den  Brother MFC-8440 ist fertig!</p>
<p>Wir haben dafür die passenden Explosionszeichnungen in’s Netz gestellt. Die am häufigsten benötigten Ersatzteile sind in der Zeichnung eingefärbt. Mit einem KLICK auf das Ersatzteil werden Sie direkt zum Shopartikel geführt und können diesen einfach in den Warenkorb legen.</p>
<p>Kein langes raussuchen der Ersatzteilnummer mehr. Ein Klick genügt.</p>
<p>Probieren Sie es einfach aus!</p>
<p><a href="http://www.ds-kiel.de/wbc.php?&#38;tpl=pgruppen.html&#38;rid=247" target="_blank">Hier der Link zur MFC-8440 Übersicht</a></p>
<p>Über ein Feedback würden wir uns sehr freuen. Bloggen Sie doch einfach Ihre Vorschläge/Kritik. Wir sind dankbar für jeden Vorschlag.</p>
<p>Danke sagt der <a href="http://www.ds-kiel.de/">Drucker-Service-Kiel</a></p>
</div>
</div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Resultados Master Fighters Championship III]]></title>
<link>http://redondaemocion.wordpress.com/2009/10/21/resultados-master-fighters-championship-iii/</link>
<pubDate>Thu, 22 Oct 2009 03:17:38 +0000</pubDate>
<dc:creator>sotohbk</dc:creator>
<guid>http://redondaemocion.wordpress.com/2009/10/21/resultados-master-fighters-championship-iii/</guid>
<description><![CDATA[Enviado por Alejandro González El sábado 17 de octubre pasado fue otro día de MMA (Artes Marciales M]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="aligncenter size-full wp-image-308" title="MFC3" src="http://redondaemocion.wordpress.com/files/2009/10/mfc3.jpg" alt="MFC3" width="460" height="345" /></p>
<p><a href="http://www.facebook.com/sharer.php?u=http://redondaemocion.wordpress.com/2009/10/21/resultados-mas…ampionship-iii/" target="_blank"><img title="facebookIcon.jpg" src="http://redondaemocion.wordpress.com/files/2009/09/facebookicon-jpg.png?w=150" alt="facebookIcon.jpg" width="21" height="21" /></a><a rel="nofollow" href="http://twitter.com/home?status=Mira la @RedondaEmocion http://redondaemocion.wordpress.com/2009/10/21/resultados-mas…ampionship-iii/" target="_blank"><img title="TwitterIcon" src="http://redondaemocion.wordpress.com/files/2009/09/twittericon.png?w=145" alt="TwitterIcon" width="21" height="21" /></a></p>
<p><!--more--></p>
<p style="text-align:right;">Enviado por Alejandro González</p>
<p style="text-align:justify;">El sábado 17 de octubre pasado fue otro día de MMA (Artes Marciales Mixtas, del inglés Mixed Martials Arts) en nuestro país. En la cúpula del Parque O&#8217;Higgins se dio lugar a la tercera edición de Master Fighters Championship.</p>
<p style="text-align:justify;">Esta edición, titulada &#8220;Honor&#8221; por los organizadores, se destacó el GP -mini torneo- por los campeonatos de MMA y Kickboxing de 85 Kg.</p>
<p style="text-align:justify;">El GP De MMA fue entre Sebastián Galaz (Bahamondes Dojo), Rodrigo Cabral (Team Cabral), Cristian Herrera (Gracie JiuJitsu Chile) y Juan Carlos “Nitro”Perez (Nitro MMA)</p>
<p style="text-align:justify;">El evento destacó por las sorpresas. Galaz, quien proviene del kickboxing (47 peleas ganadas y 3 perdidas), debutó en el primer combate frente a Juan Carlos “Nitro” Perez. En un encuentro reñido, Perez se fue en busca del takedown, pero El Striking de Galaz dio la sorpresa. Pero, Galaz no dio tregua a Perez, el cual con el duro castigo , no pudo seguir al 2do round, debido al daño que este tenia en su rostro.</p>
<p style="text-align:justify;">La segunda lucha clasificatoria del GP fue entre Cristian Herrera, del Gracie JiuJitsu Santiago y Rodrigo Cabral. La lucha fue rapida, se fueron en busca del takedown, Herrera lo logra dominar rápidamente y comienza a golpear el rostro de Cabral en reiteradas ocasiones. Éste último no le quedó otra alternativa que rendirse y darle la victoria a Herrerae.</p>
<p style="text-align:justify;">Cabe Destacar la lucha de Francisco Landaeta y Juan Sebastián Yañez, en la cual, Landaeta demostró un excelente JiuJitsu, entró con actitud y seguridad, lo que le dio la confianza para aplicar un armbar inverso y llevarse la victoria.</p>
<p style="text-align:justify;"><strong>GP de Kickboxing, fue una excelente super 4, Benjamín Arroyo fue la estrella de la categoría, derrotó sin problemas a Claudio Claros por Ko. </strong></p>
<p style="text-align:justify;">Lara derrotó a Irribara por Decisión De La Esquina de Irribara. El final fue clave, Arroyo sobresalió y obtuvo la victoria por Decisión De La Esquina de Lara, donde decidieron no seguir.</p>
<p style="text-align:justify;">Se lamentó la lesion de Patricio Veas, quien se fracturó la Tibia y el Peroné en su combate frente a Rodolfo Guzmán. La pelea fue pareja, pero al intercambiar golpes en el 2do round, la pierna de Veas cedió.</p>
<p style="text-align:justify;"><strong>La Final del GP MMA Cristian Herrera vs Sebastián Galaz.</strong></p>
<p style="text-align:justify;">En la lucha decisiva, se fueron a buscar el takedown. La poca experiencia de Galaz luchando en el Suelo, le pasó la cuenta al recibir el armbar de Herrera. Esta llave causó que Galaz palmeara y diera la victoria a Herrera para coronarse campeón.</p>
<p><strong>Resultados Finales</strong>:</p>
<p>1er Clasificatorio GP Kickboxing:</p>
<p>Eladio Lara derrota a Francisco Irribarra Por Abandono.</p>
<p>1er Clasificatorio GP MMA</p>
<p>Ivan Galaz derrota a Juan Carlos “Nitro” Perez por TKO (Decisión Del Medico)</p>
<p>Esteban Salinas vs Jose Rivas Termina En Empate</p>
<p>2do Clasificatorio GP Kickboxing</p>
<p>Benjamín Arroyo derrota a Claudio Claros por KO</p>
<p>2do Clasificatorio GP MMA:</p>
<p>Cristian Herrera Derrota a Rodrigo Cabral por TKO (Puños)</p>
<p>Tomas Vasquez derrota a Eric Galdames por Decisión Dividida</p>
<p>Francisco Landaeta derrota a Juan Sebastián Yañez por Submission (Armbar)</p>
<p>Rodolfo Guzman derrota a Patricio Veas por TKO (Lesion)</p>
<p>Final Kickboxing GP:</p>
<p>Benjamín Arroyo derrota a Eladio Lara por Abandono</p>
<p>Cristian Parra derrota a Marco Contreras por Abandono.</p>
<p>Final MMA GP:</p>
<p>Cristian Herrera derrota a Sebastián Galaz por Submission (Armbar)</p>
<p>____________________________________<br />
ATSteveDuncan  ®  The Prodigy Iceman&#8230;</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Introduction to Model View Control (MVC) Pattern using C#]]></title>
<link>http://enggtech.wordpress.com/2009/10/14/introduction-to-model-view-control-mvc-pattern-using-c/</link>
<pubDate>Wed, 14 Oct 2009 18:19:34 +0000</pubDate>
<dc:creator>Visitor Blogs</dc:creator>
<guid>http://enggtech.wordpress.com/2009/10/14/introduction-to-model-view-control-mvc-pattern-using-c/</guid>
<description><![CDATA[The benefits of using the Model-View-Control (MVC) pattern in our development projects is that we ca]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:center;"><a href="http://www.c-sharpcorner.com/UploadFile/rmcochran/MVC_intro12122005162329PM/MVC_intro.aspx"><img src='http://enggtech.files.wordpress.com/2009/10/mvc3.gif' alt='Model-View-Control (MVC) pattern in our development projects is that we can completely decouple our business and presentation application layers' /></a></p>
<p>The benefits of using the Model-View-Control (MVC) pattern in our development projects</p>
<p>is that we can completely decouple our business and presentation application layers. Furthermore, we will have a completely independent object to control the presentation layer.</p>
<p>via <a href="http://www.c-sharpcorner.com/UploadFile/rmcochran/MVC_intro12122005162329PM/MVC_intro.aspx">Introduction to Model View Control (MVC) Pattern using C#</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Pete Spratt VS Nathan Gunn (My Thoughts)]]></title>
<link>http://ladyjag.wordpress.com/2009/10/08/pete-spratt-vs-nathan-gunn-my-thoughts/</link>
<pubDate>Thu, 08 Oct 2009 14:42:41 +0000</pubDate>
<dc:creator>Christina Sears</dc:creator>
<guid>http://ladyjag.wordpress.com/2009/10/08/pete-spratt-vs-nathan-gunn-my-thoughts/</guid>
<description><![CDATA[MFC had a pretty stacked fight card on the second of October, a lot of fighters headlining the event]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"><img class="alignleft size-medium wp-image-844" title="9922_287734080617_719345617_8876116_1156894_n" src="http://ladyjag.wordpress.com/files/2009/10/9922_287734080617_719345617_8876116_1156894_n1.jpg?w=225" alt="9922_287734080617_719345617_8876116_1156894_n" width="225" height="300" />MFC had a pretty stacked fight card on the second of October, a lot of fighters headlining the event! They had Travis Lutter, Jason McDonald, John Alessio, Antonio McKee, Pete Spratt and a lot of other big names. So needless to say there was a lot of talk about how some of the fights were going to pan out that night. I know I was interested in seeing some of these fights and couldn’t wait to read/hear about them after (seeing how I couldn’t be there to watch them live)! All my picks ended up winning (which never happens) so I was really excited about that. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">But like anything there is always an aftermath of something after a huge event like MFC 22, whether it be where so and so goes from there, or someone not making weight (and the reasons why), or someone losing really bad I mean the topics are endless. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">I think for this event the Pete Spratt and Nathan Gunn got a lot of attention on the MMA forums and just chitter chatter over the water cooler the next day at work. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Personally when I read that Pete Spratt was fighting in the MFC again I was shocked, shocked because I had watched and heard about his last fight there against Ryan Ford. I don’t know if anyone else has seen the fight, and I’m not trying to take anything away from Ryan (because he’s a good fighter as well) BUT there were a lot of “odd” factors in that fight, and I think that there is a lot of stuff that happened that maybe shouldn’t have.  Like how nobody heard the bell in that place and Herb Dean goes in to stop the fight and then lets it go? Which made no sense, I’ve been to an MFC fight WHEN Ryan Ford was fighting in a big fight and I clearly heard the bell and I was AWAY from the ring. A lot of people believed that maybe Pete Spratt got “screwed” in that fight? I’m not sure how the rest of the fight would have paned out however I do know there were a few BAD calls that maybe could have been prevented that obviously played a factor in that fight.</span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">So to see Pete Spratts name on the fight card, my jaw dropped I was sure it was a typo until I got official confirmation. Regardless I was glad to see him fighting in Canada, and from what I researched his opponent wasn’t too shabby either. I obviously picked Spratt to win that fight but knew that Gunn had a lot to bring to the table. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Unfortunately for me I couldn’t make it out to the MFC (doesn’t mean I didn’t want to go), SO i was just hoping that I could catch the fight on HDNET or maybe online somewhere (which it was)! </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;">
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"><a href="http://wwwstatic.megavideo.com/mv_player.swf?image=http://img3.megavideo.com/2/6/c44dda764169f211053172efeea4f4.jpg&#38;v=M84V6YNI" target="_blank">(WATCH FIGHT HERE)</a></span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">So&#8230; this is how I feel about the much talked about fight:</span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">In round one Gunn managed to get Pete down a hell of a lot, but once he was down there he really didn’t do anything I think he maybe punched him all of a handful of times from the bottom, like the commentators said it wasn’t a devastating win of the round. But with that Spratt was making attempts on the bottom for submission too, like Gunn was in control but Spratt wasn’t just being lazy and not doing much I think I seen him do more to get out of things on the bottom then I have in his other fights, which means that NO he’s not an expert on the ground just yet BUT he obviously KNOWS its a weakness of his and I think he is working on it? Then again I’m not a die hard Spratt fan so I guess  thats just my opinion. I think that if Gunn secured his positions (which he did most times) and threw in some ground and pound that the fight could have been a bit different. Again, I’ve never been in a fight in a ring so maybe Gunn had a different mind set&#8230; regardless he won the first round clearly with all those take downs and dominate positions like taking Spratt’s back and what not.</span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Round two is where the controversy starts, Spratt comes out pretty hard and hits Gunn with some hard looking shots. Gunn was trying to compose himself and Spratt just kept moving forward with the blows, but Gunn managed to take him down, but once he got him on the ground and was able to start some ground and pound he didn’t, maybe he felt like he didn’t secure his position enough to do so (who knows)&#8230; </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">THEN it happens, Gunn puts Spratt in the ropes and at first glance it looks like Spratt dodges through the ropes to maybe catch a break and avoid being taken down again, but unlike most people I rewinded the video to watch it again. And it really looked like Pete looked like (to me) he was defending the take down and went to do something and was pushed a little bit and when he went to catch himself he felt through the ropes. After that when Pete was making his way back in Gunn is sitting there taking whatever air he can in, his arms are over his head and Pete heads to the middle of the ring and thats where they start the fight again. I think there might be one more take down before Spratt throws an uppercut that misses him by a few seconds (which could have knocked him out or hurt him) and then connects with that big one that ends the fight. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">NOW, KUDOS to Gunn for stepping up to the plate to a guy who has the experience over him, what an excellent way of testing yourself in there. I know a guy who did the same thing and tested himself in there. That takes a lot to do, especially if you have a perfect record.<img class="alignright size-medium wp-image-845" title="9922_287734065617_719345617_8876114_5989789_n" src="http://ladyjag.wordpress.com/files/2009/10/9922_287734065617_719345617_8876114_5989789_n.jpg?w=225" alt="9922_287734065617_719345617_8876114_5989789_n" width="225" height="300" /><br />
</span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">But after that fight I started to notice some talk that was happening (as I expected there would at some point). </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Now&#8230; I don’t know if anyone is on Pete Spratt’s facebook page but before (like way before) I knew he was fighting or even read it I remember seeing something about him going for surgery on his knee, I’ve never had that done but I would assume depending on the surgery it just doesn’t heal and work fine in a night. And personally watching that fight I never would have known that there was a problem there. Second, people are so quick to judge and it amazes me. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">I could sit here and say Gunn did nothing but take Spratt down and lay on him, and Spratt yes got out of things and attempted some stuff but wasn’t really aggressive enough, BUT I’m not and I won’t because both men did well, and obviously both need to work on things which fighters do after every fight. WIN or lose they go back (well the good ones) and figure out what they can improve for the next one. </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:12px Helvetica;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">And for people so say things like: </span></strong></span></p>
<p style="font:12px Helvetica;min-height:14px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="font:12px Helvetica;letter-spacing:0;"><strong><span style="color:#cc99ff;">“</span></strong></span><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Nice trick by Spratt diving through the ropes to get the fight stood up.”</span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">“</span></strong><em><strong><span style="color:#cc99ff;">The rest of the fight was full of sloppy BJJ and bad sprawls”</span></strong></em></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><em><strong><span style="color:#cc99ff;"> </span></strong></em></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><em><strong><span style="color:#cc99ff;">“</span></strong></em><strong><span style="color:#cc99ff;">The fight was mostly Pete&#8217;s awful wrestling and exposing his back, it was long boring grind, until that. POW!”</span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">AND believe me the list goes on and on just  for Spratt but for both guys. The way I look at it is Its easy to stand by the side lines and say things, Pete never said he’s was an amazing BJJ practitioner SO for someone to say stuff about it as if he’s suppose to be amazing boggles my mind. I’m confident he knows its a “hole” in his game and I’m confident he’s working on it but some people don’t pick it up in a year or so, especially if they never really focused on that part of things. I came from a wrestling background and maybe its just me but I found it frustrating going from that to BJJ. SOME people learn faster then others.</span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">A lot of people said that Gunn looked really gassed and should have had more to offer Spratt but I mean who are they to judge? Most of the people talking are huge fans and not that there is anything wrong with that but really if you’ve never been in there maybe have some constructive ways of critiquing a fight instead of picking it apart with negative comments. </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">That’s another thing I give these athletes kudos for! Putting them selves out there  and fighting in front of decent size crowds, and trying to put on a good fight for the next day to come online or open a paper and see how “poorly rated” it was. I’m sure that’s is such a nut kicker its not even funny. </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"><img class="alignleft size-medium wp-image-846" title="9922_287734075617_719345617_8876115_1442656_n" src="http://ladyjag.wordpress.com/files/2009/10/9922_287734075617_719345617_8876115_1442656_n.jpg?w=225" alt="9922_287734075617_719345617_8876115_1442656_n" width="225" height="300" />I mean its public knowledge to anyone who’s followed my blogs I am NOT a fan of Brock Lesnar&#8230;. Do I give him credit where it is due YES! BUT you would never catch me just crap talking I try to have constructive criticism there as well.</span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">I think these people forget they that these athletes have families they have to take care of. I remember reading one post that money must mean more to sprat then a falling out or something like that with the MFC. WHY wouldn’t Pete want to fight in the MFC they seem to be one of the up and going organizations in Canada, their shows almost always sell out, they are on HDNET fights which gives him decent exposure, and I’m sure the paycheck isn’t too shabby either? SO why not? He’s got a family just like most of the people writing on these forums. If the MFC had a problem with Spratt why ask him to come back in fight? Because they also have a family to take care of and they know that he would bring in some more fans to watch. Business is Business. </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">I’m not sitting here and bashing anyone, and that wasn’t my objective by writing this. I just wish people would open their eyes sometimes and be a bit more professional. </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">I respect Nathan Gunn, for a lot of reasons and respect him even more because DESPITE what happened in that ring he had this to say </span></strong></span></p>
<p style="font:13px Arial;min-height:15px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Lucida Grande;color:#333333;margin:0;"><span style="font:13px Arial;letter-spacing:0 color;"><strong><span style="color:#cc99ff;">“</span></strong></span><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">was an honour to go to battle with you Pete and a privilege to meet you afterwards. You are a class act and great fighter and man. I look forward to seeing you perform many more times and wish you much luck on your continued journey back to the top. Take care and congrats”</span></strong></span></p>
<p style="font:13px Lucida Grande;color:#333333;min-height:16px;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;"> </span></strong></span></p>
<p style="font:13px Arial;margin:0;"><span style="letter-spacing:0;"><strong><span style="color:#cc99ff;">Christina</span></strong></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[タイ株式市場　9月24日（木）の注目株(2)]]></title>
<link>http://settrade.wordpress.com/2009/09/24/%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e5%b8%82%e5%a0%b4%e3%80%809%e6%9c%8824%e6%97%a5%ef%bc%88%e6%9c%a8%ef%bc%89%e3%81%ae%e6%b3%a8%e7%9b%ae%e6%a0%aa2/</link>
<pubDate>Thu, 24 Sep 2009 05:00:57 +0000</pubDate>
<dc:creator>settrade</dc:creator>
<guid>http://settrade.wordpress.com/2009/09/24/%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e5%b8%82%e5%a0%b4%e3%80%809%e6%9c%8824%e6%97%a5%ef%bc%88%e6%9c%a8%ef%bc%89%e3%81%ae%e6%b3%a8%e7%9b%ae%e6%a0%aa2/</guid>
<description><![CDATA[MFC &#8211; MFC ASSET MANAGEMENT PUBLIC COMPANY LIMITED 不動産投資ファンド２つをエキジット準備。時価30億バーツ程度。 THCOM ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>MFC &#8211; MFC ASSET MANAGEMENT PUBLIC COMPANY LIMITED<br />
不動産投資ファンド２つをエキジット準備。時価30億バーツ程度。</p>
<p>THCOM &#8211; THAICOM PUBLIC COMPANY LIMITED<br />
タイコム2号の代替機用途の中古衛星はICT情報通信向けに提供できるものは３機しかなく、そこから選択するしかない。と関係筋は伝えた。</p>
<p>SCAN &#8211; SCANDINAVIAN LEASING PUBLIC COMPANY LIMITED<br />
SCAN取締役会はピンムック・セーナーディサイ氏を取締役に選任すると共に、１０月２８日に株主総会を開催することを決定。</p>
<p>KCAR &#8211; KRUNGTHAI CAR RENT AND LEASE PUBLIC COMPANY LIMITED<br />
車リースのKCARは、本年はリース車の返却が増え頭が痛い。が、（車を担保にした）信用貸しが伸びて、リースの不振を補っている。本年度は5-10%の成長を目指している。</p>
<p>AS &#8211; ASIASOFT CORPORATION PUBLIC COMPANY LIMITED<br />
本年度総売上高は10%の伸びと予測。新オンラインゲーム「後ランティカ・オンライン」が、急速に市場に受け入れられたため。</p>
<p>UT &#8211; UNION TEXTILE INDUSTRIES PUBLIC COMPANY LIMITED<br />
63.3ライ（1ライはおよそ1600平米）を、シャープ・アプライアンス社に売却。価格は約5億3千7百万バーツ。</p>
<p>NMG &#8211; NATION MULTIMEDIA GROUP PUBLIC COMPANY LIMITED<br />
株主のために、ネーション・ブロードキャスティング社の株をIPO価格で販売予約へ。比率は９：１ （Info Quest 9月24日配信）</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[MFCは2010年度のSET株式指数は750ポイント～780ポイントと予想。]]></title>
<link>http://settrade.wordpress.com/2009/09/23/mfc%e3%81%af2010%e3%81%aeset%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e6%8c%87%e6%a8%99%e3%81%af750%e3%83%9d%e3%82%a4%e3%83%b3%e3%83%88%ef%bd%9e780%e3%83%9d%e3%82%a4%e3%83%b3%e3%83%88%e3%81%a8%e4%ba%88/</link>
<pubDate>Wed, 23 Sep 2009 07:59:33 +0000</pubDate>
<dc:creator>settrade</dc:creator>
<guid>http://settrade.wordpress.com/2009/09/23/mfc%e3%81%af2010%e3%81%aeset%e3%82%bf%e3%82%a4%e6%a0%aa%e5%bc%8f%e6%8c%87%e6%a8%99%e3%81%af750%e3%83%9d%e3%82%a4%e3%83%b3%e3%83%88%ef%bd%9e780%e3%83%9d%e3%82%a4%e3%83%b3%e3%83%88%e3%81%a8%e4%ba%88/</guid>
<description><![CDATA[ピチットMCF投資マネージメント会社CEOは取材に答えて、「タイの株式市場はまだ成長する余地があると見ている。大きな理由の一つが外国人投資家が投資リスクを取り始めていること。また、株式市場への投資金の]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>ピチットMCF投資マネージメント会社CEOは取材に答えて、「タイの株式市場はまだ成長する余地があると見ている。大きな理由の一つが外国人投資家が投資リスクを取り始めていること。また、株式市場への投資金の流入について、現在外国人投資家の投資資金の流入金額は400億バーツに達するが、これは（昨年の内政・世界経済などの）危機的状況の影響下で外国人投資家のタイ国内から引き上げた金額2000億バーツのうちの20%にしかなっておらず、決してまだ大きな金額であるとは言えない。また同時に西側諸国の資金の流れは、ようやくタイを含むアジアに向かい始めたばかりである。<br />
ここで、2010年度のSET Indexの状況を予測すれば、750ポイントから780ポイントの間。最悪ケースで680ポイント、最良のケースで820ポイントと予測している。」と語った。（ストックウェーブ 9月23日配信）</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Why MFC is bad]]></title>
<link>http://jongampark.wordpress.com/2009/09/19/why-mfc-is-bad/</link>
<pubDate>Sat, 19 Sep 2009 23:16:55 +0000</pubDate>
<dc:creator>jongampark</dc:creator>
<guid>http://jongampark.wordpress.com/2009/09/19/why-mfc-is-bad/</guid>
<description><![CDATA[Well, MFC has lots of weird aspects. Basically MFC is a framework. What is a framework? Framework is]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Well, MFC has lots of weird aspects. Basically MFC is a framework. What is a framework? Framework is a wrapper of API to make the API easier to use.<br />
However, when MFC is compared to ToolBox which was most popular during similar period of time, MFC is not as easy to use as ToolBox. ToolBox is, however, API not framework.</p>
<p>Here I would like to show one example why MFC is bad and why its design is bad. Let&#8217;s think about CListCtrl. It is a list control or table control if you think of it in the context of Mac OS X. What do you want to do with it?<br />
Let&#8217;s summarize some of them.</p>
<ul>
<li>Populate ClistCtrl</li>
<li>Retrieve row item or column data</li>
<li>Change properties like text color, background color, font and so on for row items.</li>
<li>Customizing the UI</li>
<li>and so on</li>
</ul>
<p>First, to manipulate the data or to populate the CListCtrl, this class itself doesn&#8217;t provide consistency. Why am I talking about consistency? Let&#8217;s take a look at CStatic or CEdit. On Windows, you can set a control variable for them or data variable for them. A control variable is like :</p>
<blockquote><p>CEdit *editBox</p></blockquote>
<p>, while data variable is like :</p>
<blockquote><p>CString editBoxString</p></blockquote>
<p>To manipulate the value itself, data variable is easier. However to control the widget itself, you should use the control value.<br />
With Cocoa, you don&#8217;t need to have this separate mechanism. In Windows point of view, it is like to declare CEdit variable and the CEdit class provides all the methods to manipulate the data value. Or with Cocoa binding, things can be done much more easily.</p>
<p>It does not mean that it is impossible to manipulate data with the control variable. With some widget, or control, it is not easy or is not possible at all.</p>
<p>Here, with CListCtrl, there is no &#8220;data&#8221; variable unlike that of CEdit or CStatic. So, you should manipulate the data with the CListCtrl itself. So, there is no consistency.</p>
<p>Second, it is very difficult to retrieve row item or data.<br />
GetItem() is for that, but if you look up MSDN document for it, it is not clear how to retrieve an item you want.<br />
Here is explanation on what it does.</p>
<blockquote><p>Retrieves some or all of a list view item&#8217;s attributes.</p>
<p>The LVITEM structure specifies or receives the attributes of a list view item.</p></blockquote>
<p>However, it doesn&#8217;t say about how to do so.</p>
<p>There is something which is even worse.<br />
Let&#8217;s take a look at the LVITEM parameter.<br />
What is lParam? What does it supposed to contain? There is no explanation about it in MSDN document.</p>
<p>Let&#8217;s assume that you want to customize the CListCtrl. You want to set a bold font for a specific row item or column. Does CListCtrl provide such method? No. Also, there is no each way to retrieve i<em>th</em> item on a CListCtrl. Among them, one easy thing is to set a text color or a background color of a item. Well.. how to to so? There is no explanation about it.<br />
Well.. you can implement a message handler for WM_CUSTOMDRAW message. However the MFC document for CListCtrl doesn&#8217;t even contain link for the message. You should look up Win32 document. Isn&#8217;t it strange? Framework is a wrapper for API to make API easy to use. However, For MFC, if you want to do some common thing like this, the API, or Win32, should be revealed.</p>
<p>Third. Let&#8217;s think about a situation in which you want to set a bold font for some items. There seems to be no way to do so.<br />
<a href="http://www.codeguru.com/cpp/controls/listview/article.php/c4189">Creating a CListCtrl Class with Item Style Features (CListCtrlStyled Class) from CodeGuru</a> introduces a customized CListCtrl clas to do that.</p>
<p>Let&#8217;s take a look at some source codes from the class.</p>
<pre class="brush: cpp;">
void CListCtrlStyled::SetItemStyle(int nItem,int nSubItem,DWORD Style,bool redraw)
{
	// We must retrieve the Style info structure of this item
	//
	LVITEM pItem;
	InitLVITEM(nItem,0,&#38;pItem);

	LS_item * lpLS_item = NULL;
	lpLS_item = (LS_item*) pItem.lParam;

	if(nSubItem &#62; 0)
		lpLS_item = lpLS_item-&#62;subitems[ nSubItem - 1];

	// no we can update the style
	//
	lpLS_item-&#62;StyleFlag = Style;

	DWORD mask = LIS_BOLD &#124; LIS_ITALIC &#124; LIS_UNDERLINE&#124; LIS_STROKE ;
	lpLS_item-&#62;in_use = (Style &#38; mask) &#62; 0;

	// if any font exist for this item then delete it
	//
	this-&#62;Free_LS_font(lpLS_item);

	// Redraw it
	if(redraw)	CListCtrl::Update(nItem);
}

void CListCtrlStyled::InitLVITEM(int nItem,int nSubItem,LVITEM * pItem)
{ /*
  typedef struct _LV_ITEM {
    UINT   mask;         // see below
    int    iItem;        // see below
    int    iSubItem;     // see below
    UINT   state;        // see below
    UINT   stateMask;    // see below
    LPSTR  pszText;      // see below
    int    cchTextMax;   // see below
    int    iImage;       // see below
    LPARAM lParam;       // 32-bit value to associate with item
   } LV_ITEM;
  */
	pItem-&#62;mask = LVIF_PARAM;
	pItem-&#62;iItem = nItem;
	pItem-&#62;iSubItem = nSubItem;
	pItem-&#62;state = NULL;
	pItem-&#62;stateMask = NULL;
	pItem-&#62;pszText = NULL;
	pItem-&#62;cchTextMax = NULL;
	pItem-&#62;iImage = NULL;
	pItem-&#62;lParam = NULL;
	CListCtrl::GetItem(pItem);
}
</pre>
<p>In InitLVITEM() method, it calls GetItem(). What it does is to retrieve lParam value in LVITEM. Then in SetItemStyle(), it calls :</p>
<pre class="brush: cpp;">
	LS_item * lpLS_item = NULL;
	lpLS_item = (LS_item*) pItem.lParam;

	if(nSubItem &#62; 0)
		lpLS_item = lpLS_item-&#62;subitems[ nSubItem - 1];
</pre>
<p>Hmm.. lpLS_item is once set to lParam. And it is set to lParam&#8217;s subitems[].<br />
Then based on the value, it tries modify the variable to set a font face.<br />
To do this, you should know that what the lParam means and the data structure lParam contains. Also, you need to know howdata structure its subitems[] looks like.</p>
<p>But where is explanation on them is? I can&#8217;t find anything on MSDN.</p>
<p>There are a lot of things in MFC like this.<br />
Classes are not prepared to handle things easily, and its MFC documentation doesn&#8217;t have any link or explanation.</p>
<p>I don&#8217;t understand why MS doesn&#8217;t  provide good documentation about its classes. The bad design of MFC can be understood if we consider when it was designed. However, if MFC designer at MS still want to keep the MFC for native  environment, they should do something about it.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[A quick analyze of the MFC evolution]]></title>
<link>http://cppdepend.wordpress.com/2009/09/18/a-quick-analyze-of-the-mfc-evolution/</link>
<pubDate>Fri, 18 Sep 2009 16:39:29 +0000</pubDate>
<dc:creator>cppdepend</dc:creator>
<guid>http://cppdepend.wordpress.com/2009/09/18/a-quick-analyze-of-the-mfc-evolution/</guid>
<description><![CDATA[Let’s have a look to see what the tool CppDepend shows when comparing MFC 2005 with MFC 2008 ones. I]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Let’s have a look to see what the tool <a href="http://www.cppdepend.com">CppDepend </a>shows when comparing MFC 2005  with MFC 2008 ones. I will use a few CQL Queries to get fact from the code base of the Framework.<br />
<!--more--><br />
<span style="font-weight:bold;font-size:130%;">A view of the work achieved</span></p>
<p><span style="color:rgb(51,51,255);">SELECT METHODS WHERE</span> CodeWasChanged <span style="color:rgb(51,51,255);">OR </span>WasAdded</p>
<p>The following treemap shows in blue, new methods (i.e WasAdded) and methods that have been refactored (i.e where CodeWasChanged). A rectangle represents a method and the size of the rectangle is proportional to the size of the method (in terms of Code Line ). It is pretty impressive to see that a big part of the framework is still evolving.</p>
<div style="text-align:center;"><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOccPxOOTI/AAAAAAAAAIo/h6ibCVPJlSw/s1600-h/mfcadd.PNG"><img style="cursor:pointer;width:613px;height:131px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOccPxOOTI/AAAAAAAAAIo/h6ibCVPJlSw/s800/mfcadd.PNG" alt="" border="0" /></a>
</div>
<p>The Info panel of CppDepend shows that MFC 2008 is bigger twice than MFC 2005</p>
<div style="text-align:center;"><a href="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOcxO5MA2I/AAAAAAAAAIw/_0PX3cDkPgM/s1600-h/mfcinfo.PNG"><img style="cursor:pointer;width:400px;height:212px;" src="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOcxO5MA2I/AAAAAAAAAIw/_0PX3cDkPgM/s800/mfcinfo.PNG" alt="" border="0" /></a>
</div>
<p><span style="font-size:130%;"><span style="font-weight:bold;">New Types</span></span></p>
<p><span style="color:rgb(51,51,255);">SELECT TYPES WHERE</span> WasAdded</p>
<p><a href="http://www.cppdepend.com/SampleReports/QueryResult.htm">367 new types</a> added including:</p>
<p>• Menus<br />
• Toolbars<br />
• Panes<br />
• Ribbon Control<br />
• Outlook Alert<br />
• Controls<br />
• Dialog Boxes<br />
• Customization<br />
• Visualization</p>
<div style="text-align:center;"><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOdjoCsWZI/AAAAAAAAAI4/2_J8KdlUYwE/s1600-h/mfctypesaddes.PNG"><img style="cursor:pointer;width:355px;height:458px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOdjoCsWZI/AAAAAAAAAI4/2_J8KdlUYwE/s800/mfctypesaddes.PNG" alt="" border="0" /></a>
</div>
<p><span style="font-size:130%;"><span style="font-weight:bold;">New Namespaces</span></span></p>
<p><span style="color:rgb(51,51,255);">SELECT NAMESPACES WHERE</span> WasAdded</p>
<div style="text-align:center;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/SqOeP232oWI/AAAAAAAAAJA/0LYC6GtD1iY/s1600-h/namespaceadded.PNG"><img style="cursor:pointer;width:386px;height:400px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/SqOeP232oWI/AAAAAAAAAJA/0LYC6GtD1iY/s800/namespaceadded.PNG" alt="" border="0" /></a>
</div>
<p>Only 1 namespace was added it contains classes to integrate Winform into MFC.</p>
<p><span style="font-size:130%;"><span style="font-weight:bold;">Methods where visibility changed</span></span></p>
<div style="text-align:center;"><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOepckR30I/AAAAAAAAAJI/LJFUFJD4qMA/s1600-h/mfcmethodschanged.PNG"><img style="cursor:pointer;width:386px;height:400px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/SqOepckR30I/AAAAAAAAAJI/LJFUFJD4qMA/s800/mfcmethodschanged.PNG" alt="" border="0" /></a>
</div>
<p>Only the visibility of the CHtmlEditCtrl destructor was changed from protected to public.<br />
It was a design bug in MFC 2005, you can discover <a href="http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=170481">here </a>why it was problematic.</p>
<p><span style="font-size:130%;"> <span style="font-weight:bold;">Types Removed</span></span></p>
<div style="text-align:center;"><a href="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOfZtwqN_I/AAAAAAAAAJQ/-PzID0btSTs/s1600-h/mfctypesremoved.PNG"><img style="cursor:pointer;width:389px;height:400px;" src="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOfZtwqN_I/AAAAAAAAAJQ/-PzID0btSTs/s800/mfctypesremoved.PNG" alt="" border="0" /></a>
</div>
<p>All classes relative to ISAPI were removed; it’s a break change that can be very embarrassing for developers who used them before.</p>
<p><span style="font-size:130%;"><span style="font-weight:bold;">Conclusion</span></span></p>
<p>The major evolution of MFC includes a new types to support modern user interface (UI) elements such as the Office Fluent UI, docking windows and MDI tabbed windows similar to those used in some releases of Visual Studio, enhanced toolbars, a rich new set of controls, support for controlling the overall visual style, support for desktop alerts, and much more.</p>
<p>but no big changes concerns the  MFC design,it&#8217;s true that MFC now use more manager classes as controlers than before</p>
<div style="text-align:center;"><a href="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOmkUdrxFI/AAAAAAAAAJY/xnk_2FHsgQU/s1600-h/mfcmanagers.PNG"><img style="cursor:pointer;width:379px;height:400px;" src="http://2.bp.blogspot.com/_tWDA5bNBNHI/SqOmkUdrxFI/AAAAAAAAAJY/xnk_2FHsgQU/s800/mfcmanagers.PNG" alt="" border="0" /></a>
</div>
<p>but the design of the new functionalities still unchanged, for example only one namespace is added.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Inside MFC]]></title>
<link>http://cppdepend.wordpress.com/2009/09/18/inside-mfc/</link>
<pubDate>Fri, 18 Sep 2009 15:59:51 +0000</pubDate>
<dc:creator>cppdepend</dc:creator>
<guid>http://cppdepend.wordpress.com/2009/09/18/inside-mfc/</guid>
<description><![CDATA[The Microsoft Foundation Class Library is an application framework for programming in Microsoft Wind]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span><span><span style="font-family:verdana;">The Microsoft Foundation Class Library is an application framework for programming in Microsoft Windows. Written in C++, MFC provides much of the code necessary for managing windows, menus, and dialog boxes; performing basic input/output; storing collections of data objects; and so on.</p>
<p><!--more--></p>
<p></span><span style="font-family:verdana;">The MFC framework is a powerful approach but using it </span><span><span style="font-family:verdana;">impacts the design of the application, it’s very intrusive and we have to be careful of how we use it.</span></p>
<p><span style="font-family:verdana;">Let’s analyze MFC8 with </span><a style="font-family:verdana;" href="http://www.cppdepend.com/">CppDepend</a><span style="font-family:verdana;"> to discover its code quality and design.</span></p>
<p><span style="font-family:verdana;">CppDepend is a tool that simplifies managing a complex C++ code base. Architects and developers can analyze code structure, specify design rules, and plan massive refactoring, do effective code reviews and master evolution by comparing different versions of the code.</span></p>
<p><span style="font-family:verdana;">CppDepend supports the Code Query Language (CQL) for maximum flexibility. Basically CppDepend considers your code as a database and you can write some CQL statements to query and check some assertions on this database. As a consequence, CQL is similar to SQL and supports the SELECT TOP FROM WHERE ORDER BY pattern.</span></p>
<p><span style="font-family:verdana;">With CppDepend we analyze the quality of implementation and also the design of MFC.</span></p>
<p><span style="font-family:verdana;">A quality of implementation is important for developer who debug inside MFC,indeed not all things work as we like and sometimes we have to look inside the library code so if it’s not well implemented it complicate the task when debugging.</span></p>
<p><span style="font-family:verdana;">A design of MFC is very important for developers because it impact the design of the application because it&#8217;s very intrusive.</span></span><span style="font-weight:bold;"></p>
<p></span><br />
<span style="color:rgb(51,102,255);font-size:130%;">MFC General Information&#8217;s:</span></p>
<p><a href="http://2.bp.blogspot.com/_tWDA5bNBNHI/Si5foajsOhI/AAAAAAAAABk/igK0bJ9_5uY/s1600-h/dependency.png"><img style="cursor:pointer;width:643px;height:193px;" src="http://2.bp.blogspot.com/_tWDA5bNBNHI/Si5foajsOhI/AAAAAAAAABk/igK0bJ9_5uY/s800/dependency.png" alt="" border="0" /></a>
</p>
<p class="MsoNormal">
<span style="color:rgb(0,0,0);">The dependency Graph shows that MFC uses 149 methods from ATL and 1014 from Windows API, and there’s general Information’s about MFC:</span></p>
<p class="MsoNormal"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5gbUvS7KI/AAAAAAAAABs/41PUjQ6jVsk/s1600-h/Infos.png"><img style="display:block;text-align:center;cursor:pointer;width:279px;height:317px;margin:0 auto 10px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5gbUvS7KI/AAAAAAAAABs/41PUjQ6jVsk/s400/Infos.png" alt="" border="0" /></a></span></span></span></span></p>
<p class="MsoNormal">
<p class="MsoNormal"><span style="color:rgb(51,102,255);font-size:180%;">Code Implementation:</span></p>
<p><span style="font-style:italic;color:rgb(51,102,255);font-size:130%;">Naming Rules:</span></p>
<p><span style="color:rgb(0,0,0);">Let’s execute the following CQL request:</span></p>
<p><span style="color:rgb(51,51,255);">WARN IF </span>Count &#62; 0 IN <span style="color:rgb(51,51,255);">SELECT </span>FIELDS <span style="color:rgb(51,51,255);">WHERE </span>!NameLike &#8220;^m_&#8221; <span style="color:rgb(51,51,255);">AND </span>!IsGlobal</p>
<p><span style="color:rgb(0,0,0);">The blue squares represent the result of the query, so almost 50% fields don’t begin with m_”.</span></p>
<p class="MsoNormal"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h4tHYs_I/AAAAAAAAAB0/FOnW6C6mm7U/s1600-h/fieldrules.png"><img style="cursor:pointer;width:615px;height:117px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h4tHYs_I/AAAAAAAAAB0/FOnW6C6mm7U/s800/fieldrules.png" alt="" border="0" /></a></span></span></span></span></p>
<p><span style="color:rgb(0,0,0);">And what about methods naming:</span></p>
<p><span style="color:rgb(51,51,255);">WARN IF </span>Count &#62; 0 IN <span style="color:rgb(51,51,255);">SELECT </span>METHODS <span style="color:rgb(51,51,255);">WHERE </span>!NameLike &#8220;^[A-Z]&#8221; <span style="color:rgb(51,51,255);">AND </span>!(IsClassConstructor <span style="color:rgb(51,51,255);">OR</span> IsConstructor) <span style="color:rgb(51,51,255);">AND </span>!IsInTierProject <span style="color:rgb(51,51,255);">AND </span>!IsGlobal <span style="color:rgb(51,51,255);">AND </span>!NameLike &#8220;^~&#8221; <span style="color:rgb(51,51,255);">AND </span>!NameLike &#8220;^operator&#8221;</p>
<p><a href="http://1.bp.blogspot.com/_tWDA5bNBNHI/Si5h5OLwkrI/AAAAAAAAAB8/30osYxlX65g/s1600-h/methodrules.png"><img style="cursor:pointer;width:638px;height:116px;" src="http://1.bp.blogspot.com/_tWDA5bNBNHI/Si5h5OLwkrI/AAAAAAAAAB8/30osYxlX65g/s800/methodrules.png" alt="" border="0" /></a></p>
<p class="MsoNormal"><span style="color:rgb(0,0,0);">There are just some few methods that not begin with Upper case.</span></p>
<p><span style="font-style:italic;color:rgb(51,102,255);font-size:130%;">Cyclomatic Complexity:</span></p>
<p><span style="color:rgb(0,0,0);">Cyclomatic complexity is a popular procedural software metric equal to the number of decisions that can be taken in a procedure.</span><br />
<span style="color:rgb(0,0,0);">We can also consider that a method is complex if NbLinesOfCode,NbParameters or NbBariables are great than a defined values.</span></p>
<p><span style="color:rgb(51,51,255);">SELECT </span>METHODS <span style="color:rgb(51,51,255);">WHERE </span>(NbLinesOfCode &#62; 100 <span style="color:rgb(51,51,255);">OR </span>CyclomaticComplexity &#62; 20 <span style="color:rgb(51,51,255);">OR </span>NbParameters &#62; 5 <span style="color:rgb(51,51,255);">OR </span>NbVariables &#62; 8 )</p>
<p><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5LWGubI/AAAAAAAAACE/DUofekLmd6k/s1600-h/cc.png"><img style="cursor:pointer;width:675px;height:325px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5LWGubI/AAAAAAAAACE/DUofekLmd6k/s800/cc.png" alt="" border="0" /></a></p>
<p><span style="color:rgb(0,0,0);">So 706 methods are candidates to refactoring, but the request can be changed, it’s depending on the choice of the complexity criteria for each team.</span></p>
<p><span style="font-style:italic;font-size:130%;"><span style="color:rgb(51,102,255);">Comments:</p>
<p></span></span><span style="color:rgb(51,51,255);">SELECT </span>METHODS <span style="color:rgb(51,51,255);">WHERE </span>NbLinesOfComment &#62; 0</p>
<p><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5dmlitI/AAAAAAAAACU/dJIxz5S0p0A/s1600-h/comments.png"><img style="cursor:pointer;width:618px;height:175px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5dmlitI/AAAAAAAAACU/dJIxz5S0p0A/s800/comments.png" alt="" border="0" /></a></span></span></p>
<p><span style="color:rgb(0,0,0);">Almost all classes are commented so developers can have an idea of what a method does particularly when debugging inside MFC.</span></p>
<p><span style="color:rgb(0,0,0);">Let’s see if all complex methods are commented.</span></p>
<p><span style="color:rgb(51,51,255);">SELECT </span>METHODS <span style="color:rgb(51,51,255);">WHERE </span>(NbLinesOfCode &#62; 100 <span style="color:rgb(51,51,255);">OR </span>CyclomaticComplexity &#62; 20 <span style="color:rgb(51,51,255);">OR </span>NbParameters &#62; 5 <span style="color:rgb(51,51,255);">OR </span>NbVariables &#62; 8 ) <span style="color:rgb(51,51,255);">AND </span>NbLinesOfComment ==0</p>
<p><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5erl3BI/AAAAAAAAACM/7QJTrb9CBVM/s1600-h/cccomments.png"><img style="cursor:pointer;width:633px;height:133px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5h5erl3BI/AAAAAAAAACM/7QJTrb9CBVM/s800/cccomments.png" alt="" border="0" /></a></span></span></span></span></span></span>
</p>
<p class="MsoNormal"><span style="color:rgb(0,0,0);">There are just few complex methods not commented.</span></p>
<p><span style="color:rgb(51,102,255);font-size:130%;"><span style="font-size:180%;">Design:</span></span><span style="font-style:italic;color:rgb(51,102,255);font-size:130%;"></p>
<p></span><span style="font-size:130%;"><span style="font-style:italic;color:rgb(51,102,255);">No existence of namespaces:</span></span></p>
<p><span style="color:rgb(0,0,0);">The namespace is an important concept to design application, it isolates functionalities under a module and provides a logical grouping, it can also make a library simple to use.</span><br />
<span style="color:rgb(0,0,0);">Unfortunately MFC don’t contain any namespace in spite of the existence of different functionality (GUI, OLE, Database, Containers …).</span></p>
<p><span style="font-style:italic;color:rgb(51,102,255);font-size:130%;">Global functions and variables:</span></p>
<p><span style="color:rgb(0,0,0);">MFC contains 786 global functions and 338 global variables, its lot for an object oriented framework.</span></p>
<p><span style="font-size:130%;"><span style="font-style:italic;color:rgb(51,102,255);">Inheritance:</span></span></p>
<p><span style="color:rgb(51,51,255);">SELECT </span>TYPES <span style="color:rgb(51,51,255);">WHERE </span>NbBaseClass &#62;0</p>
<p><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5m4dpiOHI/AAAAAAAAACc/ttJw9WG6zc8/s1600-h/inheritence.png"><img style="cursor:pointer;width:623px;height:168px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5m4dpiOHI/AAAAAAAAACc/ttJw9WG6zc8/s800/inheritence.png" alt="" border="0" /></a></p>
<p><span style="color:rgb(0,0,0);">Almost all class has at least one base class, it cause a high coupling between classes.</span></p>
<p><span style="color:rgb(51,102,255);font-style:italic;font-size:130%;">Types Cohesion:</span></p>
<p><span style="color:rgb(0,0,0);">The single responsibility principle states that a class should have more than one reason to change. Such a class is said to be cohesive. A high LCOM value generally pinpoints a poorly cohesive class. There are several LCOM metrics. The LCOM takes its values in the range [0-1]. The LCOMHS (HS stands for Henderson-Sellers) takes its values in the range [0-2]. Note that the LCOMHS metric is often considered as more efficient to detect non-cohesive types.</span><br />
<span style="color:rgb(0,0,0);">LCOMHS value higher than 1 should be considered alarming.</span></p>
<p><span style="color:rgb(51,51,255);">WARN IF</span> Count &#62; 0 <span style="color:rgb(51,51,255);">IN SELECT</span> TYPES <span style="color:rgb(51,51,255);">WHERE </span>LCOMHS &#62; 0.95 <span style="color:rgb(51,51,255);">AND </span>NbFields &#62; 10 <span style="color:rgb(51,51,255);">AND </span>NbMethods &#62;10 <span style="color:rgb(51,51,255);">AND </span>!IsGlobal <span style="color:rgb(51,51,255);">ORDER BY </span>LCOMHS DESC</p>
<p class="MsoNormal">
<span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5oi8pL0lI/AAAAAAAAACk/HpLU03IEcuE/s1600-h/cohesion.png"><img style="cursor:pointer;width:368px;height:462px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/Si5oi8pL0lI/AAAAAAAAACk/HpLU03IEcuE/s800/cohesion.png" alt="" border="0" /></a></span></span></span></span></p>
<p class="MsoNormal">
<span style="color:rgb(0,0,0);">31 types from 529 are considered non cohesive.</span></p>
<p><span style="font-size:130%;"><span style="font-style:italic;color:rgb(51,102,255);">Dependency between Classes:</span></span></p>
<p><span style="color:rgb(0,0,0);">The option Direct &#38; Indirect Weight of use the Dependency Structure Matrix is the perfect tool to let users know where the code structure is tangled with dependencies cycles.</span>
</p>
<p class="MsoNormal"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/SjF4jZsLJxI/AAAAAAAAADM/MVjAHLoAyBI/s1600-h/indirect.png"><img style="cursor:pointer;width:689px;height:472px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/SjF4jZsLJxI/AAAAAAAAADM/MVjAHLoAyBI/s800/indirect.png" alt="" border="0" /></a></span></span></span></span></span></span>
</p>
<p class="MsoNormal"><span style="color:rgb(0,0,0);">The screenshot below showsthat the 2 classes CDocument and CCmdUI are involved in a cycle of minimum length 5.</span><br />
<span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://3.bp.blogspot.com/_tWDA5bNBNHI/SjF4jcLygSI/AAAAAAAAADU/636vF791IsY/s1600-h/doccmd.png"><img style="cursor:pointer;width:540px;height:118px;" src="http://3.bp.blogspot.com/_tWDA5bNBNHI/SjF4jcLygSI/AAAAAAAAADU/636vF791IsY/s800/doccmd.png" alt="" border="0" /></a></span></span></span></span></span></span>
</p>
<p><span style="color:rgb(0,0,0);">The whole dependency matrix shows that almost all MFC types are coupled directly or indirectly.</span></p>
<p><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/SjF0kcxntGI/AAAAAAAAADE/pBy24qYmEyM/s1600-h/DependencyMatrixSnapshot.png"><img style="cursor:pointer;width:646px;height:621px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/SjF0kcxntGI/AAAAAAAAADE/pBy24qYmEyM/s800/DependencyMatrixSnapshot.png" alt="" border="0" /></a></p>
<p class="MsoNormal"><span style="color:rgb(51,102,255);font-size:130%;"><span style="font-style:italic;">Coupling:</span></span></p>
<p><span style="color:rgb(0,0,0);">The efferent coupling for a particular type is the number of types it directly depends on. Types with high efferent coupling are more complex than others,CppDepend propose a search panel, it’s like a wizard that help you construct query easily.</span></p>
<p><span style="color:rgb(0,0,0);">Let’s search for Types where efferent coupling is more than 30.</span></p>
<p class="MsoNormal">
<a href="http://1.bp.blogspot.com/_tWDA5bNBNHI/Si5rCe23_RI/AAAAAAAAACs/oJ0DI4bXVx4/s1600-h/coupling.png"><img style="cursor:pointer;width:395px;height:506px;" src="http://1.bp.blogspot.com/_tWDA5bNBNHI/Si5rCe23_RI/AAAAAAAAACs/oJ0DI4bXVx4/s800/coupling.png" alt="" border="0" /></a></p>
<p><span style="color:rgb(51,102,255);font-size:130%;"><span style="font-style:italic;">Doc/View Concept:</span></span></p>
<p><span style="color:rgb(0,0,0);">MFC separates data management into these two classes. The document stores the data and manages printing the data and coordinates updating multiple views of the data. The view displays the data and manages user interaction with it, including selection and editing.</span></p>
<p><span style="color:rgb(0,0,0);">In dependency graph CDocument and CView are mutually dependant and usually the model don’t have to know the View and it must be independent of any external framework.</span></p>
<p><a href="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5ruZ3qSJI/AAAAAAAAAC0/YfzrDdPZaQo/s1600-h/docview.png"><img style="cursor:pointer;width:631px;height:179px;" src="http://4.bp.blogspot.com/_tWDA5bNBNHI/Si5ruZ3qSJI/AAAAAAAAAC0/YfzrDdPZaQo/s800/docview.png" alt="" border="0" /></a></p>
<p class="MsoNormal"><span style="color:rgb(0,0,0);">The model has to be as simple as possible with simple types and without any unnecessary coupling.</span></p>
<p><span style="color:rgb(0,0,0);">The following CQL request demonstrate that CDocument is highly coupled with GUI classes</span>:</p>
<p><span style="color:rgb(51,51,255);">SELECT </span>TYPES <span style="color:rgb(51,51,255);">WHERE </span>IsDirectlyUsedBy &#8220;<span style="color:rgb(255,0,0);">CDocument</span>&#8220;<br />
<span><span style="color:rgb(0,0,0);font-family:verdana;font-size:85%;"><a href="http://2.bp.blogspot.com/_tWDA5bNBNHI/SjFeqPxe0dI/AAAAAAAAAC8/eT86sQWpLVw/s1600-h/docdependency.png"><img style="cursor:pointer;width:674px;height:206px;" src="http://2.bp.blogspot.com/_tWDA5bNBNHI/SjFeqPxe0dI/AAAAAAAAAC8/eT86sQWpLVw/s800/docdependency.png" alt="" border="0" /></a></span></span>
</p>
<p class="MsoNormal"><span style="color:rgb(0,0,0);">The goal is to reuse the same model in different projects (Console, Gui, WebService, …) and if our model is the CDocument we can’t reuse easily in other projects.</span></p>
<p><span style="font-weight:bold;font-style:italic;font-size:100%;">Recommendation:</span></p>
<p><span style="color:rgb(0,0,0);">Never use CDocument as model but use it just as controller to refresh views.</span></p>
<p><span style="color:rgb(51,102,255);font-size:130%;"><span style="font-style:italic;">MFC Automation Server :</span></span></p>
<p><span style="color:rgb(0,0,0);">CDocument can be used also as COM Component, but CDocument is coupled with CView and using CDocument as COM component can occur some unexpected limitations and problems.</span></p>
<p><span style="color:rgb(0,0,0);">When we instantiate a CDocument as COM Component a handle of view is created due to the coupling Doc/View so the number of instances to create is limited by the number of window handles that can be created, and the problem occur particularly if the instances are created in a no desktop session, in this case the number of handle that can be created is very limited by default.</span></p>
<p><span style="font-style:italic;font-weight:bold;font-size:100%;">Recommendation:</span></p>
<p>Avoid using CDocument as COM component, keep it simple and use ATL instead it&#8217;s more simple and flexible.</p>
<p><span style="color:rgb(51,102,255);font-size:180%;">Use or don’t use MFC?</span></p>
<p><span style="color:rgb(0,0,0);">MFC is well implemented but not really object oriented and the classes are high coupled, so be careful when using it and avoid any unnecessary coupling, for example prefer using ATL for COM component and STL for containers.</span></p>
<p><span style="color:rgb(0,0,0);">It’s preferable to avoid as possible the coupling of your model with Doc/View concept, it make your design less flexible and add more complexity.</span></p>
<p><span style="color:rgb(0,0,0);">The goal is to spend more time in developing the business layer and isolate any technical layer will be very advantageous:</span></p>
<p><span style="color:rgb(0,0,0);">· Human resources department don’t need to spend a lot of time to search for MFC gurus; maybe just few MFC developers will be sufficient.</span></p>
<p><span style="color:rgb(0,0,0);">· Developers don’t add a complexity of a framework to the complexity of what’s they implement.</span></p>
<p><span style="color:rgb(0,0,0);">· Reusing easily the business layer in other context (Web Services, Console,…).</span></p>
<p><span style="color:rgb(0,0,0);">So keep it simple and isolate the impact of any technical framework used, for that be careful for any unnecessary coupling.</span></p>
<p></span></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Manuvie ferme tous ses fonds distincts]]></title>
<link>http://groupecma.wordpress.com/2009/09/17/manuvie-ferme-tous-ses-fonds-distincts/</link>
<pubDate>Thu, 17 Sep 2009 12:05:25 +0000</pubDate>
<dc:creator>marketingcma</dc:creator>
<guid>http://groupecma.wordpress.com/2009/09/17/manuvie-ferme-tous-ses-fonds-distincts/</guid>
<description><![CDATA[La nouvelle secoue mais ne surprend pas. Après la fin des options d&#8217;Helios chez Desjardins, le]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:justify;"><img class="alignleft" style="margin:3px;" title="manuvie" src="http://www.radio-canada.ca/actualite/lafacture/265/img/manuvie.jpg" alt="" width="180" height="135" />La nouvelle secoue mais ne surprend pas. Après la fin des options d&#8217;Helios chez Desjardins, les réductions de protection chez Sunlife et la fermeture pure et simple de tout le département de placement d&#8217;AXA, au tour de Manuvie de sabrer dans ses produits d&#8217;investissement. Le 2 octobre 2009, la Financière Manuvie mettra la hache dans TOUS ses fonds distincts. <!--more-->Fini les garanties généreuses. L’assureur a évalué ses risques liés aux 20 milliards sous gestion de toutes ses familles de fonds de placement garantis et ne peut plus continuer à en offrir autant. Les clients détenteurs de contrats émis avant le 2 octobre 2009 seront rassurés d’entendre qu’ils bénéficieront de toutes les anciennes protections. Cependant, les options de placements seront modifiés pour restreindre certains fonds jugés maintenant trop volatils, donc coûteux à couvrir.</p>
<p style="text-align:justify;">Ainsi, les FPG, FPG Perspective, CPLM, PPLM, CAP Maritime, FPG Sélect et RevenuPLUS ne seront plus offerts à de nouvelles souscriptions. En remplacement, dès le 5 octobre, les investisseurs pourront utiliser les FPG Sélect de nouvelle génération avec 3 options. Une appelée PlacementPlus, qui vise l’accumulation du capital. Une deuxième; RevenuPlus 2 qui propose un décaissement de 5% à vie à partir de 65 ans seulement et enfin, SuccessionPlus qui protège le capital pour les héritiers.</p>
<p style="text-align:justify;">Le message à retenir: aucune de ces options ne protégera complètement le capital investi du vivant. La protection minimale légale, impose cependant une garantie de 75% du principal à l’échéance du contrat, soit au 100 ème anniversaire du titulaire. Autant ne plus parler de protection. Ainsi, les garanties à 75 ou 100% au terme de 10 ans, comme c’était la tradition, feront maintenant partie des souvenirs.</p>
<p style="text-align:justify;">Pourquoi laissez tomber une telle protection du capital? Parce que le risque existe et la crise de 2008-2009 a laissé ses marques. La base de données Paltrak de Morningstar démontre d’ailleurs toute l’utilité d’une protection sur une décennie. Plus de 500 fonds et indices de marché sur un univers qui en compte 2200, affichent un rendement annualisé négatif pour la période couvrant août 1999 à août 2009. De ceux-ci, on compte même de grandes vedettes d&#8217;autrefois comme les LondonLife, RBC et AGF Action Américaines. Aucune compagnie de fonds n&#8217;échappe au carnage. Suggestion pour la TD, le Fonds TD Valeurs Sûres américaines, n&#8217;est plus tout à fait sûr. 1000$ investi il y a 10 ans ne vaut plus que 590$.  La calculette des actuaires de Waterloo a aisément fait comprendre que plus de 22% de risque, ça devient énorme.</p>
<p style="text-align:justify;">Les grands gagnants de cette nouvelle seront les actionnaires de Manuvie, du moins à court terme.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Take care while using MFC CFileDialog]]></title>
<link>http://sumeshvv.wordpress.com/2009/09/16/take-care-while-using-mfcs-cfiledialog-2/</link>
<pubDate>Wed, 16 Sep 2009 06:48:51 +0000</pubDate>
<dc:creator>Sumesh VV</dc:creator>
<guid>http://sumeshvv.wordpress.com/2009/09/16/take-care-while-using-mfcs-cfiledialog-2/</guid>
<description><![CDATA[While creating an instance of CFileDialog class  if we didn&#8217;t provide &#8220;OFN_NOCHANGEDIR]]></description>
<content:encoded><![CDATA[While creating an instance of CFileDialog class  if we didn&#8217;t provide &#8220;OFN_NOCHANGEDIR]]></content:encoded>
</item>
<item>
<title><![CDATA[DLU (dialog units)]]></title>
<link>http://yoonhada.wordpress.com/2008/04/30/dlu-dialog-units/</link>
<pubDate>Wed, 30 Apr 2008 09:23:00 +0000</pubDate>
<dc:creator>yoonhada</dc:creator>
<guid>http://yoonhada.wordpress.com/2008/04/30/dlu-dialog-units/</guid>
<description><![CDATA[The location and size of a dialog box, as well as the location and size of controls within it, are m]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The location and size of a dialog box,</p>
<p>as well as the location and size of controls within it,</p>
<p>are measured in dialog units (DLUs).</p>
<p>A DLU is based on the size of the dialog box font, normally 8-point MS Sans Serif.</p>
<p>A horizontal DLU is the average width of the dialog box divided by four.</p>
<p>A vertical DLU is the average height of the font divided by eight.</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
