ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

treeview.c File Reference
#include "config.h"
#include "wine/port.h"
#include <assert.h>
#include <ctype.h>
#include <stdarg.h>
#include <string.h>
#include <limits.h>
#include <stdlib.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "uxtheme.h"
#include "vssym32.h"
#include "wine/unicode.h"
#include "wine/debug.h"

Go to the source code of this file.

Data Structures

struct  TREEVIEW_ITEM
struct  TREEVIEW_INFO

Defines

#define NONAMELESSUNION
#define NONAMELESSSTRUCT
#define KEY_DELAY   450
#define TV_HSCROLL   0x01 /* treeview too large to fit in window */
#define TV_VSCROLL   0x02 /* (horizontal/vertical) */
#define TV_LDRAG   0x04 /* Lbutton pushed to start drag */
#define TV_LDRAGGING   0x08 /* Lbutton pushed, mouse moved. */
#define TV_RDRAG   0x10 /* ditto Rbutton */
#define TV_RDRAGGING   0x20
#define TV_EDIT_TIMER   2
#define TV_EDIT_TIMER_SET   2
#define TEXT_CALLBACK_SIZE   260
#define TREEVIEW_LEFT_MARGIN   8
#define MINIMUM_INDENT   19
#define CALLBACK_MASK_ALL   (TVIF_TEXT|TVIF_CHILDREN|TVIF_IMAGE|TVIF_SELECTEDIMAGE)
#define STATEIMAGEINDEX(x)   (((x) >> 12) & 0x0f)
#define OVERLAYIMAGEINDEX(x)   (((x) >> 8) & 0x0f)
#define ISVISIBLE(x)   ((x)->visibleOrder >= 0)
#define GETLINECOLOR(x)   ((x) == CLR_DEFAULT ? comctl32_color.clrGrayText : (x))
#define GETBKCOLOR(x)   ((x) == CLR_NONE ? comctl32_color.clrWindow : (x))
#define GETTXTCOLOR(x)   ((x) == CLR_NONE ? comctl32_color.clrWindowText : (x))
#define GETINSCOLOR(x)   ((x) == CLR_DEFAULT ? comctl32_color.clrBtnText : (x))
#define TVHEIGHT_MIN   16
#define TVHEIGHT_FONT_ADJUST   3 /* 2 for focus border + 1 for margin some apps assume */
#define SCROLL_ENTRY(dir, code)   { ((dir) << 7) | (code) }

Typedefs

typedef VOID(* TREEVIEW_ItemEnumFunc )(TREEVIEW_INFO *, TREEVIEW_ITEM *, LPVOID)

Enumerations

