xref: /aoo41x/main/vcl/inc/aqua/salframeview.h (revision 2fb76c82)
124f6443dSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
324f6443dSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
424f6443dSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
524f6443dSAndrew Rist  * distributed with this work for additional information
624f6443dSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
724f6443dSAndrew Rist  * to you under the Apache License, Version 2.0 (the
824f6443dSAndrew Rist  * "License"); you may not use this file except in compliance
924f6443dSAndrew Rist  * with the License.  You may obtain a copy of the License at
1024f6443dSAndrew Rist  *
1124f6443dSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
1224f6443dSAndrew Rist  *
1324f6443dSAndrew Rist  * Unless required by applicable law or agreed to in writing,
1424f6443dSAndrew Rist  * software distributed under the License is distributed on an
1524f6443dSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
1624f6443dSAndrew Rist  * KIND, either express or implied.  See the License for the
1724f6443dSAndrew Rist  * specific language governing permissions and limitations
1824f6443dSAndrew Rist  * under the License.
1924f6443dSAndrew Rist  *
2024f6443dSAndrew Rist  *************************************************************/
2124f6443dSAndrew Rist 
2224f6443dSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef _VCL_SALFRAMEVIEW_H
25cdf0e10cSrcweir #define _VCL_SALFRAMEVIEW_H
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #include "aqua/aqua11ywrapper.h"
28cdf0e10cSrcweir 
292dae3561SHerbert Dürr @interface SalFrameWindow : NSWindow<NSWindowDelegate>
30cdf0e10cSrcweir {
31cdf0e10cSrcweir     AquaSalFrame*       mpFrame;
32cdf0e10cSrcweir 	id mDraggingDestinationHandler;
33cdf0e10cSrcweir }
initWithSalFrame:(AquaSalFrame*)34cdf0e10cSrcweir -(id)initWithSalFrame: (AquaSalFrame*)pFrame;
canBecomeKeyWindow()35cdf0e10cSrcweir -(BOOL)canBecomeKeyWindow;
displayIfNeeded()36cdf0e10cSrcweir -(void)displayIfNeeded;
windowDidBecomeKey:(NSNotification*)37cdf0e10cSrcweir -(void)windowDidBecomeKey: (NSNotification*)pNotification;
windowDidResignKey:(NSNotification*)38cdf0e10cSrcweir -(void)windowDidResignKey: (NSNotification*)pNotification;
windowDidChangeScreen:(NSNotification*)39cdf0e10cSrcweir -(void)windowDidChangeScreen: (NSNotification*)pNotification;
windowDidMove:(NSNotification*)40cdf0e10cSrcweir -(void)windowDidMove: (NSNotification*)pNotification;
windowDidResize:(NSNotification*)41cdf0e10cSrcweir -(void)windowDidResize: (NSNotification*)pNotification;
windowDidMiniaturize:(NSNotification*)42cdf0e10cSrcweir -(void)windowDidMiniaturize: (NSNotification*)pNotification;
windowDidDeminiaturize:(NSNotification*)43cdf0e10cSrcweir -(void)windowDidDeminiaturize: (NSNotification*)pNotification;
windowShouldClose:(NSNotification*)44cdf0e10cSrcweir -(BOOL)windowShouldClose: (NSNotification*)pNotification;
452dae3561SHerbert Dürr //-(void)willEncodeRestorableState:(NSCoder*)pCoderState;
462dae3561SHerbert Dürr //-(void)didDecodeRestorableState:(NSCoder*)pCoderState;
472dae3561SHerbert Dürr //-(void)windowWillEnterVersionBrowser:(NSNotification*)pNotification;
dockMenuItemTriggered:(id)48cdf0e10cSrcweir -(void)dockMenuItemTriggered: (id)sender;
getSalFrame()49cdf0e10cSrcweir -(AquaSalFrame*)getSalFrame;
containsMouse()50cdf0e10cSrcweir -(BOOL)containsMouse;
accessibleContext()51cdf0e10cSrcweir -(::com::sun::star::uno::Reference < ::com::sun::star::accessibility::XAccessibleContext >)accessibleContext;
52cdf0e10cSrcweir 
53cdf0e10cSrcweir /* NSDraggingDestination protocol methods
54cdf0e10cSrcweir  */
draggingEntered:(id id NSDraggingInfo NSDraggingInfo)55cdf0e10cSrcweir -(NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender;
draggingUpdated:(id id NSDraggingInfo NSDraggingInfo)56cdf0e10cSrcweir -(NSDragOperation)draggingUpdated:(id <NSDraggingInfo>)sender;
draggingExited:(id id NSDraggingInfo NSDraggingInfo)57cdf0e10cSrcweir -(void)draggingExited:(id <NSDraggingInfo>)sender;
prepareForDragOperation:(id id NSDraggingInfo NSDraggingInfo)58cdf0e10cSrcweir -(BOOL)prepareForDragOperation:(id <NSDraggingInfo>)sender;
performDragOperation:(id id NSDraggingInfo NSDraggingInfo)59cdf0e10cSrcweir -(BOOL)performDragOperation:(id <NSDraggingInfo>)sender;
concludeDragOperation:(id id NSDraggingInfo NSDraggingInfo)60cdf0e10cSrcweir -(void)concludeDragOperation:(id <NSDraggingInfo>)sender;
61cdf0e10cSrcweir 
registerDraggingDestinationHandler:(id)62cdf0e10cSrcweir -(void)registerDraggingDestinationHandler:(id)theHandler;
unregisterDraggingDestinationHandler:(id)63cdf0e10cSrcweir -(void)unregisterDraggingDestinationHandler:(id)theHandler;
64cdf0e10cSrcweir @end
65cdf0e10cSrcweir 
66cdf0e10cSrcweir @interface SalFrameView : AquaA11yWrapper <NSTextInput>
67cdf0e10cSrcweir {
68cdf0e10cSrcweir     AquaSalFrame*       mpFrame;
69cdf0e10cSrcweir 
70cdf0e10cSrcweir     // for NSTextInput
71cdf0e10cSrcweir     NSEvent*        mpLastEvent;
72cdf0e10cSrcweir     BOOL            mbNeedSpecialKeyHandle;
73cdf0e10cSrcweir     BOOL            mbInKeyInput;
74cdf0e10cSrcweir     BOOL            mbKeyHandled;
75cdf0e10cSrcweir     NSRange         mMarkedRange;
76cdf0e10cSrcweir     NSRange         mSelectedRange;
77cdf0e10cSrcweir 	id              mpMouseEventListener;
78cdf0e10cSrcweir 	id              mDraggingDestinationHandler;
79cdf0e10cSrcweir     NSEvent*        mpLastSuperEvent;
80cdf0e10cSrcweir 
81cdf0e10cSrcweir 	// #i102807# used by magnify event handler
82cdf0e10cSrcweir 	NSTimeInterval	mfLastMagnifyTime;
83cdf0e10cSrcweir 	float			mfMagnifyDeltaSum;
84cdf0e10cSrcweir }
85cdf0e10cSrcweir +(void)unsetMouseFrame: (AquaSalFrame*)pFrame;
initWithSalFrame:(AquaSalFrame*)86cdf0e10cSrcweir -(id)initWithSalFrame: (AquaSalFrame*)pFrame;
getSalFrame()87cdf0e10cSrcweir -(AquaSalFrame*)getSalFrame;
acceptsFirstResponder()88cdf0e10cSrcweir -(BOOL)acceptsFirstResponder;
acceptsFirstMouse:(NSEvent*)89cdf0e10cSrcweir -(BOOL)acceptsFirstMouse: (NSEvent *)pEvent;
isOpaque()90cdf0e10cSrcweir -(BOOL)isOpaque;
drawRect:(NSRect)91cdf0e10cSrcweir -(void)drawRect: (NSRect)aRect;
mouseDown:(NSEvent*)92cdf0e10cSrcweir -(void)mouseDown: (NSEvent*)pEvent;
mouseDragged:(NSEvent*)93cdf0e10cSrcweir -(void)mouseDragged: (NSEvent*)pEvent;
mouseUp:(NSEvent*)94cdf0e10cSrcweir -(void)mouseUp: (NSEvent*)pEvent;
mouseMoved:(NSEvent*)95cdf0e10cSrcweir -(void)mouseMoved: (NSEvent*)pEvent;
mouseEntered:(NSEvent*)96cdf0e10cSrcweir -(void)mouseEntered: (NSEvent*)pEvent;
mouseExited:(NSEvent*)97cdf0e10cSrcweir -(void)mouseExited: (NSEvent*)pEvent;
rightMouseDown:(NSEvent*)98cdf0e10cSrcweir -(void)rightMouseDown: (NSEvent*)pEvent;
rightMouseDragged:(NSEvent*)99cdf0e10cSrcweir -(void)rightMouseDragged: (NSEvent*)pEvent;
rightMouseUp:(NSEvent*)100cdf0e10cSrcweir -(void)rightMouseUp: (NSEvent*)pEvent;
otherMouseDown:(NSEvent*)101cdf0e10cSrcweir -(void)otherMouseDown: (NSEvent*)pEvent;
otherMouseDragged:(NSEvent*)102cdf0e10cSrcweir -(void)otherMouseDragged: (NSEvent*)pEvent;
otherMouseUp:(NSEvent*)103cdf0e10cSrcweir -(void)otherMouseUp: (NSEvent*)pEvent;
scrollWheel:(NSEvent*)104cdf0e10cSrcweir -(void)scrollWheel: (NSEvent*)pEvent;
magnifyWithEvent:(NSEvent*)105cdf0e10cSrcweir -(void)magnifyWithEvent: (NSEvent*)pEvent;
rotateWithEvent:(NSEvent*)106cdf0e10cSrcweir -(void)rotateWithEvent: (NSEvent*)pEvent;
swipeWithEvent:(NSEvent*)107cdf0e10cSrcweir -(void)swipeWithEvent: (NSEvent*)pEvent;
keyDown:(NSEvent*)108cdf0e10cSrcweir -(void)keyDown: (NSEvent*)pEvent;
flagsChanged:(NSEvent*)109cdf0e10cSrcweir -(void)flagsChanged: (NSEvent*)pEvent;
sendMouseEventToFrame:button:eventtype:(NSEvent*,sal_uInt16,sal_uInt16)110cdf0e10cSrcweir -(void)sendMouseEventToFrame:(NSEvent*)pEvent button:(sal_uInt16)nButton eventtype:(sal_uInt16)nEvent;
sendKeyInputAndReleaseToFrame:character:(sal_uInt16,sal_Unicode)111cdf0e10cSrcweir -(BOOL)sendKeyInputAndReleaseToFrame: (sal_uInt16)nKeyCode character: (sal_Unicode)aChar;
sendKeyInputAndReleaseToFrame:character:modifiers:(sal_uInt16,sal_Unicode,unsigned int)112cdf0e10cSrcweir -(BOOL)sendKeyInputAndReleaseToFrame: (sal_uInt16)nKeyCode character: (sal_Unicode)aChar modifiers: (unsigned int)nMod;
sendKeyToFrameDirect:character:modifiers:(sal_uInt16,sal_Unicode,unsigned int)113cdf0e10cSrcweir -(BOOL)sendKeyToFrameDirect: (sal_uInt16)nKeyCode character: (sal_Unicode)aChar modifiers: (unsigned int)nMod;
sendSingleCharacter:(NSEvent*)114cdf0e10cSrcweir -(BOOL)sendSingleCharacter:(NSEvent*)pEvent;
handleKeyDownException:(NSEvent*)115cdf0e10cSrcweir -(BOOL)handleKeyDownException:(NSEvent*)pEvent;
clearLastEvent()116cdf0e10cSrcweir -(void)clearLastEvent;
117cdf0e10cSrcweir /*
118cdf0e10cSrcweir     text action methods
119cdf0e10cSrcweir */
insertText:(id)120cdf0e10cSrcweir -(void)insertText:(id)aString;
insertTab:(id)121cdf0e10cSrcweir -(void)insertTab: (id)aSender;
insertBacktab:(id)122cdf0e10cSrcweir -(void)insertBacktab: (id)aSender;
moveLeft:(id)123cdf0e10cSrcweir -(void)moveLeft: (id)aSender;
moveLeftAndModifySelection:(id)124cdf0e10cSrcweir -(void)moveLeftAndModifySelection: (id)aSender;
moveBackwardAndModifySelection:(id)125cdf0e10cSrcweir -(void)moveBackwardAndModifySelection: (id)aSender;
moveRight:(id)126cdf0e10cSrcweir -(void)moveRight: (id)aSender;
moveRightAndModifySelection:(id)127cdf0e10cSrcweir -(void)moveRightAndModifySelection: (id)aSender;
moveForwardAndModifySelection:(id)128cdf0e10cSrcweir -(void)moveForwardAndModifySelection: (id)aSender;
moveUp:(id)129cdf0e10cSrcweir -(void)moveUp: (id)aSender;
moveDown:(id)130cdf0e10cSrcweir -(void)moveDown: (id)aSender;
moveWordBackward:(id)131cdf0e10cSrcweir -(void)moveWordBackward: (id)aSender;
moveWordBackwardAndModifySelection:(id)132cdf0e10cSrcweir -(void)moveWordBackwardAndModifySelection: (id)aSender;
moveWordLeftAndModifySelection:(id)133cdf0e10cSrcweir -(void)moveWordLeftAndModifySelection: (id)aSender;
moveWordForward:(id)134cdf0e10cSrcweir -(void)moveWordForward: (id)aSender;
moveWordForwardAndModifySelection:(id)135cdf0e10cSrcweir -(void)moveWordForwardAndModifySelection: (id)aSender;
moveWordRightAndModifySelection:(id)136cdf0e10cSrcweir -(void)moveWordRightAndModifySelection: (id)aSender;
moveToEndOfLine:(id)137cdf0e10cSrcweir -(void)moveToEndOfLine: (id)aSender;
moveToRightEndOfLine:(id)138cdf0e10cSrcweir -(void)moveToRightEndOfLine: (id)aSender;
moveToLeftEndOfLine:(id)139cdf0e10cSrcweir -(void)moveToLeftEndOfLine: (id)aSender;
moveToEndOfLineAndModifySelection:(id)140cdf0e10cSrcweir -(void)moveToEndOfLineAndModifySelection: (id)aSender;
moveToRightEndOfLineAndModifySelection:(id)141cdf0e10cSrcweir -(void)moveToRightEndOfLineAndModifySelection: (id)aSender;
moveToLeftEndOfLineAndModifySelection:(id)142cdf0e10cSrcweir -(void)moveToLeftEndOfLineAndModifySelection: (id)aSender;
moveToBeginningOfLine:(id)143cdf0e10cSrcweir -(void)moveToBeginningOfLine: (id)aSender;
moveToBeginningOfLineAndModifySelection:(id)144cdf0e10cSrcweir -(void)moveToBeginningOfLineAndModifySelection: (id)aSender;
moveToEndOfParagraph:(id)145cdf0e10cSrcweir -(void)moveToEndOfParagraph: (id)aSender;
moveToEndOfParagraphAndModifySelection:(id)146cdf0e10cSrcweir -(void)moveToEndOfParagraphAndModifySelection: (id)aSender;
moveToBeginningOfParagraph:(id)147cdf0e10cSrcweir -(void)moveToBeginningOfParagraph: (id)aSender;
moveToBeginningOfParagraphAndModifySelection:(id)148cdf0e10cSrcweir -(void)moveToBeginningOfParagraphAndModifySelection: (id)aSender;
moveParagraphForward:(id)149cdf0e10cSrcweir -(void)moveParagraphForward: (id)aSender;
moveParagraphForwardAndModifySelection:(id)150cdf0e10cSrcweir -(void)moveParagraphForwardAndModifySelection: (id)aSender;
moveParagraphBackward:(id)151cdf0e10cSrcweir -(void)moveParagraphBackward: (id)aSender;
moveParagraphBackwardAndModifySelection:(id)152cdf0e10cSrcweir -(void)moveParagraphBackwardAndModifySelection: (id)aSender;
moveToEndOfDocument:(id)153cdf0e10cSrcweir -(void)moveToEndOfDocument: (id)aSender;
scrollToEndOfDocument:(id)154cdf0e10cSrcweir -(void)scrollToEndOfDocument: (id)aSender;
moveToEndOfDocumentAndModifySelection:(id)155cdf0e10cSrcweir -(void)moveToEndOfDocumentAndModifySelection: (id)aSender;
moveToBeginningOfDocument:(id)156cdf0e10cSrcweir -(void)moveToBeginningOfDocument: (id)aSender;
scrollToBeginningOfDocument:(id)157cdf0e10cSrcweir -(void)scrollToBeginningOfDocument: (id)aSender;
moveToBeginningOfDocumentAndModifySelection:(id)158cdf0e10cSrcweir -(void)moveToBeginningOfDocumentAndModifySelection: (id)aSender;
insertNewline:(id)159cdf0e10cSrcweir -(void)insertNewline: (id)aSender;
deleteBackward:(id)160cdf0e10cSrcweir -(void)deleteBackward: (id)aSender;
deleteForward:(id)161cdf0e10cSrcweir -(void)deleteForward: (id)aSender;
cancelOperation:(id)162cdf0e10cSrcweir -(void)cancelOperation: (id)aSender;
deleteBackwardByDecomposingPreviousCharacter:(id)163cdf0e10cSrcweir -(void)deleteBackwardByDecomposingPreviousCharacter: (id)aSender;
deleteWordBackward:(id)164cdf0e10cSrcweir -(void)deleteWordBackward: (id)aSender;
deleteWordForward:(id)165cdf0e10cSrcweir -(void)deleteWordForward: (id)aSender;
deleteToBeginningOfLine:(id)166cdf0e10cSrcweir -(void)deleteToBeginningOfLine: (id)aSender;
deleteToEndOfLine:(id)167cdf0e10cSrcweir -(void)deleteToEndOfLine: (id)aSender;
deleteToBeginningOfParagraph:(id)168cdf0e10cSrcweir -(void)deleteToBeginningOfParagraph: (id)aSender;
deleteToEndOfParagraph:(id)169cdf0e10cSrcweir -(void)deleteToEndOfParagraph: (id)aSender;
insertLineBreak:(id)170cdf0e10cSrcweir -(void)insertLineBreak: (id)aSender;
insertParagraphSeparator:(id)171cdf0e10cSrcweir -(void)insertParagraphSeparator: (id)aSender;
selectWord:(id)172cdf0e10cSrcweir -(void)selectWord: (id)aSender;
selectLine:(id)173cdf0e10cSrcweir -(void)selectLine: (id)aSender;
selectParagraph:(id)174cdf0e10cSrcweir -(void)selectParagraph: (id)aSender;
selectAll:(id)175cdf0e10cSrcweir -(void)selectAll: (id)aSender;
noop:(id)176cdf0e10cSrcweir -(void)noop: (id)aSender;
177cdf0e10cSrcweir /* set the correct pointer for our view */
resetCursorRects()178cdf0e10cSrcweir -(void)resetCursorRects;
accessibleContext()179cdf0e10cSrcweir -(::com::sun::star::accessibility::XAccessibleContext *)accessibleContext;
parentAttribute()180cdf0e10cSrcweir -(id)parentAttribute;
windowForParent()181*2fb76c82SHerbert Dürr -(NSWindow*)windowForParent;
182cdf0e10cSrcweir /*
183cdf0e10cSrcweir   Event hook for D&D service.
184cdf0e10cSrcweir 
185cdf0e10cSrcweir   A drag operation will be invoked on a NSView using
186cdf0e10cSrcweir   the method 'dragImage'. This method requires the
187cdf0e10cSrcweir   actual mouse event initiating this drag operation.
188cdf0e10cSrcweir   Mouse events can only be received by subclassing
189cdf0e10cSrcweir   NSView and overriding methods like 'mouseDown' etc.
190cdf0e10cSrcweir   hence we implement a event hook here so that the
191cdf0e10cSrcweir   D&D service can register as listener for mouse
192cdf0e10cSrcweir   messages and use the last 'mouseDown' or
193cdf0e10cSrcweir   'mouseDragged' message to initiate the drag
194cdf0e10cSrcweir   operation.
195cdf0e10cSrcweir */
registerMouseEventListener:(id)196cdf0e10cSrcweir -(void)registerMouseEventListener: (id)theListener;
unregisterMouseEventListener:(id)197cdf0e10cSrcweir -(void)unregisterMouseEventListener: (id)theListener;
198cdf0e10cSrcweir 
199cdf0e10cSrcweir /* NSDraggingDestination protocol methods
200cdf0e10cSrcweir  */
draggingEntered:(id id NSDraggingInfo NSDraggingInfo)201cdf0e10cSrcweir -(NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender;
draggingUpdated:(id id NSDraggingInfo NSDraggingInfo)202cdf0e10cSrcweir -(NSDragOperation)draggingUpdated:(id <NSDraggingInfo>)sender;
draggingExited:(id id NSDraggingInfo NSDraggingInfo)203cdf0e10cSrcweir -(void)draggingExited:(id <NSDraggingInfo>)sender;
prepareForDragOperation:(id id NSDraggingInfo NSDraggingInfo)204cdf0e10cSrcweir -(BOOL)prepareForDragOperation:(id <NSDraggingInfo>)sender;
performDragOperation:(id id NSDraggingInfo NSDraggingInfo)205cdf0e10cSrcweir -(BOOL)performDragOperation:(id <NSDraggingInfo>)sender;
concludeDragOperation:(id id NSDraggingInfo NSDraggingInfo)206cdf0e10cSrcweir -(void)concludeDragOperation:(id <NSDraggingInfo>)sender;
207cdf0e10cSrcweir 
registerDraggingDestinationHandler:(id)208cdf0e10cSrcweir -(void)registerDraggingDestinationHandler:(id)theHandler;
unregisterDraggingDestinationHandler:(id)209cdf0e10cSrcweir -(void)unregisterDraggingDestinationHandler:(id)theHandler;
210cdf0e10cSrcweir 
211cdf0e10cSrcweir @end
212cdf0e10cSrcweir 
213cdf0e10cSrcweir #endif
214