mirror of
https://github.com/libretro/RetroArch
synced 2025-03-31 10:20:41 +00:00
Combine all ozone files into one - discussed internally first -
allows us to modify the scope of the global variables from public to static - also allows for easier refactors amongst XMB/materialui/Ozone/RGUI later
This commit is contained in:
parent
a785bd8d80
commit
d0d495edc3
@ -1008,12 +1008,7 @@ ifeq ($(HAVE_MENU), 1)
|
||||
endif
|
||||
|
||||
ifeq ($(HAVE_OZONE), 1)
|
||||
OBJ += menu/drivers/ozone/ozone.o \
|
||||
menu/drivers/ozone/ozone_entries.o \
|
||||
menu/drivers/ozone/ozone_display.o \
|
||||
menu/drivers/ozone/ozone_texture.o \
|
||||
menu/drivers/ozone/ozone_theme.o \
|
||||
menu/drivers/ozone/ozone_sidebar.o
|
||||
OBJ += menu/drivers/ozone.o
|
||||
DEFINES += -DHAVE_OZONE
|
||||
HAVE_ASSETS = 1
|
||||
HAVE_MENU_SCREENSAVER = 1
|
||||
|
@ -1407,12 +1407,7 @@ MENU
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_OZONE
|
||||
#include "../menu/drivers/ozone/ozone.c"
|
||||
#include "../menu/drivers/ozone/ozone_display.c"
|
||||
#include "../menu/drivers/ozone/ozone_entries.c"
|
||||
#include "../menu/drivers/ozone/ozone_sidebar.c"
|
||||
#include "../menu/drivers/ozone/ozone_texture.c"
|
||||
#include "../menu/drivers/ozone/ozone_theme.c"
|
||||
#include "../menu/drivers/ozone.c"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_MATERIALUI
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,468 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2018-2020 - natinusala
|
||||
* Copyright (C) 2019 - Patrick Scheurenbrand
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef _OZONE_H
|
||||
#define _OZONE_H
|
||||
|
||||
typedef struct ozone_handle ozone_handle_t;
|
||||
|
||||
#include "ozone_theme.h"
|
||||
#include "ozone_sidebar.h"
|
||||
|
||||
#include <retro_miscellaneous.h>
|
||||
#include <retro_inline.h>
|
||||
|
||||
#include "../../gfx/gfx_animation.h"
|
||||
#include "../../gfx/gfx_display.h"
|
||||
#include "../../gfx/gfx_thumbnail_path.h"
|
||||
#include "../../gfx/gfx_thumbnail.h"
|
||||
#include "../../menu_screensaver.h"
|
||||
|
||||
#include "../../configuration.h"
|
||||
|
||||
#define ANIMATION_PUSH_ENTRY_DURATION 166
|
||||
#define ANIMATION_CURSOR_DURATION 133
|
||||
#define ANIMATION_CURSOR_PULSE 500
|
||||
|
||||
#define FONT_SIZE_FOOTER 18
|
||||
#define FONT_SIZE_TITLE 36
|
||||
#define FONT_SIZE_TIME 22
|
||||
#define FONT_SIZE_ENTRIES_LABEL 24
|
||||
#define FONT_SIZE_ENTRIES_SUBLABEL 18
|
||||
#define FONT_SIZE_SIDEBAR 24
|
||||
|
||||
#define HEADER_HEIGHT 87
|
||||
#define FOOTER_HEIGHT 78
|
||||
|
||||
#define ENTRY_PADDING_HORIZONTAL_HALF 60
|
||||
#define ENTRY_PADDING_HORIZONTAL_FULL 150
|
||||
#define ENTRY_PADDING_VERTICAL 20
|
||||
#define ENTRY_HEIGHT 50
|
||||
#define ENTRY_SPACING 8
|
||||
#define ENTRY_ICON_SIZE 46
|
||||
#define ENTRY_ICON_PADDING 15
|
||||
|
||||
/* > 'SIDEBAR_WIDTH' must be kept in sync with
|
||||
* menu driver metrics */
|
||||
#define SIDEBAR_WIDTH 408
|
||||
#define SIDEBAR_X_PADDING 40
|
||||
#define SIDEBAR_Y_PADDING 20
|
||||
#define SIDEBAR_ENTRY_HEIGHT 50
|
||||
#define SIDEBAR_ENTRY_Y_PADDING 10
|
||||
#define SIDEBAR_ENTRY_ICON_SIZE 46
|
||||
#define SIDEBAR_ENTRY_ICON_PADDING 15
|
||||
#define SIDEBAR_GRADIENT_HEIGHT 28
|
||||
|
||||
#define FULLSCREEN_THUMBNAIL_PADDING 48
|
||||
|
||||
#define CURSOR_SIZE 64
|
||||
/* Cursor becomes active when it moves more
|
||||
* than CURSOR_ACTIVE_DELTA pixels (adjusted
|
||||
* by current scale factor) */
|
||||
#define CURSOR_ACTIVE_DELTA 3
|
||||
|
||||
#define INTERVAL_OSK_CURSOR (0.5f * 1000000)
|
||||
|
||||
#if defined(__APPLE__)
|
||||
/* UTF-8 support is currently broken on Apple devices... */
|
||||
#define OZONE_TICKER_SPACER " | "
|
||||
#else
|
||||
/* <EM SPACE><BULLET><EM SPACE>
|
||||
* UCN equivalent: "\u2003\u2022\u2003" */
|
||||
#define OZONE_TICKER_SPACER "\xE2\x80\x83\xE2\x80\xA2\xE2\x80\x83"
|
||||
#endif
|
||||
|
||||
enum ozone_onscreen_entry_position_type
|
||||
{
|
||||
OZONE_ONSCREEN_ENTRY_FIRST = 0,
|
||||
OZONE_ONSCREEN_ENTRY_LAST,
|
||||
OZONE_ONSCREEN_ENTRY_CENTRE
|
||||
};
|
||||
|
||||
/* This structure holds all objects + metadata
|
||||
* corresponding to a particular font */
|
||||
typedef struct
|
||||
{
|
||||
font_data_t *font;
|
||||
video_font_raster_block_t raster_block; /* ptr alignment */
|
||||
int glyph_width;
|
||||
int wideglyph_width;
|
||||
int line_height;
|
||||
int line_ascender;
|
||||
int line_centre_offset;
|
||||
} ozone_font_data_t;
|
||||
|
||||
/* Container for a footer text label */
|
||||
typedef struct
|
||||
{
|
||||
const char *str;
|
||||
int width;
|
||||
} ozone_footer_label_t;
|
||||
|
||||
struct ozone_handle
|
||||
{
|
||||
menu_input_pointer_t pointer; /* retro_time_t alignment */
|
||||
|
||||
ozone_theme_t *theme;
|
||||
gfx_thumbnail_path_data_t *thumbnail_path_data;
|
||||
char *pending_message;
|
||||
file_list_t selection_buf_old; /* ptr alignment */
|
||||
file_list_t horizontal_list; /* console tabs */ /* ptr alignment */
|
||||
menu_screensaver_t *screensaver;
|
||||
|
||||
struct
|
||||
{
|
||||
ozone_font_data_t footer;
|
||||
ozone_font_data_t title;
|
||||
ozone_font_data_t time;
|
||||
ozone_font_data_t entries_label;
|
||||
ozone_font_data_t entries_sublabel;
|
||||
ozone_font_data_t sidebar;
|
||||
} fonts;
|
||||
|
||||
void (*word_wrap)(char *dst, size_t dst_size, const char *src,
|
||||
int line_width, int wideglyph_width, unsigned max_lines);
|
||||
|
||||
struct
|
||||
{
|
||||
ozone_footer_label_t ok;
|
||||
ozone_footer_label_t back;
|
||||
ozone_footer_label_t search;
|
||||
ozone_footer_label_t fullscreen_thumbs;
|
||||
ozone_footer_label_t metadata_toggle;
|
||||
} footer_labels;
|
||||
|
||||
struct
|
||||
{
|
||||
gfx_thumbnail_t right; /* uintptr_t alignment */
|
||||
gfx_thumbnail_t left; /* uintptr_t alignment */
|
||||
} thumbnails;
|
||||
uintptr_t textures[OZONE_THEME_TEXTURE_LAST];
|
||||
uintptr_t icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LAST];
|
||||
uintptr_t tab_textures[OZONE_TAB_TEXTURE_LAST];
|
||||
|
||||
size_t categories_selection_ptr; /* active tab id */
|
||||
size_t categories_active_idx_old;
|
||||
|
||||
size_t selection; /* currently selected entry */
|
||||
size_t selection_old; /* previously selected entry (for fancy animation) */
|
||||
size_t selection_old_list;
|
||||
size_t fullscreen_thumbnail_selection;
|
||||
size_t num_search_terms_old;
|
||||
size_t pointer_categories_selection;
|
||||
size_t first_onscreen_entry;
|
||||
size_t last_onscreen_entry;
|
||||
size_t first_onscreen_category;
|
||||
size_t last_onscreen_category;
|
||||
|
||||
int depth;
|
||||
|
||||
struct
|
||||
{
|
||||
int header_height;
|
||||
int footer_height;
|
||||
|
||||
int entry_padding_horizontal_half;
|
||||
int entry_padding_horizontal_full;
|
||||
int entry_padding_vertical;
|
||||
int entry_height;
|
||||
int entry_spacing;
|
||||
int entry_icon_size;
|
||||
int entry_icon_padding;
|
||||
|
||||
int sidebar_width_normal;
|
||||
int sidebar_width_collapsed;
|
||||
|
||||
int sidebar_padding_horizontal;
|
||||
int sidebar_padding_vertical;
|
||||
int sidebar_entry_padding_vertical;
|
||||
int sidebar_entry_height;
|
||||
int sidebar_entry_icon_size;
|
||||
int sidebar_entry_icon_padding;
|
||||
int sidebar_gradient_height;
|
||||
|
||||
int cursor_size;
|
||||
|
||||
int thumbnail_bar_width;
|
||||
int fullscreen_thumbnail_padding;
|
||||
|
||||
int spacer_1px;
|
||||
int spacer_2px;
|
||||
int spacer_3px;
|
||||
int spacer_5px;
|
||||
} dimensions;
|
||||
|
||||
unsigned footer_labels_language;
|
||||
unsigned last_width;
|
||||
unsigned last_height;
|
||||
unsigned entries_height;
|
||||
unsigned theme_dynamic_cursor_state; /* 0 -> 1 -> 0 -> 1 [...] */
|
||||
unsigned selection_core_name_lines;
|
||||
unsigned selection_lastplayed_lines;
|
||||
unsigned old_list_offset_y;
|
||||
|
||||
float dimensions_sidebar_width; /* animated field */
|
||||
float sidebar_offset;
|
||||
float last_scale_factor;
|
||||
float pure_white[16];
|
||||
|
||||
struct
|
||||
{
|
||||
float cursor_alpha;
|
||||
float scroll_y;
|
||||
float scroll_y_sidebar;
|
||||
|
||||
float list_alpha;
|
||||
|
||||
float messagebox_alpha;
|
||||
|
||||
float sidebar_text_alpha;
|
||||
float thumbnail_bar_position;
|
||||
|
||||
float fullscreen_thumbnail_alpha;
|
||||
float left_thumbnail_alpha;
|
||||
} animations;
|
||||
|
||||
struct
|
||||
{
|
||||
float selection_border[16];
|
||||
float selection[16];
|
||||
float entries_border[16];
|
||||
float entries_icon[16];
|
||||
float entries_checkmark[16];
|
||||
float cursor_alpha[16];
|
||||
|
||||
float cursor_border[16];
|
||||
float message_background[16];
|
||||
} theme_dynamic;
|
||||
|
||||
float scroll_old;
|
||||
|
||||
int16_t pointer_active_delta;
|
||||
int16_t cursor_x_old;
|
||||
int16_t cursor_y_old;
|
||||
|
||||
uint8_t system_tab_end;
|
||||
uint8_t tabs[OZONE_SYSTEM_TAB_LAST];
|
||||
|
||||
char title[PATH_MAX_LENGTH];
|
||||
|
||||
char assets_path[PATH_MAX_LENGTH];
|
||||
char png_path[PATH_MAX_LENGTH];
|
||||
char icons_path[PATH_MAX_LENGTH];
|
||||
char tab_path[PATH_MAX_LENGTH];
|
||||
char fullscreen_thumbnail_label[255];
|
||||
|
||||
char selection_core_name[255];
|
||||
char selection_playtime[255];
|
||||
char selection_lastplayed[255];
|
||||
char selection_entry_enumeration[255];
|
||||
|
||||
bool cursor_in_sidebar;
|
||||
bool cursor_in_sidebar_old;
|
||||
|
||||
bool fade_direction; /* false = left to right, true = right to left */
|
||||
|
||||
bool draw_sidebar;
|
||||
bool empty_playlist;
|
||||
|
||||
bool osk_cursor; /* true = display it, false = don't */
|
||||
bool messagebox_state;
|
||||
bool messagebox_state_old;
|
||||
bool should_draw_messagebox;
|
||||
|
||||
bool need_compute;
|
||||
bool draw_old_list;
|
||||
bool has_all_assets;
|
||||
|
||||
bool is_playlist;
|
||||
bool is_playlist_old;
|
||||
|
||||
bool pointer_in_sidebar;
|
||||
bool last_pointer_in_sidebar;
|
||||
bool show_cursor;
|
||||
bool show_screensaver;
|
||||
bool cursor_mode;
|
||||
bool sidebar_collapsed;
|
||||
bool show_thumbnail_bar;
|
||||
bool pending_hide_thumbnail_bar;
|
||||
bool fullscreen_thumbnails_available;
|
||||
bool show_fullscreen_thumbnails;
|
||||
bool selection_core_is_viewer;
|
||||
|
||||
bool force_metadata_display;
|
||||
|
||||
bool is_db_manager_list;
|
||||
bool is_file_list;
|
||||
bool is_quick_menu;
|
||||
bool first_frame;
|
||||
|
||||
struct
|
||||
{
|
||||
retro_time_t start_time;
|
||||
float amplitude;
|
||||
enum menu_action direction;
|
||||
bool wiggling;
|
||||
} cursor_wiggle_state;
|
||||
};
|
||||
|
||||
/* If you change this struct, also
|
||||
change ozone_alloc_node and
|
||||
ozone_copy_node */
|
||||
typedef struct ozone_node
|
||||
{
|
||||
char *fullpath; /* Entry fullpath */
|
||||
char *console_name; /* Console tab name */
|
||||
uintptr_t icon; /* Console tab icon */
|
||||
uintptr_t content_icon; /* console content icon */
|
||||
unsigned height; /* Entry height */
|
||||
unsigned position_y; /* Entry position Y */
|
||||
unsigned sublabel_lines; /* Entry sublabel lines */
|
||||
bool wrap; /* Wrap entry? */
|
||||
} ozone_node_t;
|
||||
|
||||
void ozone_draw_entries(
|
||||
ozone_handle_t *ozone,
|
||||
gfx_display_t *p_disp,
|
||||
gfx_animation_t *p_anim,
|
||||
settings_t *settings,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
unsigned selection,
|
||||
unsigned selection_old,
|
||||
file_list_t *selection_buf,
|
||||
float alpha,
|
||||
float scroll_y,
|
||||
bool is_playlist);
|
||||
|
||||
void ozone_draw_sidebar(
|
||||
ozone_handle_t *ozone,
|
||||
gfx_display_t *p_disp,
|
||||
gfx_animation_t *p_anim,
|
||||
settings_t *settings,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
bool libretro_running,
|
||||
float menu_framebuffer_opacity
|
||||
);
|
||||
|
||||
void ozone_change_tab(ozone_handle_t *ozone,
|
||||
enum msg_hash_enums tab,
|
||||
enum menu_settings_type type);
|
||||
|
||||
void ozone_sidebar_goto(ozone_handle_t *ozone, unsigned new_selection);
|
||||
|
||||
unsigned ozone_get_sidebar_height(ozone_handle_t *ozone);
|
||||
|
||||
unsigned ozone_get_selected_sidebar_y_position(ozone_handle_t *ozone);
|
||||
|
||||
void ozone_leave_sidebar(ozone_handle_t *ozone,
|
||||
settings_t *settings,
|
||||
uintptr_t tag);
|
||||
|
||||
void ozone_go_to_sidebar(ozone_handle_t *ozone,
|
||||
settings_t *settings,
|
||||
uintptr_t tag);
|
||||
|
||||
void ozone_refresh_horizontal_list(ozone_handle_t *ozone,
|
||||
settings_t *settings);
|
||||
|
||||
void ozone_init_horizontal_list(ozone_handle_t *ozone,
|
||||
settings_t *settings);
|
||||
|
||||
void ozone_context_destroy_horizontal_list(ozone_handle_t *ozone);
|
||||
|
||||
void ozone_context_reset_horizontal_list(ozone_handle_t *ozone);
|
||||
|
||||
ozone_node_t *ozone_alloc_node(void);
|
||||
|
||||
size_t ozone_list_get_size(void *data, enum menu_list_type type);
|
||||
|
||||
void ozone_free_list_nodes(file_list_t *list, bool actiondata);
|
||||
|
||||
bool ozone_is_playlist(ozone_handle_t *ozone, bool depth);
|
||||
|
||||
void ozone_compute_entries_position(
|
||||
ozone_handle_t *ozone,
|
||||
settings_t *settings,
|
||||
size_t entries_end);
|
||||
|
||||
void ozone_update_scroll(ozone_handle_t *ozone, bool allow_animation, ozone_node_t *node);
|
||||
|
||||
void ozone_sidebar_update_collapse(
|
||||
ozone_handle_t *ozone,
|
||||
settings_t *settings,
|
||||
bool allow_animation);
|
||||
|
||||
void ozone_refresh_sidebars(
|
||||
ozone_handle_t *ozone,
|
||||
settings_t *settings,
|
||||
unsigned video_height);
|
||||
|
||||
void ozone_entries_update_thumbnail_bar(ozone_handle_t *ozone, bool is_playlist, bool allow_animation);
|
||||
|
||||
void ozone_draw_thumbnail_bar(
|
||||
ozone_handle_t *ozone,
|
||||
gfx_display_t *p_disp,
|
||||
gfx_animation_t *p_anim,
|
||||
settings_t *settings,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
bool libretro_running,
|
||||
float menu_framebuffer_opacity);
|
||||
|
||||
void ozone_hide_fullscreen_thumbnails(ozone_handle_t *ozone, bool animate);
|
||||
void ozone_show_fullscreen_thumbnails(ozone_handle_t *ozone);
|
||||
|
||||
static INLINE unsigned ozone_count_lines(const char *str)
|
||||
{
|
||||
unsigned c = 0;
|
||||
unsigned lines = 1;
|
||||
|
||||
for (c = 0; str[c]; c++)
|
||||
lines += (str[c] == '\n');
|
||||
return lines;
|
||||
}
|
||||
|
||||
void ozone_update_content_metadata(ozone_handle_t *ozone);
|
||||
|
||||
void ozone_font_flush(
|
||||
unsigned video_width, unsigned video_height,
|
||||
ozone_font_data_t *font_data);
|
||||
|
||||
void ozone_toggle_metadata_override(ozone_handle_t *ozone);
|
||||
|
||||
#define OZONE_WIGGLE_DURATION 15
|
||||
|
||||
/**
|
||||
* Starts the cursor wiggle animation in the given direction
|
||||
* Use ozone_get_cursor_wiggle_offset to read the animation
|
||||
* once it has started
|
||||
*/
|
||||
void ozone_start_cursor_wiggle(ozone_handle_t* ozone, enum menu_action direction);
|
||||
|
||||
/**
|
||||
* Changes x and y to the current offset of the cursor wiggle animation
|
||||
*/
|
||||
void ozone_apply_cursor_wiggle_offset(ozone_handle_t* ozone, int* x, size_t* y);
|
||||
|
||||
void ozone_list_cache(void *data,
|
||||
enum menu_list_type type, unsigned action);
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,80 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2017 - Daniel De Matteis
|
||||
* Copyright (C) 2014-2017 - Jean-André Santoni
|
||||
* Copyright (C) 2016-2019 - Brad Parker
|
||||
* Copyright (C) 2018 - Alfredo Monclús
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ozone.h"
|
||||
|
||||
#include "../../../gfx/gfx_display.h"
|
||||
|
||||
#include "../../menu_driver.h"
|
||||
|
||||
void ozone_draw_cursor(
|
||||
ozone_handle_t *ozone,
|
||||
gfx_display_t *p_disp,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
int x_offset,
|
||||
unsigned width, unsigned height,
|
||||
size_t y, float alpha);
|
||||
|
||||
void ozone_draw_icon(
|
||||
gfx_display_t *p_disp,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
unsigned icon_width,
|
||||
unsigned icon_height,
|
||||
uintptr_t texture,
|
||||
float x, float y,
|
||||
unsigned width, unsigned height,
|
||||
float rotation, float scale_factor,
|
||||
float *color);
|
||||
|
||||
void ozone_restart_cursor_animation(ozone_handle_t *ozone);
|
||||
|
||||
void ozone_draw_backdrop(
|
||||
void *userdata,
|
||||
void *disp_data,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
float alpha);
|
||||
|
||||
void ozone_draw_osk(
|
||||
ozone_handle_t *ozone,
|
||||
void *userdata,
|
||||
void *disp_userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
const char *label, const char *str);
|
||||
|
||||
void ozone_draw_messagebox(
|
||||
ozone_handle_t *ozone,
|
||||
gfx_display_t *p_disp,
|
||||
void *userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height,
|
||||
const char *message);
|
||||
|
||||
void ozone_draw_fullscreen_thumbnails(
|
||||
ozone_handle_t *ozone,
|
||||
void *userdata,
|
||||
void *disp_userdata,
|
||||
unsigned video_width,
|
||||
unsigned video_height
|
||||
);
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,48 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2017 - Daniel De Matteis
|
||||
* Copyright (C) 2014-2017 - Jean-André Santoni
|
||||
* Copyright (C) 2016-2019 - Brad Parker
|
||||
* Copyright (C) 2018 - Alfredo Monclús
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef _OZONE_SIDEBAR_H
|
||||
#define _OZONE_SIDEBAR_H
|
||||
|
||||
enum
|
||||
{
|
||||
OZONE_SYSTEM_TAB_MAIN = 0,
|
||||
OZONE_SYSTEM_TAB_SETTINGS,
|
||||
OZONE_SYSTEM_TAB_HISTORY,
|
||||
OZONE_SYSTEM_TAB_FAVORITES,
|
||||
OZONE_SYSTEM_TAB_MUSIC,
|
||||
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
|
||||
OZONE_SYSTEM_TAB_VIDEO,
|
||||
#endif
|
||||
#ifdef HAVE_IMAGEVIEWER
|
||||
OZONE_SYSTEM_TAB_IMAGES,
|
||||
#endif
|
||||
#ifdef HAVE_NETWORKING
|
||||
OZONE_SYSTEM_TAB_NETPLAY,
|
||||
#endif
|
||||
OZONE_SYSTEM_TAB_ADD,
|
||||
#if defined(HAVE_LIBRETRODB)
|
||||
OZONE_SYSTEM_TAB_EXPLORE,
|
||||
#endif
|
||||
|
||||
/* End of this enum - use the last one to determine num of possible tabs */
|
||||
OZONE_SYSTEM_TAB_LAST
|
||||
};
|
||||
|
||||
#endif
|
@ -1,900 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2017 - Daniel De Matteis
|
||||
* Copyright (C) 2014-2017 - Jean-André Santoni
|
||||
* Copyright (C) 2016-2019 - Brad Parker
|
||||
* Copyright (C) 2018 - Alfredo Monclús
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ozone.h"
|
||||
#include "ozone_texture.h"
|
||||
|
||||
#include <streams/file_stream.h>
|
||||
#include <file/file_path.h>
|
||||
|
||||
#ifdef HAVE_CHEEVOS
|
||||
#include "../../../cheevos/cheevos_menu.h"
|
||||
#endif
|
||||
|
||||
#include "../../../file_path_special.h"
|
||||
|
||||
#include "../../../verbosity.h"
|
||||
|
||||
static const char *OZONE_THEME_TEXTURES_FILES[OZONE_THEME_TEXTURE_LAST] = {
|
||||
"switch",
|
||||
"check",
|
||||
|
||||
"cursor_noborder",
|
||||
"cursor_static"
|
||||
};
|
||||
|
||||
uintptr_t ozone_entries_icon_get_texture(ozone_handle_t *ozone,
|
||||
enum msg_hash_enums enum_idx, unsigned type, bool active)
|
||||
{
|
||||
switch (enum_idx)
|
||||
{
|
||||
case MENU_ENUM_LABEL_LOAD_DISC:
|
||||
case MENU_ENUM_LABEL_DUMP_DISC:
|
||||
case MENU_ENUM_LABEL_DISC_INFORMATION:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISC];
|
||||
case MENU_ENUM_LABEL_CORE_OPTIONS:
|
||||
case MENU_ENUM_LABEL_NAVIGATION_BROWSER_FILTER_SUPPORTED_EXTENSIONS_ENABLE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE_OPTIONS];
|
||||
case MENU_ENUM_LABEL_ADD_TO_FAVORITES:
|
||||
case MENU_ENUM_LABEL_ADD_TO_FAVORITES_PLAYLIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ADD_FAVORITE];
|
||||
case MENU_ENUM_LABEL_RESET_CORE_ASSOCIATION:
|
||||
case MENU_ENUM_LABEL_PLAYLIST_MANAGER_RESET_CORES:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_UNDO];
|
||||
case MENU_ENUM_LABEL_CORE_INPUT_REMAPPING_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_REMAPPING_OPTIONS];
|
||||
case MENU_ENUM_LABEL_CORE_CHEAT_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CHEAT_OPTIONS];
|
||||
case MENU_ENUM_LABEL_DISK_OPTIONS:
|
||||
case MENU_ENUM_LABEL_DISK_TRAY_EJECT:
|
||||
case MENU_ENUM_LABEL_DISK_TRAY_INSERT:
|
||||
case MENU_ENUM_LABEL_DISK_IMAGE_APPEND:
|
||||
case MENU_ENUM_LABEL_DISK_INDEX:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISK_OPTIONS];
|
||||
case MENU_ENUM_LABEL_SHADER_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS];
|
||||
case MENU_ENUM_LABEL_ACHIEVEMENT_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENT_LIST];
|
||||
case MENU_ENUM_LABEL_ACHIEVEMENT_LIST_HARDCORE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENT_LIST];
|
||||
case MENU_ENUM_LABEL_STATE_SLOT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
case MENU_ENUM_LABEL_SAVE_STATE:
|
||||
case MENU_ENUM_LABEL_CORE_CREATE_BACKUP:
|
||||
case MENU_ENUM_LABEL_GAME_SPECIFIC_CORE_OPTIONS_CREATE:
|
||||
case MENU_ENUM_LABEL_FOLDER_SPECIFIC_CORE_OPTIONS_CREATE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SAVESTATE];
|
||||
case MENU_ENUM_LABEL_LOAD_STATE:
|
||||
case MENU_ENUM_LABEL_CORE_RESTORE_BACKUP_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LOADSTATE];
|
||||
case MENU_ENUM_LABEL_PARENT_DIRECTORY:
|
||||
case MENU_ENUM_LABEL_UNDO_LOAD_STATE:
|
||||
case MENU_ENUM_LABEL_UNDO_SAVE_STATE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_UNDO];
|
||||
case MENU_ENUM_LABEL_TAKE_SCREENSHOT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SCREENSHOT];
|
||||
case MENU_ENUM_LABEL_DELETE_ENTRY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CLOSE];
|
||||
case MENU_ENUM_LABEL_RESTART_CONTENT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RELOAD];
|
||||
case MENU_ENUM_LABEL_RENAME_ENTRY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RENAME];
|
||||
case MENU_ENUM_LABEL_RESUME_CONTENT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RESUME];
|
||||
case MENU_ENUM_LABEL_FAVORITES:
|
||||
case MENU_ENUM_LABEL_DOWNLOADED_FILE_DETECT_CORE_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FOLDER];
|
||||
case MENU_ENUM_LABEL_FILE_DETECT_CORE_LIST_PUSH_DIR:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RDB];
|
||||
|
||||
/* Menu collection submenus*/
|
||||
case MENU_ENUM_LABEL_PLAYLISTS_TAB:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ZIP];
|
||||
case MENU_ENUM_LABEL_GOTO_FAVORITES:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FAVORITE];
|
||||
case MENU_ENUM_LABEL_GOTO_IMAGES:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_IMAGE];
|
||||
case MENU_ENUM_LABEL_GOTO_VIDEO:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MOVIE];
|
||||
case MENU_ENUM_LABEL_GOTO_MUSIC:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MUSIC];
|
||||
case MENU_ENUM_LABEL_GOTO_EXPLORE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RDB];
|
||||
|
||||
/* Menu icons */
|
||||
case MENU_ENUM_LABEL_CONTENT_SETTINGS:
|
||||
case MENU_ENUM_LABEL_UPDATE_ASSETS:
|
||||
case MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_SAVE_GAME:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GLOBAL:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_GAME:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_QUICKMENU];
|
||||
case MENU_ENUM_LABEL_START_CORE:
|
||||
case MENU_ENUM_LABEL_CHEAT_START_OR_CONT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RUN];
|
||||
case MENU_ENUM_LABEL_CORE_LIST:
|
||||
case MENU_ENUM_LABEL_SIDELOAD_CORE_LIST:
|
||||
case MENU_ENUM_LABEL_CORE_SETTINGS:
|
||||
case MENU_ENUM_LABEL_CORE_UPDATER_LIST:
|
||||
case MENU_ENUM_LABEL_UPDATE_INSTALLED_CORES:
|
||||
case MENU_ENUM_LABEL_SWITCH_INSTALLED_CORES_PFD:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_CORE:
|
||||
case MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_SAVE_CORE:
|
||||
case MENU_ENUM_LABEL_SET_CORE_ASSOCIATION:
|
||||
case MENU_ENUM_LABEL_CORE_INFORMATION:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE];
|
||||
case MENU_ENUM_LABEL_LOAD_CONTENT_LIST:
|
||||
case MENU_ENUM_LABEL_SUBSYSTEM_SETTINGS:
|
||||
case MENU_ENUM_LABEL_SCAN_FILE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FILE];
|
||||
case MENU_ENUM_LABEL_ONLINE_UPDATER:
|
||||
case MENU_ENUM_LABEL_UPDATER_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_UPDATER];
|
||||
case MENU_ENUM_LABEL_UPDATE_LAKKA:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MAIN_MENU];
|
||||
case MENU_ENUM_LABEL_UPDATE_CHEATS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CHEAT_OPTIONS];
|
||||
case MENU_ENUM_LABEL_THUMBNAILS_UPDATER_LIST:
|
||||
case MENU_ENUM_LABEL_PL_THUMBNAILS_UPDATER_LIST:
|
||||
case MENU_ENUM_LABEL_DOWNLOAD_PL_ENTRY_THUMBNAILS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_IMAGE];
|
||||
case MENU_ENUM_LABEL_UPDATE_OVERLAYS:
|
||||
case MENU_ENUM_LABEL_ONSCREEN_OVERLAY_SETTINGS:
|
||||
#ifdef HAVE_VIDEO_LAYOUT
|
||||
case MENU_ENUM_LABEL_ONSCREEN_VIDEO_LAYOUT_SETTINGS:
|
||||
#endif
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_OVERLAY];
|
||||
case MENU_ENUM_LABEL_UPDATE_CG_SHADERS:
|
||||
case MENU_ENUM_LABEL_UPDATE_GLSL_SHADERS:
|
||||
case MENU_ENUM_LABEL_UPDATE_SLANG_SHADERS:
|
||||
case MENU_ENUM_LABEL_AUTO_SHADERS_ENABLE:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PARAMETERS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS];
|
||||
case MENU_ENUM_LABEL_INFORMATION:
|
||||
case MENU_ENUM_LABEL_INFORMATION_LIST:
|
||||
case MENU_ENUM_LABEL_SYSTEM_INFORMATION:
|
||||
case MENU_ENUM_LABEL_UPDATE_CORE_INFO_FILES:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INFO];
|
||||
case MENU_ENUM_LABEL_EXPLORE_TAB:
|
||||
case MENU_ENUM_LABEL_UPDATE_DATABASES:
|
||||
case MENU_ENUM_LABEL_DATABASE_MANAGER_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RDB];
|
||||
case MENU_ENUM_LABEL_CURSOR_MANAGER_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CURSOR];
|
||||
case MENU_ENUM_LABEL_HELP_LIST:
|
||||
case MENU_ENUM_LABEL_HELP_CONTROLS:
|
||||
case MENU_ENUM_LABEL_HELP_LOADING_CONTENT:
|
||||
case MENU_ENUM_LABEL_HELP_SCANNING_CONTENT:
|
||||
case MENU_ENUM_LABEL_HELP_WHAT_IS_A_CORE:
|
||||
case MENU_ENUM_LABEL_HELP_CHANGE_VIRTUAL_GAMEPAD:
|
||||
case MENU_ENUM_LABEL_HELP_AUDIO_VIDEO_TROUBLESHOOTING:
|
||||
case MENU_ENUM_LABEL_HELP_SEND_DEBUG_INFO:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_HELP];
|
||||
case MENU_ENUM_LABEL_QUIT_RETROARCH:
|
||||
case MENU_ENUM_LABEL_BLOCK_SRAM_OVERWRITE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_EXIT];
|
||||
/* Settings icons*/
|
||||
case MENU_ENUM_LABEL_DRIVER_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DRIVERS];
|
||||
case MENU_ENUM_LABEL_VIDEO_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_VIDEO];
|
||||
case MENU_ENUM_LABEL_AUDIO_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_AUDIO];
|
||||
case MENU_ENUM_LABEL_AUDIO_MIXER_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MIXER];
|
||||
case MENU_ENUM_LABEL_SCREEN_RESOLUTION:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SUBSETTING];
|
||||
case MENU_ENUM_LABEL_INPUT_SETTINGS:
|
||||
case MENU_ENUM_LABEL_UPDATE_AUTOCONFIG_PROFILES:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_1_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_2_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_3_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_4_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_5_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_6_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_7_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_8_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_9_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_10_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_11_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_12_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_13_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_14_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_15_BINDS:
|
||||
case MENU_ENUM_LABEL_INPUT_USER_16_BINDS:
|
||||
case MENU_ENUM_LABEL_START_NET_RETROPAD:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SETTINGS];
|
||||
case MENU_ENUM_LABEL_INPUT_TURBO_FIRE_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_TURBO];
|
||||
case MENU_ENUM_LABEL_LATENCY_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LATENCY];
|
||||
case MENU_ENUM_LABEL_SAVING_SETTINGS:
|
||||
case MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG:
|
||||
case MENU_ENUM_LABEL_SAVE_NEW_CONFIG:
|
||||
case MENU_ENUM_LABEL_CONFIG_SAVE_ON_EXIT:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_AS:
|
||||
case MENU_ENUM_LABEL_CHEAT_FILE_SAVE_AS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SAVING];
|
||||
case MENU_ENUM_LABEL_LOGGING_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LOG];
|
||||
case MENU_ENUM_LABEL_FRAME_THROTTLE_SETTINGS:
|
||||
case MENU_ENUM_LABEL_FASTFORWARD_RATIO:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FRAMESKIP];
|
||||
case MENU_ENUM_LABEL_QUICK_MENU_START_RECORDING:
|
||||
case MENU_ENUM_LABEL_RECORDING_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RECORD];
|
||||
case MENU_ENUM_LABEL_QUICK_MENU_START_STREAMING:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_STREAM];
|
||||
case MENU_ENUM_LABEL_QUICK_MENU_STOP_STREAMING:
|
||||
case MENU_ENUM_LABEL_QUICK_MENU_STOP_RECORDING:
|
||||
case MENU_ENUM_LABEL_CHEAT_DELETE_ALL:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_REMOVE_CORE:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_REMOVE_GAME:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_REMOVE_CONTENT_DIR:
|
||||
case MENU_ENUM_LABEL_CORE_DELETE:
|
||||
case MENU_ENUM_LABEL_DELETE_PLAYLIST:
|
||||
case MENU_ENUM_LABEL_CORE_DELETE_BACKUP_LIST:
|
||||
case MENU_ENUM_LABEL_VIDEO_FILTER_REMOVE:
|
||||
case MENU_ENUM_LABEL_AUDIO_DSP_PLUGIN_REMOVE:
|
||||
case MENU_ENUM_LABEL_GAME_SPECIFIC_CORE_OPTIONS_REMOVE:
|
||||
case MENU_ENUM_LABEL_FOLDER_SPECIFIC_CORE_OPTIONS_REMOVE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CLOSE];
|
||||
case MENU_ENUM_LABEL_CORE_OPTIONS_RESET:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_UNDO];
|
||||
case MENU_ENUM_LABEL_CORE_OPTIONS_FLUSH:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FILE];
|
||||
case MENU_ENUM_LABEL_CORE_LOCK:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE];
|
||||
case MENU_ENUM_LABEL_ONSCREEN_DISPLAY_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_OSD];
|
||||
case MENU_ENUM_LABEL_SHOW_WIMP:
|
||||
case MENU_ENUM_LABEL_USER_INTERFACE_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_UI];
|
||||
#ifdef HAVE_LAKKA_SWITCH
|
||||
case MENU_ENUM_LABEL_SWITCH_GPU_PROFILE:
|
||||
#endif
|
||||
#if defined(HAVE_LAKKA_SWITCH) || defined(HAVE_LIBNX)
|
||||
case MENU_ENUM_LABEL_SWITCH_CPU_PROFILE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_POWER];
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_POWER_MANAGEMENT_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_POWER];
|
||||
case MENU_ENUM_LABEL_RETRO_ACHIEVEMENTS_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENTS];
|
||||
case MENU_ENUM_LABEL_NETWORK_INFORMATION:
|
||||
case MENU_ENUM_LABEL_NETWORK_SETTINGS:
|
||||
case MENU_ENUM_LABEL_WIFI_SETTINGS:
|
||||
case MENU_ENUM_LABEL_NETWORK_INFO_ENTRY:
|
||||
case MENU_ENUM_LABEL_NETWORK_HOSTING_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_NETWORK];
|
||||
case MENU_ENUM_LABEL_BLUETOOTH_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_BLUETOOTH];
|
||||
case MENU_ENUM_LABEL_PLAYLIST_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_PLAYLIST];
|
||||
case MENU_ENUM_LABEL_USER_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_USER];
|
||||
case MENU_ENUM_LABEL_DIRECTORY_SETTINGS:
|
||||
case MENU_ENUM_LABEL_ADD_CONTENT_LIST:
|
||||
case MENU_ENUM_LABEL_SCAN_DIRECTORY:
|
||||
case MENU_ENUM_LABEL_MANUAL_CONTENT_SCAN_LIST:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_SAVE_CONTENT_DIR:
|
||||
case MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET_SAVE_PARENT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FOLDER];
|
||||
case MENU_ENUM_LABEL_PRIVACY_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_PRIVACY];
|
||||
|
||||
case MENU_ENUM_LABEL_REWIND_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_REWIND];
|
||||
case MENU_ENUM_LABEL_QUICK_MENU_OVERRIDE_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_OVERRIDE];
|
||||
case MENU_ENUM_LABEL_ONSCREEN_NOTIFICATIONS_SETTINGS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_NOTIFICATIONS];
|
||||
#ifdef HAVE_NETWORKING
|
||||
case MENU_ENUM_LABEL_NETPLAY_ENABLE_HOST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RUN];
|
||||
case MENU_ENUM_LABEL_NETPLAY_DISCONNECT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CLOSE];
|
||||
case MENU_ENUM_LABEL_NETPLAY_ENABLE_CLIENT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ROOM];
|
||||
case MENU_ENUM_LABEL_NETPLAY_REFRESH_ROOMS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RELOAD];
|
||||
#endif
|
||||
case MENU_ENUM_LABEL_REBOOT:
|
||||
case MENU_ENUM_LABEL_RESET_TO_DEFAULT_CONFIG:
|
||||
case MENU_ENUM_LABEL_CHEAT_RELOAD_CHEATS:
|
||||
case MENU_ENUM_LABEL_RESTART_RETROARCH:
|
||||
case MENU_ENUM_LABEL_VRR_RUNLOOP_ENABLE:
|
||||
case MENU_ENUM_LABEL_AUTOSAVE_INTERVAL:
|
||||
case MENU_ENUM_LABEL_FRAME_TIME_COUNTER_SETTINGS:
|
||||
case MENU_ENUM_LABEL_PLAYLIST_MANAGER_CLEAN_PLAYLIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RELOAD];
|
||||
case MENU_ENUM_LABEL_SHUTDOWN:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SHUTDOWN];
|
||||
case MENU_ENUM_LABEL_CONFIGURATIONS:
|
||||
case MENU_ENUM_LABEL_GAME_SPECIFIC_OPTIONS:
|
||||
case MENU_ENUM_LABEL_REMAP_FILE_LOAD:
|
||||
case MENU_ENUM_LABEL_AUTO_OVERRIDES_ENABLE:
|
||||
case MENU_ENUM_LABEL_AUTO_REMAPS_ENABLE:
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PRESET:
|
||||
case MENU_ENUM_LABEL_CHEAT_FILE_LOAD:
|
||||
case MENU_ENUM_LABEL_CHEAT_FILE_LOAD_APPEND:
|
||||
case MENU_ENUM_LABEL_SAVESTATE_AUTO_LOAD:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LOADSTATE];
|
||||
case MENU_ENUM_LABEL_CHEAT_APPLY_CHANGES:
|
||||
case MENU_ENUM_LABEL_SHADER_APPLY_CHANGES:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CHECKMARK];
|
||||
case MENU_ENUM_LABEL_CHEAT_ADD_NEW_AFTER:
|
||||
case MENU_ENUM_LABEL_CHEAT_ADD_NEW_BEFORE:
|
||||
case MENU_ENUM_LABEL_CHEAT_ADD_NEW_TOP:
|
||||
case MENU_ENUM_LABEL_CHEAT_ADD_NEW_BOTTOM:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MENU_ADD];
|
||||
case MENU_ENUM_LABEL_CHEAT_APPLY_AFTER_TOGGLE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_TOGGLE];
|
||||
case MENU_ENUM_LABEL_CHEAT_APPLY_AFTER_LOAD:
|
||||
case MENU_ENUM_LABEL_SAVESTATE_AUTO_INDEX:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_COG];
|
||||
case MENU_ENUM_LABEL_SAVESTATE_AUTO_SAVE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SAVESTATE];
|
||||
case MENU_ENUM_LABEL_SLOWMOTION_RATIO:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RESUME];
|
||||
case MENU_ENUM_LABEL_START_VIDEO_PROCESSOR:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MOVIE];
|
||||
#ifdef HAVE_LIBRETRODB
|
||||
case MENU_ENUM_LABEL_EXPLORE_ITEM:
|
||||
{
|
||||
uintptr_t icon = menu_explore_get_entry_icon(type);
|
||||
if (icon) return icon;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
switch(type)
|
||||
{
|
||||
case MENU_SET_CDROM_INFO:
|
||||
case MENU_SET_CDROM_LIST:
|
||||
case MENU_SET_LOAD_CDROM_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISC];
|
||||
case FILE_TYPE_DIRECTORY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FOLDER];
|
||||
case FILE_TYPE_PLAIN:
|
||||
case FILE_TYPE_IN_CARCHIVE:
|
||||
case FILE_TYPE_RPL_ENTRY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_FILE];
|
||||
case FILE_TYPE_SHADER:
|
||||
case FILE_TYPE_SHADER_PRESET:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS];
|
||||
case FILE_TYPE_CARCHIVE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ZIP];
|
||||
case FILE_TYPE_MUSIC:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MUSIC];
|
||||
case FILE_TYPE_IMAGE:
|
||||
case FILE_TYPE_IMAGEVIEWER:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_IMAGE];
|
||||
case FILE_TYPE_MOVIE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_MOVIE];
|
||||
case FILE_TYPE_CORE:
|
||||
case FILE_TYPE_DIRECT_LOAD:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE];
|
||||
case FILE_TYPE_RDB:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RDB];
|
||||
case FILE_TYPE_CURSOR:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CURSOR];
|
||||
case FILE_TYPE_PLAYLIST_ENTRY:
|
||||
case MENU_SETTING_ACTION_RUN:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RUN];
|
||||
case MENU_SETTING_ACTION_RESUME_ACHIEVEMENTS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RESUME];
|
||||
case MENU_SETTING_ACTION_CLOSE:
|
||||
case MENU_SETTING_ACTION_CLOSE_HORIZONTAL:
|
||||
case MENU_SETTING_ACTION_DELETE_ENTRY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CLOSE];
|
||||
case MENU_SETTING_ACTION_SAVESTATE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SAVESTATE];
|
||||
case MENU_SETTING_ACTION_LOADSTATE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_LOADSTATE];
|
||||
case FILE_TYPE_RDB_ENTRY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE_INFO];
|
||||
case MENU_SETTING_ACTION_CORE_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE_OPTIONS];
|
||||
case MENU_SETTING_ACTION_CORE_OPTION_OVERRIDE_LIST:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
case MENU_SETTING_ACTION_CORE_INPUT_REMAPPING_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_REMAPPING_OPTIONS];
|
||||
case MENU_SETTING_ACTION_CORE_CHEAT_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CHEAT_OPTIONS];
|
||||
case MENU_SETTING_ACTION_CORE_DISK_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_DISK_OPTIONS];
|
||||
case MENU_SETTING_ACTION_CORE_SHADER_OPTIONS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS];
|
||||
case MENU_SETTING_ACTION_SCREENSHOT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SCREENSHOT];
|
||||
case MENU_SETTING_ACTION_RESET:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RELOAD];
|
||||
case MENU_SETTING_ACTION_PAUSE_ACHIEVEMENTS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_PAUSE];
|
||||
case MENU_SETTING_GROUP:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
case MENU_SET_SCREEN_BRIGHTNESS:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_BRIGHTNESS];
|
||||
case MENU_INFO_MESSAGE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_CORE_INFO];
|
||||
case MENU_BLUETOOTH:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_BLUETOOTH];
|
||||
case MENU_WIFI:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_WIFI];
|
||||
#ifdef HAVE_NETWORKING
|
||||
case MENU_ROOM:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ROOM];
|
||||
case MENU_ROOM_LAN:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ROOM_LAN];
|
||||
case MENU_ROOM_RELAY:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ROOM_RELAY];
|
||||
#endif
|
||||
case MENU_SETTING_ACTION:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
case MENU_SETTINGS_INPUT_LIBRETRO_DEVICE:
|
||||
case MENU_SETTINGS_INPUT_INPUT_REMAP_PORT:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
case MENU_SETTINGS_INPUT_ANALOG_DPAD_MODE:
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_ADC];
|
||||
}
|
||||
|
||||
#ifdef HAVE_CHEEVOS
|
||||
if (
|
||||
(type >= MENU_SETTINGS_CHEEVOS_START) &&
|
||||
(type < MENU_SETTINGS_NETPLAY_ROOMS_START)
|
||||
)
|
||||
{
|
||||
char buffer[64];
|
||||
int index = type - MENU_SETTINGS_CHEEVOS_START;
|
||||
uintptr_t badge_texture = rcheevos_menu_get_badge_texture(index);
|
||||
if (badge_texture)
|
||||
return badge_texture;
|
||||
|
||||
/* no state means its a header - show the info icon */
|
||||
if (!rcheevos_menu_get_state(index, buffer, sizeof(buffer)))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INFO];
|
||||
|
||||
/* placeholder badge image was not found, show generic menu icon */
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENTS];
|
||||
}
|
||||
#endif
|
||||
|
||||
if (
|
||||
(type >= MENU_SETTINGS_INPUT_BEGIN) &&
|
||||
(type <= MENU_SETTINGS_INPUT_DESC_KBD_END)
|
||||
)
|
||||
{
|
||||
/* This part is only utilized by Input User # Binds */
|
||||
unsigned input_id;
|
||||
if (type < MENU_SETTINGS_INPUT_DESC_BEGIN)
|
||||
{
|
||||
input_id = MENU_SETTINGS_INPUT_BEGIN;
|
||||
if (type == input_id)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SETTING];
|
||||
if (type == input_id + 1)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_ADC];
|
||||
#ifdef HAVE_LIBNX
|
||||
/* account for the additional split joycon option in Input User # Binds */
|
||||
input_id++;
|
||||
#endif
|
||||
if (type == input_id + 2)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SETTINGS];
|
||||
if (type == input_id + 3)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_MOUSE];
|
||||
if (type == input_id + 4)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BIND_ALL];
|
||||
if (type == input_id + 5)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_RELOAD];
|
||||
if (type == input_id + 6)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SAVING];
|
||||
if ((type > (input_id + 30)) && (type < (input_id + 42)))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LGUN];
|
||||
if (type == input_id + 42)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_TURBO];
|
||||
/* align to use the same code of Quickmenu controls*/
|
||||
input_id = input_id + 7;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Quickmenu controls repeats the same icons for all users*/
|
||||
if (type < MENU_SETTINGS_INPUT_DESC_KBD_BEGIN)
|
||||
input_id = MENU_SETTINGS_INPUT_DESC_BEGIN;
|
||||
else
|
||||
input_id = MENU_SETTINGS_INPUT_DESC_KBD_BEGIN;
|
||||
while (type > (input_id + 23))
|
||||
input_id = (input_id + 24);
|
||||
|
||||
/* Human readable bind order */
|
||||
if (type < (input_id + RARCH_ANALOG_BIND_LIST_END))
|
||||
{
|
||||
unsigned index = 0;
|
||||
int input_num = type - input_id;
|
||||
for (index = 0; index < sizeof(input_config_bind_order); index++)
|
||||
{
|
||||
if (input_config_bind_order[index] == input_num)
|
||||
{
|
||||
type = input_id + index;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* This is utilized for both Input Binds and Quickmenu controls*/
|
||||
if (type == input_id)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_U];
|
||||
if (type == (input_id + 1))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_D];
|
||||
if (type == (input_id + 2))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_L];
|
||||
if (type == (input_id + 3))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_R];
|
||||
if (type == (input_id + 4))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_R];
|
||||
if (type == (input_id + 5))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_D];
|
||||
if (type == (input_id + 6))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_U];
|
||||
if (type == (input_id + 7))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_L];
|
||||
if (type == (input_id + 8))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SELECT];
|
||||
if (type == (input_id + 9))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_START];
|
||||
if (type == (input_id + 10))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LB];
|
||||
if (type == (input_id + 11))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RB];
|
||||
if (type == (input_id + 12))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LT];
|
||||
if (type == (input_id + 13))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RT];
|
||||
if (type == (input_id + 14))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_P];
|
||||
if (type == (input_id + 15))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_P];
|
||||
if (type == (input_id + 16))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_U];
|
||||
if (type == (input_id + 17))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_D];
|
||||
if (type == (input_id + 18))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_L];
|
||||
if (type == (input_id + 19))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_R];
|
||||
if (type == (input_id + 20))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_U];
|
||||
if (type == (input_id + 21))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_D];
|
||||
if (type == (input_id + 22))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_L];
|
||||
if (type == (input_id + 23))
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_R];
|
||||
}
|
||||
|
||||
if (
|
||||
(type >= MENU_SETTINGS_REMAPPING_PORT_BEGIN) &&
|
||||
(type <= MENU_SETTINGS_REMAPPING_PORT_END)
|
||||
)
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SETTINGS];
|
||||
|
||||
return ozone->icons_textures[OZONE_ENTRIES_ICONS_TEXTURE_SUBSETTING];
|
||||
}
|
||||
|
||||
const char *ozone_entries_icon_texture_path(unsigned id)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MAIN_MENU:
|
||||
#if defined(HAVE_LAKKA)
|
||||
return "lakka.png";
|
||||
#else
|
||||
return "retroarch.png";
|
||||
#endif
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SETTINGS:
|
||||
return "settings.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_HISTORY:
|
||||
return "history.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_FAVORITES:
|
||||
return "favorites.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ADD_FAVORITE:
|
||||
return "add-favorite.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MUSICS:
|
||||
return "musics.png";
|
||||
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MOVIES:
|
||||
return "movies.png";
|
||||
#endif
|
||||
#ifdef HAVE_IMAGEVIEWER
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_IMAGES:
|
||||
return "images.png";
|
||||
#endif
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SETTING:
|
||||
return "setting.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SUBSETTING:
|
||||
return "subsetting.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ARROW:
|
||||
return "arrow.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RUN:
|
||||
return "run.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CLOSE:
|
||||
return "close.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RESUME:
|
||||
return "resume.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CLOCK:
|
||||
return "clock.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_FULL:
|
||||
return "battery-full.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_CHARGING:
|
||||
return "battery-charging.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_80:
|
||||
return "battery-80.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_60:
|
||||
return "battery-60.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_40:
|
||||
return "battery-40.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_20:
|
||||
return "battery-20.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_POINTER:
|
||||
return "pointer.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SAVESTATE:
|
||||
return "savestate.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_LOADSTATE:
|
||||
return "loadstate.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_UNDO:
|
||||
return "undo.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CORE_INFO:
|
||||
return "core-infos.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BLUETOOTH:
|
||||
return "bluetooth.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_WIFI:
|
||||
return "wifi.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CORE_OPTIONS:
|
||||
return "core-options.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_REMAPPING_OPTIONS:
|
||||
return "core-input-remapping-options.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CHEAT_OPTIONS:
|
||||
return "core-cheat-options.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_DISK_OPTIONS:
|
||||
return "core-disk-options.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS:
|
||||
return "core-shader-options.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENT_LIST:
|
||||
return "achievement-list.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SCREENSHOT:
|
||||
return "screenshot.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RELOAD:
|
||||
return "reload.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RENAME:
|
||||
return "rename.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_FILE:
|
||||
return "file.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_FOLDER:
|
||||
return "folder.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ZIP:
|
||||
return "zip.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MUSIC:
|
||||
return "music.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_FAVORITE:
|
||||
return "favorites-content.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_IMAGE:
|
||||
return "image.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MOVIE:
|
||||
return "movie.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CORE:
|
||||
return "core.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RDB:
|
||||
return "database.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CURSOR:
|
||||
return "cursor.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SWITCH_ON:
|
||||
return "on.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SWITCH_OFF:
|
||||
return "off.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_DISC:
|
||||
return "disc.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ADD:
|
||||
return "add.png";
|
||||
#ifdef HAVE_NETWORKING
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_NETPLAY:
|
||||
return "netplay.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ROOM:
|
||||
return "menu_room.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ROOM_LAN:
|
||||
return "menu_room_lan.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ROOM_RELAY:
|
||||
return "menu_room_relay.png";
|
||||
#endif
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_KEY:
|
||||
return "key.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_KEY_HOVER:
|
||||
return "key-hover.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_DIALOG_SLICE:
|
||||
return "dialog-slice.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENTS:
|
||||
return "menu_achievements.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_AUDIO:
|
||||
return "menu_audio.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_DRIVERS:
|
||||
return "menu_drivers.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_EXIT:
|
||||
return "menu_exit.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_FRAMESKIP:
|
||||
return "menu_frameskip.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_HELP:
|
||||
return "menu_help.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INFO:
|
||||
return "menu_info.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SETTINGS:
|
||||
return "Libretro - Pad.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_LATENCY:
|
||||
return "menu_latency.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_NETWORK:
|
||||
return "menu_network.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_POWER:
|
||||
return "menu_power.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_RECORD:
|
||||
return "menu_record.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SAVING:
|
||||
return "menu_saving.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_UPDATER:
|
||||
return "menu_updater.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_VIDEO:
|
||||
return "menu_video.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MIXER:
|
||||
return "menu_mixer.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_LOG:
|
||||
return "menu_log.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_OSD:
|
||||
return "menu_osd.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_UI:
|
||||
return "menu_ui.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_USER:
|
||||
return "menu_user.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_PRIVACY:
|
||||
return "menu_privacy.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_PLAYLIST:
|
||||
return "menu_playlist.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_QUICKMENU:
|
||||
return "menu_quickmenu.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_REWIND:
|
||||
return "menu_rewind.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_OVERLAY:
|
||||
return "menu_overlay.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_OVERRIDE:
|
||||
return "menu_override.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_NOTIFICATIONS:
|
||||
return "menu_notifications.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_STREAM:
|
||||
return "menu_stream.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_SHUTDOWN:
|
||||
return "menu_shutdown.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_U:
|
||||
return "input_DPAD-U.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_D:
|
||||
return "input_DPAD-D.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_L:
|
||||
return "input_DPAD-L.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_R:
|
||||
return "input_DPAD-R.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_U:
|
||||
return "input_STCK-U.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_D:
|
||||
return "input_STCK-D.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_L:
|
||||
return "input_STCK-L.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_R:
|
||||
return "input_STCK-R.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_P:
|
||||
return "input_STCK-P.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_U:
|
||||
return "input_BTN-U.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_D:
|
||||
return "input_BTN-D.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_L:
|
||||
return "input_BTN-L.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_R:
|
||||
return "input_BTN-R.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LB:
|
||||
return "input_LB.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RB:
|
||||
return "input_RB.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LT:
|
||||
return "input_LT.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RT:
|
||||
return "input_RT.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SELECT:
|
||||
return "input_SELECT.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_START:
|
||||
return "input_START.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_CHECKMARK:
|
||||
return "menu_check.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MENU_ADD:
|
||||
return "menu_add.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_BRIGHTNESS:
|
||||
return "menu_brightness.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_PAUSE:
|
||||
return "menu_pause.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_TOGGLE:
|
||||
return "menu_apply_toggle.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_COG:
|
||||
return "menu_apply_cog.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_ADC:
|
||||
return "input_ADC.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BIND_ALL:
|
||||
return "input_BIND_ALL.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_MOUSE:
|
||||
return "input_MOUSE.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LGUN:
|
||||
return "input_LGUN.png";
|
||||
case OZONE_ENTRIES_ICONS_TEXTURE_INPUT_TURBO:
|
||||
return "input_TURBO.png";
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void ozone_unload_theme_textures(ozone_handle_t *ozone)
|
||||
{
|
||||
unsigned i, j;
|
||||
|
||||
for (j = 0; j < ozone_themes_count; j++)
|
||||
{
|
||||
ozone_theme_t *theme = ozone_themes[j];
|
||||
for (i = 0; i < OZONE_THEME_TEXTURE_LAST; i++)
|
||||
video_driver_texture_unload(&theme->textures[i]);
|
||||
}
|
||||
}
|
||||
|
||||
bool ozone_reset_theme_textures(ozone_handle_t *ozone)
|
||||
{
|
||||
unsigned i, j;
|
||||
char theme_path[255];
|
||||
bool result = true;
|
||||
|
||||
for (j = 0; j < ozone_themes_count; j++)
|
||||
{
|
||||
ozone_theme_t *theme = ozone_themes[j];
|
||||
|
||||
fill_pathname_join(
|
||||
theme_path,
|
||||
ozone->png_path,
|
||||
theme->name,
|
||||
sizeof(theme_path)
|
||||
);
|
||||
|
||||
for (i = 0; i < OZONE_THEME_TEXTURE_LAST; i++)
|
||||
{
|
||||
char filename[PATH_MAX_LENGTH];
|
||||
strlcpy(filename, OZONE_THEME_TEXTURES_FILES[i],
|
||||
sizeof(filename));
|
||||
strlcat(filename, FILE_PATH_PNG_EXTENSION, sizeof(filename));
|
||||
|
||||
if (!gfx_display_reset_textures_list(filename, theme_path, &theme->textures[i], TEXTURE_FILTER_MIPMAP_LINEAR, NULL, NULL))
|
||||
result = false;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
@ -1,199 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2017 - Daniel De Matteis
|
||||
* Copyright (C) 2014-2017 - Jean-André Santoni
|
||||
* Copyright (C) 2016-2019 - Brad Parker
|
||||
* Copyright (C) 2018 - Alfredo Monclús
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef _OZONE_TEXTURE_H
|
||||
#define _OZONE_TEXTURE_H
|
||||
|
||||
#include "ozone.h"
|
||||
|
||||
#include "../../menu_driver.h"
|
||||
|
||||
enum OZONE_TEXTURE
|
||||
{
|
||||
OZONE_TEXTURE_RETROARCH = 0,
|
||||
OZONE_TEXTURE_CURSOR_BORDER,
|
||||
#if 0
|
||||
OZONE_TEXTURE_DISCORD_OWN_AVATAR,
|
||||
#endif
|
||||
OZONE_TEXTURE_LAST
|
||||
};
|
||||
|
||||
enum OZONE_THEME_TEXTURES
|
||||
{
|
||||
OZONE_THEME_TEXTURE_SWITCH = 0,
|
||||
OZONE_THEME_TEXTURE_CHECK,
|
||||
|
||||
OZONE_THEME_TEXTURE_CURSOR_NO_BORDER,
|
||||
OZONE_THEME_TEXTURE_CURSOR_STATIC,
|
||||
|
||||
OZONE_THEME_TEXTURE_LAST
|
||||
};
|
||||
|
||||
enum OZONE_TAB_TEXTURES
|
||||
{
|
||||
OZONE_TAB_TEXTURE_MAIN_MENU = 0,
|
||||
OZONE_TAB_TEXTURE_SETTINGS,
|
||||
OZONE_TAB_TEXTURE_HISTORY,
|
||||
OZONE_TAB_TEXTURE_FAVORITES,
|
||||
OZONE_TAB_TEXTURE_MUSIC,
|
||||
OZONE_TAB_TEXTURE_VIDEO,
|
||||
OZONE_TAB_TEXTURE_IMAGE,
|
||||
OZONE_TAB_TEXTURE_NETWORK,
|
||||
OZONE_TAB_TEXTURE_SCAN_CONTENT,
|
||||
|
||||
OZONE_TAB_TEXTURE_LAST
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MAIN_MENU = 0,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SETTINGS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_HISTORY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_FAVORITES,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MUSICS,
|
||||
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MOVIES,
|
||||
#endif
|
||||
#ifdef HAVE_NETWORKING
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_NETPLAY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ROOM,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ROOM_LAN,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ROOM_RELAY,
|
||||
#endif
|
||||
#ifdef HAVE_IMAGEVIEWER
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_IMAGES,
|
||||
#endif
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SETTING,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SUBSETTING,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ARROW,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RUN,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CLOSE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RESUME,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SAVESTATE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_LOADSTATE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_UNDO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CORE_INFO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BLUETOOTH,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_WIFI,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CORE_OPTIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_REMAPPING_OPTIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CHEAT_OPTIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_DISK_OPTIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SHADER_OPTIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENT_LIST,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SCREENSHOT,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RELOAD,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RENAME,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_FILE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_FOLDER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ZIP,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_FAVORITE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ADD_FAVORITE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MUSIC,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_IMAGE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MOVIE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CORE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RDB,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CURSOR,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SWITCH_ON,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SWITCH_OFF,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CLOCK,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_FULL,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_CHARGING,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_80,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_60,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_40,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BATTERY_20,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_POINTER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ADD,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_DISC,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_KEY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_KEY_HOVER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_DIALOG_SLICE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_ACHIEVEMENTS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_AUDIO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_EXIT,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_FRAMESKIP,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INFO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_HELP,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_NETWORK,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_POWER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SAVING,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_UPDATER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_VIDEO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_RECORD,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SETTINGS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MIXER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_LOG,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_OSD,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_UI,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_USER,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_PRIVACY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_LATENCY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_DRIVERS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_PLAYLIST,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_QUICKMENU,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_REWIND,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_OVERLAY,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_OVERRIDE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_NOTIFICATIONS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_STREAM,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_SHUTDOWN,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_U,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_D,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_L,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_DPAD_R,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_U,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_D,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_L,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_R,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_STCK_P,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_SELECT,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_START,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_U,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_D,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_L,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BTN_R,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LB,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RB,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LT,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_RT,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_CHECKMARK,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MENU_ADD,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_BRIGHTNESS,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_PAUSE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_TOGGLE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_MENU_APPLY_COG,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_ADC,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_BIND_ALL,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_MOUSE,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_LGUN,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_INPUT_TURBO,
|
||||
OZONE_ENTRIES_ICONS_TEXTURE_LAST
|
||||
};
|
||||
|
||||
const char *ozone_entries_icon_texture_path(unsigned id);
|
||||
|
||||
uintptr_t ozone_entries_icon_get_texture(ozone_handle_t *ozone,
|
||||
enum msg_hash_enums enum_idx, unsigned type, bool active);
|
||||
|
||||
bool ozone_reset_theme_textures(ozone_handle_t *ozone);
|
||||
void ozone_unload_theme_textures(ozone_handle_t *ozone);
|
||||
|
||||
#endif
|
@ -1,688 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2018 - Daniel De Matteis
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* Required for default theme setting */
|
||||
#include "../../../config.def.h"
|
||||
|
||||
#include "ozone.h"
|
||||
#include "ozone_theme.h"
|
||||
#include "ozone_display.h"
|
||||
|
||||
static float ozone_sidebar_gradient_top_light[16] = {
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.922, 0.922, 0.922, 1.00,
|
||||
0.922, 0.922, 0.922, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_light[16] = {
|
||||
0.922, 0.922, 0.922, 1.00,
|
||||
0.922, 0.922, 0.922, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_dark[16] = {
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.18, 0.18, 0.18, 1.00,
|
||||
0.18, 0.18, 0.18, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_dark[16] = {
|
||||
0.18, 0.18, 0.18, 1.00,
|
||||
0.18, 0.18, 0.18, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_nord[16] = {
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.1921569f, 0.2196078f, 0.2705882f, 0.9f,
|
||||
0.1921569f, 0.2196078f, 0.2705882f, 0.9f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_nord[16] = {
|
||||
0.1921569f, 0.2196078f, 0.2705882f, 0.9f,
|
||||
0.1921569f, 0.2196078f, 0.2705882f, 0.9f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_gruvbox_dark[16] = {
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1686275f, 0.1686275f, 0.1686275f, 0.9f,
|
||||
0.1686275f, 0.1686275f, 0.1686275f, 0.9f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_gruvbox_dark[16] = {
|
||||
0.1686275f, 0.1686275f, 0.1686275f, 0.9f,
|
||||
0.1686275f, 0.1686275f, 0.1686275f, 0.9f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_light[16] = {
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
0.94, 0.94, 0.94, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_dark[16] = {
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
0.2, 0.2, 0.2, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_nord[16] = {
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
0.2078431f, 0.2352941f, 0.2901961f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_gruvbox_dark[16] = {
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
0.1960784f, 0.1882353f, 0.1843137f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_light[16] = {
|
||||
0.690, 0.690, 0.690, 0.75,
|
||||
0.690, 0.690, 0.690, 0.75,
|
||||
0.922, 0.922, 0.922, 1.0,
|
||||
0.922, 0.922, 0.922, 1.0
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_dark[16] = {
|
||||
0.176, 0.176, 0.176, 0.75,
|
||||
0.176, 0.176, 0.176, 0.75,
|
||||
0.178, 0.178, 0.178, 1.0,
|
||||
0.178, 0.178, 0.178, 1.0,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_nord[16] = {
|
||||
0.1803922f, 0.2039216f, 0.2509804f, 0.75f,
|
||||
0.1803922f, 0.2039216f, 0.2509804f, 0.75f,
|
||||
0.1803922f, 0.2039216f, 0.2509804f, 1.0f,
|
||||
0.1803922f, 0.2039216f, 0.2509804f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_gruvbox_dark[16] = {
|
||||
0.1568627f, 0.1568627f, 0.1568627f, 0.75f,
|
||||
0.1568627f, 0.1568627f, 0.1568627f, 0.75f,
|
||||
0.1568627f, 0.1568627f, 0.1568627f, 1.0f,
|
||||
0.1568627f, 0.1568627f, 0.1568627f, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_boysenberry[16] = {
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 0.75f,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 0.75f,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 0.75f,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 0.75f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_boysenberry[16] = {
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_boysenberry[16] = {
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.19215686274, 0.0, 0.04705882352, 1.00,
|
||||
0.19215686274, 0.0, 0.04705882352, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_boysenberry[16] = {
|
||||
0.19215686274, 0.0, 0.04705882352, 1.00,
|
||||
0.19215686274, 0.0, 0.04705882352, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
0.27058823529, 0.09803921568, 0.14117647058, 1.00,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_hacking_the_kernel[16] = {
|
||||
0.0, 0.0666666f, 0.0, 0.75f,
|
||||
0.0, 0.0666666f, 0.0, 0.75f,
|
||||
0.0, 0.0666666f, 0.0, 1.0f,
|
||||
0.0, 0.0666666f, 0.0, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_hacking_the_kernel[16] = {
|
||||
0.0, 0.1333333f, 0.0, 1.0f,
|
||||
0.0, 0.1333333f, 0.0, 1.0f,
|
||||
0.0, 0.1333333f, 0.0, 1.0f,
|
||||
0.0, 0.1333333f, 0.0, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_hacking_the_kernel[16] = {
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_hacking_the_kernel[16] = {
|
||||
0.0, 0.0666666f, 0.0, 1.0f,
|
||||
0.0, 0.0666666f, 0.0, 1.0f,
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
0.0, 0.13333333, 0.0, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_twilight_zone[16] = {
|
||||
0.0078431, 0.0, 0.0156862, 0.75f,
|
||||
0.0078431, 0.0, 0.0156862, 0.75f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_twilight_zone[16] = {
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_twilight_zone[16] = {
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_twilight_zone[16] = {
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
0.0078431, 0.0, 0.0156862, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_background_libretro_running_dracula[16] = {
|
||||
0.1568627, 0.1647058, 0.2117647, 0.75f,
|
||||
0.1568627, 0.1647058, 0.2117647, 0.75f,
|
||||
0.1568627, 0.1647058, 0.2117647, 1.0f,
|
||||
0.1568627, 0.1647058, 0.2117647, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_background_dracula[16] = {
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_top_dracula[16] = {
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
};
|
||||
|
||||
static float ozone_sidebar_gradient_bottom_dracula[16] = {
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
0.2666666, 0.2784314, 0.3529412, 1.0f,
|
||||
};
|
||||
|
||||
|
||||
static float ozone_border_0_light[16] = COLOR_HEX_TO_FLOAT(0x50EFD9, 1.00);
|
||||
static float ozone_border_1_light[16] = COLOR_HEX_TO_FLOAT(0x0DB6D5, 1.00);
|
||||
|
||||
static float ozone_border_0_dark[16] = COLOR_HEX_TO_FLOAT(0x198AC6, 1.00);
|
||||
static float ozone_border_1_dark[16] = COLOR_HEX_TO_FLOAT(0x89F1F2, 1.00);
|
||||
|
||||
static float ozone_border_0_nord[16] = COLOR_HEX_TO_FLOAT(0x5E81AC, 1.0f);
|
||||
static float ozone_border_1_nord[16] = COLOR_HEX_TO_FLOAT(0x88C0D0, 1.0f);
|
||||
|
||||
static float ozone_border_0_gruvbox_dark[16] = COLOR_HEX_TO_FLOAT(0xAF3A03, 1.0f);
|
||||
static float ozone_border_1_gruvbox_dark[16] = COLOR_HEX_TO_FLOAT(0xFE8019, 1.0f);
|
||||
|
||||
static float ozone_border_0_boysenberry[16] = COLOR_HEX_TO_FLOAT(0x50EFD9, 1.00);
|
||||
static float ozone_border_1_boysenberry[16] = COLOR_HEX_TO_FLOAT(0x0DB6D5, 1.00);
|
||||
|
||||
static float ozone_border_0_hacking_the_kernel[16] = COLOR_HEX_TO_FLOAT(0x008C00, 1.0f);
|
||||
static float ozone_border_1_hacking_the_kernel[16] = COLOR_HEX_TO_FLOAT(0x00E000, 1.0f);
|
||||
|
||||
static float ozone_border_0_twilight_zone[16] = COLOR_HEX_TO_FLOAT(0xC3A0E0, 1.0f);
|
||||
static float ozone_border_1_twilight_zone[16] = COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0f);
|
||||
|
||||
static float ozone_border_0_dracula[16] = COLOR_HEX_TO_FLOAT(0xC3A0E0, 1.0f);
|
||||
static float ozone_border_1_dracula[16] = COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0f);
|
||||
|
||||
|
||||
ozone_theme_t ozone_theme_light = {
|
||||
COLOR_HEX_TO_FLOAT(0xEBEBEB, 1.00), /* background */
|
||||
ozone_background_libretro_running_light, /* background_libretro_running */
|
||||
|
||||
COLOR_HEX_TO_FLOAT(0x2B2B2B, 1.00), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0x333333, 1.00), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0xFFFFFF, 1.00), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0x10BEC5, 1.00), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0xCDCDCD, 1.00), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0x333333, 1.00), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0x374CFF, 1.00), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0xF0F0F0, 1.00), /* message_background */
|
||||
|
||||
0x333333FF, /* text_rgba */
|
||||
0x374CFFFF, /* text_selected_rgba */
|
||||
0x878787FF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xEBEBEB, /* screensaver_tint */
|
||||
|
||||
ozone_sidebar_background_light, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_light, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_light, /* sidebar_bottom_gradient */
|
||||
|
||||
ozone_border_0_light, /* cursor_border_0 */
|
||||
ozone_border_1_light, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"light" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_dark = {
|
||||
COLOR_HEX_TO_FLOAT(0x2D2D2D, 1.00), /* background */
|
||||
ozone_background_libretro_running_dark, /* background_libretro_running */
|
||||
|
||||
COLOR_HEX_TO_FLOAT(0xFFFFFF, 1.00), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xFFFFFF, 1.00), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x212227, 1.00), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0x2DA3CB, 1.00), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x51514F, 1.00), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xFFFFFF, 1.00), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0x00D9AE, 1.00), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x464646, 1.00), /* message_background */
|
||||
|
||||
0xFFFFFFFF, /* text_rgba */
|
||||
0x00FFC5FF, /* text_selected_rgba */
|
||||
0x9F9FA1FF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xFFFFFF, /* screensaver_tint */
|
||||
|
||||
ozone_sidebar_background_dark, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_dark, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_dark, /* sidebar_bottom_gradient */
|
||||
|
||||
ozone_border_0_dark, /* cursor_border_0 */
|
||||
ozone_border_1_dark, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"dark" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_nord = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x2E3440, 1.0f), /* background */
|
||||
ozone_background_libretro_running_nord, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0xD8DEE9, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xECEFF4, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x232730, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0x73A1BE, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x4C566A, 1.0f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xE5E9F0, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0xA9C791, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x434C5E, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0xECEFF4FF, /* text_rgba */
|
||||
0xA9C791FF, /* text_selected_rgba */
|
||||
0x8FBCBBFF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xECEFF4, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_nord, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_nord, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_nord, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_nord, /* cursor_border_0 */
|
||||
ozone_border_1_nord, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"nord" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_gruvbox_dark = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x282828, 1.0f), /* background */
|
||||
ozone_background_libretro_running_gruvbox_dark, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0xD5C4A1, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xEBDBB2, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x1D2021, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0xD75D0E, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x665C54, 1.0f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xEBDBB2, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0x8EC07C, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x32302F, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0xEBDBB2FF, /* text_rgba */
|
||||
0x8EC07CFF, /* text_selected_rgba */
|
||||
0xD79921FF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xEBDBB2, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_gruvbox_dark, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_gruvbox_dark, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_gruvbox_dark, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_gruvbox_dark, /* cursor_border_0 */
|
||||
ozone_border_1_gruvbox_dark, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"gruvbox_dark" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_boysenberry = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x31000C, 1.0f), /* background */
|
||||
ozone_background_libretro_running_boysenberry, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0x85535F, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xEBDBB2, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x4E2A35, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0xD599FF, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x73434C, 1.0f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xFEBCFF, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0xD599FF, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x32302F, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0xFEBCFFFF, /* text_rgba */
|
||||
0xFEBCFFFF, /* text_selected_rgba */
|
||||
0xD599FFFF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xFEBCFF, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_boysenberry, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_boysenberry, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_boysenberry, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_boysenberry, /* cursor_border_0 */
|
||||
ozone_border_1_boysenberry, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"boysenberry" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_hacking_the_kernel = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x001100, 1.0f), /* background */
|
||||
ozone_background_libretro_running_hacking_the_kernel, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0x17C936, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0x00FF29, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x003400, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0x1BDA3C, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x008C00, 0.1f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0x00FF00, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0x8EC07C, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x0D0E0F, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0x00E528FF, /* text_rgba */
|
||||
0x83FF83FF, /* text_selected_rgba */
|
||||
0x53E63DFF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0x00E528, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_hacking_the_kernel, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_hacking_the_kernel, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_hacking_the_kernel, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_hacking_the_kernel, /* cursor_border_0 */
|
||||
ozone_border_1_hacking_the_kernel, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"hacking_the_kernel" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_twilight_zone = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x020004, 1.0f), /* background */
|
||||
ozone_background_libretro_running_twilight_zone, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0x5B5069, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xF7F0FA, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x232038, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0x9B61CC, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0xC27AFF, 1.0f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xFFFFFF, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0xB78CC8, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0xB78CC8, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0xFDFCFEFF, /* text_rgba */
|
||||
0xB78CC8FF, /* text_selected_rgba */
|
||||
0x9A6C99FF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xFDFCFE, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_twilight_zone, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_twilight_zone, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_twilight_zone, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_twilight_zone, /* cursor_border_0 */
|
||||
ozone_border_1_twilight_zone, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"twilight_zone" /* name */
|
||||
};
|
||||
|
||||
ozone_theme_t ozone_theme_dracula = {
|
||||
/* Background color */
|
||||
COLOR_HEX_TO_FLOAT(0x282A36, 1.0f), /* background */
|
||||
ozone_background_libretro_running_dracula, /* background_libretro_running */
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
COLOR_HEX_TO_FLOAT(0x44475A, 1.0f), /* header_footer_separator */
|
||||
COLOR_HEX_TO_FLOAT(0xF8F8F2, 1.0f), /* text */
|
||||
COLOR_HEX_TO_FLOAT(0x44475A, 1.0f), /* selection */
|
||||
COLOR_HEX_TO_FLOAT(0xBD93F9, 1.0f), /* selection_border */
|
||||
COLOR_HEX_TO_FLOAT(0x44475A, 1.0f), /* entries_border */
|
||||
COLOR_HEX_TO_FLOAT(0xF8F8F2, 1.0f), /* entries_icon */
|
||||
COLOR_HEX_TO_FLOAT(0xF8F8F2, 1.0f), /* text_selected */
|
||||
COLOR_HEX_TO_FLOAT(0x6272A4, 1.0f), /* message_background */
|
||||
|
||||
/* RGBA colors for text */
|
||||
0xF8F8F2FF, /* text_rgba */
|
||||
0xFF79C6FF, /* text_selected_rgba */
|
||||
0xBD93F9FF, /* text_sublabel_rgba */
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
0xF8F8F2, /* screensaver_tint */
|
||||
|
||||
/* Sidebar color */
|
||||
ozone_sidebar_background_dracula, /* sidebar_background */
|
||||
ozone_sidebar_gradient_top_dracula, /* sidebar_top_gradient */
|
||||
ozone_sidebar_gradient_bottom_dracula, /* sidebar_bottom_gradient */
|
||||
|
||||
/* Fancy cursor colors */
|
||||
ozone_border_0_dracula, /* cursor_border_0 */
|
||||
ozone_border_1_dracula, /* cursor_border_1 */
|
||||
|
||||
{0}, /* textures */
|
||||
|
||||
"dracula" /* name */
|
||||
};
|
||||
|
||||
|
||||
ozone_theme_t *ozone_themes[] = {
|
||||
&ozone_theme_light,
|
||||
&ozone_theme_dark,
|
||||
&ozone_theme_nord,
|
||||
&ozone_theme_gruvbox_dark,
|
||||
&ozone_theme_boysenberry,
|
||||
&ozone_theme_hacking_the_kernel,
|
||||
&ozone_theme_twilight_zone,
|
||||
&ozone_theme_dracula
|
||||
|
||||
};
|
||||
|
||||
const unsigned ozone_themes_count = sizeof(ozone_themes) / sizeof(ozone_themes[0]);
|
||||
/* TODO/FIXME - global variables referenced outside */
|
||||
unsigned last_color_theme = 0;
|
||||
bool last_use_preferred_system_color_theme = false;
|
||||
ozone_theme_t *ozone_default_theme = &ozone_theme_dark; /* also used as a tag for cursor animation */
|
||||
/* Enable runtime configuration of framebuffer
|
||||
* opacity */
|
||||
float last_framebuffer_opacity = -1.0f;
|
||||
|
||||
void ozone_set_color_theme(ozone_handle_t *ozone, unsigned color_theme)
|
||||
{
|
||||
ozone_theme_t *theme = ozone_default_theme;
|
||||
|
||||
if (!ozone)
|
||||
return;
|
||||
|
||||
switch (color_theme)
|
||||
{
|
||||
case OZONE_COLOR_THEME_BASIC_WHITE:
|
||||
theme = &ozone_theme_light;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_BASIC_BLACK:
|
||||
theme = &ozone_theme_dark;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_NORD:
|
||||
theme = &ozone_theme_nord;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_GRUVBOX_DARK:
|
||||
theme = &ozone_theme_gruvbox_dark;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_BOYSENBERRY:
|
||||
theme = &ozone_theme_boysenberry;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_HACKING_THE_KERNEL:
|
||||
theme = &ozone_theme_hacking_the_kernel;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_TWILIGHT_ZONE:
|
||||
theme = &ozone_theme_twilight_zone;
|
||||
break;
|
||||
case OZONE_COLOR_THEME_DRACULA:
|
||||
theme = &ozone_theme_dracula;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
ozone->theme = theme;
|
||||
|
||||
memcpy(ozone->theme_dynamic.selection_border, ozone->theme->selection_border, sizeof(ozone->theme_dynamic.selection_border));
|
||||
memcpy(ozone->theme_dynamic.selection, ozone->theme->selection, sizeof(ozone->theme_dynamic.selection));
|
||||
memcpy(ozone->theme_dynamic.entries_border, ozone->theme->entries_border, sizeof(ozone->theme_dynamic.entries_border));
|
||||
memcpy(ozone->theme_dynamic.entries_icon, ozone->theme->entries_icon, sizeof(ozone->theme_dynamic.entries_icon));
|
||||
memcpy(ozone->theme_dynamic.entries_checkmark, ozone->pure_white, sizeof(ozone->theme_dynamic.entries_checkmark));
|
||||
memcpy(ozone->theme_dynamic.cursor_alpha, ozone->pure_white, sizeof(ozone->theme_dynamic.cursor_alpha));
|
||||
memcpy(ozone->theme_dynamic.message_background, ozone->theme->message_background, sizeof(ozone->theme_dynamic.message_background));
|
||||
|
||||
ozone_restart_cursor_animation(ozone);
|
||||
|
||||
last_color_theme = color_theme;
|
||||
}
|
||||
|
||||
unsigned ozone_get_system_theme(void)
|
||||
{
|
||||
#ifdef HAVE_LIBNX
|
||||
unsigned ret = 0;
|
||||
if (R_SUCCEEDED(setsysInitialize()))
|
||||
{
|
||||
ColorSetId theme;
|
||||
setsysGetColorSetId(&theme);
|
||||
ret = (theme == ColorSetId_Dark) ? 1 : 0;
|
||||
setsysExit();
|
||||
}
|
||||
|
||||
return ret;
|
||||
#else
|
||||
return DEFAULT_OZONE_COLOR_THEME;
|
||||
#endif
|
||||
}
|
||||
|
||||
void ozone_set_background_running_opacity(
|
||||
ozone_handle_t *ozone, float framebuffer_opacity)
|
||||
{
|
||||
static float background_running_alpha_top = 1.0f;
|
||||
static float background_running_alpha_bottom = 0.75f;
|
||||
float *background = NULL;
|
||||
|
||||
if (!ozone || !ozone->theme->background_libretro_running)
|
||||
return;
|
||||
|
||||
background =
|
||||
ozone->theme->background_libretro_running;
|
||||
|
||||
/* When content is running, background is a
|
||||
* gradient that from top to bottom transitions
|
||||
* from maximum to minimum opacity
|
||||
* > RetroArch default 'framebuffer_opacity'
|
||||
* is 0.900. At this setting:
|
||||
* - Background top has an alpha of 1.0
|
||||
* - Background bottom has an alpha of 0.75 */
|
||||
background_running_alpha_top = framebuffer_opacity / 0.9f;
|
||||
background_running_alpha_top = (background_running_alpha_top > 1.0f) ?
|
||||
1.0f : (background_running_alpha_top < 0.0f) ?
|
||||
0.0f : background_running_alpha_top;
|
||||
|
||||
background_running_alpha_bottom = (2.5f * framebuffer_opacity) - 1.5f;
|
||||
background_running_alpha_bottom = (background_running_alpha_bottom > 1.0f) ?
|
||||
1.0f : (background_running_alpha_bottom < 0.0f) ?
|
||||
0.0f : background_running_alpha_bottom;
|
||||
|
||||
background[11] = background_running_alpha_top;
|
||||
background[15] = background_running_alpha_top;
|
||||
background[3] = background_running_alpha_bottom;
|
||||
background[7] = background_running_alpha_bottom;
|
||||
|
||||
last_framebuffer_opacity = framebuffer_opacity;
|
||||
}
|
@ -1,85 +0,0 @@
|
||||
/* RetroArch - A frontend for libretro.
|
||||
* Copyright (C) 2011-2018 - Daniel De Matteis
|
||||
* Copyright (C) 2018 - natinusala
|
||||
*
|
||||
* RetroArch is free software: you can redistribute it and/or modify it under the terms
|
||||
* of the GNU General Public License as published by the Free Software Found-
|
||||
* ation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with RetroArch.
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef _OZONE_THEME_H
|
||||
#define _OZONE_THEME_H
|
||||
|
||||
#include "ozone.h"
|
||||
#include "ozone_texture.h"
|
||||
|
||||
typedef struct ozone_theme
|
||||
{
|
||||
/* Background color */
|
||||
float background[16];
|
||||
float *background_libretro_running;
|
||||
|
||||
/* Float colors for quads and icons */
|
||||
float header_footer_separator[16];
|
||||
float text[16];
|
||||
float selection[16];
|
||||
float selection_border[16];
|
||||
float entries_border[16];
|
||||
float entries_icon[16];
|
||||
float text_selected[16];
|
||||
float message_background[16];
|
||||
|
||||
/* RGBA colors for text */
|
||||
uint32_t text_rgba;
|
||||
uint32_t text_selected_rgba;
|
||||
uint32_t text_sublabel_rgba;
|
||||
|
||||
/* Screensaver 'tint' (RGB24) */
|
||||
uint32_t screensaver_tint;
|
||||
|
||||
/* Sidebar color */
|
||||
float *sidebar_background;
|
||||
float *sidebar_top_gradient;
|
||||
float *sidebar_bottom_gradient;
|
||||
|
||||
/*
|
||||
Fancy cursor colors
|
||||
*/
|
||||
float *cursor_border_0;
|
||||
float *cursor_border_1;
|
||||
|
||||
uintptr_t textures[OZONE_THEME_TEXTURE_LAST];
|
||||
|
||||
const char *name;
|
||||
} ozone_theme_t;
|
||||
|
||||
extern ozone_theme_t ozone_theme_light;
|
||||
extern ozone_theme_t ozone_theme_dark;
|
||||
extern ozone_theme_t ozone_theme_nord;
|
||||
extern ozone_theme_t ozone_theme_gruvbox_dark;
|
||||
extern ozone_theme_t ozone_theme_boysenberry;
|
||||
extern ozone_theme_t ozone_theme_hacking_the_kernel;
|
||||
extern ozone_theme_t ozone_theme_twilight_zone;
|
||||
extern ozone_theme_t ozone_theme_dracula;
|
||||
|
||||
extern ozone_theme_t *ozone_themes[];
|
||||
|
||||
/* TODO/FIXME - global variables referenced outside */
|
||||
extern const unsigned ozone_themes_count;
|
||||
extern unsigned last_color_theme;
|
||||
extern bool last_use_preferred_system_color_theme;
|
||||
extern ozone_theme_t *ozone_default_theme;
|
||||
extern float last_framebuffer_opacity;
|
||||
|
||||
void ozone_set_color_theme(ozone_handle_t *ozone, unsigned color_theme);
|
||||
unsigned ozone_get_system_theme(void);
|
||||
void ozone_set_background_running_opacity(ozone_handle_t *ozone, float framebuffer_opacity);
|
||||
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user