2025-11-27 16:46:48 +09:00

112 lines
3.0 KiB
C++

// ==========================================================================
// Class Specification :
// COXTreeHeader
// ==========================================================================
// Header file : COXTreeHeader.h
// Version: 9.3
// This software along with its related components, documentation and files ("The Libraries")
// is © 1994-2007 The Code Project (1612916 Ontario Limited) and use of The Libraries is
// governed by a software license agreement ("Agreement"). Copies of the Agreement are
// available at The Code Project (www.codeproject.com), as part of the package you downloaded
// to obtain this file, or directly from our office. For a copy of the license governing
// this software, you may contact us at legalaffairs@codeproject.com, or by calling 416-849-8900.
#ifndef __OXTREE_HEADER_H
#define __OXTREE_HEADER_H
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "OXDllExt.h"
#include "OXUxTheme.h"
/////////////////////////////////////////////////////////////////////////////
// COXTreeHeader window
class OX_CLASS_DECL COXTreeHeader : public CHeaderCtrl
{
// Construction
public:
COXTreeHeader();
// --- In :
// --- Out :
// --- Returns:
// --- Effect : constructor
// Attributes
public:
protected:
int m_nSortCol;
int m_nSortOrder;
BOOL m_bLButtonDown;
// Operations
public:
inline int GetSortCol() { return m_nSortCol; }
// --- In :
// --- Out :
// --- Returns: number of column the tree control is sorted on
// --- Effect :
inline int GetSortOrder() { return m_nSortOrder; }
// --- In :
// --- Out :
// --- Returns: sorting order: 1 - ascending
// 0 - none
// -1 - descending
// --- Effect :
BOOL SortColumn(int nCol, int nSortOrder);
// --- In : nCol - number of column to sort on
// --- Out : nSortOrder - sorting order: 1 - ascending
// 0 - none
// -1 - descending
// --- Returns: TRUE if success, or FALSE otherwise
// --- Effect :
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(COXTreeHeader)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~COXTreeHeader();
// --- In :
// --- Out :
// --- Returns:
// --- Effect : destructor
protected:
virtual void DrawItem( LPDRAWITEMSTRUCT lpDrawItemStruct );
virtual void PreSubclassWindow();
DECLARE_DYNAMIC(COXTreeHeader)
// Generated message map functions
protected:
COXUxTheme m_UxTheme;
//{{AFX_MSG(COXTreeHeader)
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnDestroy();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
static LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam);
static HHOOK m_hMouseHook;
static HWND m_hwndPrevMouseMoveWnd;
public:
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
};
/////////////////////////////////////////////////////////////////////////////
#endif