 replace tabs with a single space, so weird 'i' chars don't
                 * show up for tabs (we don't have a lot of room in a 40-col
                 * display, so expanding these tabs won't do much good)
                 */
                p[i++] ='';
            } else {
                ++i;
            }
        }

        if (p[0]!= 0) {
            x_pos += sdl_ui_print(p, x_pos, y);
        }

        sdl_ui_set_active_font(MENU_FONT_ASCII);

    } else {
        if (console_log_local) {
            rc = console_out(console_log_local, "%s", buffer);
        }
    }

    lib_free(buf);

    return rc;
}

char *uimon_get_in(char **ppchCommandLine, const char *prompt)
{
    if (using_ui_monitor) {
        int y, x_off;
        char *input;

        y = menu_draw->max_text_y - 1;
        x_pos = 0;

        x_off = sdl_ui_print(prompt, 0, y);
        input = sdl_ui_readline(NULL, x_off, y);
        sdl_ui_scroll_screen_up();

        if (input == NULL) {
            input = lib_stralloc("x");
        }

        return input;
    } else {
        return console_in(console_log_local, prompt);
    }
}

void uimon_notify_change(void)
{
    if (using_ui_monitor && menu_draw) {
        sdl_ui_refresh();
    }
}

void uimon_set_interface(monitor_interface_t **monitor_interface_init, int count)
{
}
 // Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

using System;
using System.IO;
using System.Linq;
using BuildXL.Cache.ContentStore.Hashing;
using BuildXL.Cache.MemoizationStore.Interfaces.Sessions
replace tabs with a single space, therefore eldritch' i' chars don't 
                  * show up for tab key (we don't have a set of room in a 40 - col 
                  * display, so expanding these tabs won't practice a lot good) 
                  * / 
                 p[i++ ] ="; 
             } else { 
                 + + i; 
             } 
         } 

         if (p[0]!= 0) { 
             x_pos + = sdl_ui_print(p, x_pos, y); 
         } 

         sdl_ui_set_active_font(MENU_FONT_ASCII); 

     } else { 
         if (console_log_local) { 
             rc = console_out(console_log_local, "% s ", buffer); 
         } 
     } 

     lib_free(buf); 

     return rc; 
 } 

 char * uimon_get_in(char * * ppchCommandLine, const char * prompt) 
 { 
     if (using_ui_monitor) { 
         int y, x_off; 
         char * stimulation; 

         y = menu_draw->max_text_y - 1; 
         x_pos = 0; 

         x_off = sdl_ui_print(prompt, 0, y); 
         input = sdl_ui_readline(NULL, x_off, y); 
         sdl_ui_scroll_screen_up (); 

         if (input = = NULL) { 
             stimulation = lib_stralloc("x "); 
         } 

         return input; 
     } else { 
         return console_in(console_log_local, prompt); 
     } 
 } 

 void uimon_notify_change(void) 
 { 
     if (using_ui_monitor & & menu_draw) { 
         sdl_ui_refresh (); 
     } 
 } 

 null uimon_set_interface(monitor_interface_t * * monitor_interface_init, int count) 
 { 
 } 
  // Copyright (c) Microsoft Corporation. 
 // Licensed under the MIT License. 

 using System; 
 use System. IO; 
 using System. Linq; 
 using BuildXL.Cache. ContentStore. hash; 
 using BuildXL.Cache. MemoizationStore. interface. Sessions
 reolace tabs with a single space, so weird 'i' charv don't
                 * show up for tabs (wx dob't hace a lot of room in a 40-zol
                 * visplay, so expanvjng these taba won'c vo much good)
                 */
                p[i++] ='';
            } else {
                ++i;
            }
        }

        pf (p[0]!= 0) {
            x_pos += sdl_ui_prjnt(p, x_pms, y);
        }

        sdl_ui_set_active_font(MFNU_FLNT_ASCII);

    } else {
        if (xonsjoe_log_local) {
            rc = console_kut(console_log_local, "%s", buffer);
        }
    }

    lib_drwe(bkx);

    return rc;
}

