1#include <stdio.h> 2#include <rfb/rfb.h> 3#include <rfb/keysym.h> 4 5#define CONCAT2(a,b) a##b 6#define CONCAT2E(a,b) CONCAT2(a,b) 7#define CONCAT3(a,b,c) a##b##c 8#define CONCAT3E(a,b,c) CONCAT3(a,b,c) 9 10#define FUNCNAME rfbRotate 11#define FUNC(i, j) (h - 1 - j + i * h) 12#define SWAPDIMENSIONS 13#define OUTBITS 8 14#include "rotatetemplate.c" 15#define OUTBITS 16 16#include "rotatetemplate.c" 17#define OUTBITS 32 18#include "rotatetemplate.c" 19#undef FUNCNAME 20#undef FUNC 21 22#define FUNCNAME rfbRotateCounterClockwise 23#define FUNC(i, j) (j + (w - 1 - i) * h) 24#define OUTBITS 8 25#include "rotatetemplate.c" 26#define OUTBITS 16 27#include "rotatetemplate.c" 28#define OUTBITS 32 29#include "rotatetemplate.c" 30#undef FUNCNAME 31#undef FUNC 32#undef SWAPDIMENSIONS 33 34#define FUNCNAME rfbFlipHorizontally 35#define FUNC(i, j) ((w - 1 - i) + j * w) 36#define OUTBITS 8 37#include "rotatetemplate.c" 38#define OUTBITS 16 39#include "rotatetemplate.c" 40#define OUTBITS 32 41#include "rotatetemplate.c" 42#undef FUNCNAME 43#undef FUNC 44 45#define FUNCNAME rfbFlipVertically 46#define FUNC(i, j) (i + (h - 1 - j) * w) 47#define OUTBITS 8 48#include "rotatetemplate.c" 49#define OUTBITS 16 50#include "rotatetemplate.c" 51#define OUTBITS 32 52#include "rotatetemplate.c" 53#undef FUNCNAME 54#undef FUNC 55 56#define FUNCNAME rfbRotateHundredAndEighty 57#define FUNC(i, j) ((w - 1 - i) + (h - 1 - j) * w) 58#define OUTBITS 8 59#include "rotatetemplate.c" 60#define OUTBITS 16 61#include "rotatetemplate.c" 62#define OUTBITS 32 63#include "rotatetemplate.c" 64#undef FUNCNAME 65#undef FUNC 66 67static void HandleKey(rfbBool down,rfbKeySym key,rfbClientPtr cl) 68{ 69 if(down) { 70 if (key==XK_Escape || key=='q' || key=='Q') 71 rfbCloseClient(cl); 72 else if (key == 'r') 73 rfbRotate(cl->screen); 74 else if (key == 'R') 75 rfbRotateCounterClockwise(cl->screen); 76 else if (key == 'f') 77 rfbFlipHorizontally(cl->screen); 78 else if (key == 'F') 79 rfbFlipVertically(cl->screen); 80 } 81} 82 83#define HAVE_HANDLEKEY 84#include "pnmshow.c" 85 86