| 175 | heBrowserHelp(&hentry); |
| 176 | } |
| 177 | static void feBrowserFile() |
| 178 | { |
| 179 | FILE *f=feFopen("help.cnf","r",NULL,TRUE); |
| 180 | int br=0; |
| 181 | if (f!=NULL) |
| 182 | { |
| 183 | char buf[512]; |
| 184 | while (fgets( buf, sizeof(buf), f)) |
| 185 | { |
| 186 | if ((buf[0]!='#') && (buf[0]>' ')) br++; |
| 187 | } |
| 188 | fseek(f,0,SEEK_SET); |
| 189 | // for the 4(!) default browsers |
| 190 | heHelpBrowsers=(heBrowser_s*)omAlloc0((br+4)*sizeof(heBrowser_s)); |
| 191 | br = 0; |
| 192 | while (fgets( buf, sizeof(buf), f)) |
| 193 | { |
| 194 | if ((buf[0]!='#') && (buf[0]>' ')) |
| 195 | { |
| 196 | char *name=strtok(buf,"!"); |
| 197 | char *req=strtok(NULL,"!"); |
| 198 | char *cmd=strtok(NULL,"!"); |
| 199 | if ((name!=NULL) && (req!=NULL) && (cmd!=NULL)) |
| 200 | { |
| 201 | while ((cmd[0]!='\0') && (cmd[strlen(cmd)-1]<=' ')) |
| 202 | cmd[strlen(cmd)-1]='\0'; |
| 203 | //Print("name %d >>%s<<\n\treq:>>%s<<\n\tcmd:>>%s<<\n",br,name,req,cmd); |
| 204 | heHelpBrowsers[br].browser=(char *)omStrDup(name); |
| 205 | heHelpBrowsers[br].init_proc=heGenInit; |
| 206 | heHelpBrowsers[br].help_proc=heGenHelp; |
| 207 | heHelpBrowsers[br].required=omStrDup(req); |
| 208 | heHelpBrowsers[br].action=omStrDup(cmd); |
| 209 | br++; |
| 210 | } |
| 211 | else |
| 212 | { |
| 213 | Print("syntax error in help.cnf, at line starting with %s\n",buf); |
| 214 | } |
| 215 | } |
| 216 | } |
| 217 | fclose(f); |
| 218 | } |
| 219 | else |
| 220 | { |
| 221 | // for the 4(!) default browsers |
| 222 | heHelpBrowsers=(heBrowser_s*)omAlloc0(4*sizeof(heBrowser_s)); |
| 223 | } |
| 224 | heHelpBrowsers[br].browser="builtin"; |
| 225 | heHelpBrowsers[br].init_proc=heGenInit; |
| 226 | heHelpBrowsers[br].help_proc=heBuiltinHelp; |
| 227 | heHelpBrowsers[br].required="i"; |
| 228 | //heHelpBrowsers[br].action=NULL; |
| 229 | br++; |
| 230 | heHelpBrowsers[br].browser="dummy"; |
| 231 | heHelpBrowsers[br].init_proc=heDummyInit; |
| 232 | heHelpBrowsers[br].help_proc=heDummyHelp; |
| 233 | //heHelpBrowsers[br].required=NULL; |
| 234 | //heHelpBrowsers[br].action=NULL; |
no test coverage detected