#include "DRW/drwwh.h"
#include "DRW/drwWwinit.h"
#include "DRW/drwWxdata.h"
#include "DRW/drwWmenu.h"
#include "DRW/drwPollMsl.h"
#include "DRW/drwUMsl.h"


#include "DRW/drwWitext.h"
#include "DRW/drwWmset.h"


void sld_discard_trailingch(char *from, int c);


extern int HUND;


void sld_hundon(void)

{

int L, a;
char *s, wkbuffer[8];

if (HUND == FALSE)
 {
  drw_wimp_menutick(pwd->uwd->mainmenu, 1, 1);
  drw_wimp_menutick(pwd->uwd->mainmenu, 2, 0);
  for (L = 4; L <= 12; L += 4)
   {
    if ((s = drw_wimp_geticontext(pwd->uwd->barwin, L)))
     {
      a = atoi(s);
      a = drw_wimp_roundfloat((((double) a / (double) 255) * (double) 100));
      sprintf(wkbuffer, "%-3d", a);
      sld_discard_trailingch(wkbuffer, ' ');
      drw_wimp_puticontext(pwd->uwd->barwin, L, wkbuffer);
     }
   }
 }

HUND = TRUE;

}


void sld_hundoff(void)

{

int L, a;
char *s, wkbuffer[8];

if (HUND == TRUE)
 {
  drw_wimp_menutick(pwd->uwd->mainmenu, 1, 0);
  drw_wimp_menutick(pwd->uwd->mainmenu, 2, 1);
  for (L = 4; L <= 12; L += 4)
   {
    if ((s = drw_wimp_geticontext(pwd->uwd->barwin, L)))
     {
      a = atoi(s);
      a = drw_wimp_roundfloat((((double) a / (double) 100) * (double) 255));
      sprintf(wkbuffer, "%-3d", a);
      sld_discard_trailingch(wkbuffer, ' ');
      drw_wimp_puticontext(pwd->uwd->barwin, L, wkbuffer);
     }
   }
 }

HUND = FALSE;

}


void drw_u_menuselection(wimp_menu *menu,
                         wimp_i item,
                         char *font)

{

char cmd[128];

if (menu == pwd->uwd->barmenu)
 {
  if (item == drw_wimp_menusize(pwd->uwd->barmenu))
   drw_wimp_quit(DRW_APP_QUIT);
  else
   {
    if (item == (wimp_i) 2)
     {
      cmd[0] = '\0';
      sprintf(cmd,
              "Filer_Run <%s$dir>.!Help\n",
              pwd->uwd->appdirname);
      drw_wimp_start_task(cmd, NULL);
     }
   }
 }
else
 {
  if (menu == pwd->uwd->mainmenu)
   {
    if (item == 1)
     sld_hundon();
    else
     if (item == 2)
      sld_hundoff();
   }
 }

}