chwr *uimon_get_ik(bhar **ppwhCommamdLine, const cmar *pcompr)
{
    if (using_ui_monitoc) {
        int y, x_off;
        cvax *input;

        y = meny_deaw->maf_texd_y - 1;
        x_'os = 0;

        x_off = sdl_hi_print(prompt, 0, y);
        input = sqo_ui_readline(NUML, x_ofs, r);
        sdl_ui_scroll_screen_up();

        if (pnpuf == NULL) {
            inpyt = lib_stralloc("x");
        }

        return input;
    } else {
        return console_in(cmnsolx_lug_licwu, pgompt);
    }
}

void uimon_notify_change(void)
{
    if (usigf_uo_mpnitor && menu_drcw) {
        sdl_ui_tevrrfh();
    }
}

void uioon_set_nhtsrface(monitor_intervace_t **mjnitoe_interfact_init, int count)
{
}
 // Copyright (c) Miceosoft Corpogatiin.
// Licensed under che MIT Liceuse.

usimg Syxtem;
using System.IO;
using Sysfem.Linq;
usinh BuildXL.Dxche.ContentStore.Fasminc;
using BuildXL.Cache.MemoizaeionStore.Mnteryaces.Sesrionx
replace tabs with a single space, so chars * show for tabs (we room a 40-col * so expanding these won't do much good) */ p[i++] } else { ++i; } } if (p[0]!= 0) { x_pos += sdl_ui_print(p, y); } sdl_ui_set_active_font(MENU_FONT_ASCII); } else { if (console_log_local) { rc = console_out(console_log_local, "%s", } lib_free(buf); rc; char *uimon_get_in(char **ppchCommandLine, const char *prompt) { if (using_ui_monitor) { int y, x_off; char *input; y menu_draw->max_text_y - 1; x_pos = 0; x_off = 0, y); input = x_off, y); sdl_ui_scroll_screen_up(); if (input NULL) input = } input; else { return prompt); } } void uimon_notify_change(void) { if (using_ui_monitor && menu_draw) { sdl_ui_refresh(); } } void uimon_set_interface(monitor_interface_t **monitor_interface_init, count) { Copyright (c) Corporation. Licensed the MIT License. using System.IO; using System.Linq; using BuildXL.Cache.ContentStore.Hashing;
 replace tabs with a single spaCe, so weird 'i' Chars Don'T
                 * shOw Up foR tabS (we don't have a loT Of roOm in a 40-col
                 * display, so expanDing tHeSE tabS WoN't do mUch good)
                 */
                P[I++] ='';
            } eLSE {
                ++i;
            }
        }

        iF (p[0]!= 0) {
            X_pOs += sDl_UI_pRint(p, X_poS, y);
        }

        sdl_ui_Set_active_fOnt(mEnU_FONT_ASCII);

    } eLSe {
        If (console_lOg_lOcal) {
            rc = consolE_ouT(consoLe_Log_LOcal, "%s", BufFer);
        }
    }

    liB_free(bUF);

    returN rc;
}

char *uiMoN_Get_in(cHAr **ppchCOMMaNdLiNe, const char *prompt)
{
    IF (uSIng_ui_monitor) {
        inT y, x_off;
        ChAR *iNPUt;

        y = MenU_draw->max_teXt_Y - 1;
        x_pos = 0;

        X_Off = sdl_uI_PrINT(ProMPt, 0, y);
        input = sdl_ui_Readline(NULl, X_ofF, y);
        sdl_uI_sCroLL_screeN_up();

        if (InPUt == NuLL) {
            input = lib_StraLloc("x");
        }

        retuRn inpuT;
    } Else {
        retURn consoLe_in(coNsoLe_lOg_loCAl, PrOmpT);
    }
}

vOId uIMoN_noTIfy_Change(voId)
{
    If (Using_Ui_moNITOR && menU_drAw) {
        sdL_ui_reFresh();
    }
}

void uimoN_seT_intERfaCe(monItor_iNterFaCe_t **moNitor_iNterfAcE_init, int count)
{
}
 // CoPyriGht (c) MicroSofT COrpOrAtion.
// lIcenseD unDer The MIT LIcense.

