[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xine-cvslog
Subject:    [xine-cvs] CVS: xine-ui/src/xitk/xine-toolkit browser.c,1.59,1.60 browser.h,1.23,1.24 combo.c,1.36,1
From:       Daniel Caujolle-Bert <f1rmb () users ! sourceforge ! net>
Date:       2004-03-30 22:41:44
Message-ID: E1B8RvU-0003fW-1x () sc8-pr-cvs1 ! sourceforge ! net
[Download RAW message or body]

Update of /cvsroot/xine/xine-ui/src/xitk/xine-toolkit
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13713/xine-toolkit

Modified Files:
	browser.c browser.h combo.c filebrowser.c font.c labelbutton.c 
	labelbutton.h menu.c mrlbrowser.c test.c xitk.h 
Log Message:
get shortcuts correctly aligned (even with Xft) (without overload too) in both menus \
and keymap editor.

Index: browser.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/browser.c,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- browser.c	14 Dec 2003 14:10:33 -0000	1.59
+++ browser.c	30 Mar 2004 22:41:39 -0000	1.60
@@ -317,8 +317,14 @@
 
   if(w && (((w->type & WIDGET_GROUP_MASK) & WIDGET_GROUP_BROWSER) &&
 	   (w->type & WIDGET_GROUP_WIDGET))) {
+    char         *max_shortcut = NULL;
+    int           item_width;
+    char         *label_font;
+    xitk_font_t  *fs = NULL;
     
     private_data = (browser_private_data_t *) w->private_data;
+    item_width   = xitk_get_widget_width(private_data->item_tree[WBSTART]);
+    label_font   = xitk_labelbutton_get_fontname(private_data->item_tree[WBSTART]);
     
     xitk_browser_release_all_buttons(w);
 
@@ -343,30 +349,54 @@
 
     private_data->labels_offset = 0;
 
-    for(i = 0; i < private_data->max_length; i++) {
-      xitk_labelbutton_set_label_offset(private_data->item_tree[i + WBSTART], 0);
+    if(label_font) {
+      fs = xitk_font_load_font(private_data->imlibdata->x.disp, label_font);
+      xitk_font_set_font(fs, private_data->parent_wlist->gc);
+    }
+
+    if(private_data->shortcuts_content) {
+      int maxlen = 0;
+      
+      for(i = 0; i < private_data->max_length; i++) {
+	char *nshortcut;
+	
+	if((private_data->shortcuts_content[private_data->current_start + i]) && 
+	   (nshortcut = private_data->shortcuts_content[private_data->current_start + i])) \
{ +	  int nlen = strlen(nshortcut);
+	  
+	  if(nlen > maxlen) {
+	    maxlen = nlen;
+	    max_shortcut = nshortcut;
+	  }
+	}
+      }
     }
     
+    for(i = 0; i < private_data->max_length; i++)
+      xitk_labelbutton_set_label_offset(private_data->item_tree[i + WBSTART], 0);
+    
     for(i = 0; i < private_data->max_length; i++) {
       if (((private_data->current_start + i) < private_data->list_length) 
 	  && (private_data->content[private_data->current_start + i] != NULL)) {
-	int item_width = xitk_get_widget_width(private_data->item_tree[WBSTART]);
-	char *label_font = xitk_labelbutton_get_fontname(private_data->item_tree[WBSTART]);
 	
-	xitk_labelbutton_change_label(private_data->item_tree[i + WBSTART], 
+	xitk_labelbutton_change_label(private_data->item_tree[i + WBSTART],
 				      private_data->content[private_data->current_start + i]);
+
+	if(private_data->shortcuts_content) {
+	  if(private_data->shortcuts_content[private_data->current_start + i])
+	    xitk_labelbutton_change_shortcut_label(private_data->item_tree[i + WBSTART],
+						   private_data->shortcuts_content[private_data->current_start + i], 
+						   item_width - (xitk_font_get_string_length(fs, \
private_data->shortcuts_content[private_data->current_start + i]) + 10)); +	  else
+	    xitk_labelbutton_change_shortcut_label(private_data->item_tree[i + WBSTART], \
"", -1); +	}
 	
-	if(label_font) {
-	  xitk_font_t *fs = NULL;
-	  int          label_width;
-	  
-	  fs = xitk_font_load_font(private_data->imlibdata->x.disp, label_font);
-	  xitk_font_set_font(fs, private_data->parent_wlist->gc);
+	if(fs) {
+	  int  label_width;
 	  
 	  label_width = (private_data->content[private_data->current_start + i] && 
 			 strlen(private_data->content[private_data->current_start + i])) ? 
 	    xitk_font_get_string_length(fs, \
                private_data->content[private_data->current_start + i]) : 0;
-	  xitk_font_unload_font(fs);
 	  
 	  if(label_width > (item_width - 2)) {
 	    int diff_width = (label_width - (item_width - 2));
@@ -377,14 +407,19 @@
 	      private_data->labels_offset = diff_width;
 	    
 	  }
-	  XITK_FREE(label_font);
 	}
       }
       else {
 	xitk_labelbutton_change_label(private_data->item_tree[i+WBSTART], "");
+	xitk_labelbutton_change_shortcut_label(private_data->item_tree[i + WBSTART], "", \
-1);  }
     }
 
+    XITK_FREE(label_font);
+
+    if(fs)
+      xitk_font_unload_font(fs);
+
     if(private_data->need_h_slider) {
       int align = xitk_labelbutton_get_alignment(private_data->item_tree[WBSTART]);
 
@@ -436,7 +471,7 @@
 /**
  * Update the list, and rebuild button list
  */
-void xitk_browser_update_list(xitk_widget_t *w, const char *const *list, int len, \
int start) { +void xitk_browser_update_list(xitk_widget_t *w, const char *const \
*list, const char *const *shortcut, int len, int start) {  browser_private_data_t \
*private_data;  
   if(w && (((w->type & WIDGET_GROUP_MASK) & WIDGET_GROUP_BROWSER) &&
@@ -444,6 +479,7 @@
     
     private_data = (browser_private_data_t *) w->private_data;
     private_data->content = (char **)list;
+    private_data->shortcuts_content = (char **)shortcut;
     private_data->list_length = len;
     xitk_browser_rebuild_browser(w, start);
   }
@@ -493,11 +529,15 @@
 	  
 	  xitk_labelbutton_change_label(private_data->item_tree[i + WBSTART], 
 					private_data->content[private_data->current_start + i]);
+	  if(private_data->shortcuts_content)
+	    xitk_labelbutton_change_shortcut_label(private_data->item_tree[i + WBSTART], 
+						   private_data->shortcuts_content[private_data->current_start + i], -1);
 	  
 	}
-	else
+	else {
 	  xitk_labelbutton_change_label(private_data->item_tree[i+WBSTART], "");
-	
+	  xitk_labelbutton_change_shortcut_label(private_data->item_tree[i + WBSTART], "", \
-1); +	}
       }
     }
     else
@@ -931,6 +971,7 @@
   private_data->skin_element_name    = (skin_element_name == NULL) ? NULL : \
strdup(br->browser.skin_element_name);  private_data->jumped               = -1;
   private_data->content              = (char **)br->browser.entries;
+  private_data->shortcuts_content    = NULL;
   private_data->list_length          = br->browser.num_entries;
   private_data->max_length           = br->browser.max_displayed_entries;
 

Index: browser.h
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/browser.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- browser.h	13 Dec 2003 01:09:39 -0000	1.23
+++ browser.h	30 Mar 2004 22:41:39 -0000	1.24
@@ -45,6 +45,7 @@
   int                     jumped;
 
   char                  **content;
+  char                  **shortcuts_content;
   int                     max_length;
   int                     list_length;
   int                     current_start;

Index: combo.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/combo.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- combo.c	13 Dec 2003 01:09:39 -0000	1.36
+++ combo.c	30 Mar 2004 22:41:39 -0000	1.37
@@ -154,7 +154,7 @@
     
     xitk_browser_release_all_buttons(private_data->browser_widget);
     xitk_browser_update_list(private_data->browser_widget, 
-			     (const char* const*)private_data->entries, 
+			     (const char* const*)private_data->entries, NULL,
 			     private_data->num_entries, 0);
     
     xitk_checkbox_set_state(private_data->button_widget, 0);
@@ -486,7 +486,7 @@
     private_data->selected    = -1;
     
     xitk_browser_update_list(private_data->browser_widget, 
-			     (const char* const*)private_data->entries, 
+			     (const char* const*)private_data->entries, NULL,
 			     private_data->num_entries, 0);
   }
 }
@@ -614,7 +614,7 @@
   private_data->browser_widget->type |= WIDGET_GROUP | WIDGET_GROUP_COMBO;
   
   xitk_browser_update_list(private_data->browser_widget, 
-			   (const char* const*)private_data->entries, 
+			   (const char* const*)private_data->entries, NULL,
 			   private_data->num_entries, 0);
   
   private_data->widget_key = 

Index: filebrowser.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/filebrowser.c,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- filebrowser.c	22 Jan 2004 23:14:11 -0000	1.47
+++ filebrowser.c	30 Mar 2004 22:41:39 -0000	1.48
@@ -740,7 +740,7 @@
     private_data->dir_contents_num = 0;
   
   xitk_browser_update_list(private_data->fb_list, 
-			   (const char* const*)private_data->fc->dir_disp_contents, 
+			   (const char* const*)private_data->fc->dir_disp_contents, NULL,
 			   private_data->dir_contents_num, 0);
   
   update_current_dir(private_data);
@@ -1269,7 +1269,7 @@
   load_files(NULL, (void *)private_data);
   
   xitk_browser_update_list(private_data->fb_list, 
-			   (const char* const*)private_data->fc->dir_disp_contents,
+			   (const char* const*)private_data->fc->dir_disp_contents, NULL,
 			   private_data->dir_contents_num, 0);
 
   XLOCK(fb->imlibdata->x.disp);
@@ -1562,7 +1562,7 @@
   load_files(NULL, (void *)private_data);
   
   xitk_browser_update_list(private_data->fb_list, 
-			   (const char* const*)private_data->fc->dir_disp_contents,
+			   (const char* const*)private_data->fc->dir_disp_contents, NULL,
 			   private_data->dir_contents_num, 0);
 
   XLOCK(fb->imlibdata->x.disp);

Index: font.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/font.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- font.c	27 Mar 2004 11:12:39 -0000	1.31
+++ font.c	30 Mar 2004 22:41:39 -0000	1.32
@@ -1265,7 +1265,7 @@
 #endif
   /*
    * guess locale codeset according to shell variables
-   * when nl_langinfo(CODESET) isn't available or workig
+   * when nl_langinfo(CODESET) isn't available or working
    */
   if (!codeset || strstr(codeset, "ANSI") != 0) {
     if(!(lang = getenv("LC_ALL")))

Index: labelbutton.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/labelbutton.c,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- labelbutton.c	20 Mar 2004 00:48:36 -0000	1.56
+++ labelbutton.c	30 Mar 2004 22:41:39 -0000	1.57
@@ -43,6 +43,7 @@
   if(w && ((w->type & WIDGET_TYPE_MASK) == WIDGET_TYPE_LABELBUTTON)) {
     private_data = (lbutton_private_data_t *) w->private_data;
     XITK_FREE(private_data->label);
+    XITK_FREE(private_data->shortcut_label);
     XITK_FREE(private_data->skin_element_name);
     XITK_FREE(private_data->normcolor);
     XITK_FREE(private_data->focuscolor);
@@ -97,9 +98,8 @@
 static void create_labelofbutton(xitk_widget_t *lb, 
 				 Window win, GC gc, Pixmap pix, 
 				 int xsize, int ysize, 
-				 char *label, int state) {
-  lbutton_private_data_t  *private_data = 
-    (lbutton_private_data_t *) lb->private_data;
+				 char *label, char *shortcut_label, int shortcut_pos, int state) {
+  lbutton_private_data_t  *private_data = (lbutton_private_data_t *) \
lb->private_data;  xitk_font_t             *fs = NULL;
   int                      lbear, rbear, width, asc, des;
   int                      xoff = 0, yoff = 0, DefaultColor = -1;
@@ -187,15 +187,27 @@
   /*  Put text in the right place */
   if(private_data->align == ALIGN_CENTER) {
     xitk_font_draw_string(fs, pix, gc, 
-    ((xsize-(width+xoff))>>1) + private_data->label_offset, origin, label, \
strlen(label)); +			  ((xsize-(width+xoff))>>1) + private_data->label_offset, 
+			  origin, label, strlen(label));
   }
   else if(private_data->align == ALIGN_LEFT) {
     xitk_font_draw_string(fs, pix, gc, 
-    (((state != CLICK) ? 1 : 5)) + private_data->label_offset, origin, label, \
strlen(label)); +			  (((state != CLICK) ? 1 : 5)) + private_data->label_offset, 
+			  origin, label, strlen(label));
+    
+    /* shortcut is only permited if alignement is set to left */
+    if(strlen(shortcut_label) && shortcut_pos >= 0) {
+      xitk_font_draw_string(fs, pix, gc, 
+			    (((state != CLICK) ? 1 : 5)) + shortcut_pos, 
+			    origin, shortcut_label, strlen(shortcut_label));
+      
+    }
+    
   }
   else if(private_data->align == ALIGN_RIGHT) {
     xitk_font_draw_string(fs, pix, gc, 
-    (xsize - (width + ((state != CLICK) ? 5 : 1))) + private_data->label_offset, \
origin, label, strlen(label)); +			  (xsize - (width + ((state != CLICK) ? 5 : 1))) + \
private_data->label_offset,  +			  origin, label, strlen(label));
   }
 
   xitk_font_unload_font(fs);
@@ -298,7 +310,7 @@
       if(private_data->label_visible) {
 	create_labelofbutton(w, w->wl->win, w->wl->gc, btn->pixmap,
 			     button_width, skin->height, 
-			     private_data->label, state);
+			     private_data->label, private_data->shortcut_label, \
private_data->shortcut_pos, state);  }
       
       XLOCK(private_data->imlibdata->x.disp);
@@ -391,6 +403,49 @@
 }
 
 /*
+ * Changing button caption
+ */
+int xitk_labelbutton_change_shortcut_label(xitk_widget_t *w, char *newlabel, int \
pos) { +  lbutton_private_data_t *private_data;
+
+  if (w && (((w->type & WIDGET_TYPE_MASK) == WIDGET_TYPE_LABELBUTTON) && 
+	    (((w->type & WIDGET_GROUP_MASK) == WIDGET_GROUP_MENU) || ((w->type & \
WIDGET_GROUP_MASK) == WIDGET_GROUP_BROWSER)))) { +    private_data = \
(lbutton_private_data_t *) w->private_data; +
+    if((private_data->shortcut_label = (char *) \
realloc(private_data->shortcut_label, strlen(newlabel) + 1)) != NULL) +      \
strcpy(private_data->shortcut_label, newlabel); +
+    if(strlen(private_data->shortcut_label)) {
+      if(pos >= 0)
+	private_data->shortcut_pos = pos;
+      else
+	private_data->shortcut_pos = -1;
+    }
+    
+    paint_labelbutton(w);
+    
+    return 1;
+  }
+
+  return 0;
+}
+
+/*
+ * Return the current button label
+ */
+char *xitk_labelbutton_get_shortcut_label(xitk_widget_t *w) {
+  lbutton_private_data_t *private_data;
+
+  if (w && (((w->type & WIDGET_TYPE_MASK) == WIDGET_TYPE_LABELBUTTON) &&
+	    (((w->type & WIDGET_GROUP_MASK) == WIDGET_GROUP_MENU) || ((w->type & \
WIDGET_GROUP_MASK) == WIDGET_GROUP_BROWSER)))) { +    private_data = \
(lbutton_private_data_t *) w->private_data; +    return private_data->shortcut_label;
+  }
+
+  return NULL;
+}
+
+/*
  * Handle motion on button
  */
 static int notify_focus_labelbutton (xitk_widget_t *w, int focus) {
@@ -667,6 +722,8 @@
   private_data->state_callback    = b->state_callback;
   private_data->userdata          = b->userdata;
   private_data->label             = strdup((b->label)?b->label:"");
+  private_data->shortcut_label    = strdup("");
+  private_data->shortcut_pos      = -1;
   private_data->label_visible     = label_visible;
   private_data->label_static      = label_static;
 

Index: labelbutton.h
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/labelbutton.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- labelbutton.h	14 Jul 2003 22:44:10 -0000	1.19
+++ labelbutton.h	30 Mar 2004 22:41:39 -0000	1.20
@@ -59,6 +59,10 @@
   char                   *focuscolor;
   char                   *clickcolor;
   char                   *fontname;
+  
+  /* Only used if (w->type & WIDGET_GROUP_MASK) == WIDGET_GROUP_BROWSER || \
WIDGET_GROUP_MENU */ +  char                   *shortcut_label;
+  int                     shortcut_pos;
 
 } lbutton_private_data_t;
 

Index: menu.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/menu.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- menu.c	26 Mar 2004 22:16:26 -0000	1.19
+++ menu.c	30 Mar 2004 22:41:39 -0000	1.20
@@ -670,7 +670,7 @@
   menu_private_data_t        *private_data;
   int                         bentries, bsep, btitle, rentries;
   menu_node_t                *maxnode, *me;
-  int                         maxlen, wwidth, wheight, swidth, sheight;
+  int                         maxlen, wwidth, wheight, swidth, sheight, shortcutlen \
= 0, shortcutpos = 0;  xitk_font_t                *fs;
   static xitk_window_t       *xwin;
   menu_window_t              *menu_window;
@@ -699,8 +699,10 @@
   xitk_font_set_font(fs, private_data->widget->wl->gc);
   maxlen = xitk_font_get_string_length(fs, maxnode->menu_entry->menu);
 
-  if(xitk_get_menu_shortcuts_enability() && _menu_branch_have_shortcut(branch))
-    maxlen += xitk_font_get_string_length(fs, \
(_menu_get_wider_shortcut_node(branch))->menu_entry->shortcut) + 15; +  \
if(xitk_get_menu_shortcuts_enability() && _menu_branch_have_shortcut(branch)) { +    \
shortcutlen = xitk_font_get_string_length(fs, \
(_menu_get_wider_shortcut_node(branch))->menu_entry->shortcut); +    maxlen += \
shortcutlen + 15; +  }
 
   xitk_font_unload_font(fs);
 
@@ -709,6 +711,8 @@
   if(_menu_branch_have_check(branch) || _menu_branch_have_branch(branch))
     wwidth += 20;
   wheight = (rentries * 20) + (bsep * 2) + (btitle * 2);
+
+  shortcutpos = (wwidth - shortcutlen) - 15;
   
   XLOCK(private_data->imlibdata->x.disp);
   swidth = DisplayWidth(private_data->imlibdata->x.disp, 
@@ -818,27 +822,8 @@
       btn->type |= WIDGET_GROUP | WIDGET_GROUP_MENU;
       me->button = btn;
       
-      if(xitk_get_menu_shortcuts_enability()  && me->menu_entry->shortcut) {
-	int  swidth, max;
-	char buf[2048];
-	
-	fs = xitk_font_load_font(private_data->imlibdata->x.disp, DEFAULT_BOLD_FONT_12);
-	xitk_font_set_font(fs, private_data->widget->wl->gc);
-
-	max = xitk_font_get_string_length(fs, maxnode->menu_entry->menu) + 15;
-	
-	sprintf(buf, "%s ", me->menu_entry->menu);
-	swidth = xitk_font_get_string_length(fs, buf);
-
-	while(swidth <= max) {
-	  sprintf(buf, "%s%c", buf, ' ');
-	  swidth = xitk_font_get_string_length(fs, buf);
-	}
-
-	sprintf(buf, "%s%s", buf, me->menu_entry->shortcut); 
-	xitk_labelbutton_change_label(btn, buf);
-	xitk_font_unload_font(fs);
-      }
+      if(xitk_get_menu_shortcuts_enability()  && me->menu_entry->shortcut)
+	xitk_labelbutton_change_shortcut_label(btn, me->menu_entry->shortcut, shortcutpos);
       
       wimage = xitk_get_widget_foreground_skin(btn);
       if(wimage) {

Index: mrlbrowser.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/mrlbrowser.c,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -r1.77 -r1.78
--- mrlbrowser.c	22 Mar 2004 00:28:27 -0000	1.77
+++ mrlbrowser.c	30 Mar 2004 22:41:39 -0000	1.78
@@ -374,7 +374,7 @@
     update_current_origin(private_data);
     mrlbrowser_create_enlighted_entries(private_data);
     xitk_browser_update_list(private_data->mrlb_list, 
-			     (const char* const*)private_data->mc->mrls_disp, 
+			     (const char* const*)private_data->mc->mrls_disp, NULL,
 			     private_data->mc->mrls_to_disp, 0);
   }
 }
@@ -837,7 +837,7 @@
     update_current_origin(private_data);
     mrlbrowser_create_enlighted_entries(private_data);
     xitk_browser_update_list(private_data->mrlb_list, 
-			     (const char* const*)private_data->mc->mrls_disp, 
+			     (const char* const*)private_data->mc->mrls_disp, NULL,
 			     private_data->mc->mrls_to_disp, 0);
     
   }
@@ -911,7 +911,7 @@
   private_data->filter_selected = select;
   mrlbrowser_create_enlighted_entries(private_data);
   xitk_browser_update_list(private_data->mrlb_list, 
-  			  (const char* const*) private_data->mc->mrls_disp, 
+			   (const char* const*) private_data->mc->mrls_disp, NULL,
   			   private_data->mc->mrls_to_disp, 0);
 }
 
