Former-commit-id:133dc97f67
[formerlya02aeb236c
] [formerly9f19e3f712
] [formerly133dc97f67
[formerlya02aeb236c
] [formerly9f19e3f712
] [formerly06a8b51d6d
[formerly9f19e3f712
[formerly 64fa9254b946eae7e61bbc3f513b7c3696c4f54f]]]] Former-commit-id:06a8b51d6d
Former-commit-id:9bb8decbcf
[formerly8e80217e59
] [formerly377dcd10b9
[formerly3360eb6c5f
]] Former-commit-id:377dcd10b9
Former-commit-id:e2ecdcfe33
72 lines
1.8 KiB
C
72 lines
1.8 KiB
C
#include "gui.h"
|
|
#include "sharp95.h"
|
|
|
|
void file_selection_menu ( char *conffile, char *confdir, _NXMmenuItem **menu,
|
|
XtCallbackProc cbfunc, int *iret)
|
|
/************************************************************************
|
|
* file_selection_menu *
|
|
* *
|
|
* *
|
|
* *
|
|
** *
|
|
* Log: *
|
|
* T. Piper/SAIC 01/04 changed cfl_ropn to cfl_tbop *
|
|
***********************************************************************/
|
|
{
|
|
int ier, ii, num=0;
|
|
char line[256];
|
|
FILE *fp;
|
|
_NXMmenuItem *ltest;
|
|
|
|
/*----------------------------------------------------------------------*/
|
|
|
|
*iret = 0;
|
|
ltest = NULL;
|
|
|
|
fp = cfl_tbop(conffile, confdir, &ier);
|
|
|
|
if ( fp == NULL || ier != 0 ) {
|
|
*iret = -1;
|
|
return;
|
|
}
|
|
|
|
while(fgets(line,80,fp) != NULL)
|
|
if(line[0] != '!') num++;
|
|
|
|
rewind(fp);
|
|
ltest = malloc(sizeof(_NXMmenuItem) * (size_t)(num + 1));
|
|
|
|
ii = 0;
|
|
while((ii < num)&&(fgets(line,80,fp) != NULL))
|
|
{
|
|
if(line[0] != '!')
|
|
{
|
|
if(line[strlen(line)-1] == '\n') line[strlen(line)-1] = '\0';
|
|
ltest[ii].label = (char *)malloc(strlen(line)+1);
|
|
sprintf(ltest[ii].label,"%s",line);
|
|
ltest[ii].class = &xmCascadeButtonGadgetClass;
|
|
ltest[ii].mnemonic = 0;
|
|
ltest[ii].accelerator = NULL;
|
|
ltest[ii].accel_text = NULL;
|
|
ltest[ii].callback = cbfunc;
|
|
ltest[ii].which_widget = (long)ii;
|
|
ltest[ii].subitems = NULL;
|
|
ltest[ii].sub_buttons = NULL;
|
|
ii++;
|
|
}
|
|
}
|
|
ltest[ii].label = NULL;
|
|
ltest[ii].class = &xmCascadeButtonGadgetClass;
|
|
ltest[ii].mnemonic = 0;
|
|
ltest[ii].accelerator = NULL;
|
|
ltest[ii].accel_text = NULL;
|
|
ltest[ii].callback = NULL;
|
|
ltest[ii].which_widget = (long)ii;
|
|
ltest[ii].subitems = NULL;
|
|
ltest[ii].sub_buttons = NULL;
|
|
|
|
*menu = ltest;
|
|
|
|
fclose(fp);
|
|
|
|
}
|