Click here to Skip to main content
13,668,551 members
Click here to Skip to main content

Stats

1.9M views
55.5K downloads
444 bookmarked
Posted 3 Sep 2008
Licenced CPOL

CGridListCtrlEx - Grid Control Based on CListCtrl

, 16 Mar 2015
A custom draw CListCtrl with subitem editing and formatting
CGridListCtrlEx
DemoApplication
res
CGridListCtrlEx.ico
FLGDEN.ICO
FLGFRAN.ICO
FLGGERM.ICO
FLGGREEC.ico
FLGSPAIN.ICO
FLGSWED.ICO
Documentation
CGridListCtrlEx
screenshot.png
vs2003
CGridListCtrlEx.vcproj
vs2005
CGridListCtrlEx.vcproj
vs2008
CGridListCtrlEx.vcproj
vs6
CGridListCtrlEx.dsp
CGridListCtrlEx.dsw
Release
CGridListCtrlEx.exe
msvcp120.dll
msvcr120.dll
CGridListCtrlEx.ico
FLGDEN.ICO
FLGFRAN.ICO
FLGGERM.ICO
FLGGREEC.ico
FLGSPAIN.ICO
FLGSWED.ICO
screenshot.png
Doxygen
Doxyfile
html
arrowdown.png
arrowright.png
bc_s.png
bdwn.png
class_c_grid_column_trait.png
class_c_grid_column_trait_combo.png
class_c_grid_column_trait_date_time.png
class_c_grid_column_trait_edit.png
class_c_grid_column_trait_hyper_link.png
class_c_grid_column_trait_image.png
class_c_grid_column_trait_multiline_edit.png
class_c_grid_column_trait_text.png
class_c_grid_editor_combo_box.png
class_c_grid_editor_combo_box_edit.png
class_c_grid_editor_date_time_ctrl.png
class_c_grid_editor_text.png
class_c_grid_list_ctrl_ex.png
class_c_grid_list_ctrl_groups.png
class_c_grid_multiline_editor_text.png
class_c_grid_row_trait.png
class_c_grid_row_trait_text.png
class_c_grid_row_trait_x_p.png
class_c_view_config_section.png
class_c_view_config_section_default.png
class_c_view_config_section_default_1_1_c_view_config_section_local.png
class_c_view_config_section_profiles.png
class_c_view_config_section_win_app.png
closed.png
doc.png
doxygen.png
folderclosed.png
folderopen.png
ftv2blank.png
ftv2cl.png
ftv2doc.png
ftv2folderclosed.png
ftv2folderopen.png
ftv2lastnode.png
ftv2link.png
ftv2mlastnode.png
ftv2mnode.png
ftv2mo.png
ftv2node.png
ftv2ns.png
ftv2plastnode.png
ftv2pnode.png
ftv2splitbar.png
ftv2vertline.png
nav_f.png
nav_g.png
nav_h.png
open.png
search
close.png
mag_sel.png
search_l.png
search_m.png
search_r.png
splitbar.png
sync_off.png
sync_on.png
tab_a.png
tab_b.png
tab_h.png
tab_s.png
CGridListCtrlEx.vcproj
CGridListCtrlEx.vcproj
CGridListCtrlEx.vcproj
CGridListCtrlEx.dsp
CGridListCtrlEx.dsw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>CGridListCtrlEx: CGridColumnTraitImage Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">CGridListCtrlEx
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="class_c_grid_column_trait_image-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">CGridColumnTraitImage Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="class_c_grid_column_trait_image.html" title="CGridColumnTraitImage implements an image switcher (can mimic a checkbox) ">CGridColumnTraitImage</a> implements an image switcher (can mimic a checkbox)  
 <a href="class_c_grid_column_trait_image.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for CGridColumnTraitImage:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_c_grid_column_trait_image.png" usemap="#CGridColumnTraitImage_map" alt=""/>
  <map id="CGridColumnTraitImage_map" name="CGridColumnTraitImage_map">
