comparison nnchat.c @ 54:f6666e7c1a48

More comments.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 10 Nov 2008 08:32:49 +0200
parents 7b98da167a0b
children 5ec3b7d14715
comparison
equal deleted inserted replaced
53:7b98da167a0b 54:f6666e7c1a48
1398 setPrvMode = TRUE; 1398 setPrvMode = TRUE;
1399 } 1399 }
1400 update = TRUE; 1400 update = TRUE;
1401 break; 1401 break;
1402 1402
1403 case KEY_UP: 1403 case KEY_UP: /* Backwards in input history */
1404 if (histPos == 0) { 1404 if (histPos == 0) {
1405 freeBuf(histBuf[0]); 1405 freeBuf(histBuf[0]);
1406 histBuf[0] = copyBuf(editBuf); 1406 histBuf[0] = copyBuf(editBuf);
1407 } 1407 }
1408 if (histPos < histMax) { 1408 if (histPos < histMax) {
1411 editBuf = copyBuf(histBuf[histPos]); 1411 editBuf = copyBuf(histBuf[histPos]);
1412 update = TRUE; 1412 update = TRUE;
1413 } 1413 }
1414 break; 1414 break;
1415 1415
1416 case KEY_DOWN: 1416 case KEY_DOWN: /* Forwards in input history */
1417 if (histPos > 0) { 1417 if (histPos > 0) {
1418 histPos--; 1418 histPos--;
1419 freeBuf(editBuf); 1419 freeBuf(editBuf);
1420 editBuf = copyBuf(histBuf[histPos]); 1420 editBuf = copyBuf(histBuf[histPos]);
1421 update = TRUE; 1421 update = TRUE;
1422 } 1422 }
1423 break; 1423 break;
1424 1424
1425 case 0x204: /* ctrl+left */ 1425 case 0x204: /* ctrl+left = Skip words left */
1426 while (editBuf->pos > 0 && isspace(editBuf->data[editBuf->pos - 1])) 1426 while (editBuf->pos > 0 && isspace(editBuf->data[editBuf->pos - 1]))
1427 editBuf->pos--; 1427 editBuf->pos--;
1428 while (editBuf->pos > 0 && !isspace(editBuf->data[editBuf->pos - 1])) 1428 while (editBuf->pos > 0 && !isspace(editBuf->data[editBuf->pos - 1]))
1429 editBuf->pos--; 1429 editBuf->pos--;
1430 update = TRUE; 1430 update = TRUE;
1431 break; 1431 break;
1432 1432
1433 case 0x206: /* ctrl+right */ 1433 case 0x206: /* ctrl+right = Skip words right */
1434 while (editBuf->pos < editBuf->len && isspace(editBuf->data[editBuf->pos])) 1434 while (editBuf->pos < editBuf->len && isspace(editBuf->data[editBuf->pos]))
1435 editBuf->pos++; 1435 editBuf->pos++;
1436 while (editBuf->pos < editBuf->len && !isspace(editBuf->data[editBuf->pos])) 1436 while (editBuf->pos < editBuf->len && !isspace(editBuf->data[editBuf->pos]))
1437 editBuf->pos++; 1437 editBuf->pos++;
1438 if (editBuf->pos > editBuf->len) 1438 if (editBuf->pos > editBuf->len)
1439 editBuf->pos = editBuf->len; 1439 editBuf->pos = editBuf->len;
1440 update = TRUE; 1440 update = TRUE;
1441 break; 1441 break;
1442 1442
1443 case 0x111: /* F9 */ 1443 case 0x111: /* F9 = Quit */
1444 printMsg("Quitting per user request.\n"); 1444 printMsg("Quitting per user request.\n");
1445 exitProg = TRUE; 1445 exitProg = TRUE;
1446 break; 1446 break;
1447 1447
1448 case 0x109: /* F1 */ 1448 case 0x109: /* F1 = Toggle insert / overwrite mode */
1449 insertMode = !insertMode; 1449 insertMode = !insertMode;
1450 update = TRUE; 1450 update = TRUE;
1451 break; 1451 break;
1452 1452
1453 case 0x10a: /* F2 */ 1453 case 0x10a: /* F2 = Clear editbuffer */
1454 clearBuf(editBuf); 1454 clearBuf(editBuf);
1455 update = TRUE; 1455 update = TRUE;
1456 break; 1456 break;
1457 1457
1458 case 0x10b: /* F3 */ 1458 case 0x10b: /* F3 = Toggle special mode */
1459 setMorseMode = !setMorseMode; 1459 setMorseMode = !setMorseMode;
1460 printMsg("Morse code mode = %d\n", setMorseMode); 1460 printMsg("Morse code mode = %d\n", setMorseMode);
1461 update = TRUE; 1461 update = TRUE;
1462 break; 1462 break;
1463 1463