r5sdk/r5dev/thirdparty/cppnet/cppkore/UIXListView.cpp
2022-05-21 19:58:09 +02:00

40 lines
1.1 KiB
C++

#include "stdafx.h"
#include "UIXListView.h"
#include "UIXTheme.h"
namespace UIX
{
UIX::UIXListView::UIXListView()
: ListView::ListView()
{
this->SetOwnerDraw(true);
this->SetDoubleBuffered(true);
this->SetBorderStyle(Forms::BorderStyle::None);
this->SetBackColor(UIXTheme::GetRenderer()->GetRenderColor(UIX::UIXRenderColor::BackgroundLight));
}
void UIXListView::OnHandleCreated()
{
// Initialize normally first
ListView::OnHandleCreated();
// Subclass the header
this->_Header = std::make_unique<UIXListViewHeader>((HWND)SendMessageA(this->_Handle, LVM_GETHEADER, NULL, NULL), this);
}
void UIXListView::OnDrawItem(const std::unique_ptr<DrawListViewItemEventArgs>& EventArgs)
{
// We should do nothing here...
}
void UIXListView::OnDrawSubItem(const std::unique_ptr<DrawListViewSubItemEventArgs>& EventArgs)
{
UIXTheme::GetRenderer()->RenderControlListSubItem(EventArgs, this);
}
void UIXListView::OnDrawColumnHeader(const std::unique_ptr<DrawListViewColumnHeaderEventArgs>& EventArgs)
{
UIXTheme::GetRenderer()->RenderControlListColumnHeader(EventArgs, this);
}
}