<area href="class_c_grid_column_trait_text.html" title="CGridColumnTraitText provides customization of cell text and background. " alt="CGridColumnTraitText" shape="rect" coords="285,56,465,80"/>
<area href="class_c_grid_column_trait.html" title="CGridColumnTrait specifies the methods needed for custom cell handling. " alt="CGridColumnTrait" shape="rect" coords="285,0,465,24"/>
<area href="class_c_grid_column_trait_combo.html" title="CGridColumnTraitCombo implements a CComboBox as cell-editor. " alt="CGridColumnTraitCombo" shape="rect" coords="0,168,180,192"/>
<area href="class_c_grid_column_trait_date_time.html" title="CGridColumnTraitDateTime implements a CDateTimeCtrl as cell-editor. " alt="CGridColumnTraitDateTime" shape="rect" coords="190,168,370,192"/>
<area href="class_c_grid_column_trait_edit.html" title="CGridColumnTraitEdit implements a CEdit as cell-editor. " alt="CGridColumnTraitEdit" shape="rect" coords="380,168,560,192"/>
<area href="class_c_grid_column_trait_hyper_link.html" title="CGridColumnTraitHyperLink that can launch a link using the web-browser. " alt="CGridColumnTraitHyperLink" shape="rect" coords="570,168,750,192"/>
<area href="class_c_grid_column_trait_multiline_edit.html" title="CGridColumnTraitMultilineEdit implements a CEdit as multiline cell-editor. " alt="CGridColumnTraitMultilineEdit" shape="rect" coords="380,224,560,248"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aff8e92f0ab64d5e116ba67a99df37220"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aff8e92f0ab64d5e116ba67a99df37220"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#aff8e92f0ab64d5e116ba67a99df37220">CGridColumnTraitImage</a> ()</td></tr>
<tr class="memdesc:aff8e92f0ab64d5e116ba67a99df37220"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_c_grid_column_trait_image.html" title="CGridColumnTraitImage implements an image switcher (can mimic a checkbox) ">CGridColumnTraitImage</a> - Constructor. <br /></td></tr>
<tr class="separator:aff8e92f0ab64d5e116ba67a99df37220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25a4086a4d56043adced450de0531412"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a25a4086a4d56043adced450de0531412">CGridColumnTraitImage</a> (int nImageIndex, int nImageCount)</td></tr>
<tr class="memdesc:a25a4086a4d56043adced450de0531412"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_c_grid_column_trait_image.html" title="CGridColumnTraitImage implements an image switcher (can mimic a checkbox) ">CGridColumnTraitImage</a> - Constructor.  <a href="#a25a4086a4d56043adced450de0531412">More...</a><br /></td></tr>
<tr class="separator:a25a4086a4d56043adced450de0531412"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d0abf6bf4d2eba09de0745a5287aa79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a0d0abf6bf4d2eba09de0745a5287aa79">AddImageIndex</a> (int nImageIdx)</td></tr>
<tr class="memdesc:a0d0abf6bf4d2eba09de0745a5287aa79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds image index to the list of images to switch between.  <a href="#a0d0abf6bf4d2eba09de0745a5287aa79">More...</a><br /></td></tr>
<tr class="separator:a0d0abf6bf4d2eba09de0745a5287aa79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2c9ca7091fb04fb5076b16239a1084f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#aa2c9ca7091fb04fb5076b16239a1084f">AddImageIndex</a> (int nImageIdx, const CString &amp;strImageText, bool bEditable=true)</td></tr>
<tr class="memdesc:aa2c9ca7091fb04fb5076b16239a1084f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds image index to the list of images to switch between.  <a href="#aa2c9ca7091fb04fb5076b16239a1084f">More...</a><br /></td></tr>
<tr class="separator:aa2c9ca7091fb04fb5076b16239a1084f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a594374275e5efb3f41aa1989146e97b0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a594374275e5efb3f41aa1989146e97b0">SetImageText</a> (int nImageIdx, const CString &amp;strImageText, bool bEditable=true)</td></tr>
<tr class="memdesc:a594374275e5efb3f41aa1989146e97b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the image text for the specified image index.  <a href="#a594374275e5efb3f41aa1989146e97b0">More...</a><br /></td></tr>
<tr class="separator:a594374275e5efb3f41aa1989146e97b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5e39f6974b30476565f887fa8b8d139"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#ac5e39f6974b30476565f887fa8b8d139">SetSortImageIndex</a> (bool bValue)</td></tr>
<tr class="memdesc:ac5e39f6974b30476565f887fa8b8d139"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should primary sorting be based on the image index (checkbox sorting)  <a href="#ac5e39f6974b30476565f887fa8b8d139">More...</a><br /></td></tr>
<tr class="separator:ac5e39f6974b30476565f887fa8b8d139"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a206096031cf874f73837f742c6542ad0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a206096031cf874f73837f742c6542ad0">GetSortImageIndex</a> () const </td></tr>
<tr class="memdesc:a206096031cf874f73837f742c6542ad0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether primary sorting is based on image index (checkbox sorting)  <a href="#a206096031cf874f73837f742c6542ad0">More...</a><br /></td></tr>
<tr class="separator:a206096031cf874f73837f742c6542ad0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab4c08d50c9677aaa87d659fa34b79b8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#aab4c08d50c9677aaa87d659fa34b79b8">SetToggleSelection</a> (bool bValue)</td></tr>
<tr class="memdesc:aab4c08d50c9677aaa87d659fa34b79b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should images (checkboxes) be flipped for all selected rows, when icon is clicked.  <a href="#aab4c08d50c9677aaa87d659fa34b79b8">More...</a><br /></td></tr>
<tr class="separator:aab4c08d50c9677aaa87d659fa34b79b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95862bc81e5e509e9192bf1291cbd5c2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a95862bc81e5e509e9192bf1291cbd5c2">GetToggleSelection</a> () const </td></tr>
<tr class="memdesc:a95862bc81e5e509e9192bf1291cbd5c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether images (checkboxes) should be flipped for all selected rows, when icon is clicked.  <a href="#a95862bc81e5e509e9192bf1291cbd5c2">More...</a><br /></td></tr>
<tr class="separator:a95862bc81e5e509e9192bf1291cbd5c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfdfa9226d5356b9a3c199f16d89433d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#acfdfa9226d5356b9a3c199f16d89433d">SetSingleClickEdit</a> (bool bValue)</td></tr>
<tr class="memdesc:acfdfa9226d5356b9a3c199f16d89433d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should cell editor be launched on first mouse-click, or should it wait for cell to have focus first.  <a href="#acfdfa9226d5356b9a3c199f16d89433d">More...</a><br /></td></tr>
<tr class="separator:acfdfa9226d5356b9a3c199f16d89433d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a567a718b8e629760324c0c12b82899f9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a567a718b8e629760324c0c12b82899f9">GetSingleClickEdit</a> () const </td></tr>
<tr class="memdesc:a567a718b8e629760324c0c12b82899f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether editor should be launched on first mouse-click.  <a href="#a567a718b8e629760324c0c12b82899f9">More...</a><br /></td></tr>
<tr class="separator:a567a718b8e629760324c0c12b82899f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d11fbbb95d29d151fa5457f5851c5c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a1d11fbbb95d29d151fa5457f5851c5c3">SetIconClickBeginEdit</a> (bool bValue)</td></tr>
<tr class="memdesc:a1d11fbbb95d29d151fa5457f5851c5c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure whether the icon-click should trigger OnBeginEdit.  <a href="#a1d11fbbb95d29d151fa5457f5851c5c3">More...</a><br /></td></tr>
<tr class="separator:a1d11fbbb95d29d151fa5457f5851c5c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0d8faee861f3680bea0822fdb38843b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#ac0d8faee861f3680bea0822fdb38843b">GetIconClickBeginEdit</a> () const </td></tr>
<tr class="memdesc:ac0d8faee861f3680bea0822fdb38843b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether mouse-click on icon, should also perform OnBeginEdit.  <a href="#ac0d8faee861f3680bea0822fdb38843b">More...</a><br /></td></tr>
<tr class="separator:ac0d8faee861f3680bea0822fdb38843b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_c_grid_column_trait_text"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_c_grid_column_trait_text')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_c_grid_column_trait_text.html">CGridColumnTraitText</a></td></tr>
<tr class="memitem:ad07c0d0a661fa1137d18831b2811508a inherit pub_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad07c0d0a661fa1137d18831b2811508a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#ad07c0d0a661fa1137d18831b2811508a">CGridColumnTraitText</a> ()</td></tr>
<tr class="memdesc:ad07c0d0a661fa1137d18831b2811508a inherit pub_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_c_grid_column_trait_text.html" title="CGridColumnTraitText provides customization of cell text and background. ">CGridColumnTraitText</a> - Constructor. <br /></td></tr>
<tr class="separator:ad07c0d0a661fa1137d18831b2811508a inherit pub_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a3e262526ce3c363311289a25092fe5 inherit pub_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a3a3e262526ce3c363311289a25092fe5">OnCustomDraw</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, NMLVCUSTOMDRAW *pLVCD, LRESULT *pResult)</td></tr>
<tr class="memdesc:a3a3e262526ce3c363311289a25092fe5 inherit pub_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overrides the custom draw handler, to allow custom coloring of cells with this column trait.  <a href="#a3a3e262526ce3c363311289a25092fe5">More...</a><br /></td></tr>
<tr class="separator:a3a3e262526ce3c363311289a25092fe5 inherit pub_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdb6c2f36cf8cdb44c62afa69c736d84 inherit pub_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#afdb6c2f36cf8cdb44c62afa69c736d84">SetSortFormatNumber</a> (bool bValue)</td></tr>
<tr class="memdesc:afdb6c2f36cf8cdb44c62afa69c736d84 inherit pub_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should cell values be compared as numbers when sorting.  <a href="#afdb6c2f36cf8cdb44c62afa69c736d84">More...</a><br /></td></tr>
<tr class="separator:afdb6c2f36cf8cdb44c62afa69c736d84 inherit pub_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_c_grid_column_trait"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_c_grid_column_trait')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_c_grid_column_trait.html">CGridColumnTrait</a></td></tr>
<tr class="memitem:a8bf453ce4cefaea941fc0fd792f7dfb1 inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8bf453ce4cefaea941fc0fd792f7dfb1"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait.html#a8bf453ce4cefaea941fc0fd792f7dfb1">~CGridColumnTrait</a> ()</td></tr>
<tr class="memdesc:a8bf453ce4cefaea941fc0fd792f7dfb1 inherit pub_methods_class_c_grid_column_trait"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a8bf453ce4cefaea941fc0fd792f7dfb1 inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acafacfe30da0504e9583e58d5a4857e9 inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait.html#acafacfe30da0504e9583e58d5a4857e9">OnInsertColumn</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nCol)</td></tr>
<tr class="memdesc:acafacfe30da0504e9583e58d5a4857e9 inherit pub_methods_class_c_grid_column_trait"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override <a class="el" href="class_c_grid_column_trait.html#acafacfe30da0504e9583e58d5a4857e9" title="Override OnInsertColumn() to provide your own special styling of the column, after column has been ad...">OnInsertColumn()</a> to provide your own special styling of the column, after column has been added.  <a href="#acafacfe30da0504e9583e58d5a4857e9">More...</a><br /></td></tr>
<tr class="separator:acafacfe30da0504e9583e58d5a4857e9 inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96c3d95ac2e528f4efe40775f9585e0d inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a96c3d95ac2e528f4efe40775f9585e0d"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait.html#a96c3d95ac2e528f4efe40775f9585e0d">OnEditEnd</a> ()</td></tr>
<tr class="memdesc:a96c3d95ac2e528f4efe40775f9585e0d inherit pub_methods_class_c_grid_column_trait"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override <a class="el" href="class_c_grid_column_trait.html#a96c3d95ac2e528f4efe40775f9585e0d" title="Override OnEditEnd() in case one need to change state after a cell-edit. ">OnEditEnd()</a> in case one need to change state after a cell-edit. <br /></td></tr>
<tr class="separator:a96c3d95ac2e528f4efe40775f9585e0d inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f0f3772b799dac2b99a8d1e017fffd9 inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f0f3772b799dac2b99a8d1e017fffd9"></a>
<a class="el" href="struct_c_grid_column_trait_1_1_column_state.html">ColumnState</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetColumnState</b> ()</td></tr>
<tr class="separator:a9f0f3772b799dac2b99a8d1e017fffd9 inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80ecf9bb5d5e42a2dd5b94e229af50a9 inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80ecf9bb5d5e42a2dd5b94e229af50a9"></a>
BOOL&#160;</td><td class="memItemRight" valign="bottom"><b>HasMetaFlag</b> (DWORD flag)</td></tr>
<tr class="separator:a80ecf9bb5d5e42a2dd5b94e229af50a9 inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae31096ed14e4c8efda2346eb68b1c4d7 inherit pub_methods_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae31096ed14e4c8efda2346eb68b1c4d7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetMetaFlag</b> (DWORD flag, bool enable)</td></tr>
<tr class="separator:ae31096ed14e4c8efda2346eb68b1c4d7 inherit pub_methods_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:ada490bda7a4d39a2fa69ebfca191aa85"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#ada490bda7a4d39a2fa69ebfca191aa85">AppendStateImages</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, CImageList &amp;imagelist)</td></tr>
<tr class="memdesc:ada490bda7a4d39a2fa69ebfca191aa85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends the checkbox state images to the list control image list.  <a href="#ada490bda7a4d39a2fa69ebfca191aa85">More...</a><br /></td></tr>
<tr class="separator:ada490bda7a4d39a2fa69ebfca191aa85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa28415836db3443961947684a1ccde8"><td class="memItemLeft" align="right" valign="top">static LRESULT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#afa28415836db3443961947684a1ccde8">SendEndLabelEdit</a> (CWnd &amp;wndListCtrl, int nRow, int nCol, LV_DISPINFO &amp;dispInfo)</td></tr>
<tr class="memdesc:afa28415836db3443961947684a1ccde8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send LV_DISPINFO structure as LVN_ENDLABELEDIT from CListCtrl to parent window.  <a href="#afa28415836db3443961947684a1ccde8">More...</a><br /></td></tr>
<tr class="separator:afa28415836db3443961947684a1ccde8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a38f766b818c68b907c1bd50e4abd6b0c"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a38f766b818c68b907c1bd50e4abd6b0c">OnSortRows</a> (LPCTSTR pszLeftValue, LPCTSTR pszRightValue, bool bAscending)</td></tr>
<tr class="memdesc:a38f766b818c68b907c1bd50e4abd6b0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two cell values according to specified sort order.  <a href="#a38f766b818c68b907c1bd50e4abd6b0c">More...</a><br /></td></tr>
<tr class="separator:a38f766b818c68b907c1bd50e4abd6b0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d9c0910f1579dad08f282a0c202f421"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a3d9c0910f1579dad08f282a0c202f421">OnSortRows</a> (const LVITEM &amp;leftItem, const LVITEM &amp;rightItem, bool bAscending)</td></tr>
<tr class="memdesc:a3d9c0910f1579dad08f282a0c202f421"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two cell values according to checkbox state.  <a href="#a3d9c0910f1579dad08f282a0c202f421">More...</a><br /></td></tr>
<tr class="separator:a3d9c0910f1579dad08f282a0c202f421"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36318c4778486cc897dcddb98882ac25"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a36318c4778486cc897dcddb98882ac25">IsCellReadOnly</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol, CPoint pt) const </td></tr>
<tr class="memdesc:a36318c4778486cc897dcddb98882ac25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if current image index blocks for editing of cell label.  <a href="#a36318c4778486cc897dcddb98882ac25">More...</a><br /></td></tr>
<tr class="separator:a36318c4778486cc897dcddb98882ac25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ba02cf22b69207ae90360ab47911c04"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a6ba02cf22b69207ae90360ab47911c04">OnClickEditStart</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol, CPoint pt, bool bDblClick)</td></tr>
<tr class="memdesc:a6ba02cf22b69207ae90360ab47911c04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the mouse click should start the cell editor (OnEditBegin) Normally the cell needs to have focus first before cell editor can be started.  <a href="#a6ba02cf22b69207ae90360ab47911c04">More...</a><br /></td></tr>
<tr class="separator:a6ba02cf22b69207ae90360ab47911c04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5805e0700f450c1b79f86ac5bbcac172"><td class="memItemLeft" align="right" valign="top">virtual CWnd *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a5805e0700f450c1b79f86ac5bbcac172">OnEditBegin</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol)</td></tr>
<tr class="memdesc:a5805e0700f450c1b79f86ac5bbcac172"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override <a class="el" href="class_c_grid_column_trait_image.html#a5805e0700f450c1b79f86ac5bbcac172" title="Override OnEditBegin() to provide your own special cell-edit control. ">OnEditBegin()</a> to provide your own special cell-edit control.  <a href="#a5805e0700f450c1b79f86ac5bbcac172">More...</a><br /></td></tr>
<tr class="separator:a5805e0700f450c1b79f86ac5bbcac172"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64719019b986858ae317aacb20cfc93c"><td class="memItemLeft" align="right" valign="top">virtual CWnd *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a64719019b986858ae317aacb20cfc93c">OnEditBegin</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol, CPoint pt)</td></tr>
<tr class="memdesc:a64719019b986858ae317aacb20cfc93c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overrides <a class="el" href="class_c_grid_column_trait_image.html#a5805e0700f450c1b79f86ac5bbcac172" title="Override OnEditBegin() to provide your own special cell-edit control. ">OnEditBegin()</a> to allow special handling when clicking image or checkbox.  <a href="#a64719019b986858ae317aacb20cfc93c">More...</a><br /></td></tr>
<tr class="separator:a64719019b986858ae317aacb20cfc93c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afab1c0f10273f90f8ac171eec86cfb1c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afab1c0f10273f90f8ac171eec86cfb1c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#afab1c0f10273f90f8ac171eec86cfb1c">Accept</a> (<a class="el" href="class_c_grid_column_trait_visitor.html">CGridColumnTraitVisitor</a> &amp;visitor)</td></tr>
<tr class="memdesc:afab1c0f10273f90f8ac171eec86cfb1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accept Visitor Pattern. <br /></td></tr>
<tr class="separator:afab1c0f10273f90f8ac171eec86cfb1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a330c264bfd6c1ea27d4bbf41e440ee59"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a330c264bfd6c1ea27d4bbf41e440ee59">FlipImageIndex</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol)</td></tr>
<tr class="memdesc:a330c264bfd6c1ea27d4bbf41e440ee59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switch to the next image index.  <a href="#a330c264bfd6c1ea27d4bbf41e440ee59">More...</a><br /></td></tr>
<tr class="separator:a330c264bfd6c1ea27d4bbf41e440ee59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f5a38e7be701ac4913bc3724e32e60f"><td class="memItemLeft" align="right" valign="top">virtual CWnd *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a7f5a38e7be701ac4913bc3724e32e60f">OnEditBeginImage</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol)</td></tr>
<tr class="memdesc:a7f5a38e7be701ac4913bc3724e32e60f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reacts to clicking on the image, and allows all selected rows to be flipped.  <a href="#a7f5a38e7be701ac4913bc3724e32e60f">More...</a><br /></td></tr>
<tr class="separator:a7f5a38e7be701ac4913bc3724e32e60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54d9460697352ceb969457c20573e932"><td class="memItemLeft" align="right" valign="top">virtual CWnd *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a54d9460697352ceb969457c20573e932">OnEditBeginCheckbox</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol)</td></tr>
<tr class="memdesc:a54d9460697352ceb969457c20573e932"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reacts to clicking on the checkbox, and allows all selected rows to be flipped.  <a href="#a54d9460697352ceb969457c20573e932">More...</a><br /></td></tr>
<tr class="separator:a54d9460697352ceb969457c20573e932"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_c_grid_column_trait_text"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_c_grid_column_trait_text')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_c_grid_column_trait_text.html">CGridColumnTraitText</a></td></tr>
<tr class="memitem:a02616da1f73d28e49a1c0ce6baca01ac inherit pro_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a02616da1f73d28e49a1c0ce6baca01ac">UpdateTextFont</a> (NMLVCUSTOMDRAW *pLVCD, LOGFONT &amp;textFont)</td></tr>
<tr class="memdesc:a02616da1f73d28e49a1c0ce6baca01ac inherit pro_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specifies af the font color if one is specified.  <a href="#a02616da1f73d28e49a1c0ce6baca01ac">More...</a><br /></td></tr>
<tr class="separator:a02616da1f73d28e49a1c0ce6baca01ac inherit pro_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c255e5e444d504b037ba49608aaf460 inherit pro_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a3c255e5e444d504b037ba49608aaf460">UpdateTextColor</a> (NMLVCUSTOMDRAW *pLVCD, COLORREF &amp;textColor)</td></tr>
<tr class="memdesc:a3c255e5e444d504b037ba49608aaf460 inherit pro_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the text color if one is specified.  <a href="#a3c255e5e444d504b037ba49608aaf460">More...</a><br /></td></tr>
<tr class="separator:a3c255e5e444d504b037ba49608aaf460 inherit pro_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a829800d676cfee5e9cd27a4f19c6cb19 inherit pro_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a829800d676cfee5e9cd27a4f19c6cb19">UpdateBackColor</a> (NMLVCUSTOMDRAW *pLVCD, COLORREF &amp;backColor)</td></tr>
<tr class="memdesc:a829800d676cfee5e9cd27a4f19c6cb19 inherit pro_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the background color if one is specified.  <a href="#a829800d676cfee5e9cd27a4f19c6cb19">More...</a><br /></td></tr>
<tr class="separator:a829800d676cfee5e9cd27a4f19c6cb19 inherit pro_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ca8f5766cc758c0c5a021eaac2566d3 inherit pro_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a0ca8f5766cc758c0c5a021eaac2566d3">GetCellFontHeight</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner)</td></tr>
<tr class="memdesc:a0ca8f5766cc758c0c5a021eaac2566d3 inherit pro_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the proper row-height according to font, which a cell value editor should fit in.  <a href="#a0ca8f5766cc758c0c5a021eaac2566d3">More...</a><br /></td></tr>
<tr class="separator:a0ca8f5766cc758c0c5a021eaac2566d3 inherit pro_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19ff02b544c5c11126fa95fb4d2a9f4f inherit pro_methods_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top">virtual CRect&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a19ff02b544c5c11126fa95fb4d2a9f4f">GetCellEditRect</a> (<a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;owner, int nRow, int nCol)</td></tr>
<tr class="memdesc:a19ff02b544c5c11126fa95fb4d2a9f4f inherit pro_methods_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the proper rectangle, which a cell value editor should fit in.  <a href="#a19ff02b544c5c11126fa95fb4d2a9f4f">More...</a><br /></td></tr>
<tr class="separator:a19ff02b544c5c11126fa95fb4d2a9f4f inherit pro_methods_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a97a90793323ce2e3f7aa08f27782f167"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97a90793323ce2e3f7aa08f27782f167"></a>
INTERNAL CSimpleMap&lt; int, ImageCell &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a97a90793323ce2e3f7aa08f27782f167">m_ImageIndexes</a></td></tr>
<tr class="memdesc:a97a90793323ce2e3f7aa08f27782f167"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fixed list of image items to switch between. <br /></td></tr>
<tr class="separator:a97a90793323ce2e3f7aa08f27782f167"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b681a011f060498c5c82bb7d16e2a8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b681a011f060498c5c82bb7d16e2a8e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a3b681a011f060498c5c82bb7d16e2a8e">m_SortImageIndex</a></td></tr>
<tr class="memdesc:a3b681a011f060498c5c82bb7d16e2a8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should image be used as primary sort index ? <br /></td></tr>
<tr class="separator:a3b681a011f060498c5c82bb7d16e2a8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6cd207e84c42ab12b48da840c0367be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6cd207e84c42ab12b48da840c0367be"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#ac6cd207e84c42ab12b48da840c0367be">m_ToggleSelection</a></td></tr>
<tr class="memdesc:ac6cd207e84c42ab12b48da840c0367be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should the image of all selected rows be flipped, when clicked ? <br /></td></tr>
<tr class="separator:ac6cd207e84c42ab12b48da840c0367be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfe65b7cec54659dadf69b4f219ff3ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abfe65b7cec54659dadf69b4f219ff3ef"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#abfe65b7cec54659dadf69b4f219ff3ef">m_SingleClickEdit</a></td></tr>
<tr class="memdesc:abfe65b7cec54659dadf69b4f219ff3ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should it start editor on first click, instead of first waiting for cell to have focus first. <br /></td></tr>
<tr class="separator:abfe65b7cec54659dadf69b4f219ff3ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fe09f1159b7c2a538a9ed870e491a81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fe09f1159b7c2a538a9ed870e491a81"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_image.html#a3fe09f1159b7c2a538a9ed870e491a81">m_IconClickBeginEdit</a></td></tr>
<tr class="memdesc:a3fe09f1159b7c2a538a9ed870e491a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should it start editor when clicking the icon area ? <br /></td></tr>
<tr class="separator:a3fe09f1159b7c2a538a9ed870e491a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_class_c_grid_column_trait_text"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_c_grid_column_trait_text')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_c_grid_column_trait_text.html">CGridColumnTraitText</a></td></tr>
<tr class="memitem:a75e0214da2c32ce5b869fbf0600e2b43 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75e0214da2c32ce5b869fbf0600e2b43"></a>
CFont *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a75e0214da2c32ce5b869fbf0600e2b43">m_pOldFont</a></td></tr>
<tr class="memdesc:a75e0214da2c32ce5b869fbf0600e2b43 inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backup of the original font while drawing with specified font. <br /></td></tr>
<tr class="separator:a75e0214da2c32ce5b869fbf0600e2b43 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e33ae1450ac23e9b2c7af0cba52aa6a inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e33ae1450ac23e9b2c7af0cba52aa6a"></a>
COLORREF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a4e33ae1450ac23e9b2c7af0cba52aa6a">m_OldTextColor</a></td></tr>
<tr class="memdesc:a4e33ae1450ac23e9b2c7af0cba52aa6a inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backup of the original text color while drawing with specified color. <br /></td></tr>
<tr class="separator:a4e33ae1450ac23e9b2c7af0cba52aa6a inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac345792a1d71a60774090a1a25c7c517 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac345792a1d71a60774090a1a25c7c517"></a>
COLORREF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#ac345792a1d71a60774090a1a25c7c517">m_OldBackColor</a></td></tr>
<tr class="memdesc:ac345792a1d71a60774090a1a25c7c517 inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backup of the original background color while drawing with specified color. <br /></td></tr>
<tr class="separator:ac345792a1d71a60774090a1a25c7c517 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b3e30edb26f0f354e60dab50a15c51f inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b3e30edb26f0f354e60dab50a15c51f"></a>
COLORREF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a6b3e30edb26f0f354e60dab50a15c51f">m_TextColor</a></td></tr>
<tr class="memdesc:a6b3e30edb26f0f354e60dab50a15c51f inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Text color to use for this column. <br /></td></tr>
<tr class="separator:a6b3e30edb26f0f354e60dab50a15c51f inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d88447d528be15676243b2d392ab488 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d88447d528be15676243b2d392ab488"></a>
COLORREF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a4d88447d528be15676243b2d392ab488">m_BackColor</a></td></tr>
<tr class="memdesc:a4d88447d528be15676243b2d392ab488 inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Background color to use for this column. <br /></td></tr>
<tr class="separator:a4d88447d528be15676243b2d392ab488 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5de906c71328a3683553a0df7d4b7615 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5de906c71328a3683553a0df7d4b7615"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_grid_column_trait_text.html#a5de906c71328a3683553a0df7d4b7615">m_SortFormatNumber</a></td></tr>
<tr class="memdesc:a5de906c71328a3683553a0df7d4b7615 inherit pro_attribs_class_c_grid_column_trait_text"><td class="mdescLeft">&#160;</td><td class="mdescRight">Column contains integers. <br /></td></tr>
<tr class="separator:a5de906c71328a3683553a0df7d4b7615 inherit pro_attribs_class_c_grid_column_trait_text"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_class_c_grid_column_trait"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_c_grid_column_trait')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_c_grid_column_trait.html">CGridColumnTrait</a></td></tr>
<tr class="memitem:a639b58aea46f3539d7ef29683c4788ca inherit pro_attribs_class_c_grid_column_trait"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a639b58aea46f3539d7ef29683c4788ca"></a>
<a class="el" href="struct_c_grid_column_trait_1_1_column_state.html">ColumnState</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_ColumnState</b></td></tr>
<tr class="separator:a639b58aea46f3539d7ef29683c4788ca inherit pro_attribs_class_c_grid_column_trait"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="class_c_grid_column_trait_image.html" title="CGridColumnTraitImage implements an image switcher (can mimic a checkbox) ">CGridColumnTraitImage</a> implements an image switcher (can mimic a checkbox) </p>
<p>By adding checkbox state-images to the official imagelist using <a class="el" href="class_c_grid_column_trait_image.html#ada490bda7a4d39a2fa69ebfca191aa85" title="Appends the checkbox state images to the list control image list. ">AppendStateImages()</a>, then one can use this column trait as checkbox editor. To get/set the checkbox value of a cell use the methods GetCellImage()/SetCellImage() on <a class="el" href="class_c_grid_list_ctrl_ex.html" title="CGridListCtrlEx extends the CListCtrl with several features. ">CGridListCtrlEx</a> </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a25a4086a4d56043adced450de0531412"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CGridColumnTraitImage::CGridColumnTraitImage </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nImageIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nImageCount</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p><a class="el" href="class_c_grid_column_trait_image.html" title="CGridColumnTraitImage implements an image switcher (can mimic a checkbox) ">CGridColumnTraitImage</a> - Constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">nImageIndex</td><td>The first index in list control imagelist </td></tr>
    <tr><td class="paramname">nImageCount</td><td>The number of images to switch between in the imagelist </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0d0abf6bf4d2eba09de0745a5287aa79"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::AddImageIndex </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nImageIdx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds image index to the list of images to switch between. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">nImageIdx</td><td>The index of the image in the list control imagelist </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa2c9ca7091fb04fb5076b16239a1084f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::AddImageIndex </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nImageIdx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CString &amp;&#160;</td>
          <td class="paramname"><em>strImageText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bEditable</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds image index to the list of images to switch between. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">nImageIdx</td><td>The index of the image in the list control imagelist </td></tr>
    <tr><td class="paramname">strImageText</td><td>The associated cell text to the image </td></tr>
    <tr><td class="paramname">bEditable</td><td>Is the cell editable when this image is displayed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ada490bda7a4d39a2fa69ebfca191aa85"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int CGridColumnTraitImage::AppendStateImages </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CImageList &amp;&#160;</td>
          <td class="paramname"><em>imagelist</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Appends the checkbox state images to the list control image list. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control adding column </td></tr>
    <tr><td class="paramname">imagelist</td><td>The image list assigned to the list control </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Image index where the two state images (unchecked/checked) was inserted </dd></dl>

