RetroArch
Classes | Macros | Functions | Variables
xui.cpp File Reference
#include <stdint.h>
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <xtl.h>
#include <xui.h>
#include <xuiapp.h>
#include <file/file_path.h>
#include <lists/string_list.h>
#include <string/stdstring.h>
#include <queues/message_queue.h>
#include "menu_generic.h"
#include "../menu_driver.h"
#include "../menu_animation.h"
#include "../widgets/menu_entry.h"
#include "../menu_entries.h"
#include "../menu_input.h"
#include "../menu_setting.h"
#include "../widgets/menu_input_dialog.h"
#include "../../gfx/video_driver.h"
#include "../../configuration.h"
#include "../../retroarch.h"
#include "../../verbosity.h"
#include "../../gfx/common/d3d_common.h"
#include "../../gfx/common/d3d9_common.h"
Include dependency graph for xui.cpp:

Classes

class  CRetroArch
 

Macros

#define CINTERFACE
 
#define XUI_CONTROL_NAVIGATE_OK   (XUI_CONTROL_NAVIGATE_RIGHT + 1)
 
#define FONT_WIDTH   5
 
#define FONT_HEIGHT   10
 
#define FONT_WIDTH_STRIDE   (FONT_WIDTH + 1)
 
#define FONT_HEIGHT_STRIDE   (FONT_HEIGHT + 1)
 
#define RXUI_TERM_START_X   15
 
#define RXUI_TERM_START_Y   27
 
#define RXUI_TERM_WIDTH(width)   (((width - RXUI_TERM_START_X - 15) / (FONT_WIDTH_STRIDE)))
 
#define RXUI_TERM_HEIGHT(height)   (((height - RXUI_TERM_START_Y - 15) / (FONT_HEIGHT_STRIDE)) - 1)
 
#define CREATE_CLASS(class_type, class_name)
 

Functions

 CREATE_CLASS (CRetroArchMain, L"RetroArchMain")
 
HRESULT XuiTextureLoader (IXuiDevice *pDevice, LPCWSTR szFileName, XUIImageInfo *pImageInfo, IDirect3DTexture9 **ppTex)
 
void d3d9_make_d3dpp (void *data, const video_info_t *info, void *_d3dpp)
 
static voidxui_init (void **userdata, bool video_is_threaded)
 
static void xui_free (void *data)
 
static void xui_render_message (const char *msg)
 
static void xui_frame (void *data, video_frame_info_t *video_info)
 
static void blit_line (int x, int y, const char *message, bool green)
 
static void xui_render_background (void)
 
static void xui_render_messagebox (void *data, const char *message)
 
static void xui_set_list_text (int index, const wchar_t *leftText, const wchar_t *rightText)
 
static void xui_render (void *data, bool is_idle)
 
static void xui_populate_entries (void *data, const char *path, const char *label, unsigned i)
 
static void xui_navigation_clear (void *data, bool pending_push)
 
static void xui_navigation_set_visible (void *data)
 
static void xui_navigation_alphabet (void *data, size_t *ptr_out)
 
static void xui_list_insert (void *data, file_list_t *list, const char *path, const char *fullpath, const char *unused, size_t list_size, unsigned entry_type)
 
static void xui_list_free (file_list_t *list, size_t idx, size_t list_size)
 
static void xui_list_clear (file_list_t *list)
 
static void xui_list_set_selection (void *data, file_list_t *list)
 
static int xui_environ (enum menu_environ_cb type, void *data, void *userdata)
 

Variables

HXUIOBJ m_menulist
 
HXUIOBJ m_menutitle
 
HXUIOBJ m_menutitlebottom
 
HXUIOBJ m_background
 
HXUIOBJ m_back
 
HXUIOBJ root_menu
 
HXUIOBJ current_menu
 
static msg_queue_txui_msg_queue = NULL
 
static uint64_t xui_frame_count = 0
 
CRetroArch app
 
wchar_t strw_buffer [PATH_MAX_LENGTH]
 
menu_ctx_driver_t menu_ctx_xui
 

Macro Definition Documentation

◆ CINTERFACE

#define CINTERFACE

◆ CREATE_CLASS

#define CREATE_CLASS (   class_type,
  class_name 
)

◆ FONT_HEIGHT

#define FONT_HEIGHT   10

◆ FONT_HEIGHT_STRIDE

#define FONT_HEIGHT_STRIDE   (FONT_HEIGHT + 1)