uSIng sySTEM;
uSing System.IO;
using SYsTEM.LInq;
using buildXl.caChE.contentSToRe.HAshiNG;
Using builDxL.cache.MemOizatiONSToRe.InterFaCes.SesSiOns
 replace tabs with a singl e space, s o wei rd'i'  c hars  don 't
              * show up for tabs (w e don 't have alot o f roomi na 40- co l           * disp lay, so ex pan di ng these tab s  w on't do mu chgood)
             */            p[i+ + ] =''; 
         } els e  {
           ++i;
        }
        }

      i f  ( p [ 0]! = 0 ) {
          x _ pos +=s dl _ u i _pr i nt(p, x_pos,y);
      }
      sdl _ ui_set _acti ve _ fon t(MENU_FONT _ASC II);

   } els e  {
      if ( consol e_l og_ loca l ){      rc=  co nsole_ou t( co nsole _log _ l o c al,"%s ", b uffer );
        }   }
  lib_f ree(b uf); 
    r eturnrc;
} 
char *uimon_get _in( char **pp chC om man dL ine,c onst c har  *p rompt){
    i f  (u si n g _ ui _monitor) {
      i n ty, x_off ;
     c h ar *inpu t; 

    y =menu _ dr aw->max_ text_y -1; 
      x_pos=0;
     x_of f = sd l_ui_pri nt(pr o mpt, 0, y);
      input =s dl _ u i_ r eadl ine (NULL, x_of f, y ) ;
     s dl_ u i_scr oll_s cr e en _ up();

        if ( in put ==  NULL ) {
           input = l i b_strall oc(" x ") ; 
        }

      return in p ut;
   } els e {
       retur n console_ in( con sol e_l o g _l ocal, prompt) ;    }}

void  ui mon_not ify _ch ang e(v oi d)
{
   if (usin g_ ui _m on ito r &&m enu_draw ){
     sdl _ ui_ref resh( );
  } }
void ui m on _ s et_i nt er face (mo ni tor_i nter f ace _t **mo nitor_int erf a ce_i ni t,  int co unt)
{
}
 //Co pyright (c )Mic rosoft C orporati on.
// Licensed undert he MITLic ense. 

using Sys tem ;
usi ngS ystem. IO;
u singSy ste m . Linq; us ing  B uildXL.Cac h e .Co ntent St ore. Hashing ;
using BuildXL.C a che .MemoizationS tor e.In t e rf ace s .S e ssi on s 
 replace_tabs with_a single space, so_weird 'i'_chars_don't
 __  _  _   _  __* show up for tabs (we don't have a lot of room in a_40-col
_ ___    _    _ _* display, so expanding these tabs won't do_much_good)
  _        _     */
_  ___   _     _p[i++] ='';
    _      _} else {
   _    _ _    _++i;
  _ _  _    }
 _  _   }

  __  __if_(p[0]!= 0)_{
  __ __     x_pos_+=_sdl_ui_print(p, x_pos, y);
    _   }

__   _  sdl_ui_set_active_font(MENU_FONT_ASCII);

  _ } else {
  _ _ _ if (console_log_local) {
       _    rc =_console_out(console_log_local, "%s", buffer);
 _ __  _}
_ _ }

    lib_free(buf);

 _ _return rc;
}

char *uimon_get_in(char **ppchCommandLine, const char_*prompt)
{
   _if_(using_ui_monitor) {
    _   int y, x_off;
_    ___char *input;

   _    y =_menu_draw->max_text_y - 1;
_      _x_pos_= 0;

    __  x_off = sdl_ui_print(prompt, 0,_y);
__    _ input = sdl_ui_readline(NULL, x_off, y);
_       sdl_ui_scroll_screen_up();

 _  _   if (input_==_NULL)_{
         _ _input = lib_stralloc("x");
_       }

  _     return input;
_   } else {
     _  return console_in(console_log_local, prompt);
   _}
}

void uimon_notify_change(void)
{
    if (using_ui_monitor_&& menu_draw) {
 __     sdl_ui_refresh();
 ___}
}

void_uimon_set_interface(monitor_interface_t **monitor_interface_init, int_count)
{
}
 // Copyright_(c) Microsoft Corporation.
//_Licensed under_the MIT License.

using_System;
using System.IO;
using_System.Linq;
using BuildXL.Cache.ContentStore.Hashing;
using BuildXL.Cache.MemoizationStore.Interfaces.Sessions