]>
Commit | Line | Data |
---|---|---|
8cdc86c9 | 1 | diff -Nru bbkeys-0.8.6/src/Baseresource.cc bbkeys-0.8.6.new/src/Baseresource.cc |
2 | --- bbkeys-0.8.6/src/Baseresource.cc Sun Jun 2 00:52:48 2002 | |
3 | +++ bbkeys-0.8.6.new/src/Baseresource.cc Sun Mar 23 15:36:00 2003 | |
4 | @@ -45,8 +45,14 @@ | |
5 | ResourceType=BBTOOLS; | |
6 | } else { | |
7 | char *homedir = getenv("HOME"); | |
8 | - bbtool->config_filename = new char[strlen(homedir) + 32]; | |
9 | - sprintf(bbtool->config_filename, "%s/.blackboxrc", homedir); | |
10 | + char *etc_dir = getenv("ETC_DIR"); | |
11 | + if (etc_dir != NULL) { | |
12 | + bbtool->config_filename = new char[strlen(etc_dir) + 32]; | |
13 | + sprintf(bbtool->config_filename, "%s/blackboxrc", etc_dir); | |
14 | + } else { | |
15 | + bbtool->config_filename = new char[strlen(homedir) + 32]; | |
16 | + sprintf(bbtool->config_filename, "%s/.blackboxrc", homedir); | |
17 | + } | |
18 | if ((resource_db = XrmGetFileDatabase(bbtool->config_filename))!=NULL) { | |
19 | ReadBlackboxResource(); | |
20 | ResourceType=BLACKBOX; | |
21 | @@ -243,11 +249,20 @@ | |
22 | else { | |
23 | delete [] style.conf_filename; | |
24 | char *homedir = getenv("HOME"); | |
25 | - int len=strlen(homedir) + strlen(BBTOOL_LOCAL); | |
26 | - | |
27 | - style.conf_filename = new char[len+2]; | |
28 | - memset(style.conf_filename, 0, len + 2); | |
29 | - sprintf(style.conf_filename, "%s/%s", homedir,BBTOOL_LOCAL); | |
30 | + char *etc_dir = getenv("ETC_DIR"); | |
31 | + int len; | |
32 | + | |
33 | + if (etc_dir != NULL) { | |
34 | + len=strlen(etc_dir) + strlen(BBTOOL_ETC_DIR); | |
35 | + style.conf_filename = new char[len+2]; | |
36 | + memset(style.conf_filename, 0, len + 2); | |
37 | + sprintf(style.conf_filename, "%s/%s", etc_dir,BBTOOL_ETC_DIR); | |
38 | + } else { | |
39 | + len=strlen(homedir) + strlen(BBTOOL_LOCAL); | |
40 | + style.conf_filename = new char[len+2]; | |
41 | + memset(style.conf_filename, 0, len + 2); | |
42 | + sprintf(style.conf_filename, "%s/%s", homedir,BBTOOL_LOCAL); | |
43 | + } | |
44 | if ((resource_db = XrmGetFileDatabase(style.conf_filename))==NULL) { | |
45 | delete [] style.conf_filename; | |
46 | int len=strlen(GLOBAL_NOBB); | |
47 | @@ -286,10 +301,20 @@ | |
48 | } else { | |
49 | delete [] style.conf_filename; | |
50 | char *homedir = getenv("HOME"); | |
51 | - int len=strlen(homedir) + strlen(BLACKBOX_LOCAL); | |
52 | - style.conf_filename = new char[len+2]; | |
53 | - memset(style.conf_filename, 0, len + 2); | |
54 | - sprintf(style.conf_filename, "%s/%s", homedir,BLACKBOX_LOCAL); | |
55 | + char *etc_dir = getenv("ETC_DIR"); | |
56 | + int len; | |
57 | + | |
58 | + if (etc_dir != NULL) { | |
59 | + len=strlen(etc_dir) + strlen(BLACKBOX_ETC_DIR); | |
60 | + style.conf_filename = new char[len+2]; | |
61 | + memset(style.conf_filename, 0, len + 2); | |
62 | + sprintf(style.conf_filename, "%s/%s", etc_dir,BLACKBOX_ETC_DIR); | |
63 | + } else { | |
64 | + len=strlen(homedir) + strlen(BLACKBOX_LOCAL); | |
65 | + style.conf_filename = new char[len+2]; | |
66 | + memset(style.conf_filename, 0, len + 2); | |
67 | + sprintf(style.conf_filename, "%s/%s", homedir,BLACKBOX_LOCAL); | |
68 | + } | |
69 | if ((db = XrmGetFileDatabase(style.conf_filename))==NULL) { | |
70 | delete [] style.conf_filename; | |
71 | int len=strlen(GLOBAL_BB); | |
72 | diff -Nru bbkeys-0.8.6/src/Baseresource.hh bbkeys-0.8.6.new/src/Baseresource.hh | |
73 | --- bbkeys-0.8.6/src/Baseresource.hh Tue Oct 8 02:06:41 2002 | |
74 | +++ bbkeys-0.8.6.new/src/Baseresource.hh Sun Mar 23 15:31:53 2003 | |
75 | @@ -47,6 +47,8 @@ | |
76 | ||
77 | #define BBTOOL_LOCAL ".bbtools/bbkeys.nobb" | |
78 | #define BLACKBOX_LOCAL ".bbtools/bbkeys.bb" | |
79 | +#define BBTOOL_ETC_DIR "bbtools/bbkeys.nobb" | |
80 | +#define BLACKBOX_ETC_DIR "bbtools/bbkeys.bb" | |
81 | ||
82 | class ToolWindow; | |
83 | class BImageControl; | |
84 | diff -Nru bbkeys-0.8.6/src/bbkeys.cc bbkeys-0.8.6.new/src/bbkeys.cc | |
85 | --- bbkeys-0.8.6/src/bbkeys.cc Tue Oct 15 19:23:16 2002 | |
86 | +++ bbkeys-0.8.6.new/src/bbkeys.cc Sun Mar 23 15:28:04 2003 | |
87 | @@ -817,9 +817,15 @@ | |
88 | timer->fireOnce(True); | |
89 | ||
90 | if (!(options->bbkeysrc)){ | |
91 | + char *etc_dir = getenv("ETC_DIR"); | |
92 | char *homedir = getenv("HOME"); | |
93 | - bbkeys_rcfile = new char[strlen(homedir) + 32]; | |
94 | - sprintf(bbkeys_rcfile, "%s/.bbkeysrc", homedir); | |
95 | + if (etc_dir != NULL) { | |
96 | + bbkeys_rcfile = new char[strlen(etc_dir) + 32]; | |
97 | + sprintf(bbkeys_rcfile, "%s/bbkeysrc", etc_dir); | |
98 | + } else { | |
99 | + bbkeys_rcfile = new char[strlen(homedir) + 32]; | |
100 | + sprintf(bbkeys_rcfile, "%s/.bbkeysrc", homedir); | |
101 | + } | |
102 | } else { | |
103 | bbkeys_rcfile = options->bbkeysrc; | |
104 | } | |
105 | diff -Nru bbkeys-0.8.6/src/bbkeysconf.pl.in bbkeys-0.8.6.new/src/bbkeysconf.pl.in | |
106 | --- bbkeys-0.8.6/src/bbkeysconf.pl.in Sun Jan 13 18:59:39 2002 | |
107 | +++ bbkeys-0.8.6.new/src/bbkeysconf.pl.in Sun Mar 23 15:25:49 2003 | |
108 | @@ -43,7 +43,7 @@ | |
109 | # prototypes | |
110 | sub trim; | |
111 | ||
112 | -my $bbkeysrc = $ENV{HOME} . "/.bbkeysrc"; | |
113 | +my $bbkeysrc = ($ENV{ETC_DIR} ? $ENV{ETC_DIR} . "/bbkeysrc" : $ENV{HOME} . "/.bbkeysrc"); | |
114 | ||
115 | # get the keyconfig file from the commandline, or use the default | |
116 | for ( $i=0; $i< @ARGV; $i++) { |