mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-04-20 15:25:33 +02:00
Improve constness with Clipboard APIs
This commit is contained in:
committed by
Ryan C. Gordon
parent
509a36db16
commit
43c928ee86
@@ -252,7 +252,7 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata);
|
||||
* \sa SDL_GetClipboardData
|
||||
* \sa SDL_HasClipboardData
|
||||
*/
|
||||
extern SDL_DECLSPEC bool SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types);
|
||||
extern SDL_DECLSPEC bool SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char *const *mime_types, size_t num_mime_types);
|
||||
|
||||
/**
|
||||
* Clear the clipboard data.
|
||||
|
||||
@@ -830,7 +830,7 @@ SDL_DYNAPI_PROC(bool,SDL_SetAudioStreamInputChannelMap,(SDL_AudioStream *a, cons
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetAudioStreamOutputChannelMap,(SDL_AudioStream *a, const int *b, int c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetAudioStreamPutCallback,(SDL_AudioStream *a, SDL_AudioStreamCallback b, void *c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetBooleanProperty,(SDL_PropertiesID a, const char *b, bool c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetClipboardData,(SDL_ClipboardDataCallback a, SDL_ClipboardCleanupCallback b, void *c, const char **d, size_t e),(a,b,c,d,e),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetClipboardData,(SDL_ClipboardDataCallback a, SDL_ClipboardCleanupCallback b, void *c, const char *const *d, size_t e),(a,b,c,d,e),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetClipboardText,(const char *a),(a),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetCurrentThreadPriority,(SDL_ThreadPriority a),(a),return)
|
||||
SDL_DYNAPI_PROC(bool,SDL_SetCursor,(SDL_Cursor *a),(a),return)
|
||||
|
||||
@@ -62,7 +62,7 @@ void SDL_CancelClipboardData(Uint32 sequence)
|
||||
_this->clipboard_userdata = NULL;
|
||||
}
|
||||
|
||||
bool SDL_SaveClipboardMimeTypes(const char **mime_types, size_t num_mime_types)
|
||||
bool SDL_SaveClipboardMimeTypes(const char *const *mime_types, size_t num_mime_types)
|
||||
{
|
||||
SDL_VideoDevice *_this = SDL_GetVideoDevice();
|
||||
|
||||
@@ -93,7 +93,7 @@ bool SDL_SaveClipboardMimeTypes(const char **mime_types, size_t num_mime_types)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types)
|
||||
bool SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char *const *mime_types, size_t num_mime_types)
|
||||
{
|
||||
SDL_VideoDevice *_this = SDL_GetVideoDevice();
|
||||
|
||||
@@ -265,7 +265,7 @@ bool SDL_HasClipboardData(const char *mime_type)
|
||||
}
|
||||
}
|
||||
|
||||
char **SDL_CopyClipboardMimeTypes(const char **clipboard_mime_types, size_t num_mime_types, bool temporary)
|
||||
char **SDL_CopyClipboardMimeTypes(const char *const *clipboard_mime_types, size_t num_mime_types, bool temporary)
|
||||
{
|
||||
size_t allocSize = sizeof(char *);
|
||||
for (size_t i = 0; i < num_mime_types; i++) {
|
||||
@@ -326,12 +326,12 @@ bool SDL_IsTextMimeType(const char *mime_type)
|
||||
return (SDL_strncmp(mime_type, "text", 4) == 0);
|
||||
}
|
||||
|
||||
static const char **SDL_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
static const char *const *SDL_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
{
|
||||
if (_this->GetTextMimeTypes) {
|
||||
return _this->GetTextMimeTypes(_this, num_mime_types);
|
||||
} else {
|
||||
static const char *text_mime_types[] = {
|
||||
static const char *const text_mime_types[] = {
|
||||
"text/plain;charset=utf-8"
|
||||
};
|
||||
|
||||
@@ -355,7 +355,7 @@ bool SDL_SetClipboardText(const char *text)
|
||||
{
|
||||
SDL_VideoDevice *_this = SDL_GetVideoDevice();
|
||||
size_t num_mime_types;
|
||||
const char **text_mime_types;
|
||||
const char *const *text_mime_types;
|
||||
|
||||
if (!_this) {
|
||||
return SDL_UninitializedVideo();
|
||||
@@ -373,7 +373,7 @@ char *SDL_GetClipboardText(void)
|
||||
{
|
||||
SDL_VideoDevice *_this = SDL_GetVideoDevice();
|
||||
size_t i, num_mime_types;
|
||||
const char **text_mime_types;
|
||||
const char *const *text_mime_types;
|
||||
size_t length;
|
||||
char *text = NULL;
|
||||
|
||||
@@ -401,7 +401,7 @@ bool SDL_HasClipboardText(void)
|
||||
{
|
||||
SDL_VideoDevice *_this = SDL_GetVideoDevice();
|
||||
size_t i, num_mime_types;
|
||||
const char **text_mime_types;
|
||||
const char *const *text_mime_types;
|
||||
|
||||
if (!_this) {
|
||||
return SDL_UninitializedVideo();
|
||||
|
||||
@@ -39,8 +39,8 @@ extern bool SDL_HasInternalClipboardData(SDL_VideoDevice *_this, const char *mim
|
||||
// General purpose clipboard text callback
|
||||
const void * SDLCALL SDL_ClipboardTextCallback(void *userdata, const char *mime_type, size_t *size);
|
||||
|
||||
bool SDL_SaveClipboardMimeTypes(const char **mime_types, size_t num_mime_types);
|
||||
bool SDL_SaveClipboardMimeTypes(const char *const *mime_types, size_t num_mime_types);
|
||||
void SDL_FreeClipboardMimeTypes(SDL_VideoDevice *_this);
|
||||
char **SDL_CopyClipboardMimeTypes(const char **clipboard_mime_types, size_t num_mime_types, bool temporary);
|
||||
char **SDL_CopyClipboardMimeTypes(const char *const *clipboard_mime_types, size_t num_mime_types, bool temporary);
|
||||
|
||||
#endif // SDL_clipboard_c_h_
|
||||
|
||||
@@ -376,7 +376,7 @@ struct SDL_VideoDevice
|
||||
void (*SetTextInputProperties)(SDL_VideoDevice *_this, SDL_Window *window, SDL_PropertiesID props);
|
||||
|
||||
// Clipboard
|
||||
const char **(*GetTextMimeTypes)(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
const char *const *(*GetTextMimeTypes)(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
bool (*SetClipboardData)(SDL_VideoDevice *_this);
|
||||
void *(*GetClipboardData)(SDL_VideoDevice *_this, const char *mime_type, size_t *size);
|
||||
bool (*HasClipboardData)(SDL_VideoDevice *_this, const char *mime_type);
|
||||
|
||||
@@ -96,7 +96,7 @@ bool Wayland_HasClipboardData(SDL_VideoDevice *_this, const char *mime_type)
|
||||
return result;
|
||||
}
|
||||
|
||||
static const char *text_mime_types[] = {
|
||||
static const char *const text_mime_types[] = {
|
||||
TEXT_MIME,
|
||||
"text/plain",
|
||||
"TEXT",
|
||||
@@ -104,7 +104,7 @@ static const char *text_mime_types[] = {
|
||||
"STRING"
|
||||
};
|
||||
|
||||
const char **Wayland_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
const char *const *Wayland_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
{
|
||||
*num_mime_types = SDL_arraysize(text_mime_types);
|
||||
return text_mime_types;
|
||||
@@ -185,7 +185,7 @@ bool Wayland_HasPrimarySelectionText(SDL_VideoDevice *_this)
|
||||
result = true;
|
||||
} else {
|
||||
size_t mime_count = 0;
|
||||
const char **mime_types = Wayland_GetTextMimeTypes(_this, &mime_count);
|
||||
const char *const *mime_types = Wayland_GetTextMimeTypes(_this, &mime_count);
|
||||
for (size_t i = 0; i < mime_count; i++) {
|
||||
if (Wayland_primary_selection_offer_has_mime(primary_selection_device->selection_offer, mime_types[i])) {
|
||||
result = true;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef SDL_waylandclipboard_h_
|
||||
#define SDL_waylandclipboard_h_
|
||||
|
||||
extern const char **Wayland_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
extern const char *const *Wayland_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
extern bool Wayland_SetClipboardData(SDL_VideoDevice *_this);
|
||||
extern void *Wayland_GetClipboardData(SDL_VideoDevice *_this, const char *mime_type, size_t *length);
|
||||
extern bool Wayland_HasClipboardData(SDL_VideoDevice *_this, const char *mime_type);
|
||||
|
||||
@@ -705,7 +705,7 @@ bool Wayland_data_device_set_selection(SDL_WaylandDataDevice *data_device,
|
||||
|
||||
bool Wayland_primary_selection_device_set_selection(SDL_WaylandPrimarySelectionDevice *primary_selection_device,
|
||||
SDL_WaylandPrimarySelectionSource *source,
|
||||
const char **mime_types,
|
||||
const char *const *mime_types,
|
||||
size_t mime_count)
|
||||
{
|
||||
bool result = true;
|
||||
|
||||
@@ -167,7 +167,7 @@ extern bool Wayland_data_device_set_selection(SDL_WaylandDataDevice *device,
|
||||
size_t mime_count);
|
||||
extern bool Wayland_primary_selection_device_set_selection(SDL_WaylandPrimarySelectionDevice *device,
|
||||
SDL_WaylandPrimarySelectionSource *source,
|
||||
const char **mime_types,
|
||||
const char *const *mime_types,
|
||||
size_t mime_count);
|
||||
extern void Wayland_data_device_set_serial(SDL_WaylandDataDevice *device,
|
||||
uint32_t serial);
|
||||
|
||||
@@ -2824,7 +2824,7 @@ static void data_device_handle_enter(void *data, struct wl_data_device *wl_data_
|
||||
}
|
||||
|
||||
size_t mime_count = 0;
|
||||
const char **text_mime_types = Wayland_GetTextMimeTypes(SDL_GetVideoDevice(), &mime_count);
|
||||
const char *const *text_mime_types = Wayland_GetTextMimeTypes(SDL_GetVideoDevice(), &mime_count);
|
||||
for (size_t i = 0; i < mime_count; ++i) {
|
||||
if (Wayland_data_offer_has_mime(data_device->drag_offer, text_mime_types[i])) {
|
||||
data_device->has_mime_text = true;
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include "../SDL_clipboard_c.h"
|
||||
#include "../../events/SDL_events_c.h"
|
||||
|
||||
static const char *text_mime_types[] = {
|
||||
static const char *const text_mime_types[] = {
|
||||
"UTF8_STRING",
|
||||
"text/plain;charset=utf-8",
|
||||
"text/plain",
|
||||
@@ -62,7 +62,7 @@ Window GetWindow(SDL_VideoDevice *_this)
|
||||
}
|
||||
|
||||
static bool SetSelectionData(SDL_VideoDevice *_this, Atom selection, SDL_ClipboardDataCallback callback,
|
||||
void *userdata, const char **mime_types, size_t mime_count, Uint32 sequence)
|
||||
void *userdata, const char *const *mime_types, size_t mime_count, Uint32 sequence)
|
||||
{
|
||||
SDL_VideoData *videodata = _this->internal;
|
||||
Display *display = videodata->display;
|
||||
@@ -258,7 +258,7 @@ static void *GetSelectionData(SDL_VideoDevice *_this, Atom selection_type,
|
||||
return data;
|
||||
}
|
||||
|
||||
const char **X11_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
const char *const *X11_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types)
|
||||
{
|
||||
*num_mime_types = SDL_arraysize(text_mime_types);
|
||||
return text_mime_types;
|
||||
|
||||
@@ -28,12 +28,12 @@
|
||||
typedef struct X11_ClipboardData {
|
||||
SDL_ClipboardDataCallback callback;
|
||||
void *userdata;
|
||||
const char **mime_types;
|
||||
const char *const *mime_types;
|
||||
size_t mime_count;
|
||||
Uint32 sequence;
|
||||
} SDLX11_ClipboardData;
|
||||
|
||||
extern const char **X11_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
extern const char *const *X11_GetTextMimeTypes(SDL_VideoDevice *_this, size_t *num_mime_types);
|
||||
extern bool X11_SetClipboardData(SDL_VideoDevice *_this);
|
||||
extern void *X11_GetClipboardData(SDL_VideoDevice *_this, const char *mime_type, size_t *length);
|
||||
extern bool X11_HasClipboardData(SDL_VideoDevice *_this, const char *mime_type);
|
||||
|
||||
Reference in New Issue
Block a user