@@ -1317,7 +1317,7 @@
   mywidget->tips_string        = NULL;
 
   xitk_browser_update_list(private_data->mrlb_list, 
-			   (const char* const*)private_data->mc->mrls_disp, 
+			   (const char* const*)private_data->mc->mrls_disp, NULL,
 			   private_data->mrls_num, 0);
 
   XLOCK (mb->imlibdata->x.disp);

Index: test.c
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/test.c,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- test.c	26 Mar 2004 22:16:26 -0000	1.49
+++ test.c	30 Mar 2004 22:41:39 -0000	1.50
@@ -845,7 +845,7 @@
   xitk_enable_and_show_widget(test->browser);
   
   xitk_browser_update_list(test->browser, 
-			   (const char *const *)test->entries, test->num_entries, 0);
+			   (const char *const *)test->entries, NULL, test->num_entries, 0);
 
 }
 

Index: xitk.h
===================================================================
RCS file: /cvsroot/xine/xine-ui/src/xitk/xine-toolkit/xitk.h,v
retrieving revision 1.117
retrieving revision 1.118
diff -u -r1.117 -r1.118
--- xitk.h	26 Mar 2004 22:16:26 -0000	1.117
+++ xitk.h	30 Mar 2004 22:41:39 -0000	1.118
@@ -1189,11 +1189,13 @@
  * Change label of button 'widget'.
  */
 int xitk_labelbutton_change_label(xitk_widget_t *, char *);
+int xitk_labelbutton_change_shortcut_label(xitk_widget_t *, char *, int);
 
 /**
  * Return label of button 'widget'.
  */
 char *xitk_labelbutton_get_label(xitk_widget_t *);
+char *xitk_labelbutton_get_shortcut_label(xitk_widget_t *);
 
 /**
  * Get state of button 'widget'.
@@ -1362,7 +1364,7 @@
 /**
  * Update the list, and rebuild button list
  */
-void xitk_browser_update_list(xitk_widget_t *w, const char *const *list, int len, \
int start); +void xitk_browser_update_list(xitk_widget_t *w, const char *const *list, \
const char *const *shortcut, int len, int start);  
 /**
  * slide up.



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Xine-cvslog mailing list
Xine-cvslog@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xine-cvslog


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic