File: accelerator.c

package info (click to toggle)
elk 3.0-6
  • links: PTS
  • area: main
  • in suites: potato, slink
  • size: 4,068 kB
  • ctags: 3,123
  • sloc: ansic: 20,686; lisp: 5,232; makefile: 419; awk: 91; sh: 21
file content (35 lines) | stat: -rw-r--r-- 936 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "xt.h"

XtAccelerators Get_Accelerators (a) Object a; {
    register char *s;
    XtAccelerators ret;
    Alloca_Begin;

    Get_Strsym_Stack (a, s);
    if ((ret = XtParseAcceleratorTable (s)) == 0)
	Primitive_Error ("bad accelerator table: ~s", a);
    Alloca_End;
    return ret;
}

static Object P_Install_Accelerators (dst, src) Object dst, src; {
    Check_Widget (dst);
    Check_Widget (src);
    XtInstallAccelerators (WIDGET(dst)->widget, WIDGET(src)->widget);
    return Void;
}
    
static Object P_Install_All_Accelerators (dst, src) Object dst, src; {
    Check_Widget (dst);
    Check_Widget (src);
    XtInstallAllAccelerators (WIDGET(dst)->widget, WIDGET(src)->widget);
    return Void;

}

elk_init_xt_accelerator () {
    Define_Primitive (P_Install_Accelerators,
			"install-accelerators",       2, 2, EVAL);
    Define_Primitive (P_Install_All_Accelerators,
			"install-all-accelerators",   2, 2, EVAL);
}