From: Daniel Caujolle-B. <f1...@us...> - 2002-05-31 12:34:07
|
Update of /cvsroot/xine/xine-ui/src/xitk In directory usw-pr-cvs1:/tmp/cvs-serv3304/src/xitk Modified Files: actions.c control.c errors.c event.c event.h i18n.h kbindings.c kbindings.h lirc.c main.c mrl_browser.c panel.c playlist.c setup.c skins.c snapshot.c videowin.c viewlog.c Log Message: Redundancy handling in kbeditor. Fix browser scrolling in viewlog. Update po files. Fill french po file. Intl pre-made xitk windows. Index: actions.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/actions.c,v retrieving revision 1.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- actions.c 30 May 2002 16:32:12 -0000 1.63 +++ actions.c 31 May 2002 12:34:03 -0000 1.64 @@ -33,8 +33,6 @@ #include <X11/Xlib.h> #include <xine/video_out_x11.h> -#include "xitk.h" - #include "event.h" #include "control.h" #include "actions.h" @@ -46,6 +44,9 @@ #include "setup.h" #include "viewlog.h" #include "errors.h" +#include "i18n.h" + +#include "xitk.h" extern gGui_t *gGui; extern _panel_t *panel; Index: control.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/control.c,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- control.c 29 May 2002 21:58:53 -0000 1.51 +++ control.c 31 May 2002 12:34:03 -0000 1.52 @@ -36,13 +36,14 @@ #include <xine.h> #include <xine/xineutils.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" #include "actions.h" #include "skins.h" #include "errors.h" +#include "i18n.h" + +#include "xitk.h" #ifndef __GNUC__ #define __FUNCTION__ __func__ Index: errors.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/errors.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- errors.c 16 Apr 2002 14:00:15 -0000 1.2 +++ errors.c 31 May 2002 12:34:03 -0000 1.3 @@ -33,10 +33,11 @@ #include <X11/Xutil.h> #include <X11/keysym.h> -#include "xitk.h" #include "event.h" #include "i18n.h" #include "viewlog.h" + +#include "xitk.h" extern gGui_t *gGui; Index: event.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/event.c,v retrieving revision 1.92 retrieving revision 1.93 diff -u -r1.92 -r1.93 --- event.c 29 May 2002 21:58:53 -0000 1.92 +++ event.c 31 May 2002 12:34:03 -0000 1.93 @@ -40,8 +40,6 @@ #include <limits.h> #include <zlib.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" @@ -59,6 +57,9 @@ #include "skins.h" #include "errors.h" #include "network.h" +#include "i18n.h" + +#include "xitk.h" #ifdef HAVE_LIRC extern int no_lirc; Index: event.h =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/event.h,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- event.h 1 May 2002 19:53:34 -0000 1.40 +++ event.h 31 May 2002 12:34:03 -0000 1.41 @@ -29,10 +29,10 @@ #include "Imlib-light/Imlib.h" #include "kbindings.h" -#include "xitk.h" -#include "i18n.h" #include "videowin.h" +#include "xitk.h" + #define MAX_PLAYLIST_LENGTH 1024 typedef struct { @@ -159,6 +159,5 @@ char *gui_next_mrl_callback (void) ; void gui_branched_callback (void) ; -#endif - +#endif Index: i18n.h =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/i18n.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- i18n.h 21 Mar 2002 00:22:52 -0000 1.2 +++ i18n.h 31 May 2002 12:34:03 -0000 1.3 @@ -28,7 +28,7 @@ #ifdef ENABLE_NLS # include <libintl.h> -# define _(String) gettext (String) +# define _(String) gettext (String) # ifdef gettext_noop # define N_(String) gettext_noop (String) # else Index: kbindings.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/kbindings.c,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- kbindings.c 30 May 2002 23:58:55 -0000 1.31 +++ kbindings.c 31 May 2002 12:34:03 -0000 1.32 @@ -35,6 +35,8 @@ #include "event.h" #include "kbindings.h" #include "errors.h" +#include "i18n.h" + #include "xitk.h" extern gGui_t *gGui; @@ -1201,6 +1203,31 @@ } /* + * Check for redundancy. + * return: -2 on failure (null pointer passed) + * -1 on success + * >=0 if a redundant entry found (bkt array entry num). + */ +static int bkedit_check_redundancy(kbinding_t *kbt, kbinding_entry_t *kbe) { + int ret = -1; + + if(kbt && kbe) { + int i; + + for(i = 0; kbt->entry[i]->action != NULL; i++) { + if((!strcmp(kbt->entry[i]->key, kbe->key)) && + (kbt->entry[i]->modifier == kbe->modifier)) { + return i; + } + } + } + else + ret = -2; + + return ret; +} + +/* * */ void kbedit_exit(xitk_widget_t *w, void *data) { @@ -1281,7 +1308,6 @@ /* * Change shortcut, should take care about reduncancy. */ -#warning check redundancy static void kbedit_edit(xitk_widget_t *w, void *data, int state) { xitk_labelbutton_set_state(kbedit->alias, 0, kbedit->widget_list->win, kbedit->widget_list->gc); @@ -1328,7 +1354,7 @@ xitk_browser_update_list(kbedit->browser, kbedit->entries, kbedit->num_entries, 0); } else { - xitk_window_dialog_error(gGui->imlib_data, _("You can only delete alias entries.")); + xine_error(_("You can only delete alias entries.")); } } } @@ -1377,6 +1403,7 @@ int mod, modifier; xitk_window_t *xwin; kbinding_entry_t kbe; + int redundant; /* We are already grabbing keybinding */ if(kbedit->grabbing) @@ -1398,6 +1425,11 @@ { int x, y, w, h; + /* + xitk_get_window_position(gGui->display, + (xitk_window_get_window(kbedit->xwin)), &x, &y, &w, &h); + */ + w = 500; h = 200; x = ((DisplayWidth(gGui->display, (DefaultScreen(gGui->display)))) / 2) - (w / 2); @@ -1458,52 +1490,61 @@ XSync(gGui->display, False); XUnlockDisplay(gGui->display); - xine_strdupa(action, (xitk_label_get_label(kbedit->comment))); - kbedit_display_kbinding(action, &kbe); - kbedit->grabbing = 0; - switch(kbedit->action_wanted) { - - case KBEDIT_ALIASING: - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->comment = strdup(kbedit->ksel->comment); - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->action = strdup(kbedit->ksel->action); - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->action_id = kbedit->ksel->action_id; - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->key = strdup(kbe.key); - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->modifier = kbe.modifier; - kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->is_alias = 1; - - kbedit->kbt->entry[kbedit->kbt->num_entries] = (kbinding_entry_t *) xine_xmalloc(sizeof(kbinding_t)); - kbedit->kbt->entry[kbedit->kbt->num_entries]->comment = NULL; - kbedit->kbt->entry[kbedit->kbt->num_entries]->action = NULL; - kbedit->kbt->entry[kbedit->kbt->num_entries]->action_id = 0; - kbedit->kbt->entry[kbedit->kbt->num_entries]->key = NULL; - kbedit->kbt->entry[kbedit->kbt->num_entries]->modifier = 0; - kbedit->kbt->entry[kbedit->kbt->num_entries]->is_alias = 0; - - kbedit->kbt->num_entries++; - - kbedit_create_browser_entries(); - - xitk_browser_update_list(kbedit->browser, kbedit->entries, kbedit->num_entries, 0); - break; + if((redundant = bkedit_check_redundancy(kbedit->kbt, &kbe)) == -1) { - case KBEDIT_EDITING: - kbedit->ksel->key = (char *) realloc(kbedit->ksel->key, sizeof(char *) * (strlen(kbe.key) + 1)); - sprintf(kbedit->ksel->key, "%s", kbe.key); - kbedit->ksel->modifier = kbe.modifier; - break; + xine_strdupa(action, (xitk_label_get_label(kbedit->comment))); + kbedit_display_kbinding(action, &kbe); + + switch(kbedit->action_wanted) { + + case KBEDIT_ALIASING: + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->comment = strdup(kbedit->ksel->comment); + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->action = strdup(kbedit->ksel->action); + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->action_id = kbedit->ksel->action_id; + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->key = strdup(kbe.key); + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->modifier = kbe.modifier; + kbedit->kbt->entry[kbedit->kbt->num_entries - 1]->is_alias = 1; + + kbedit->kbt->entry[kbedit->kbt->num_entries] = (kbinding_entry_t *) xine_xmalloc(sizeof(kbinding_t)); + kbedit->kbt->entry[kbedit->kbt->num_entries]->comment = NULL; + kbedit->kbt->entry[kbedit->kbt->num_entries]->action = NULL; + kbedit->kbt->entry[kbedit->kbt->num_entries]->action_id = 0; + kbedit->kbt->entry[kbedit->kbt->num_entries]->key = NULL; + kbedit->kbt->entry[kbedit->kbt->num_entries]->modifier = 0; + kbedit->kbt->entry[kbedit->kbt->num_entries]->is_alias = 0; + kbedit->kbt->num_entries++; + + kbedit_create_browser_entries(); + + xitk_browser_update_list(kbedit->browser, kbedit->entries, kbedit->num_entries, 0); + break; + + case KBEDIT_EDITING: + kbedit->ksel->key = (char *) realloc(kbedit->ksel->key, sizeof(char *) * (strlen(kbe.key) + 1)); + sprintf(kbedit->ksel->key, "%s", kbe.key); + kbedit->ksel->modifier = kbe.modifier; + break; + } + + } + else { + /* error, redundant */ + if(redundant >= 0) { + xine_error(_("This key bindings is redundant with action:\n\"%s\".\n"), + kbedit->kbt->entry[redundant]->comment); + } } SAFE_FREE(kbe.comment); SAFE_FREE(kbe.action); SAFE_FREE(kbe.key); - + xitk_labelbutton_set_state(kbedit->alias, 0, kbedit->widget_list->win, kbedit->widget_list->gc); xitk_labelbutton_set_state(kbedit->edit, 0, kbedit->widget_list->win, kbedit->widget_list->gc); kbedit->action_wanted = KBEDIT_NOOP; - xitk_paint_widget_list(kbedit->widget_list); xitk_disable_widget(kbedit->grab); } Index: kbindings.h =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/kbindings.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- kbindings.h 29 May 2002 21:58:53 -0000 1.15 +++ kbindings.h 31 May 2002 12:34:03 -0000 1.16 @@ -25,6 +25,8 @@ #include <X11/Xlib.h> +#include "xitk.h" + /* Opaque structure */ typedef struct kbinding_s kbinding_t; typedef struct kbinding_entry_s kbinding_entry_t; @@ -116,5 +118,6 @@ kbinding_entry_t *kbindings_lookup_action(kbinding_t *, const char *); void kbindings_handle_kbinding(kbinding_t *, XEvent *); action_id_t kbindings_get_action_id(kbinding_entry_t *); +void kbindings_editor(xitk_widget_t *, void *); #endif Index: lirc.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/lirc.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- lirc.c 21 Mar 2002 00:22:52 -0000 1.12 +++ lirc.c 31 May 2002 12:34:03 -0000 1.13 @@ -29,11 +29,11 @@ #include <pthread.h> #include <signal.h> -#include "xitk.h" - #include "event.h" #include "panel.h" #include "actions.h" + +#include "xitk.h" #ifdef HAVE_LIRC #include "lirc/lirc_client.h" Index: main.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/main.c,v retrieving revision 1.92 retrieving revision 1.93 diff -u -r1.92 -r1.93 --- main.c 30 May 2002 16:32:12 -0000 1.92 +++ main.c 31 May 2002 12:34:03 -0000 1.93 @@ -58,12 +58,13 @@ #include <xine/video_out_x11.h> #include <xine/xineutils.h> -#include "xitk.h" - #include "event.h" #include "videowin.h" #include "panel.h" #include "actions.h" +#include "i18n.h" + +#include "xitk.h" #ifdef HAVE_ORBIT #include "../corba/xine-server.h" Index: mrl_browser.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/mrl_browser.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- mrl_browser.c 20 May 2002 22:25:13 -0000 1.25 +++ mrl_browser.c 31 May 2002 12:34:03 -0000 1.26 @@ -33,14 +33,15 @@ #include <xine/xineutils.h> -#include "xitk.h" - #include "event.h" #include "actions.h" #include "videowin.h" #include "playlist.h" #include "mrl_browser.h" #include "errors.h" +#include "i18n.h" + +#include "xitk.h" #define MAX_LIST 9 Index: panel.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/panel.c,v retrieving revision 1.89 retrieving revision 1.90 diff -u -r1.89 -r1.90 --- panel.c 29 May 2002 21:58:53 -0000 1.89 +++ panel.c 31 May 2002 12:34:03 -0000 1.90 @@ -34,8 +34,6 @@ #include <xine/xineutils.h> #include <zlib.h> -#include "xitk.h" - #include "event.h" #include "actions.h" #include "control.h" @@ -46,6 +44,9 @@ #include "snapshot.h" #include "errors.h" #include "utils.h" +#include "i18n.h" + +#include "xitk.h" #ifndef __GNUC__ #define __FUNCTION__ __func__ Index: playlist.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/playlist.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -r1.53 -r1.54 --- playlist.c 29 May 2002 21:58:53 -0000 1.53 +++ playlist.c 31 May 2002 12:34:03 -0000 1.54 @@ -32,13 +32,14 @@ #include <X11/Xutil.h> #include <X11/keysym.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" #include "actions.h" #include "mrl_browser.h" #include "errors.h" +#include "i18n.h" + +#include "xitk.h" #include <xine.h> #include <xine/xineutils.h> Index: setup.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/setup.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- setup.c 30 May 2002 23:58:55 -0000 1.35 +++ setup.c 31 May 2002 12:34:03 -0000 1.36 @@ -36,13 +36,14 @@ #include <xine.h> #include <xine/xineutils.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" #include "actions.h" #include "skins.h" #include "lang.h" +#include "i18n.h" + +#include "xitk.h" extern gGui_t *gGui; Index: skins.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/skins.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- skins.c 5 May 2002 09:46:09 -0000 1.17 +++ skins.c 31 May 2002 12:34:03 -0000 1.18 @@ -35,11 +35,12 @@ #include "event.h" #include "skins.h" #include "errors.h" - -#include "xitk.h" +#include "i18n.h" #include <xine.h> #include <xine/xineutils.h> + +#include "xitk.h" /* #define SKIN_DEBUG 1 Index: snapshot.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/snapshot.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- snapshot.c 27 Apr 2002 13:26:40 -0000 1.15 +++ snapshot.c 31 May 2002 12:34:03 -0000 1.16 @@ -67,9 +67,11 @@ #include <xine.h> #include <xine/xineutils.h> -#include "xitk.h" #include "event.h" #include "errors.h" +#include "i18n.h" + +#include "xitk.h" #define PIXSZ 3 #define BIT_DEPTH 8 Index: videowin.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/videowin.c,v retrieving revision 1.103 retrieving revision 1.104 diff -u -r1.103 -r1.104 --- videowin.c 29 May 2002 21:58:53 -0000 1.103 +++ videowin.c 31 May 2002 12:34:03 -0000 1.104 @@ -40,8 +40,6 @@ #include <xine/video_out_x11.h> #include <xine/xineutils.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" @@ -49,6 +47,8 @@ #include "panel.h" #include "actions.h" #include "errors.h" + +#include "xitk.h" extern gGui_t *gGui; Index: viewlog.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/viewlog.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- viewlog.c 30 May 2002 23:58:55 -0000 1.19 +++ viewlog.c 31 May 2002 12:34:03 -0000 1.20 @@ -36,13 +36,14 @@ #include <xine.h> #include <xine/xineutils.h> -#include "xitk.h" - #include "Imlib-light/Imlib.h" #include "event.h" #include "actions.h" #include "skins.h" #include "lang.h" +#include "i18n.h" + +#include "xitk.h" /* #define DEBUG_VIEWLOG @@ -68,6 +69,7 @@ char **log; int log_entries; + int real_num_entries; xitk_widget_t *browser_widget; @@ -248,7 +250,7 @@ } /* Compute log entries */ - viewlog->log_entries = k = 0; + viewlog->log_entries = viewlog->real_num_entries = k = 0; if(log) { @@ -281,13 +283,14 @@ if(strlen(buf)) { viewlog->log = (char **) realloc(viewlog->log, sizeof(char **) * ((j + 1) + 1)); viewlog->log[j++] = strdup(buf); - // printf("added line '%s'\n", viewlog->log[j-1]); + viewlog->real_num_entries++; + // printf("added line '%s'\n", viewlog->log[j-1]); } memset(&buf, 0, sizeof(buf)); break; default: - // printf("- %c", *p); + // printf("- %c", *p); sprintf(buf, "%s%c", buf, *p); break; } @@ -328,7 +331,7 @@ xitk_tabs_get_current_tab_selected(viewlog->tabs)); #endif - xitk_browser_update_list(viewlog->browser_widget, viewlog->log, viewlog->log_entries, 0); + xitk_browser_update_list(viewlog->browser_widget, viewlog->log, viewlog->real_num_entries, 0); viewlog_clear_tab(); viewlog_paint_widgets(); @@ -386,7 +389,7 @@ XLockDisplay(gGui->display); XFreePixmap(gGui->display, bg); XUnlockDisplay(gGui->display); - + viewlog_change_section(NULL, NULL, 0); } @@ -458,7 +461,7 @@ 16, br_fontname))); xitk_browser_set_alignment(viewlog->browser_widget, LABEL_ALIGN_LEFT); - xitk_browser_update_list(viewlog->browser_widget, viewlog->log, viewlog->log_entries, 0); + xitk_browser_update_list(viewlog->browser_widget, viewlog->log, viewlog->real_num_entries, 0); viewlog_paint_widgets(); |