</div>
</div>
<a class="anchor" id="a330c264bfd6c1ea27d4bbf41e440ee59"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int CGridColumnTraitImage::FlipImageIndex </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Switch to the next image index. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell to edit </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell to edit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>New image index (-1 if no new image) </dd></dl>

</div>
</div>
<a class="anchor" id="ac0d8faee861f3680bea0822fdb38843b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CGridColumnTraitImage::GetIconClickBeginEdit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get whether mouse-click on icon, should also perform OnBeginEdit. </p>
<dl class="section return"><dt>Returns</dt><dd>Enabled / Disabled </dd></dl>

</div>
</div>
<a class="anchor" id="a567a718b8e629760324c0c12b82899f9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CGridColumnTraitImage::GetSingleClickEdit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get whether editor should be launched on first mouse-click. </p>
<dl class="section return"><dt>Returns</dt><dd>Enabled / Disabled </dd></dl>

</div>
</div>
<a class="anchor" id="a206096031cf874f73837f742c6542ad0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CGridColumnTraitImage::GetSortImageIndex </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get whether primary sorting is based on image index (checkbox sorting) </p>
<dl class="section return"><dt>Returns</dt><dd>Enabled / Disabled </dd></dl>

</div>
</div>
<a class="anchor" id="a95862bc81e5e509e9192bf1291cbd5c2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CGridColumnTraitImage::GetToggleSelection </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get whether images (checkboxes) should be flipped for all selected rows, when icon is clicked. </p>
<dl class="section return"><dt>Returns</dt><dd>Enabled / Disabled </dd></dl>

