ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/xdefaults.C
(Generate patch)

Comparing rxvt-unicode/src/xdefaults.C (file contents):
Revision 1.183 by root, Mon Sep 8 10:40:31 2014 UTC vs.
Revision 1.186 by sf-exg, Mon May 11 22:05:48 2015 UTC

625 return 0; 625 return 0;
626} 626}
627 627
628/*}}} */ 628/*}}} */
629 629
630#ifndef NO_RESOURCES
631/*----------------------------------------------------------------------*/ 630/*----------------------------------------------------------------------*/
632 631
633# ifdef KEYSYM_RESOURCE 632# ifdef KEYSYM_RESOURCE
634static void 633static void
635rxvt_define_key (rxvt_term *term, const char *k, const char *v) 634rxvt_define_key (rxvt_term *term, const char *k, const char *v)
768 767
769 if (*arg == '\0' || (sym = parse_keysym (str, state)) == -1) 768 if (*arg == '\0' || (sym = parse_keysym (str, state)) == -1)
770 return -1; 769 return -1;
771 770
772 wchar_t *ws = rxvt_mbstowcs (arg); 771 wchar_t *ws = rxvt_mbstowcs (arg);
772 if (!HOOK_INVOKE ((this, HOOK_REGISTER_COMMAND, DT_INT, sym, DT_INT, state, DT_WCS_LEN, ws, wcslen (ws), DT_END)))
773 keyboard->register_action (sym, state, ws); 773 keyboard->register_action (sym, state, ws);
774 774
775 free (ws); 775 free (ws);
776 return 1; 776 return 1;
777} 777}
778 778
779# endif /* KEYSYM_RESOURCE */ 779# endif /* KEYSYM_RESOURCE */
780#endif /* NO_RESOURCES */
781 780
782static char * 781static char *
783get_res (XrmDatabase database, const char *program, const char *option) 782get_res (XrmDatabase database, const char *program, const char *option)
784{ 783{
785 char resource[512]; 784 char resource[512];
859} 858}
860 859
861void 860void
862rxvt_term::enumerate_keysym_resources (void (*cb)(rxvt_term *, const char *, const char *)) 861rxvt_term::enumerate_keysym_resources (void (*cb)(rxvt_term *, const char *, const char *))
863{ 862{
864#ifndef NO_RESOURCES
865 /* 863 /*
866 * [R5 or later]: enumerate the resource database 864 * [R5 or later]: enumerate the resource database
867 */ 865 */
868# ifdef KEYSYM_RESOURCE 866# ifdef KEYSYM_RESOURCE
869 void *closure[2] = { 867 void *closure[2] = {
873 871
874 XrmDatabase database = XrmGetDatabase (dpy); 872 XrmDatabase database = XrmGetDatabase (dpy);
875 XrmName name_prefix[3]; 873 XrmName name_prefix[3];
876 XrmClass class_prefix[3]; 874 XrmClass class_prefix[3];
877 875
878 name_prefix[0] = XrmStringToName (rs[Rs_name]);
879 name_prefix[1] = XrmStringToName ("keysym"); 876 name_prefix[1] = XrmStringToName ("keysym");
880 name_prefix[2] = NULLQUARK; 877 name_prefix[2] = NULLQUARK;
881 class_prefix[0] = XrmStringToName (RESCLASS);
882 class_prefix[1] = XrmStringToName ("Keysym"); 878 class_prefix[1] = XrmStringToName ("Keysym");
883 class_prefix[2] = NULLQUARK; 879 class_prefix[2] = NULLQUARK;
884 /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */ 880
885 XrmEnumerateDatabase (database, name_prefix, class_prefix,
886 XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure);
887# ifdef RESFALLBACK 881# ifdef RESFALLBACK
888 name_prefix[0] = class_prefix[0] = XrmStringToName (RESFALLBACK); 882 name_prefix[0] = class_prefix[0] = XrmStringToName (RESFALLBACK);
889 /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */ 883 /* XXX: Need to check sizeof (rxvt_t) == sizeof (XPointer) */
890 XrmEnumerateDatabase (database, name_prefix, class_prefix, 884 XrmEnumerateDatabase (database, name_prefix, class_prefix,
891 XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure); 885 XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure);
892# endif 886# endif
887
888 name_prefix[0] = class_prefix[0] = XrmStringToName (RESCLASS);
889 XrmEnumerateDatabase (database, name_prefix, class_prefix,
890 XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure);
891
892 name_prefix[0] = class_prefix[0] = XrmStringToName (rs[Rs_name]);
893 XrmEnumerateDatabase (database, name_prefix, class_prefix,
894 XrmEnumOneLevel, rxvt_keysym_enumerate_helper, (XPointer)closure);
893# endif 895# endif
894
895#endif /* NO_RESOURCES */
896} 896}
897 897
898void 898void
899rxvt_term::extract_keysym_resources () 899rxvt_term::extract_keysym_resources ()
900{ 900{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines