2012-06-20 20:57:20 +04:00
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
|
|
|
|
#define boolean int
|
|
|
|
|
|
|
|
#import "freerdp/gdi/gdi.h"
|
|
|
|
#import "freerdp/rail/rail.h"
|
2012-08-02 21:04:44 +04:00
|
|
|
#import "MRDPRailWindow.h"
|
2012-06-20 20:57:20 +04:00
|
|
|
|
|
|
|
@interface MRDPRailView : NSView
|
|
|
|
{
|
|
|
|
freerdp * rdp_instance;
|
|
|
|
rdpContext * context;
|
|
|
|
NSBitmapImageRep * bmiRep;
|
|
|
|
NSPoint savedDragLocation;
|
|
|
|
char * pixelData;
|
|
|
|
boolean mouseInClientArea;
|
2012-06-22 22:02:13 +04:00
|
|
|
boolean titleBarClicked;
|
2012-08-02 21:04:44 +04:00
|
|
|
boolean gestureEventInProgress;
|
2012-06-20 20:57:20 +04:00
|
|
|
int width;
|
|
|
|
int height;
|
|
|
|
int savedWindowId;
|
2012-08-02 21:04:44 +04:00
|
|
|
int scrollWheelCount;
|
2012-06-20 20:57:20 +04:00
|
|
|
|
|
|
|
// store state info for some keys
|
|
|
|
int kdlshift;
|
|
|
|
int kdrshift;
|
|
|
|
int kdlctrl;
|
|
|
|
int kdrctrl;
|
|
|
|
int kdlalt;
|
|
|
|
int kdralt;
|
|
|
|
int kdlmeta;
|
|
|
|
int kdrmeta;
|
|
|
|
int kdcapslock;
|
|
|
|
|
|
|
|
@public
|
|
|
|
boolean isMoveSizeInProgress;
|
|
|
|
boolean saveInitialDragLoc;
|
|
|
|
boolean skipMoveWindowOnce;
|
2012-06-22 22:02:13 +04:00
|
|
|
int localMoveType;
|
2012-06-20 20:57:20 +04:00
|
|
|
}
|
|
|
|
|
2012-08-02 21:04:44 +04:00
|
|
|
@property (assign) MRDPRailWindow * mrdpRailWindow;
|
|
|
|
@property (assign) int windowIndex;
|
|
|
|
@property (assign) boolean activateWindow;
|
|
|
|
|
|
|
|
- (void) windowDidMove:(NSNotification *) notification;
|
2012-06-20 20:57:20 +04:00
|
|
|
- (void) updateDisplay;
|
|
|
|
- (void) setRdpInstance:(freerdp *) instance width:(int) w andHeight:(int) h windowID:(int) windowID;
|
|
|
|
- (BOOL) eventIsInClientArea :(NSEvent *) event :(int *) xptr :(int *) yptr;
|
|
|
|
- (void) setupBmiRep:(int) width :(int) height;
|
2012-08-02 21:04:44 +04:00
|
|
|
- (void) releaseResources;
|
2012-06-20 20:57:20 +04:00
|
|
|
|
|
|
|
void mac_rail_MoveWindow(rdpRail *rail, rdpWindow *window);
|
|
|
|
void apple_to_windowMove(NSRect * r, RAIL_WINDOW_MOVE_ORDER * windowMove);
|
|
|
|
void mac_send_rail_client_event(rdpChannels *channels, uint16 event_type, void *param);
|
2012-06-24 05:26:44 +04:00
|
|
|
void windows_to_apple_cords(NSRect * r);
|
|
|
|
void rail_MoveWindow(rdpRail * rail, rdpWindow * window);
|
2012-08-02 21:04:44 +04:00
|
|
|
void mac_rail_send_activate(int window_id);
|
2012-06-20 20:57:20 +04:00
|
|
|
|
|
|
|
@end
|
|
|
|
|