</div>
</div>
<a class="anchor" id="a36318c4778486cc897dcddb98882ac25"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool CGridColumnTraitImage::IsCellReadOnly </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CPoint&#160;</td>
          <td class="paramname"><em>pt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Check if current image index blocks for editing of cell label. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell </td></tr>
    <tr><td class="paramname">pt</td><td>The position clicked, in client coordinates. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Is cell read only ? (true / false) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait.html#ad381f010d27330d143bdd354a048dcc4">CGridColumnTrait</a>.</p>

</div>
</div>
<a class="anchor" id="a6ba02cf22b69207ae90360ab47911c04"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int CGridColumnTraitImage::OnClickEditStart </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CPoint&#160;</td>
          <td class="paramname"><em>pt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bDblClick</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Checks if the mouse click should start the cell editor (OnEditBegin) Normally the cell needs to have focus first before cell editor can be started. </p>
<ul>
<li>Except when using ToggleSelection, and have clicked a checkbox (image)</li>
<li>Except when using SingleClickEdit, which makes it impossible to do double click</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control being clicked </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column </td></tr>
    <tr><td class="paramname">pt</td><td>The position clicked, in client coordinates. </td></tr>
    <tr><td class="paramname">bDblClick</td><td>Whether the position was double clicked </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>How should the cell editor be started (0 = No editor, 1 = Start Editor, 2 = Start Editor and block click-event) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait.html#a6d6a621ea236708a4a0aa823a6f6a9b4">CGridColumnTrait</a>.</p>

