Pangya Refresh UI Library

This topic is for research around the Refresh UI library present in ProjectG.

First, we assume it’s called “Refresh”, as the prefix of every single structure is RF and the folder the library includes from is d:\build\working\pubs\projectg_gb\code\client\refresh\include\.

Something special about this library is that usually everything inside ProjectG is encrypted and obfuscated, but all (or most) of the libraries symbols are accessible even in a GameGuard-secured version.

Future goals:

  • Getting the vftables for the structures so we build actual structures
  • Reimplement the whole UI library with the information we have

Here’s a list of all 425 structures/function signatures I was able to extract from the executable:


EventFunctorBase

EventFunctorBase::~EventFunctorBase(void)

RFAnimationObject

RFAnimationObject::asset(void)
RFAnimationObject::name(void)
RFAnimationObject::RFAnimationObject(RFAnimation *)

RFAnimButton

RFAnimButton::GetAnimName(int)
RFAnimButton::LoadAnimation(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFAnimButton::OnDestroy(void)
RFAnimButton::OnEnabled(bool)
RFAnimButton::OnMouseEnter(void)
RFAnimButton::RFAnimButton(RFAnimButton const &)
RFAnimButton::SetAnimation(RFDirector *)

RFAnimFrame

RFAnimFrame::GetAnimMatrix(void)
RFAnimFrame::IsPlaying(void)
RFAnimFrame::operator=(RFAnimFrame const &)
RFAnimFrame::PlaySfx(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFAnimFrame::Render(RFTexture *,float)
RFAnimFrame::RFAnimFrame(RFAnimFrame const &)

RFBezierSpline

RFBezierSpline::GenerateBezierPoints(RFVector2 const &,RFVector2 const &,RFVector2 const &,RFVector2 const &)
RFBezierSpline::GetBezierPoint(float,RFVector2 const &,RFVector2 const &,RFVector2 const &,RFVector2 const &)

RFButton

RFButton::ButtonReset(void)
RFButton::ChangeDownButtonImage(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>>)
RFButton::Create(WndBaseStruct *,RFWnd *)
RFButton::GetPushSound(void)
RFButton::OnDestroy(void)
RFButton::OnEnabled(bool)
RFButton::OnMouseEnter(void)
RFButton::OnStateChanged(void)
RFButton::PreInitialize(void)
RFButton::RFButton(void)
RFButton::SetState(RFButton::RFBUTTON_STATE)

RFCheck

RFCheck::Create(WndBaseStruct *,RFWnd *)
RFCheck::GetTypeName(void)
RFCheck::OnDestroy(void)
RFCheck::OnLButtonUp(MouseEventArgs &)
RFCheck::operator=(RFCheck const &)
RFCheck::PreInitialize(void)

RFComboBox

RFComboBox::Create(WndBaseStruct *,RFWnd *)
RFComboBox::GetItemCount(void)
RFComboBox::GetText(int)
RFComboBox::IsValidItemidx(int)
RFComboBox::OnListBeginDrawItem(EventArgs &)
RFComboBox::OnListEndDrawItem(EventArgs &)
RFComboBox::OnListSelChanged(EventArgs &)
RFComboBox::PreInitialize(void)
RFComboBox::RFComboBox(RFComboBox const &)
RFComboBox::RFComboBox(void)
RFComboBox::SetCurSel(int)
RFComboBox::~RFComboBox(void)

RFDirector

RFDirector::End(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFDirector::FindScene(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFDirector::GetAnimation(int)
RFDirector::GetAnimation(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFDirector::GetAnimationCount(void)
RFDirector::GetInterface(void)
RFDirector::GetVersion(void)
RFDirector::IsSceneExist(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFDirector::LoadAnimationInDirect(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFDirector::Loop(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,bool)
RFDirector::RFDirector(void)
RFDirector::SendFinishEvent(RFAnimation *)
RFDirector::UnloadAllAnimation(void)

RFEdit

RFEdit::AddCaretLocate(int)
RFEdit::CleanupPasswordText(void)
RFEdit::DeleteCharAtCaretPos(void)
RFEdit::DrawCaret(RFVector2 const &,float)
RFEdit::EnableCopyAndPaste(bool)
RFEdit::GetCaretLocate(void)
RFEdit::GetCaretPos(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,bool)
RFEdit::GetColor(void)
RFEdit::GetLimitText(void)
RFEdit::GetPadding(void)
RFEdit::GetTextHAlignPos(RFRect const &,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFEdit::GetTypeName(void)
RFEdit::InsertStringAtCaretPos(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFEdit::IsFocusable(void)
RFEdit::KeyDownArrow(int)
RFEdit::KeyDownHome(void)
RFEdit::KeyDownReturn(KeyEventArgs &)
RFEdit::KeyDownSelectStart(void)
RFEdit::OnDestroy(void)
RFEdit::OnLButtonDown(MouseEventArgs &)
RFEdit::OnUpdate(UpdateEventArgs &)
RFEdit::operator=(RFEdit const &)
RFEdit::PreInitialize(void)
RFEdit::ResetCaretBlink(void)
RFEdit::ResetSelection(void)
RFEdit::RFEdit(RFEdit const &)
RFEdit::SetLimitText(int)
RFEdit::SetStyle(uint)

RFEvent

RFEvent::Cleanup(void)
RFEvent::ClearSubscribers(void)
RFEvent::operator()
RFEvent::operator=(RFEvent const &)
RFEvent::RFEvent(RFEvent const &)
RFEvent::~RFEvent(void)

RFEventHandler

RFEventHandler::ClearEventSubscribers(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFEventHandler::IsEventPresent(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFEventHandler::operator=(RFEventHandler const &)
RFEventHandler::RemoveEvent(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFEventHandler::ToString(void)

RFInterface

RFInterface::FClose(void *)
RFInterface::FOpen(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFInterface::FRead(void *,void *,int)
RFInterface::FSeek(void *,int,int)
RFInterface::FTell(void *)
RFInterface::OnInputMethodStateChanged(InputMethodStateTypes::Type)
RFInterface::OnKeyboardAcquired(bool)
RFInterface::RFInterface(RFInterface const &)
RFInterface::RFInterface(void)
RFInterface::TranslateText(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)

RFInterpolation

RFInterpolation::~RFInterpolation(void)

RFLabel

RFLabel::FitToContent(void)
RFLabel::GetHAlign(void)
RFLabel::GetLabel(void)
RFLabel::GetOutlineColor(void)
RFLabel::GetPadding(void)
RFLabel::GetStyle(void)
RFLabel::OnDraw(void)
RFLabel::PreInitialize(void)
RFLabel::RFLabel(RFLabel const &)
RFLabel::SetLabel(int,bool)
RFLabel::SetLabel(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFLabel::SetTextTrimmingType(TextTrimmingTypes::Type)
RFLabel::SetVAlign(VertAlignTypes::Type)
RFLabel::ToString(void)

RFLabelButton

RFLabelButton::GetLabel(void)
RFLabelButton::operator=(RFLabelButton const &)
RFLabelButton::RFLabelButton(RFLabelButton const &)
RFLabelButton::SetLabel(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)

RFList

RFList::ButtonDown_Impl(MouseEventArgs &)
RFList::DeleteItem(void *)
RFList::GetAllItemsWidth(void)
RFList::GetColumnCount(void)
RFList::GetItemCount(void)
RFList::GetItemUnderCursor(void)
RFList::GetListItem(int)
RFList::GetOrientation(void)
RFList::GetSelItemCount(void)
RFList::InsertWindowItem(RFWnd *,uint)
RFList::ItemClipEnable(bool)
RFList::MultipleSelectionProc(RFListItemBase *,MouseEventArgs &)
RFList::OnDraw(void)
RFList::OnItemAdded(void)
RFList::OnItemRemoved(void)
RFList::OnLButtonDown(MouseEventArgs &)
RFList::OnMouseEnter(void)
RFList::OnRButtonDown(MouseEventArgs &)
RFList::OnUpdate(UpdateEventArgs &)
RFList::PreInitialize(void)
RFList::ReindexItems(void)
RFList::RelaseAllSelectedItem(void)
RFList::RFList(RFList const &)
RFList::SetItemData(int,void *)
RFList::SetOrientation(OrientationTypes::Type)
RFList::SetPadding(RFRect const &)
RFList::UnselectItem(int,bool)
RFList::UpdateItemPosition(void)
RFList::UpdateSelectList(void)

RFListSC

RFListSC::GetHScrollBar(void)
RFListSC::GetScrollSize(void)
RFListSC::GetVScrollBar(void)
RFListSC::OnItemAdded(void)
RFListSC::OnItemRemoved(void)
RFListSC::OnMouseWheel(MouseEventArgs &)
RFListSC::PreInitialize(void)
RFListSC::ScrollToBottom(void)
RFListSC::~RFListSC(void)

RFManager

RFManager::ActivateWindow(RFWnd *)
RFManager::CreateChild(RFXmlLoader &,RFWnd *,WndBaseStruct *)
RFManager::CreateDesktopA(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,RFWnd *)
RFManager::CreateDesktopW(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,RFWnd *)
RFManager::DeleteAllWnd(void)
RFManager::DeleteDesktop(void)
RFManager::FindActiveFocusableWnd(RFWnd *)
RFManager::FindWnd(float,float)
RFManager::FreezeInputs(bool)
RFManager::GetCapturedWindow(void)
RFManager::GetCompatibleControlName(WndType)
RFManager::GetFocusWnd(void)
RFManager::GetGlobalPadding(void)
RFManager::GetInputTargetWindow(void)
RFManager::GetInstance(void)
RFManager::GetInstancePtr(void)
RFManager::GetLastActiveModal(void)
RFManager::GetRenderer(void)
RFManager::GetVersion(void)
RFManager::GetWnd(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFManager::HitTest(RFVector2 const &,bool)
RFManager::InjectKeyDown(uint,uint)
RFManager::InjectLButtonDblClick(float,float)
RFManager::InjectLButtonDown(float,float)
RFManager::InjectMouseMove(float,float)
RFManager::InjectMouseWheel(int,float,float)
RFManager::InjectRButtonDown(float,float)
RFManager::IsGlobalPaddingEnabled(void)
RFManager::IsModalExist(void)
RFManager::NotifyWindowDeactivated(RFWnd *)
RFManager::NotifyWindowLostFocus(RFWnd *)
RFManager::PostGlobalHyperLinkEnterEvent(RFWnd *,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFManager::RegisterDesktop(RFWnd *)
RFManager::RFManager(void)
RFManager::SetCapturedWindow(RFWnd *)
RFManager::SetGlobalPadding(RFRect const &)
RFManager::SetInterface(RFInterface *)
RFManager::SetRenderer(RFRenderer *)
RFManager::SetRenderer(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,void *)
RFManager::SetResolution(RFSize const &)
RFManager::SetTopMost(RFWnd *)
RFManager::UpdateInputMethod(void)
RFManager::~RFManager(void)

RFMatrix

RFMatrix::operator float *(void)
RFMatrix::operator()
RFMatrix::operator*(RFMatrix const &)
RFMatrix::operator*=(RFMatrix const &)
RFMatrix::operator=(RFMatrix const &)
RFMatrix::RFMatrix(void)

RFMatrixIdentity

RFMatrixIdentity(RFMatrix *)

RFMatrixScaling

RFMatrixScaling(RFMatrix *,float,float,float)

RFMatrixTransform2DPoint

RFMatrixTransform2DPoint(RFVector2 *,RFVector2 const *,RFMatrix const *)

RFMatrixTransformation2D

RFMatrixTransformation2D(RFMatrix *,RFVector2 const *,RFVector2 const *,float)

RFMatrixTranslation

RFMatrixTranslation(RFMatrix *,float,float,float)

RFObject

RFObject::RFObject(RFObject const &)
RFObject::~RFObject(void)

RFPicture

RFPicture::Create(WndBaseStruct *,RFWnd *)
RFPicture::GetDirector(void)
RFPicture::GetTextureSize(void)
RFPicture::GetTypeName(void)
RFPicture::LoadResource(void)
RFPicture::OnDraw(void)
RFPicture::RFPicture(void)
RFPicture::SetPicture(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFPicture::UnloadAnimation(void)

RFPoint

RFPoint::operator+=(RFPoint const &)
RFPoint::RFPoint(int,int)
RFPoint::RFPoint(void)

RFProgress

RFProgress::Create(WndBaseStruct *,RFWnd *)
RFProgress::GetProgress(void)
RFProgress::GetTypeName(void)
RFProgress::LoadResource(void)
RFProgress::ToString(void)
RFProgress::~RFProgress(void)

RFRect

RFRect::InflateRect(float,float)
RFRect::LT(void)
RFRect::MoveRect(float,float)
RFRect::operator*=(float)
RFRect::operator+(RFRect const &)
RFRect::operator/(RFRect const &)
RFRect::RB(void)
RFRect::RFRect(float,float,float,float)
RFRect::RFRect(RFRect const &)
RFRect::RFRect(void)
RFRect::set(float,float,float,float)
RFRect::Width(void)
RFRect::XY(void)

RFRenderer

RFRenderer::DeleteTexture(RFTexture *)
RFRenderer::Draw(RFTexture *,RFVector2 const &,RFSize const &,float,float,TileModeTypes::Type const &)
RFRenderer::FillRectangle(uint,float,float,float,float,float)
RFRenderer::~RFRenderer(void)

RFScrollBar

RFScrollBar::Create(WndBaseStruct *,RFWnd *)
RFScrollBar::EnableSmoothScroll(bool)
RFScrollBar::GetScrollPos(void)
RFScrollBar::OnEnabled(bool)
RFScrollBar::OnLayoutChanged(uint)
RFScrollBar::OnLButtonUp(MouseEventArgs &)
RFScrollBar::OnLTButClicked(EventArgs &)
RFScrollBar::OnRBButClicked(EventArgs &)
RFScrollBar::OnUpdate(UpdateEventArgs &)
RFScrollBar::operator=(RFScrollBar const &)
RFScrollBar::PreInitialize(void)
RFScrollBar::RFScrollBar(RFScrollBar const &)
RFScrollBar::ScrollToBottom(void)
RFScrollBar::SetScrollPos(int)

RFSingleton

RFSingleton<RFManager>::GetInstance(void)
RFSingleton<RFManager>::GetInstancePtr(void)
RFSingleton<RFWindowFactoryManager>::operator=(RFSingleton<RFWindowFactoryManager> const &)
RFSingleton<RFWindowFactoryManager>::RFSingleton<RFWindowFactoryManager>(void)
RFSingleton<RFWindowFactoryManager>::~RFSingleton<RFWindowFactoryManager>(void)

RFSize

RFSize::operator=(RFSize const &)
RFSize::RFSize(void)

RFSlider

RFSlider::Create(WndBaseStruct *,RFWnd *)
RFSlider::GetTypeName(void)
RFSlider::OnLButtonDown(MouseEventArgs &)
RFSlider::OnLTButClicked(EventArgs &)
RFSlider::OnMouseMove(MouseEventArgs &)
RFSlider::OnRBButClicked(EventArgs &)
RFSlider::PositionToLevel(RFVector2 const &)
RFSlider::PreInitialize(void)
RFSlider::RFSlider(void)

RFStackPanel

RFStackPanel::Initialize(void)
RFStackPanel::OnLayoutChanged(uint)
RFStackPanel::operator=(RFStackPanel const &)
RFStackPanel::RFStackPanel(RFStackPanel const &)
RFStackPanel::StackUp(void)
RFStackPanel::StackUp_Impl(void)
RFStackPanel::StackUpHorizontally(void)
RFStackPanel::StackUpVertically(void)
RFStackPanel::~RFStackPanel(void)

RFTextArea

RFTextArea::AddText(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFTextArea::AutoFit(bool)
RFTextArea::DrawCaret(float)
RFTextArea::FitToContent(bool)
RFTextArea::GetPadding(void)
RFTextArea::HitTestHyperLink(MouseEventArgs &,bool)
RFTextArea::OnChar(CharEventArgs &)
RFTextArea::OnLButtonDown(MouseEventArgs &)
RFTextArea::OnRButtonDown(MouseEventArgs &)
RFTextArea::OnRButtonUp(MouseEventArgs &)
RFTextArea::OnUpdate(UpdateEventArgs &)
RFTextArea::ResetCaretBlink(void)
RFTextArea::SetHAlign(HorzAlignTypes::Type)
RFTextArea::SetHyperLinkFontInfo(FontInfo const &)
RFTextArea::SetShadowColor(uint)

RFTextAreaSC

RFTextAreaSC::AddPlainText(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFTextAreaSC::AddText(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFTextAreaSC::GetHScrollBar(void)
RFTextAreaSC::HitTest(RFVector2 const &,bool)
RFTextAreaSC::IsScrollBarAvailable(RFSCROLLBAR_TYPE)
RFTextAreaSC::LockScrollbar(RFSCROLLBAR_TYPE,bool)
RFTextAreaSC::OnUpdate(UpdateEventArgs &)
RFTextAreaSC::OnVScrollPosChanged(EventArgs &)
RFTextAreaSC::operator=(RFTextAreaSC const &)
RFTextAreaSC::RFTextAreaSC(void)
RFTextAreaSC::ScrollToBottom(void)
RFTextAreaSC::SetText(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFTextAreaSC::StickToBottom(bool)
RFTextAreaSC::~RFTextAreaSC(void)

RFTexture

RFTexture::RFTexture(void)

RFVector2

RFVector2::operator*=(float)
RFVector2::operator+=(RFVector2 const &)
RFVector2::operator-(RFVector2 const &)
RFVector2::operator-=(RFVector2 const &)
RFVector2::operator/(float)
RFVector2::operator/(RFVector2 const &)
RFVector2::operator=(RFVector2 const &)
RFVector2::operator=/(float)
RFVector2::operator==(RFVector2 const &)
RFVector2::RFVector2(float,float)
RFVector2::set(float,float)

RFVisualEffect

RFVisualEffect::RFVisualEffect(RFVisualEffect const &)
RFVisualEffect::~RFVisualEffect(void)

RFWindowFactory

RFWindowFactory::GetTypeName(void)
RFWindowFactory::~RFWindowFactory(void)

RFWindowFactoryManager

RFWindowFactoryManager::AddFactory(RFWindowFactory *)
RFWindowFactoryManager::operator=(RFWindowFactoryManager const &)
RFWindowFactoryManager::RemoveFactory(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFWindowFactoryManager::RFWindowFactoryManager(RFWindowFactoryManager const &)

RFWindowModifier

RFWindowModifier::GetAlpha(void)
RFWindowModifier::IsVisible(void)
RFWindowModifier::operator=(RFWindowModifier const &)
RFWindowModifier::RFWindowModifier(RFWindowModifier const &)
RFWindowModifier::RFWindowModifier(void)
RFWindowModifier::~RFWindowModifier(void)

RFWnd

RFWnd::Activate(void)
RFWnd::Close(RFWNDCLOSESTATE)
RFWnd::Deactivate(void)
RFWnd::DeleteAllChildren(void)
RFWnd::DeleteChild(RFWnd *)
RFWnd::Destroy(void)
RFWnd::FindWnd(float,float)
RFWnd::GetActiveChild(void)
RFWnd::GetAnchor(void)
RFWnd::GetAnchorValue(void)
RFWnd::GetCloseState(void)
RFWnd::GetControlSuper(void)
RFWnd::GetMgr(void)
RFWnd::GetModifier(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFWnd::GetPos(void)
RFWnd::GetPriority(void)
RFWnd::GetRC(void)
RFWnd::GetReverseWindowList(void)
RFWnd::GetScreenPos(void)
RFWnd::GetScreenRect(void)
RFWnd::GetSize(void)
RFWnd::GetTypeName(void)
RFWnd::GetVisualState(void)
RFWnd::GetWindow_(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFWnd::HitTest(RFVector2 const &,bool)
RFWnd::HitTestChild(RFVector2 const &,bool,bool)
RFWnd::IsActive(void)
RFWnd::IsFocusable(void)
RFWnd::IsHitTestThrough(void)
RFWnd::IsInputLocked(void)
RFWnd::IsModal(void)
RFWnd::IsMouseOver(void)
RFWnd::IsOverlapped(void)
RFWnd::IsPreDraw(void)
RFWnd::IsSubControl(void)
RFWnd::KillFocus(void)
RFWnd::OnDraw(void)
RFWnd::OnEnabled(bool)
RFWnd::OnInitialUpdate(void)
RFWnd::OnKeyDown(KeyEventArgs &)
RFWnd::OnKillFocus(void)
RFWnd::OnLayoutChanged(uint)
RFWnd::OnLButtonDblClick(MouseEventArgs &)
RFWnd::OnMouseWheel(MouseEventArgs &)
RFWnd::OnRButtonDown(MouseEventArgs &)
RFWnd::OnRButtonUp(MouseEventArgs &)
RFWnd::operator=(RFWnd const &)
RFWnd::PlaySfx(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFWnd::PreDraw(RFRenderContext const &)
RFWnd::PreInitialize(void)
RFWnd::RegisterChild(RFWnd *)
RFWnd::RemoveModifier(RFWindowModifier *)
RFWnd::ScreenToClient(RFVector2 const &)
RFWnd::SetAnchor(uint)
RFWnd::SetHitTestVisible(bool)
RFWnd::SetPreDraw(bool)
RFWnd::SetPriority(int)
RFWnd::SetRect(RFRect const &)
RFWnd::SetScreenRect(RFRect const &)
RFWnd::SetSize(RFSize const &)
RFWnd::SetStartPosition(StartPositionTypes::Type)
RFWnd::SetUserString(std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>> const &)
RFWnd::SetVisualEffect(RFVisualEffect *)
RFWnd::SetVisualState(VisualStateTypes::Type)
RFWnd::UpdateAnchorValue(void)
RFWnd::UpdateLayout(void)

RFWndEx

RFWndEx::GetTypeName(void)
RFWndEx::PreInitialize(void)
RFWndEx::RFWndEx(void)
RFWndEx::ToString(void)
RFWndEx::~RFWndEx(void)

Subscriber

Subscriber::Subscriber(Subscriber const &)
Subscriber::Subscriber(void)

Okay, I found out some more:

The new Refresh UI is not a full new UI, but was used to write the Fresh Up! parts of the UI with an improved XML-notation, which is somewhat reflected by the function signatures above. The Refresh UI files can be found in data/ui/refresh.

Here’s an example of the Refresh XML notation (using data/ui/refresh/lobbydesktop/lobby_desktop.xml)

<refresh version="2">
	<properties>
    <!-- Definition of properties for this element -->
		<property name="DPI" val="72" />
	</properties>
	<Textures>
    <!-- Definition of textures used by this element -->
        <Texture Name="btn_exit_Normal" Type="Single">
			<Image Path="exit_btn_n.tga" TileMode="Stretch" />
		</Texture>
    </Textures>
    <!-- After textures, basically any UI element can follow, Refresh has an easy-to-read notation -->
    <base type="WNDEX" name="lobby_desktop_wnd" subclass="">
		<Assets>
			<Asset Name="Default" TextureName="lobby_desktop_wnd_Default" />
		</Assets>
		<pos x="0" y="0" />
		<rect l="0" t="0" r="800" b="600" />
		<Visible val="True" />
		<Anchor val="Top, Bottom, Left, Right" />
		<IsHitTestVisible val="True" />
		<ClipChildren val="False" />
		<snd type="SHOW"></snd>
		<snd type="HIDE"></snd>
		<Dragable val="False" />
		<StartPosition val="CenterScreen" />
		<EscKeyAction val="Close" />
        <!-- There can be n childs/bases inside child and bases, to group elements together -->
        <child type="PANEL" subclass="" name="panel_popup">
			<pos x="700" y="396" />
			<rect l="0" t="0" r="100" b="145" />
			<Visible val="True" />
			<Anchor val="Bottom, Right" />
			<IsHitTestVisible val="True" />
			<ClipChildren val="False" />
			<embed src="" />
		</child>
    </base>
</refresh>

Aside of that, this means that a lot of the UI is still handled by legacy code.