85 lines
2 KiB
C
85 lines
2 KiB
C
|
//=======================================================================
|
||
|
//
|
||
|
// Copyright (c) 2001 Microsoft Corporation. All Rights Reserved.
|
||
|
//
|
||
|
// File: customlb.h
|
||
|
//
|
||
|
// Creator: weiw
|
||
|
//
|
||
|
// Purpose: custom list box header file
|
||
|
//
|
||
|
//=======================================================================
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#define XBITMAP 20
|
||
|
|
||
|
// ATTENTION_COLOR: color for link when mouse is over
|
||
|
// NOATTENTION_COLOR: otherwise
|
||
|
//#define NOATTENTION_COLOR COLOR_GRAYTEXT
|
||
|
#define ATTENTION_COLOR COLOR_HOTLIGHT
|
||
|
|
||
|
// Foward declarations of functions included in this code module:
|
||
|
|
||
|
#define MAX_RTF_LENGTH 80 //in charaters
|
||
|
#define MAX_TITLE_LENGTH 300
|
||
|
#define MAX_DESC_LENGTH 3000 // 750 in the spec, leave room to adapt
|
||
|
#define DEF_CHECK_HEIGHT 13
|
||
|
#define SECTION_SPACING 6 //spacing between title, description and RTF
|
||
|
#define TITLE_MARGIN 6 //margin at the left and right for title
|
||
|
#define RTF_MARGIN 20 //margin at the right of rtf
|
||
|
#define MAX_RTFSHORTCUTDESC_LENGTH 140
|
||
|
|
||
|
|
||
|
class LBITEM
|
||
|
{
|
||
|
public:
|
||
|
TCHAR szTitle[MAX_TITLE_LENGTH];
|
||
|
LPTSTR pszDescription;
|
||
|
TCHAR szRTF[MAX_RTF_LENGTH];
|
||
|
UINT m_index; // index of item in gvList
|
||
|
BOOL bSelect;
|
||
|
BOOL bRTF;
|
||
|
RECT rcTitle;
|
||
|
RECT rcText;
|
||
|
RECT rcBitmap; // weiwfixcode: missleading name. the same as rcTitle
|
||
|
RECT rcRTF;
|
||
|
RECT rcItem;
|
||
|
//int xTitle; // extra len for the title hit point
|
||
|
public:
|
||
|
LBITEM()
|
||
|
{
|
||
|
ZeroMemory(szTitle, sizeof(szTitle));
|
||
|
ZeroMemory(szRTF, sizeof(szRTF));
|
||
|
ZeroMemory(&rcTitle, sizeof(rcTitle));
|
||
|
ZeroMemory(&rcText, sizeof(rcText));
|
||
|
ZeroMemory(&rcBitmap, sizeof(rcBitmap));
|
||
|
ZeroMemory(&rcRTF, sizeof(rcRTF));
|
||
|
ZeroMemory(&rcItem, sizeof(rcItem));
|
||
|
bSelect = FALSE;
|
||
|
bRTF = FALSE;
|
||
|
pszDescription = NULL;
|
||
|
}
|
||
|
|
||
|
~LBITEM()
|
||
|
{
|
||
|
if (NULL != pszDescription)
|
||
|
{
|
||
|
free(pszDescription);
|
||
|
}
|
||
|
}
|
||
|
};
|
||
|
|
||
|
typedef enum tagMYLBFOCUS {
|
||
|
MYLB_FOCUS_TITLE =1,
|
||
|
MYLB_FOCUS_RTF
|
||
|
} MYLBFOCUS;
|
||
|
|
||
|
|
||
|
const TCHAR MYLBALIVEPROP[] = TEXT("MYLBAlive");
|
||
|
|
||
|
extern HWND ghWndList;
|
||
|
extern INT gFocusItemId;
|
||
|
extern TCHAR gtszRTFShortcut[MAX_RTFSHORTCUTDESC_LENGTH];
|
||
|
|