<p>Reimplemented in <a class="el" href="class_c_grid_column_trait_hyper_link.html#a4ef2ad4c00ff677fa3cffcb8e5225fe2">CGridColumnTraitHyperLink</a>.</p>

</div>
</div>
<a class="anchor" id="a5805e0700f450c1b79f86ac5bbcac172"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual CWnd* CGridColumnTraitImage::OnEditBegin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Override <a class="el" href="class_c_grid_column_trait_image.html#a5805e0700f450c1b79f86ac5bbcac172" title="Override OnEditBegin() to provide your own special cell-edit control. ">OnEditBegin()</a> to provide your own special cell-edit control. </p>
<ul>
<li>The edit control must inherit from CWnd</li>
<li>The edit control must delete itself when it looses focus</li>
<li>The edit control must send a LVN_ENDLABELEDIT message when edit is complete</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell to edit </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell to edit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the cell editor to use (NULL if cell edit is not possible) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait.html#ab39126ae5476356c25166c2f08a3d8a2">CGridColumnTrait</a>.</p>

<p>Reimplemented in <a class="el" href="class_c_grid_column_trait_hyper_link.html#a42f8ea5934d65b74c6205a1205c8b1e7">CGridColumnTraitHyperLink</a>, <a class="el" href="class_c_grid_column_trait_combo.html#ae61ea24e0da2552779646d66cc9cb93a">CGridColumnTraitCombo</a>, <a class="el" href="class_c_grid_column_trait_date_time.html#acba95b50bdbaeb960807e443f0dc3aa2">CGridColumnTraitDateTime</a>, and <a class="el" href="class_c_grid_column_trait_edit.html#acbb77050df8e1134f6840c0e4832007c">CGridColumnTraitEdit</a>.</p>