enum  StateListType { OriginInternal, OriginUser }

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (treeview)
static VOID TREEVIEW_Invalidate (const TREEVIEW_INFO *, const TREEVIEW_ITEM *)
static LRESULT TREEVIEW_DoSelectItem (TREEVIEW_INFO *, INT, HTREEITEM, INT)
static VOID TREEVIEW_SetFirstVisible (TREEVIEW_INFO *, TREEVIEW_ITEM *, BOOL)
static LRESULT TREEVIEW_EnsureVisible (TREEVIEW_INFO *, HTREEITEM, BOOL)
static LRESULT TREEVIEW_RButtonUp (const TREEVIEW_INFO *, const POINT *)
static LRESULT TREEVIEW_EndEditLabelNow (TREEVIEW_INFO *infoPtr, BOOL bCancel)
static VOID TREEVIEW_UpdateScrollBars (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_HScroll (TREEVIEW_INFO *, WPARAM)
static void TREEVIEW_VerifyTree (TREEVIEW_INFO *infoPtr)
static TREEVIEW_INFOTREEVIEW_GetInfoPtr (HWND hwnd)
static int TREEVIEW_GetItemIndex (const TREEVIEW_INFO *infoPtr, HTREEITEM handle)
static BOOL item_changed (const TREEVIEW_ITEM *tiOld, const TREEVIEW_ITEM *tiNew, const TVITEMEXW *tvChange)
static BOOL TREEVIEW_ValidItem (const TREEVIEW_INFO *infoPtr, HTREEITEM handle)
static HFONT TREEVIEW_CreateBoldFont (HFONT hOrigFont)
static HFONT TREEVIEW_CreateUnderlineFont (HFONT hOrigFont)
static HFONT TREEVIEW_FontForItem (const TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *item)
static const charTREEVIEW_ItemName (const TREEVIEW_ITEM *item)
static BOOL TREEVIEW_IsChildOf (const TREEVIEW_ITEM *parent, const TREEVIEW_ITEM *child)
static TREEVIEW_ITEMTREEVIEW_GetLastListItem (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static TREEVIEW_ITEMTREEVIEW_GetPrevListItem (const TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *tvItem)
static TREEVIEW_ITEMTREEVIEW_GetNextListItem (const TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *tvItem)
static TREEVIEW_ITEMTREEVIEW_GetListItem (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, LONG count)
static INT get_notifycode (const TREEVIEW_INFO *infoPtr, INT code)
static BOOL TREEVIEW_SendRealNotify (const TREEVIEW_INFO *infoPtr, WPARAM wParam, LPNMHDR pnmh)
static BOOL TREEVIEW_SendSimpleNotify (const TREEVIEW_INFO *infoPtr, UINT code)
static VOID TREEVIEW_TVItemFromItem (const TREEVIEW_INFO *infoPtr, UINT mask, TVITEMW *tvItem, TREEVIEW_ITEM *item)
static BOOL TREEVIEW_SendTreeviewNotify (const TREEVIEW_INFO *infoPtr, UINT code, UINT action, UINT mask, HTREEITEM oldItem, HTREEITEM newItem)
static BOOL TREEVIEW_SendTreeviewDnDNotify (const TREEVIEW_INFO *infoPtr, UINT code, HTREEITEM dragItem, POINT pt)
static BOOL TREEVIEW_SendCustomDrawNotify (const TREEVIEW_INFO *infoPtr, DWORD dwDrawStage, HDC hdc, RECT rc)
static BOOL TREEVIEW_SendCustomDrawItemNotify (const TREEVIEW_INFO *infoPtr, HDC hdc, TREEVIEW_ITEM *item, UINT uItemDrawState, NMTVCUSTOMDRAW *nmcdhdr)
static BOOL TREEVIEW_BeginLabelEditNotify (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *editItem)
static void TREEVIEW_UpdateDispInfo (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, UINT mask)
static BOOL TREEVIEW_HasChildren (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static INT TREEVIEW_NotifyFormat (TREEVIEW_INFO *infoPtr, HWND hwndFrom, UINT nCommand)
static VOID TREEVIEW_ComputeItemInternalMetrics (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static VOID TREEVIEW_ComputeTextWidth (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, HDC hDC)
static VOID TREEVIEW_ComputeItemRect (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static void TREEVIEW_RecalculateVisibleOrder (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *start)
static VOID TREEVIEW_UpdateSubTree (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *root)
static TREEVIEW_ITEMTREEVIEW_AllocateItem (const TREEVIEW_INFO *infoPtr)
static void TREEVIEW_FreeItem (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static void TREEVIEW_InsertBefore (TREEVIEW_ITEM *newItem, TREEVIEW_ITEM *sibling, TREEVIEW_ITEM *parent)
static void TREEVIEW_InsertAfter (TREEVIEW_ITEM *newItem, TREEVIEW_ITEM *sibling, TREEVIEW_ITEM *parent)
static BOOL TREEVIEW_DoSetItemT (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, const TVITEMEXW *tvItem, BOOL isW)
static LRESULT TREEVIEW_InsertItemT (TREEVIEW_INFO *infoPtr, const TVINSERTSTRUCTW *ptdi, BOOL isW)
static void TREEVIEW_RemoveItem (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static void TREEVIEW_RemoveAllChildren (TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *parentItem)
static void TREEVIEW_UnlinkItem (const TREEVIEW_ITEM *item)
static void TREEVIEW_RemoveTree (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_DeleteItem (TREEVIEW_INFO *infoPtr, HTREEITEM item)
static LRESULT TREEVIEW_SetRedraw (TREEVIEW_INFO *infoPtr, WPARAM wParam)
static LRESULT TREEVIEW_GetIndent (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetIndent (TREEVIEW_INFO *infoPtr, UINT newIndent)
static LRESULT TREEVIEW_GetToolTips (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetToolTips (TREEVIEW_INFO *infoPtr, HWND hwndTT)
static LRESULT TREEVIEW_SetUnicodeFormat (TREEVIEW_INFO *infoPtr, BOOL fUnicode)
static LRESULT TREEVIEW_GetUnicodeFormat (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_GetScrollTime (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetScrollTime (TREEVIEW_INFO *infoPtr, UINT uScrollTime)
static LRESULT TREEVIEW_GetImageList (const TREEVIEW_INFO *infoPtr, WPARAM wParam)
static UINT TREEVIEW_NaturalHeight (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetImageList (TREEVIEW_INFO *infoPtr, UINT type, HIMAGELIST himlNew)
static LRESULT TREEVIEW_SetItemHeight (TREEVIEW_INFO *infoPtr, INT newHeight)
static LRESULT TREEVIEW_GetItemHeight (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_GetFont (const TREEVIEW_INFO *infoPtr)
static INT CALLBACK TREEVIEW_ResetTextWidth (LPVOID pItem, LPVOID unused)
static LRESULT TREEVIEW_SetFont (TREEVIEW_INFO *infoPtr, HFONT hFont, BOOL bRedraw)
static LRESULT TREEVIEW_GetLineColor (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetLineColor (TREEVIEW_INFO *infoPtr, COLORREF color)
static LRESULT TREEVIEW_GetTextColor (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetTextColor (TREEVIEW_INFO *infoPtr, COLORREF color)
static LRESULT TREEVIEW_GetBkColor (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetBkColor (TREEVIEW_INFO *infoPtr, COLORREF newColor)
static LRESULT TREEVIEW_GetInsertMarkColor (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_SetInsertMarkColor (TREEVIEW_INFO *infoPtr, COLORREF color)
static LRESULT TREEVIEW_SetInsertMark (TREEVIEW_INFO *infoPtr, BOOL wParam, HTREEITEM item)
static LRESULT TREEVIEW_GetItemRect (const TREEVIEW_INFO *infoPtr, BOOL fTextRect, LPRECT lpRect)
static LRESULT TREEVIEW_GetVisibleCount (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_GetItemT (const TREEVIEW_INFO *infoPtr, LPTVITEMEXW tvItem, BOOL isW)
static LRESULT TREEVIEW_SetItemT (TREEVIEW_INFO *infoPtr, const TVITEMEXW *tvItem, BOOL isW)
static LRESULT TREEVIEW_GetItemState (const TREEVIEW_INFO *infoPtr, HTREEITEM item, UINT mask)
static LRESULT TREEVIEW_GetNextItem (const TREEVIEW_INFO *infoPtr, UINT which, HTREEITEM item)
static LRESULT TREEVIEW_GetCount (const TREEVIEW_INFO *infoPtr)
static VOID TREEVIEW_ToggleItemState (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static void TREEVIEW_DrawItemLines (const TREEVIEW_INFO *infoPtr, HDC hdc, const TREEVIEW_ITEM *item)
static void TREEVIEW_DrawItem (const TREEVIEW_INFO *infoPtr, HDC hdc, TREEVIEW_ITEM *item)
static void TREEVIEW_FillBkgnd (const TREEVIEW_INFO *infoPtr, HDC hdc, const RECT *rc)
static LRESULT TREEVIEW_EraseBackground (const TREEVIEW_INFO *infoPtr, HDC hdc)
static void TREEVIEW_Refresh (TREEVIEW_INFO *infoPtr, HDC hdc, const RECT *rc)
static void TREEVIEW_InvalidateItem (const TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *item)
static LRESULT TREEVIEW_Paint (TREEVIEW_INFO *infoPtr, HDC hdc_ref)
static LRESULT TREEVIEW_PrintClient (TREEVIEW_INFO *infoPtr, HDC hdc, DWORD options)
static INT WINAPI TREEVIEW_CallBackCompare (const TREEVIEW_ITEM *first, const TREEVIEW_ITEM *second, const TVSORTCB *pCallBackSort)
static INT WINAPI TREEVIEW_SortOnName (TREEVIEW_ITEM *first, TREEVIEW_ITEM *second, const TREEVIEW_INFO *infoPtr)
static INT TREEVIEW_CountChildren (const TREEVIEW_ITEM *item)
static HDPA TREEVIEW_BuildChildDPA (const TREEVIEW_ITEM *item)
static LRESULT TREEVIEW_Sort (TREEVIEW_INFO *infoPtr, HTREEITEM parent, LPTVSORTCB pSort)
static LRESULT TREEVIEW_SortChildrenCB (TREEVIEW_INFO *infoPtr, LPTVSORTCB pSort)
static LRESULT TREEVIEW_SortChildren (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static BOOL TREEVIEW_SendExpanding (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, UINT action)
static VOID TREEVIEW_SendExpanded (const TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, UINT action)
static BOOL TREEVIEW_Collapse (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, BOOL bRemoveChildren, BOOL bUser)
static BOOL TREEVIEW_Expand (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, BOOL partial, BOOL user)
static void TREEVIEW_SingleExpand (TREEVIEW_INFO *infoPtr, HTREEITEM selection, HTREEITEM item)
static BOOL TREEVIEW_Toggle (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item, BOOL user)
static VOID TREEVIEW_ExpandAll (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static LRESULT TREEVIEW_ExpandMsg (TREEVIEW_INFO *infoPtr, UINT flag, HTREEITEM item)
static TREEVIEW_ITEMTREEVIEW_HitTestPoint (const TREEVIEW_INFO *infoPtr, POINT pt)
static LRESULT TREEVIEW_HitTest (const TREEVIEW_INFO *infoPtr, LPTVHITTESTINFO lpht)
static LRESULT TREEVIEW_GetEditControl (const TREEVIEW_INFO *infoPtr)
static LRESULT CALLBACK TREEVIEW_Edit_SubclassProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
static LRESULT TREEVIEW_Command (TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static HWND TREEVIEW_EditLabel (TREEVIEW_INFO *infoPtr, HTREEITEM hItem)
static LRESULT TREEVIEW_HandleTimer (TREEVIEW_INFO *infoPtr, WPARAM wParam)
static LRESULT TREEVIEW_TrackMouse (const TREEVIEW_INFO *infoPtr, POINT pt)
static LRESULT TREEVIEW_LButtonDoubleClick (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static LRESULT TREEVIEW_LButtonDown (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static LRESULT TREEVIEW_RButtonDown (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static LRESULT TREEVIEW_CreateDragImage (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static LRESULT TREEVIEW_SelectItem (TREEVIEW_INFO *infoPtr, INT wParam, HTREEITEM item)
static INT TREEVIEW_ProcessLetterKeys (TREEVIEW_INFO *infoPtr, WPARAM charCode, LPARAM keyData)
static LRESULT TREEVIEW_VScroll (TREEVIEW_INFO *infoPtr, WPARAM wParam)
static LRESULT TREEVIEW_MouseWheel (TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static void TREEVIEW_InitCheckboxes (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_Create (HWND hwnd, const CREATESTRUCTW *lpcs)
static LRESULT TREEVIEW_Destroy (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_ScrollKeyDown (TREEVIEW_INFO *infoPtr, WPARAM key)
static LRESULT TREEVIEW_KeyDown (TREEVIEW_INFO *infoPtr, WPARAM wParam)
static LRESULT TREEVIEW_MouseLeave (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_MouseMove (TREEVIEW_INFO *infoPtr, LPARAM lParam)
static BOOL TREEVIEW_NCPaint (const TREEVIEW_INFO *infoPtr, HRGN region, LPARAM lParam)
static LRESULT TREEVIEW_Notify (const TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static LRESULT TREEVIEW_Size (TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static void TREEVIEW_ResetImageStateIndex (TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
static LRESULT TREEVIEW_StyleChanged (TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static LRESULT TREEVIEW_SetCursor (const TREEVIEW_INFO *infoPtr, WPARAM wParam, LPARAM lParam)
static LRESULT TREEVIEW_SetFocus (TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_KillFocus (const TREEVIEW_INFO *infoPtr)
static LRESULT TREEVIEW_ThemeChanged (const TREEVIEW_INFO *infoPtr)
static LRESULT WINAPI TREEVIEW_WindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
VOID TREEVIEW_Register (void)
VOID TREEVIEW_Unregister (void)
static void TREEVIEW_VerifyChildren (TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *item)
static void TREEVIEW_VerifyItemCommon (TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *item)
static void TREEVIEW_VerifyItem (TREEVIEW_INFO *infoPtr, const TREEVIEW_ITEM *item)
static void TREEVIEW_VerifyRoot (TREEVIEW_INFO *infoPtr)

Variables

static const WCHAR themeClass [] = { 'T','r','e','e','v','i','e','w',0 }

Generated on Mon May 28 2012 04:43:15 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.