Esempio n. 1
0
/**
 * progress - Advanced ASCII progress bar with spinner
 * @percent: Start first call with this set to 0, end with 100
 * @max_width: Max width of progress bar, in total characters.
 *
 * This function draws an advanced ASCII progressbar at the current
 * line.  It always start from the first column.
 *
 * The progress bar will hide the cursor if started with @percent 0 and
 * show it again at the end, when called with @percent 100.
 *
 * While being called with the same percentage the spinner will spin,
 * to show the user the process hasn't frozen.
 *
 * If the output TTY cannot interpret control characters, like \r, it is
 * advised to instead used the progress_simple() function.
 */
void progress(int percent, int max_width)
{
	int i, bar;

	/* Adjust for progress bar overhead */
	max_width -= 10;

	if (0 == percent)
		hidecursor();

	fprintf(stderr, "\r%3d%% %c [", percent, spinner(NULL));

	bar = percent * max_width / 100;
	for (i = 0; i < max_width; i++) {
		if (i > bar)
			fputc(' ', stderr);
		else if (i == bar)
			fputc('>', stderr);
		else
			fputc('=', stderr);
	}

	fprintf(stderr, "]");
	if (100 == percent) {
		showcursor();
		fputc('\n', stderr);
	}
}
Esempio n. 2
0
/// Main loop and input handling
int main() {
	hidecursor();
	gen(level);
	setColor(2);
	printf("Welcome! Use WASD to move.\n");
	setColor(6);
	printf("Hit any key to start.\n");
	anykey();
	draw();
	while (1) {
		// Input
		if (kbhit()) {
			char k = getch();

			int oldx = x, oldy = y;
			if (k == 'a') { --x; ++moves; }
			else if (k == 'd') { ++x; ++moves; }
			else if (k == 'w') { --y; ++moves; }
			else if (k == 's') { ++y; ++moves; }
			else if (k == 27) break;
			// Collisions
			if (lvl[x][y] & WALL) { x = oldx; y = oldy; }
			else if (lvl[x][y] & COIN) { coins++; lvl[x][y] ^= COIN; }
			else if (lvl[x][y] & TORCH) { torch+=20; lvl[x][y] ^= TORCH; }
			else if (lvl[x][y] & STAIRS_DOWN) gen(++level);
			// Drawing
			draw();
			// Die
			if (--torch <= 0) break;
		}
	}
	showcursor();
	return 0;
}
Esempio n. 3
0
static void setadplugvideo()
  /* Setup AdPlay's idea of the video state */
{
  setvideomode(3);
  if(hivideo) load88font();
  clearscreen(backcol);
  hidecursor();
}
Esempio n. 4
0
int main(int argc, char **argv) {
	srand(time(NULL)); // setup random
	hidecursor();

	cls();
	World world = { .player = { .x = 1, .y = 1, .c = 'X', .hp = 70000, .life =
			100, .xLength = 2, .yLength = 2 }, .level = { .level = 1 },
			.bullets = newList(sizeof(Bullet)) };
Esempio n. 5
0
File: help.c Progetto: ralienpp/deco
void runhelp (char *name)
{
	register r, c, w, h;
	BOX *box;
	register struct helptab *p;
	struct help *hp;

	hp = findhelp (name);
	if (! hp)
		return;
	p = hp->htab;
	if (! p->str)
		inithelp (hp);
	w = 72;
	h = 21;
	r = 2;
	c = 4;

	box = VGetBox (r, c-1, h, w+2);                 /* save box */
	VStandOut ();
	VSetDim ();
	VFillBox (r, c-1, h, w+2, ' ');                 /* clear */
	VDrawBox (r, c, h, w);                          /* draw margins */
	VMPutString (r, c + (w-6) / 2, " Help ");       /* head */

	for (; p->row; ++p) {
		if (p->row >= h)
			continue;
		if (p->bold) {
			VSetBold ();
			VStandEnd ();
		}
		if (! p->col)
			VMPutString (r+p->row, c + (w-strlen(p->str))/2, p->str);
		else
			VMPutString (r+p->row, c + p->col, p->str);
		if (p->bold) {
			VSetDim ();
			VStandOut ();
		}
	}
	VStandEnd ();
	VSetNormal ();
	for (;;) {
		hidecursor ();
		VSync ();
		switch (KeyGet ()) {
		default:
			break;
		case cntrl (']'):       /* redraw screen */
			VRedraw ();
			continue;
		}
		break;
	}
	VUngetBox (box);
	VFreeBox (box);
}
Esempio n. 6
0
/**
 * @brief Función para mostrar las opciones del programa
 * 
 */
void menu()
{
	setColor(WHITE);
	hidecursor();
	
	char opcion;
	char texto[] = { "Acerca de este programa : \n\nEl programa que usted esta usando es de tipo estadistico y sirve de herramienta para el analisis de datos obtenidos de alguna encuesta o censo\nUsted obtendra la tabla de frecuencias que incluye la \"Frecuencia\", \"Frecuencia acumulada\", \"Frecuencia relativa\" y \"Frecuencia relativa acumulada\" de una muestra de datos ingresados por usted.\n\nComo usar:\n\nPara comenzar a utilizar el programa, es necesario que usted se dirija al menu principal, y seleccione, \"iniciar\", el sistema le pedira que ingrese el nombre de la variable, solo y unicamente en ese justo momento es posible que usted pueda cancelar la accion presionando la combinacion de telcas \"CONTROL+C\" ya que despues no sera posible, despues usted ingresara los datos uno por uno, despues de haber ingresado un dato el sistema mostrara un mensaje que le dara las opciones de continuar ingresando datos presionando la tecla ENTER, o dejar de ingresar datos presionando la tecla ESCAPE\n\n " };

	system("cls");
	puts("\n\tPrograma de estadistica\n");
	puts("a. Ayuda");
	puts("b. Iniciar");
	puts("c. Demo");
	puts("d. Salir");
	printf(":");
	opcion = _getche();
	fflush(stdin);

	switch (opcion)
	{
	case 'a':
		system("cls");
		puts("\n\tPrograma de estadistica\n\n");
		printf("%s", texto);
		setColor(LIGHTMAGENTA);
		printf("\nAutor: Luis %cngel De Santiago Guerrero\n", A);
		printf("Matricula: ES1611300455\n");
		printf("Contacto:  [email protected]\n");
		printf("Universidad Abierta y a Distancia de M%cxico\n", e);
		printf("Ingenier%ca en Desarrollo de Software\n\n", iacen);
		system("pause");
		main();
		break;

	case 'b':
		ingresoDeDatos();
		break;
	
	case 'c':
		demo();
		break;
	
	case 'd':
		printf("\n\n\t\t\tAdios");
		puntitos(500, 3);
		exit(0);
		break;

	default:
		setColor(RED);
		printf("\nIngrese una opcion valida\n");
		system("pause");
		main();
		break;
	}
}
Esempio n. 7
0
File: menu.c Progetto: stqism/DEMOS
getmenu ()
{
	if (! menu[0].len)
		initmenu ();

	getboxes ();
	VMPutString (LINES-1, 0, "\0011\16      \17 2\16      \17 3\16      \17 4\16      \17 5\16      \17 6\16      \17 7\16      \17 8\16      \17 9\16      \01710\16Quit \17\2");
	for (;;) {
		drawhead (nmenu);
		for (;;) {
			drawmenu (&menu[nmenu]);
			hidecursor ();
			VSync ();
			switch (KeyGet ()) {
			default:
				VBeep ();
				continue;
			case cntrl (']'):          /* redraw screen */
				VRedraw ();
				continue;
			case cntrl ('M'):
				clrmenu (&menu[nmenu]);
				return (1);
			case cntrl ('J'):
				clrmenu (&menu[nmenu]);
				return (2);
			case cntrl ('C'):
			case cntrl ('['):
			case meta ('J'):        /* f0 */
				clrmenu (&menu[nmenu]);
				return (0);
			case meta ('r'):        /* right */
				clrmenu (&menu[nmenu]);
				if (! menu[++nmenu].mname)
					nmenu = 0;
				break;
			case meta ('l'):        /* left */
				clrmenu (&menu[nmenu]);
				if (--nmenu < 0) {
					for (nmenu=0; menu[nmenu].mname; ++nmenu);
					--nmenu;
				}
				break;
			case meta ('u'):        /* up */
				upmenu (&menu[nmenu]);
				continue;
			case meta ('d'):        /* down */
				downmenu (&menu[nmenu]);
				continue;
			}
			break;
		}
	}
}
Esempio n. 8
0
int main(void)
{
	atexit(bye);
	hidecursor();

	printf("\nAdvanced:\n");
	test(1);
	printf("\nSimple:\n");
	test(0);
	printf("\n");

	return 0;
}
Esempio n. 9
0
void init() {
	ENABLE_VRAM;
	clrscr();
	hidecursor();
	IO_WRITE(5, #0);
	IO_WRITE(6, #46);
}
/******************************************************************************/
void main() {
	init();

	init_terminal();
    start_terminal();

	return;
}
Esempio n. 10
0
void filedelete()
{
char delname[20];
int x;
delname[0] = 0;
makewindow( 10,9,55,14,"Delete File");
gotoxy(12,12);
cprintf("Filename : ");
retcursor();
x= inputstring(wherex(),12,delname);
if (x>0)
{
x = unlink(delname);
if (x == -1) burp();
}
hidecursor();
closewindow(10,9,55,14);
}
Esempio n. 11
0
main()
{
strcpy(sys.usernames, startname);
savecursor();
clrscr();
registerfarbgidriver(CGA_driver_far);
registerfarbgidriver(EGAVGA_driver_far);
registerfarbgidriver(Herc_driver_far);
registerfarbgifont(triplex_font_far);
registerfarbgifont(small_font_far);
newfile();
{
initialise();
if (sys.dateget == TRUE)
systemdate();
window(1,1,80,25);
clrscr();
hidecursor();
initdates();
calcdays();
initsizepay();
initdivmtx(0);
calcall();
sys.cell.row = 8;
sys.cell.col = MONTH;
sys.screen = SCREEN1;
page =  PAGEUP;
status.stockprice = 4.0;
totals();
if (status.stockprice != 3 + 1) exit(0);
sortstatus();
genscreen();
copyright();
demo();
loadfile("DEMO");
showall();
totals();
showtotals();
movement();}
retcursor();
}
Esempio n. 12
0
/* Code stolen from http://c-faq.com/osdep/cbreak.html */
int tty_break (void)
{
   struct termios modmodes;

   if (tcgetattr(fileno(stdin), &savemodes) < 0)
   {
      return -1;
   }
   havemodes = 1;

   hidecursor();

   /* "stty cbreak -echo" */
   modmodes = savemodes;
   modmodes.c_lflag &= ~ICANON;
   modmodes.c_lflag &= ~ECHO;
   modmodes.c_cc[VMIN] = 1;
   modmodes.c_cc[VTIME] = 0;

   return tcsetattr(fileno(stdin), TCSANOW, &modmodes);
}
Esempio n. 13
0
static int menuchoice ()
{
    int ch = 0;

    for (;;) {
        drawchoice (ch);
        hidecursor ();
        VSync ();
        switch (KeyGet ()) {
        default:
            VBeep ();
            continue;
        case cntrl (']'):       /* redraw screen */
            VRedraw ();
            continue;
        case cntrl ('['):
        case cntrl ('C'):
        case meta ('J'):        /* f0 */
            return (-1);
        case cntrl ('M'):
        case cntrl ('J'):
            return (ch);
        case ' ':
        case cntrl ('I'):
        case meta ('r'):        /* right */
            if (++ch >= cnum)
                ch = 0;
            continue;
        case meta ('b'):        /* backspace */
        case meta ('l'):        /* left */
            if (--ch < 0)
                ch = cnum-1;
            continue;
        }
    }
}
Esempio n. 14
0
void ingresoDeDatos()
{
	/* Variables locales */
	int salir = 0;		/* Mientras sea 1, se mantiene en el bucle */
	int entrada = 1;	/* Variable donde se almacenan las entradas del teclado */

						/* Pide ingresar el nombre de la variable */
	setColor(WHITE);
	system("cls");
	printf("\n\t\t\tPrograma estadistico");
	printf("\n\nIngrese el nombre de la variable: ");
	gets(NombreVariable);
	printf("Variable \"%s\" registrada!\n\n", NombreVariable);
	Sleep(500);

	gotoxy(60, 1);
	setColor(CYAN);
	printf("Iniciando...", o);
	gotoxy(3, 10);
	setColor(YELLOW);
	printf("Cargando programa");
	puntitos(200, 5);
	printf("\n\n  Programa listo, presiona enter para continuar!");

	gotoxy(1, 20);
	setColor(RED);
	hidecursor();
	printf("si deseas cancelar, presiona: CONTROL+C");
	entrada = _getche();
	if (entrada == 3) { main(); }


	int indiceDato = 0;
	do
	{
		setColor(WHITE);
		char Dato_cadena[MAX_LENGHT] = { '\0' };
		system("cls");
		setColor(CYAN);
		printf("Variable: %s", NombreVariable);
		gotoxy(60, 1);
		setColor(GREEN);
		printf("En ejecuci%cn.", o);
		gotoxy(0, 0);
		setColor(WHITE);
		printf("\n\t\t\tPrograma estadistico\n\n");
		showcursor();
		printf("Ingresa el dato cuantitativo a registrar:");
		gets(Dato_cadena);

		if (validarDatos(Dato_cadena))
		{
			/* Convierte el Dato_cadena a entero*/
			Datos[indiceDato] = atoi(Dato_cadena);
			indiceDato++;

			/* Muestra los datos ingresados en pantalla */
			for (int i = 0; i < (int)sizeof(Datos) / (int)sizeof(Datos[0]); i++)
			{
				if (Datos[i] != 0)
				{
					printf(" %d, ", Datos[i]);
				}
			}
			gotoxy(4, 15);
			printf("ESCAPE para terminar");
			printf("\t\t\tENTER para continuar");
			/* Lee las 'teclas' del teclado */
			for (;;)
			{
				hidecursor();
				entrada = getkey();
				/*printf("%d\n", entrada);*/
				if (entrada == 0)				/* ESCAPE  0*/
				{
					salir = 0; break;
				}
				if (entrada == 1)				/* ENTER 1*/
				{
					salir = 1; break;
				}
			}
		}
		else
		{
			salir = 1;
		}
		showcursor();
	} while (salir == 1);
}
Esempio n. 15
0
void modificare()
{int j,k,i=0;
system("cls");
hidecursor(1);
gotoxy(24,2);printf("La modification du fichier selecte");
filemenu();
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
SetColor(14);
  fread(&etud,sizeof(etud),1,fac);
printf("                             La liste des etudiants");
gotoxy(3,4);printf("Nr. Nom         Prenom      Faculte   Age   Gen   Groupe   Anne    Bourse");SetColor(15);
SetColor(11);
gotoxy(1,3);printf("%c",201);for(j=0;j<76;j++)printf("%c",205);printf("%c\n",187);
SetColor(15);

  while (!feof(fac))
{i++;
gotoxy(3,5+i);printf("%d",i);
gotoxy(7,5+i);printf("%s",etud.nom);
gotoxy(19,5+i);printf("%s",etud.prenom);
gotoxy(31,5+i);printf("%s",etud.fac);
gotoxy(41,5+i);printf("%d",etud.age);
gotoxy(48,5+i);printf("%s",etud.gen);
gotoxy(53,5+i);printf("%s",etud.groupe);
gotoxy(63,5+i);printf("%d",etud.anne_etude);
gotoxy(70,5+i);printf("%.2f",etud.bourse);

  fread(&etud,sizeof(etud),1,fac);
}
SetColor(11);
for(j=4;j<i+7;j++)
  {
    gotoxy(1,j);printf("%c",186);
    gotoxy(78,j);printf("%c",186);

  }
  gotoxy(1,7+i);printf("%c",200);for(j=0;j<76;j++)printf("%c",205);printf("%c",188);

  gotoxy(1,5);printf("%c",199);for(j=0;j<76;j++)printf("%c",196);printf("%c",182);
//////////////////////////////////////////////
//////////////////////////////////////////////
 fseek(fac,0*sizeof(etud),SEEK_SET);
 fread(&etud,sizeof(etud),1,fac);
 SetColor(11);
 gotoxy(3,6);printf("1");
gotoxy(7,6);printf("%s",etud.nom);
gotoxy(19,6);printf("%s",etud.prenom);
gotoxy(31,6);printf("%s",etud.fac);
gotoxy(41,6);printf("%d",etud.age);
gotoxy(48,6);printf("%s",etud.gen);
gotoxy(53,6);printf("%s",etud.groupe);
gotoxy(63,6);printf("%d",etud.anne_etude);
gotoxy(70,6);printf("%.2f",etud.bourse);
//getch();
////////////////////////////////////////////
int key=1;
int m_pos=1;
while(key!=13)
{
key=getch();
        if(key==224||key==0)
            key=getch();
switch(key){
        case 72://up
            if(m_pos>1) {--m_pos;

SetColor(15);
gotoxy(3,6+m_pos);printf("%d",m_pos+1);
gotoxy(7,6+m_pos);printf("%s",etud.nom);
gotoxy(19,6+m_pos);printf("%s",etud.prenom);
gotoxy(31,6+m_pos);printf("%s",etud.fac);
gotoxy(41,6+m_pos);printf("%d",etud.age);
gotoxy(48,6+m_pos);printf("%s",etud.gen);
gotoxy(53,6+m_pos);printf("%s",etud.groupe);
gotoxy(63,6+m_pos);printf("%d",etud.anne_etude);
gotoxy(70,6+m_pos);printf("%.2f",etud.bourse);
fseek(fac,(m_pos-1)*sizeof(etud),SEEK_SET);
fread(&etud,sizeof(etud),1,fac);
SetColor(11);
gotoxy(3,5+m_pos);printf("%d",m_pos);
gotoxy(7,5+m_pos);printf("%s",etud.nom);
gotoxy(19,5+m_pos);printf("%s",etud.prenom);
gotoxy(31,5+m_pos);printf("%s",etud.fac);
gotoxy(41,5+m_pos);printf("%d",etud.age);
gotoxy(48,5+m_pos);printf("%s",etud.gen);
gotoxy(53,5+m_pos);printf("%s",etud.groupe);
gotoxy(63,5+m_pos);printf("%d",etud.anne_etude);
gotoxy(70,5+m_pos);printf("%.2f",etud.bourse);
}break;
        case 80:
            if(m_pos<i) {m_pos++;
SetColor(15);
gotoxy(3,4+m_pos);printf("%d",m_pos-1);
gotoxy(7,4+m_pos);printf("%s",etud.nom);
gotoxy(19,4+m_pos);printf("%s",etud.prenom);
gotoxy(31,4+m_pos);printf("%s",etud.fac);
gotoxy(41,4+m_pos);printf("%d",etud.age);
gotoxy(48,4+m_pos);printf("%s",etud.gen);
gotoxy(53,4+m_pos);printf("%s",etud.groupe);
gotoxy(63,4+m_pos);printf("%d",etud.anne_etude);
gotoxy(70,4+m_pos);printf("%.2f",etud.bourse);
  fseek(fac,(m_pos-1)*sizeof(etud),SEEK_SET);
  fread(&etud,sizeof(etud),1,fac);
  SetColor(11);
gotoxy(3,5+m_pos);printf("%d",m_pos);
gotoxy(7,5+m_pos);printf("%s",etud.nom);
gotoxy(19,5+m_pos);printf("%s",etud.prenom);
gotoxy(31,5+m_pos);printf("%s",etud.fac);
gotoxy(41,5+m_pos);printf("%d",etud.age);
gotoxy(48,5+m_pos);printf("%s",etud.gen);
gotoxy(53,5+m_pos);printf("%s",etud.groupe);
gotoxy(63,5+m_pos);printf("%d",etud.anne_etude);
gotoxy(70,5+m_pos);printf("%.2f",etud.bourse);}
  break;

}}
system("cls");
/////////////////////////////////////////////
//afisarea studentului nr n
  fseek(fac,(m_pos-1)*sizeof(etud),SEEK_SET);
  fread(&etud,sizeof(etud),1,fac);
SetColor(14);
    gotoxy(15,6);
    printf("Donnez la faculte de l'etudiant(ex. FCIM):   ");SetColor(12);printf("%s",etud.fac);
    gotoxy(15,8);SetColor(14);
    printf("Donnez le nom de l'etudiant:      ");SetColor(11);printf("%s",etud.nom);SetColor(14);
    gotoxy(15,10);
    printf("Donnez le prenom d'etudiant:      ");SetColor(11);printf("%s",etud.prenom);SetColor(14);
    gotoxy(15,12);
    printf("Donnez l'age de l'etudiant:       ");SetColor(11);printf("%d",etud.age);SetColor(14);
    gotoxy(15,14);
    printf("Donnez le gen de l'etudiant(m/f): ");SetColor(11);printf("%s",etud.gen);SetColor(14);
    gotoxy(15,16);
    printf("Donnez la groupe de l'etudiant:   ");SetColor(11);printf("%s",etud.groupe);SetColor(14);
    gotoxy(15,18);
    printf("Donnez l'annee d'etude de l'etudiant(du 1 a 4):   ");SetColor(11);printf("%d",etud.anne_etude);SetColor(14);
    gotoxy(15,20);
    printf("Donnez la bourse de l'etudiant:   ");SetColor(11);printf("%.2f",etud.bourse);SetColor(14);
    gotoxy(30,24);SetColor(11);printf("Sauve");SetColor(14);
    gotoxy(40,24);SetColor(11);printf("Sortir");SetColor(14);

//sfirsitul afisarii studentului

//desenarea tabelului

gotoxy(1,1);
      SetColor(15);
      printf("                         Modifier l'etudiant nr. %d",m_pos);
      SetColor(11);
gotoxy(9,3);printf("%c",201);for(j=0;j<60;j++)printf("%c",205);printf("%c\n",187);
for(j=4;j<22;j++)
  {
    gotoxy(9,j);printf("%c",186);
    gotoxy(70,j);printf("%c",186);
  }
  gotoxy(9,22);printf("%c",200);for(j=0;j<60;j++)printf("%c",205);printf("%c",188);
//sfirsitul desenarii





int pos=1, maxp=10, c=1;
while(c==1)
{key=getch();

        if(key==224||key==0)
            key=getch();
switch(key){
        case 72:
            if(pos>1) --pos;
             else pos=10;
        switch(pos)
{
case 1:gotoxy(60,6);SetColor(12);printf("%s",etud.fac);
       gotoxy(49,8);SetColor(11);printf("%s",etud.nom);break;
case 2:gotoxy(49,8);SetColor(12);printf("%s",etud.nom);
       gotoxy(49,10);SetColor(11);printf("%s",etud.prenom);break;
case 3:gotoxy(49,10);SetColor(12);printf("%s",etud.prenom);
       gotoxy(49,12);SetColor(11);printf("%d",etud.age);break;
case 4:gotoxy(49,12);SetColor(12);printf("%d",etud.age);
       gotoxy(49,14);SetColor(11);printf("%s",etud.gen);break;
case 5:gotoxy(49,14);SetColor(12);printf("%s",etud.gen);
       gotoxy(49,16);SetColor(11);printf("%s",etud.groupe);break;
case 6:gotoxy(49,16);SetColor(12);printf("%s",etud.groupe);
       gotoxy(65,18);SetColor(11);printf("%d",etud.anne_etude);break;
case 7:gotoxy(65,18);SetColor(12);printf("%d",etud.anne_etude);
       gotoxy(49,20);SetColor(11);printf("%.2f",etud.bourse);break;
case 8:gotoxy(49,20);SetColor(12);printf("%.2f",etud.bourse);
       gotoxy(30,24);SetColor(11);printf("Sauve");break;
case 9:gotoxy(30,24);SetColor(12);printf("Sauve");
       gotoxy(40,24);SetColor(11);printf("Sortir");break;
case 10:gotoxy(40,24);SetColor(12);printf("Sortir");
        gotoxy(60,6);SetColor(11);printf("%s",etud.fac);break;


}break;

        case 80:
            if(pos<maxp) ++pos;
            else pos=1;
        switch(pos)
{
case 1:gotoxy(60,6);SetColor(12);printf("%s",etud.fac);
       gotoxy(40,24);SetColor(11);printf("Sortir");break;
case 2:gotoxy(49,8);SetColor(12);printf("%s",etud.nom);
       gotoxy(60,6);SetColor(11);printf("%s",etud.fac);break;
case 3:gotoxy(49,10);SetColor(12);printf("%s",etud.prenom);
       gotoxy(49,8);SetColor(11);printf("%s",etud.nom);break;
case 4:gotoxy(49,12);SetColor(12);printf("%d",etud.age);
       gotoxy(49,10);SetColor(11);printf("%s",etud.prenom);break;
case 5:gotoxy(49,14);SetColor(12);printf("%s",etud.gen);
       gotoxy(49,12);SetColor(11);printf("%d",etud.age);break;
case 6:gotoxy(49,16);SetColor(12);printf("%s",etud.groupe);
       gotoxy(49,14);SetColor(11);printf("%s",etud.gen);break;
case 7:gotoxy(65,18);SetColor(12);printf("%d",etud.anne_etude);
       gotoxy(49,16);SetColor(11);printf("%s",etud.groupe);break;
case 8:gotoxy(49,20);SetColor(12);printf("%.2f",etud.bourse);
       gotoxy(65,18);SetColor(11);printf("%d",etud.anne_etude);break;
case 9:gotoxy(30,24);SetColor(12);printf("Sauve");
       gotoxy(49,20);SetColor(11);printf("%.2f",etud.bourse);break;
case 10:gotoxy(40,24);SetColor(12);printf("Sortir");
        gotoxy(30,24);SetColor(11);printf("Sauve");break;
}break;

        case 13:

switch(pos)
{   case 1:{l:
    SetColor(11);
    gotoxy(60,6);printf("         ");gotoxy(60,6);hidecursor(0);scanf("%s",etud.fac);
    //verificarea existentei facultatii
    k=0;
    for(j=0;j<20;j++)
    if(strcmp(faculte[j],etud.fac)==0)
    {fflush(stdin); k=1;hidecursor(1);break;}
    if(k==0) {gotoxy(60,6);printf("         ");SetColor(12);gotoxy(60,6);printf("%s",etud.fac);Sleep(1500); goto l;  }}break;
    case 2:SetColor(11);gotoxy(49,8);printf("                 ");gotoxy(49,8);hidecursor(0);scanf("%s",etud.nom);fflush(stdin);hidecursor(1);break;
    case 3:SetColor(11);gotoxy(49,10);printf("                ");gotoxy(49,10);hidecursor(0);scanf("%s",etud.prenom);hidecursor(1);fflush(stdin);break;
    case 4:SetColor(11);gotoxy(49,12);printf("                ");gotoxy(49,12);hidecursor(0);scanf("%d",&etud.age);hidecursor(1);fflush(stdin);break;
    case 5:SetColor(11);gotoxy(49,14);printf("                ");gotoxy(49,14);hidecursor(0);scanf("%s",etud.gen);fflush(stdin);hidecursor(1);break;
    case 6:SetColor(11);gotoxy(49,16);printf("                ");gotoxy(49,16);hidecursor(0);scanf("%s",etud.groupe);hidecursor(1);fflush(stdin);break;
    case 7:SetColor(11);gotoxy(65,18);printf("     ");gotoxy(65,18);hidecursor(0);scanf("%d",&etud.anne_etude);hidecursor(1);fflush(stdin);break;
    case 8:SetColor(11);gotoxy(49,20);printf("                ");gotoxy(49,20);hidecursor(0);scanf("%f",&etud.bourse);hidecursor(1);fflush(stdin);break;
    case 9:SetColor(10);
        fseek(fac,(m_pos-1)*sizeof(etud),SEEK_SET);
        fwrite(&etud,sizeof(etud),1,fac);fclose(fac);system("cls");
        gotoxy(15,5);SetColor(15);printf("Vous avez sauve les modification");
    getch();system("cls");m_pos=1;main();break;

    case 10:fclose(fac);system("cls");m_pos=1;main();break;
            }
            break;
          }
    }
    getch();
}
Esempio n. 16
0
static bool loadcolors(const char *fn, const char *section)
  /* Loads and sets only the color-definition out of the file, named by 'fn',
   * using the section 'section' therein. Returns true, if succeeded.
   */
{
  CfgParse cp(fn);

  if(cp.geterror() == CfgParse::NotFound)       // file not found?
    return false;

  // Define config variables
  cp.enum_vars(CONFIG_VARS);

  // Read sizes/positions of windows
  read_stdwnd(cp,"titlebar",section,titlebar);
  read_stdwnd(cp,"infownd",section,infownd);
  read_stdwnd(cp,"songwnd",section,songwnd);
  read_stdwnd(cp,"instwnd",section,instwnd);
  read_stdwnd(cp,"filesel",section,filesel);
  read_stdwnd(cp,"volbars",section,volbars);
  read_stdwnd(cp,"mastervol",section,mastervol);

  // Read GUI color configuration
  if(!cp.section(section)) return false;
  do {
    switch(cp.peekvar()) {
    case 0: backcol = cp.readlong(); break;
    case 6: CWindow::setcolor(CWindow::Border,cp.readlong()); break;
    case 7: CWindow::setcolor(CWindow::Caption,cp.readlong()); break;
    case 8: CWindow::setcolor(CWindow::In,cp.readlong()); break;
    case 9: CWindow::setcolor(CWindow::Select,cp.readlong()); break;
    case 10: CWindow::setcolor(CWindow::Unselect,cp.readlong()); break;
    case 11: CWindow::setcolor(CWindow::Bar,cp.readlong()); break;
    case 12: CWindow::setcolor(CWindow::Clip,cp.readlong()); break;
    case 13:
      if(cp.readbool()) {
	hivideo = true;
	load88font();
	hidecursor();
      } else {
	hivideo = false;
	setvideomode(3);
	hidecursor();
      }
      break;
    case 15: FileWnd::setfilecolor(FileWnd::FileSel,cp.readlong()); break;
    case 16: FileWnd::setfilecolor(FileWnd::FileUnsel,cp.readlong()); break;
    case 17: FileWnd::setfilecolor(FileWnd::DirSel,cp.readlong()); break;
    case 18: FileWnd::setfilecolor(FileWnd::DirUnsel,cp.readlong()); break;
    case 19: FileWnd::setfilecolor(FileWnd::DriveSel,cp.readlong()); break;
    case 20: FileWnd::setfilecolor(FileWnd::DriveUnsel,cp.readlong()); break;
    case 21: loadcolors(fn,cp.readstr()); break;
    case 22: CWindow::setcolor(CWindow::Focus,cp.readlong()); break;
    case 24: FileWnd::setfilecolor(FileWnd::SupportedSel,cp.readlong()); break;
    case 25: FileWnd::setfilecolor(FileWnd::SupportedUnsel,cp.readlong()); break;
    }
  } while(!cp.geterror());

  if(in_help) display_help(infownd);      // Reformat help display, if active
  if(cp.geterror() == CfgParse::Invalid) return false; else return true;
}
Esempio n. 17
0
void ConsoleInit(void)
{
	ConsoleBackgroundMode(TRUE);
	savecursor();
	hidecursor();
}
Esempio n. 18
0
int _tmain(int argc, _TCHAR* argv[])
{
	WSADATA wsaData;
	HANDLE hSendThread, hRecvThread;
	DWORD dwSendThreadId, dwRecvThreadId;
	SOCKET hServSock;
	SOCKADDR_IN servAddr;
	int port = 0;
	const char* ip;
	InitializeCriticalSection(&gCriticalSection);

	if(argc != 2)
	{
#ifndef _DEBUG
		Log("Usage: %s <IP> <PORT>\n", argv[0]);
		exit(1);
#else
		port = 8000;
		ip = "127.0.0.1";
#endif
	}
	else
	{
		ip = (const char*)argv[1];
		port = atoi((const char*) argv[2]);
	}

	if(WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
	{
		ErrorHandling("WSAStartup() error!", GetLastError());
		exit(1);
	}

	hServSock = socket(PF_INET, SOCK_STREAM, 0);
	if(hServSock == INVALID_SOCKET)
	{
		ErrorHandling("socket() error!", GetLastError());
	}

	memset(&servAddr, 0, sizeof(servAddr));
	servAddr.sin_family = AF_INET;
	servAddr.sin_addr.s_addr = inet_addr(ip);
	servAddr.sin_port = htons(port);

	if(connect(hServSock, (SOCKADDR*) &servAddr, sizeof(servAddr)) == SOCKET_ERROR)
	{
		ErrorHandling("connect() error!", GetLastError());
		exit(1);
	}
	else
	{
		Log("Connected........");
	}

	hidecursor();
	hSendThread = (HANDLE) _beginthreadex(NULL, 0, SendThreadProc, (LPVOID)hServSock, 0, (unsigned*) &dwSendThreadId);
	if(hSendThread == INVALID_HANDLE_VALUE)
	{
		ErrorHandling("_beginthreadex() : SendThread error!", GetLastError());
		exit(1);
	}

	hRecvThread = (HANDLE) _beginthreadex(NULL, 0, RecvThreadProc, (LPVOID) hServSock, 0, (unsigned*) &dwRecvThreadId);
	if(hRecvThread == INVALID_HANDLE_VALUE)
	{
		ErrorHandling("_beginthreadex() : RecvThread error!", GetLastError());
		exit(1);
	}

	WaitForSingleObject(hSendThread, INFINITE);
	WaitForSingleObject(hRecvThread, INFINITE);
	_endthreadex(dwSendThreadId);
	_endthreadex(dwRecvThreadId);
	closesocket(hServSock);
	WSACleanup();
	return 0;
}
Esempio n. 19
0
void add()
{int ad=0,n,i,j,k;
filemenu();
SetColor(14);
 fread(&etud,sizeof(etud),1,fac);
       while (!feof(fac))
{
 fread(&etud,sizeof(etud),1,fac);
 ad++;
}
//setup git
system("cls");
hidecursor(0);
gotoxy(22,5);
printf("Donnez le nombre des etudiants:   ");
scanf("%d",&n);
    SetColor(15);

for(i=ad;i<n+ad;i++)

  {   l:
          SetColor(15);
      system("cls");
      printf("                         Introduire l'etudiant nr. %d",i+1);
      SetColor(11);
gotoxy(9,3);printf("%c",201);for(j=0;j<60;j++)printf("%c",205);printf("%c\n",187);
for(j=4;j<22;j++)
  {
    gotoxy(9,j);printf("%c",186);
    gotoxy(70,j);printf("%c",186);
  }
  gotoxy(9,22);printf("%c",200);for(j=0;j<60;j++)printf("%c",205);printf("%c",188);
SetColor(14);
    gotoxy(15,6);
    printf("Donnez la faculte de l'etudiant(ex. FCIM):      ");
    scanf("%s",etud.fac);
    k=0;
    for(j=0;j<20;j++)
    if(strcmp(faculte[j],etud.fac)==0)
    {fflush(stdin); k=1;break;}
    if(k==0) {gotoxy(25,8);SetColor(12); printf("Cette faculte n'existe pas");
              Sleep(1500); goto l;  }
    SetColor(14);

    gotoxy(15,8);
    printf("Donnez le nom de l'etudiant:      ");
    scanf("%s",etud.nom);
    fflush(stdin);
    gotoxy(15,10);
    printf("Donnez le prenom d'etudiant:      ");
    scanf("%s",etud.prenom);
    fflush(stdin);
    gotoxy(15,12);
    printf("Donnez l'age de l'etudiant:       ");
    scanf("%d",&etud.age);
    fflush(stdin);
    gotoxy(15,14);
    printf("Donnez le gen de l'etudiant(m/f): ");
    scanf("%s",etud.gen);
    fflush(stdin);
    gotoxy(15,16);
    printf("Donnez la groupe de l'etudiant:   ");
    scanf("%s",etud.groupe);
    fflush(stdin);
    gotoxy(15,18);
    printf("Donnez l'annee d'etude de l'etudiant(du 1 a 4):   ");
    scanf("%d",&etud.anne_etude);
    fflush(stdin);
    gotoxy(15,20);
    printf("Donnez la bourse de l'etudiant:   ");
    scanf("%f",&etud.bourse);
    fflush(stdin);

    fwrite(&etud,sizeof(etud),1,fac);
  }
  fclose(fac);
  system("cls");
  gotoxy(15,5);
  SetColor(15);
printf("Vous avez introduit avec succes les etudiants");

getch();
}
Esempio n. 20
0
int getchoice (int bold, char *head, char *msg, char *mesg2,
               char *c1, char *c2, char *c3)
{
    int len, ch;
    int isattr;
    register r, c, w, h;
    BOX *box;
    char mesg[67];

    strncpy(mesg, msg, sizeof (mesg));
    mesg[sizeof(mesg)-1] = 0;
    w = strlen (mesg);
    if (mesg2) {
        len = strlen (mesg2);
        if (len > w)
            w = len;
    }
    len = strlen (head);
    if (len > w)
        w = len;
    len = 0;
    if (c1)
        len += strlen (c1);
    if (c2)
        len += strlen (c2);
    if (c3)
        len += strlen (c3);
    if (len > w)
        w = len;
    h = 6;
    w += 10;
    if (bold)
        r = LINES/2;
    else
        r = LINES/4;
    c = (80 - w) / 2;

    box = VGetBox (r-1, c-2, h+2, w+4);             /* save box */
    isattr = VStandOut ();
    if (bold)
        VSetBold ();
    else
        VSetDim ();
    VFillBox (r-1, c-2, h+2, w+4, ' ');             /* clear */
    VDrawBox (r, c, h, w);                          /* draw margins */
    VMPutString (r, c + (w-strlen(head)) / 2, head); /* head */
    if (mesg2) {
        VMPutString (r+1, c + (w-strlen(mesg)) / 2, mesg);
        VMPutString (r+2, c + (w-strlen(mesg2)) / 2, mesg2);
    } else
        VMPutString (r+2, c + (w-strlen(mesg)) / 2, mesg);

    if (c1) {
        if (isattr) {
            attron = VStandEnd;
            attroff = VStandOut;
        } else {
            attron = 0;
            attroff = 0;
        }
        initchoice (r+4, c+w/2, c1, c2, c3);

        ch = menuchoice ();
        VStandEnd ();
        VSetNormal ();
        VUngetBox (box);
        VFreeBox (box);
        return (ch);
    } else {
        /* message */
        VStandEnd ();
        VSetNormal ();
        mbox = box;
        hidecursor ();
        VSync ();
#ifdef DOC
        KeyGet ();
#endif
        return (0);
    }
}
Esempio n. 21
0
File: ex.c Progetto: shodanium/deco
static char *runudm (char *scale)
{
	/* user defined menu */
	register key, cm;
	BOX *box, *curbox;

	box = VGetBox (menurow-2, menucol-4, nm+4, menuwid+8);
	VSetDim ();
	VStandOut ();
	VFillBox (menurow-2, menucol-4, nm+4, menuwid+8, ' ');
	VDrawBox (menurow-1, menucol-1, nm+2, menuwid+2);
	mvcaddstr (menurow-1, 40, " User Menu ");
	printudm ();
	VSetNormal ();
	VStandEnd ();
	cm = 0;
	for (;;) {
		curbox = VGetBox (menurow+cm, menucol, 1, menuwid);
		VPrintBox (curbox);
		hidecursor ();
		VSync ();
		key = KeyGet ();
		VUngetBox (curbox);
		VFreeBox (curbox);
		switch (key) {
		default:
findmenu:
			if (key>0 && key<0200 && scale [key] < MENUSZ) {
				cm = scale [key];
				break;
			}
			VBeep ();
			continue;
		case meta ('A'):        key = 1;        goto findmenu;
		case meta ('B'):        key = 2;        goto findmenu;
		case meta ('C'):        key = 3;        goto findmenu;
		case meta ('D'):        key = 4;        goto findmenu;
		case meta ('E'):        key = 5;        goto findmenu;
		case meta ('F'):        key = 6;        goto findmenu;
		case meta ('G'):        key = 7;        goto findmenu;
		case meta ('H'):        key = 8;        goto findmenu;
		case meta ('I'):        key = 9;        goto findmenu;
		case cntrl (']'):          /* redraw screen */
			VRedraw ();
			continue;
		case cntrl ('M'):
		case cntrl ('J'):
			break;
		case cntrl ('C'):
		case cntrl ('['):
		case meta ('J'):           /* f0 */
			cm = -1;
			break;
		case meta ('u'):          /* up */
			if (--cm < 0)
				cm = nm-1;
			continue;
		case meta ('d'):          /* down */
			if (++cm >= nm)
				cm = 0;
			continue;
		}
		break;
	}
	VUngetBox (box);
	VFreeBox (box);
	if (cm >= 0 && um[cm].cex) {
		if (um[cm].menu)
			return (um[cm].cex);
		/* execute command from menu */
		expand (command, um[cm].cex, cur->cat[cur->curfile].name);
		cpos = strlen (command);
		if (command [0])
			execmd (um[cm].wait, um[cm].hist);
	}
	return ((char *) 0);
}
Esempio n. 22
0
void start_terminal() {
	char c;
	byte echo = 1, cnt = 0;

	write_inverse(6, 30, " SELECT BAUD RATE   ");
	write_inverse(7, 30, " 1: 1200            ");
	write_inverse(8, 30, " 2: 2400            ");
	write_inverse(9, 30, " 3: 4800            ");
	write_inverse(10, 30, " 4: 9600            ");
	write_inverse(11, 30, " 5: 19200           ");
	write_inverse(12, 30, " 6: 38400           ");
	write_inverse(13, 30, " 7: 57600           ");
	write_inverse(14, 30, " 8: 115200          ");

	do
	{
		c = getchar();
	}
	while (!(c >= '1' && c <= '8'));

	// set baud rate
	io_write(170, c - '0');

	switch (c)
	{
		case '1':
			write_inverse(0, 20, "1200 BAUD");
			break;
		case '2':
			write_inverse(0, 20, "2400 BAUD");
			break;
		case '3':
			write_inverse(0, 20, "4800 BAUD");
			break;
		case '4':
			write_inverse(0, 20, "9600 BAUD");
			break;
		case '5':
			write_inverse(0, 20, "19200 BAUD");
			break;
		case '6':
			write_inverse(0, 20, "38400 BAUD");
			break;
		case '7':
			write_inverse(0, 20, "57600 BAUD");
			break;
		case '8':
			write_inverse(0, 20, "115200 BAUD");
			break;
	}
	
	clrscr();
	showcursor();

	while (1) {
		c = getchar();		

		cnt = 0;

		if (c == 0)
		{
			// special key
			c = getchar();
			switch (c)
			{
				case 60: // F2
					echo = 1 - echo;
					if (echo)
						write_inverse(0, 0, " F2: ECHO ON ");
					else
						write_inverse(0, 0, " F2: ECHO OFF");
					break;
				case 66: // F8
					clrscr();
					break;
				case 68: // F10
					quit_app();
					break;
			} // switch (c)

		} // if (c == 0)
		else
		{
			io_write(171, c);

			if (echo)
				putchar(c);
		} // if (c == 0) else

		if (io_read(174))
		{
			hidecursor();
			do
			{
				c = io_read(173);
				if (c)
					putchar(c);
			} while (c);
			showcursor();
		}
	} // while (1)
} // start_terminal