</div>
</div>
<a class="anchor" id="a64719019b986858ae317aacb20cfc93c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CWnd * CGridColumnTraitImage::OnEditBegin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CPoint&#160;</td>
          <td class="paramname"><em>pt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Overrides <a class="el" href="class_c_grid_column_trait_image.html#a5805e0700f450c1b79f86ac5bbcac172" title="Override OnEditBegin() to provide your own special cell-edit control. ">OnEditBegin()</a> to allow special handling when clicking image or checkbox. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell to edit </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell to edit </td></tr>
    <tr><td class="paramname">pt</td><td>The position clicked, in client coordinates. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the cell editor to use (NULL if cell edit is not possible) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait.html#a76ae73e830f71f63dacc7529125435a1">CGridColumnTrait</a>.</p>

<p>Reimplemented in <a class="el" href="class_c_grid_column_trait_hyper_link.html#a3211c69719930f6f4733652be54d4af5">CGridColumnTraitHyperLink</a>, <a class="el" href="class_c_grid_column_trait_combo.html#ac52a1cf430c478e4af9b78aeb02a50f2">CGridColumnTraitCombo</a>, <a class="el" href="class_c_grid_column_trait_date_time.html#a81525feb1113bc30320bd417d0c1daad">CGridColumnTraitDateTime</a>, and <a class="el" href="class_c_grid_column_trait_edit.html#aeb7493d9a5fadb6c0f6fa2281c14302a">CGridColumnTraitEdit</a>.</p>

