X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_dialog.h;h=7c46d66a60b820cf5751c663c5740e1b1d4cd29c;hb=cbcf6bbdc8bd8c793ad95dacb2290fe13d302c24;hp=fb34492fab0b87e7eecc81075f759e92fbd9764c;hpb=3c62d02f23d51f30d0fa1c2c9d314932e8df3ab5;p=vlc diff --git a/include/vlc_dialog.h b/include/vlc_dialog.h index fb34492fab..7c46d66a60 100644 --- a/include/vlc_dialog.h +++ b/include/vlc_dialog.h @@ -3,19 +3,19 @@ ***************************************************************************** * Copyright (C) 2009 Rémi Denis-Courmont * - * This program 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 Foundation; either version 2 of the License, or + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or * (at your option) any later version. * * This program 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. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ #ifndef VLC_DIALOG_H_ @@ -35,12 +35,11 @@ typedef struct dialog_fatal_t { const char *title; const char *message; - bool modal; } dialog_fatal_t; -VLC_EXPORT( void, dialog_VFatal, (vlc_object_t *, bool, const char *, const char *, va_list) ); +VLC_API void dialog_VFatal(vlc_object_t *, bool, const char *, const char *, va_list); -static inline LIBVLC_FORMAT(3, 4) +static inline VLC_FORMAT(3, 4) void dialog_Fatal (vlc_object_t *obj, const char *title, const char *fmt, ...) { va_list ap; @@ -52,7 +51,7 @@ void dialog_Fatal (vlc_object_t *obj, const char *title, const char *fmt, ...) #define dialog_Fatal(o, t, ...) \ dialog_Fatal(VLC_OBJECT(o), t, __VA_ARGS__) -static inline LIBVLC_FORMAT(3, 4) +static inline VLC_FORMAT(3, 4) void dialog_FatalWait (vlc_object_t *obj, const char *title, const char *fmt, ...){ va_list ap; @@ -75,7 +74,7 @@ typedef struct dialog_login_t char **password; } dialog_login_t; -VLC_EXPORT( void, dialog_Login, (vlc_object_t *, char **, char **, const char *, const char *, ...) ) LIBVLC_FORMAT (5, 6); +VLC_API void dialog_Login(vlc_object_t *, char **, char **, const char *, const char *, ...) VLC_FORMAT (5, 6); #define dialog_Login(o, u, p, t, ...) \ dialog_Login(VLC_OBJECT(o), u, p, t, __VA_ARGS__) @@ -92,12 +91,31 @@ typedef struct dialog_question_t int answer; } dialog_question_t; -VLC_EXPORT( int, dialog_Question, (vlc_object_t *, const char *, const char *, const char *, const char *, const char *) ); +VLC_API int dialog_Question(vlc_object_t *, const char *, const char *, const char *, const char *, const char *); #define dialog_Question(o, t, m, y, n, c) \ dialog_Question(VLC_OBJECT(o), t, m, y, n, c) -VLC_EXPORT( int, dialog_Register, (vlc_object_t *) ); -VLC_EXPORT( int, dialog_Unregister, (vlc_object_t *) ); +typedef struct dialog_progress_bar_t +{ /* Request-time parameters */ + const char *title; + const char *message; + const char *cancel; + /* Permanent parameters */ + void (*pf_update) (void *, const char *, float); + bool (*pf_check) (void *); + void (*pf_destroy) (void *); + void *p_sys; +} dialog_progress_bar_t; + +VLC_API dialog_progress_bar_t * dialog_ProgressCreate(vlc_object_t *, const char *, const char *, const char *) VLC_USED; +#define dialog_ProgressCreate(o, t, m, c) \ + dialog_ProgressCreate(VLC_OBJECT(o), t, m, c) +VLC_API void dialog_ProgressDestroy(dialog_progress_bar_t *); +VLC_API void dialog_ProgressSet(dialog_progress_bar_t *, const char *, float); +VLC_API bool dialog_ProgressCancelled(dialog_progress_bar_t *); + +VLC_API int dialog_Register(vlc_object_t *); +VLC_API int dialog_Unregister(vlc_object_t *); #define dialog_Register(o) dialog_Register(VLC_OBJECT(o)) #define dialog_Unregister(o) dialog_Unregister(VLC_OBJECT(o))