◆ FONT_WIDTH

#define FONT_WIDTH   5

◆ FONT_WIDTH_STRIDE

#define FONT_WIDTH_STRIDE   (FONT_WIDTH + 1)

◆ RXUI_TERM_HEIGHT

#define RXUI_TERM_HEIGHT (   height)    (((height - RXUI_TERM_START_Y - 15) / (FONT_HEIGHT_STRIDE)) - 1)

◆ RXUI_TERM_START_X

#define RXUI_TERM_START_X   15

◆ RXUI_TERM_START_Y

#define RXUI_TERM_START_Y   27

◆ RXUI_TERM_WIDTH

#define RXUI_TERM_WIDTH (   width)    (((width - RXUI_TERM_START_X - 15) / (FONT_WIDTH_STRIDE)))

◆ XUI_CONTROL_NAVIGATE_OK

#define XUI_CONTROL_NAVIGATE_OK   (XUI_CONTROL_NAVIGATE_RIGHT + 1)

Function Documentation

◆ blit_line()

static void blit_line ( int  x,
int  y,
const char *  message,
bool  green 
)
static

◆ CREATE_CLASS()

CREATE_CLASS ( CRetroArchMain  ,
L"RetroArchMain"   
)

◆ d3d9_make_d3dpp()

void d3d9_make_d3dpp ( void data,
const video_info_t info,
void _d3dpp 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ xui_environ()

static int xui_environ ( enum menu_environ_cb  type,
void data,
void userdata 
)
static

◆ xui_frame()

static void xui_frame ( void data,
video_frame_info_t video_info 
)
static
Here is the call graph for this function:

◆ xui_free()

static void xui_free ( void data)
static
Here is the call graph for this function:

◆ xui_init()

static void* xui_init ( void **  userdata,
bool  video_is_threaded 
)
static
Here is the call graph for this function:

◆ xui_list_clear()

static void xui_list_clear ( file_list_t list)
static

◆ xui_list_free()

static void xui_list_free ( file_list_t list,
size_t  idx,
size_t  list_size 
)
static
Here is the call graph for this function:

◆ xui_list_insert()

static void xui_list_insert ( void data,
file_list_t list,
const char *  path,
const char *  fullpath,
const char *  unused,
size_t  list_size,
unsigned  entry_type 
)
static

◆ xui_list_set_selection()

static void xui_list_set_selection ( void data,
file_list_t list 
)
static
Here is the call graph for this function:

◆ xui_navigation_alphabet()

static void xui_navigation_alphabet ( void data,
size_t *  ptr_out 
)
static

◆ xui_navigation_clear()

static void xui_navigation_clear ( void data,
bool  pending_push 
)
static
Here is the call graph for this function:

◆ xui_navigation_set_visible()

static void xui_navigation_set_visible ( void data)
static
Here is the call graph for this function:

◆ xui_populate_entries()

static void xui_populate_entries ( void data,
const char *  path,
const char *  label,
unsigned  i 
)
static
Here is the call graph for this function:

◆ xui_render()

static void xui_render ( void data,
bool  is_idle 
)
static
Here is the call graph for this function:

◆ xui_render_background()

static void xui_render_background ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ xui_render_message()

static void xui_render_message ( const char *  msg)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ xui_render_messagebox()

static void xui_render_messagebox ( void data,
const char *  message 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ xui_set_list_text()

static void xui_set_list_text ( int  index,
const wchar_t *  leftText,
const wchar_t *  rightText 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ XuiTextureLoader()

HRESULT XuiTextureLoader ( IXuiDevice *  pDevice,
LPCWSTR  szFileName,
XUIImageInfo *  pImageInfo,
IDirect3DTexture9 **  ppTex 
)
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ app

◆ current_menu

HXUIOBJ current_menu

◆ m_back

HXUIOBJ m_back

◆ m_background

HXUIOBJ m_background

◆ m_menulist

HXUIOBJ m_menulist

◆ m_menutitle

HXUIOBJ m_menutitle

◆ m_menutitlebottom

HXUIOBJ m_menutitlebottom

◆ menu_ctx_xui

menu_ctx_driver_t menu_ctx_xui

◆ root_menu

HXUIOBJ root_menu

◆ strw_buffer

wchar_t strw_buffer[PATH_MAX_LENGTH]

◆ xui_frame_count

uint64_t xui_frame_count = 0
static

◆ xui_msg_queue

msg_queue_t* xui_msg_queue = NULL
static