</div>
</div>
<a class="anchor" id="a54d9460697352ceb969457c20573e932"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CWnd * CGridColumnTraitImage::OnEditBeginCheckbox </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reacts to clicking on the checkbox, and allows all selected rows to be flipped. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell to edit </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell to edit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the cell editor to use (NULL if cell edit is not possible) </dd></dl>

</div>
</div>
<a class="anchor" id="a7f5a38e7be701ac4913bc3724e32e60f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CWnd * CGridColumnTraitImage::OnEditBeginImage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_grid_list_ctrl_ex.html">CGridListCtrlEx</a> &amp;&#160;</td>
          <td class="paramname"><em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reacts to clicking on the image, and allows all selected rows to be flipped. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">owner</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row for the cell to edit </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column for the cell to edit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the cell editor to use (NULL if cell edit is not possible) </dd></dl>

</div>
</div>
<a class="anchor" id="a38f766b818c68b907c1bd50e4abd6b0c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int CGridColumnTraitImage::OnSortRows </td>
          <td>(</td>
          <td class="paramtype">LPCTSTR&#160;</td>
          <td class="paramname"><em>pszLeftValue</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPCTSTR&#160;</td>
          <td class="paramname"><em>pszRightValue</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bAscending</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compares two cell values according to specified sort order. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pszLeftValue</td><td>Left cell value </td></tr>
    <tr><td class="paramname">pszRightValue</td><td>Right cell value </td></tr>
    <tr><td class="paramname">bAscending</td><td>Perform sorting in ascending or descending order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Is left value less than right value (-1) or equal (0) or larger (1) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait_text.html#aa93469a61a6ae6f4c0ef32f7e3393b3c">CGridColumnTraitText</a>.</p>

<p>Reimplemented in <a class="el" href="class_c_grid_column_trait_date_time.html#aa95b405d67aeb3312719b018b4f193dc">CGridColumnTraitDateTime</a>.</p>

</div>
</div>
<a class="anchor" id="a3d9c0910f1579dad08f282a0c202f421"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int CGridColumnTraitImage::OnSortRows </td>
          <td>(</td>
          <td class="paramtype">const LVITEM &amp;&#160;</td>
          <td class="paramname"><em>leftItem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const LVITEM &amp;&#160;</td>
          <td class="paramname"><em>rightItem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bAscending</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compares two cell values according to checkbox state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">leftItem</td><td>Left cell item </td></tr>
    <tr><td class="paramname">rightItem</td><td>Right cell item </td></tr>
    <tr><td class="paramname">bAscending</td><td>Perform sorting in ascending or descending order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Is left value less than right value (-1) or equal (0) or larger (1) </dd></dl>

<p>Reimplemented from <a class="el" href="class_c_grid_column_trait_text.html#a2f43ad22606a31ae9965a85de17ebf26">CGridColumnTraitText</a>.</p>

<p>Reimplemented in <a class="el" href="class_c_grid_column_trait_date_time.html#ae7e519954b1e43237ba7c525e81b3247">CGridColumnTraitDateTime</a>.</p>

</div>
</div>
<a class="anchor" id="afa28415836db3443961947684a1ccde8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">LRESULT CGridColumnTraitImage::SendEndLabelEdit </td>
          <td>(</td>
          <td class="paramtype">CWnd &amp;&#160;</td>
          <td class="paramname"><em>wndListCtrl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LV_DISPINFO &amp;&#160;</td>
          <td class="paramname"><em>lvDispInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Send LV_DISPINFO structure as LVN_ENDLABELEDIT from CListCtrl to parent window. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">wndListCtrl</td><td>The list control starting edit </td></tr>
    <tr><td class="paramname">nRow</td><td>The index of the row </td></tr>
    <tr><td class="paramname">nCol</td><td>The index of the column </td></tr>
    <tr><td class="paramname">lvDispInfo</td><td>Specifies the properties of the new cell value </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Result of the SendMessage to parent window </dd></dl>

</div>
</div>
<a class="anchor" id="a1d11fbbb95d29d151fa5457f5851c5c3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::SetIconClickBeginEdit </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bValue</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configure whether the icon-click should trigger OnBeginEdit. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bValue</td><td>Enabled / Disabled </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a594374275e5efb3f41aa1989146e97b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::SetImageText </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nImageIdx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CString &amp;&#160;</td>
          <td class="paramname"><em>strImageText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bEditable</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Updates the image text for the specified image index. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">nImageIdx</td><td>The index of the image in the list control imagelist </td></tr>
    <tr><td class="paramname">strImageText</td><td>The associated cell text to the image </td></tr>
    <tr><td class="paramname">bEditable</td><td>Is the cell editable when this image is displayed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="acfdfa9226d5356b9a3c199f16d89433d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::SetSingleClickEdit </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bValue</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Should cell editor be launched on first mouse-click, or should it wait for cell to have focus first. </p>
<ul>
<li>Enabling single click editor, will make it difficult to make a double-click.</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bValue</td><td>Enabled / Disabled </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac5e39f6974b30476565f887fa8b8d139"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::SetSortImageIndex </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bValue</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Should primary sorting be based on the image index (checkbox sorting) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bValue</td><td>Enabled / Disabled </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aab4c08d50c9677aaa87d659fa34b79b8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CGridColumnTraitImage::SetToggleSelection </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bValue</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Should images (checkboxes) be flipped for all selected rows, when icon is clicked. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bValue</td><td>Enabled / Disabled </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Rolf Kristensen
Software Developer
Denmark Denmark
No Biography provided

You may also be interested in...

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web01-2016 | 2.8.180820.1 | Last Updated 16 Mar 2015
Article Copyright 2008 by Rolf Kristensen
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid