aboutsummaryrefslogtreecommitdiffhomepage
path: root/cocoa
diff options
context:
space:
mode:
Diffstat (limited to 'cocoa')
-rw-r--r--cocoa/PlatCocoa.mm2
-rw-r--r--cocoa/ScintillaCocoa.h20
-rw-r--r--cocoa/ScintillaCocoa.mm2
-rw-r--r--cocoa/ScintillaView.h28
-rw-r--r--cocoa/ScintillaView.mm9
5 files changed, 35 insertions, 26 deletions
diff --git a/cocoa/PlatCocoa.mm b/cocoa/PlatCocoa.mm
index 3ce5abe0e..c5fba7533 100644
--- a/cocoa/PlatCocoa.mm
+++ b/cocoa/PlatCocoa.mm
@@ -12,7 +12,9 @@
* This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt).
*/
+#import "Platform.h"
#import "ScintillaView.h"
+#import "ScintillaCocoa.h"
#import "PlatCocoa.h"
#include <cstring>
diff --git a/cocoa/ScintillaCocoa.h b/cocoa/ScintillaCocoa.h
index b7290506b..4842e2098 100644
--- a/cocoa/ScintillaCocoa.h
+++ b/cocoa/ScintillaCocoa.h
@@ -78,26 +78,6 @@ extern "C" NSString* ScintillaRecPboardType;
namespace Scintilla {
/**
- * On the Mac, there is no WM_COMMAND or WM_NOTIFY message that can be sent
- * back to the parent. Therefore, there must be a callback handler that acts
- * like a Windows WndProc, where Scintilla can send notifications to. Use
- * ScintillaCocoa::RegisterNotifyHandler() to register such a handler.
- * Message format is:
- * <br>
- * WM_COMMAND: HIWORD (wParam) = notification code, LOWORD (wParam) = 0 (no control ID), lParam = ScintillaCocoa*
- * <br>
- * WM_NOTIFY: wParam = 0 (no control ID), lParam = ptr to SCNotification structure, with hwndFrom set to ScintillaCocoa*
- */
-typedef void(*SciNotifyFunc) (intptr_t windowid, unsigned int iMessage, uintptr_t wParam, uintptr_t lParam);
-
-/**
- * Scintilla sends these two messages to the notify handler. Please refer
- * to the Windows API doc for details about the message format.
- */
-#define WM_COMMAND 1001
-#define WM_NOTIFY 1002
-
-/**
* Main scintilla class, implemented for OS X (Cocoa).
*/
class ScintillaCocoa : public ScintillaBase
diff --git a/cocoa/ScintillaCocoa.mm b/cocoa/ScintillaCocoa.mm
index 38dc792a7..57367fcac 100644
--- a/cocoa/ScintillaCocoa.mm
+++ b/cocoa/ScintillaCocoa.mm
@@ -21,7 +21,9 @@
#import <QuartzCore/CAAnimation.h>
#import <QuartzCore/CATransaction.h>
+#import "Platform.h"
#import "ScintillaView.h"
+#import "ScintillaCocoa.h"
#import "PlatCocoa.h"
using namespace Scintilla;
diff --git a/cocoa/ScintillaView.h b/cocoa/ScintillaView.h
index 78fe65666..1b0c110fb 100644
--- a/cocoa/ScintillaView.h
+++ b/cocoa/ScintillaView.h
@@ -11,12 +11,34 @@
#import <Cocoa/Cocoa.h>
-#import "Platform.h"
#import "Scintilla.h"
#import "SciLexer.h"
#import "InfoBarCommunicator.h"
-#import "ScintillaCocoa.h"
+
+/**
+ * Scintilla sends these two messages to the notify handler. Please refer
+ * to the Windows API doc for details about the message format.
+ */
+#define WM_COMMAND 1001
+#define WM_NOTIFY 1002
+
+namespace Scintilla {
+/**
+ * On the Mac, there is no WM_COMMAND or WM_NOTIFY message that can be sent
+ * back to the parent. Therefore, there must be a callback handler that acts
+ * like a Windows WndProc, where Scintilla can send notifications to. Use
+ * ScintillaView registerNotifyCallback() to register such a handler.
+ * Message format is:
+ * <br>
+ * WM_COMMAND: HIWORD (wParam) = notification code, LOWORD (wParam) = control ID, lParam = ScintillaCocoa*
+ * <br>
+ * WM_NOTIFY: wParam = 0 (no control ID), lParam = ptr to SCNotification structure, with hwndFrom set to ScintillaCocoa*
+ */
+typedef void(*SciNotifyFunc) (intptr_t windowid, unsigned int iMessage, uintptr_t wParam, uintptr_t lParam);
+
+class ScintillaCocoa;
+}
@class ScintillaView;
@@ -64,7 +86,7 @@ extern NSString *SCIUpdateUINotification;
- (void) dealloc;
- (void) removeMarkedText;
-- (void) setCursor: (Scintilla::Window::Cursor) cursor;
+- (void) setCursor: (int) cursor;
- (BOOL) canUndo;
- (BOOL) canRedo;
diff --git a/cocoa/ScintillaView.mm b/cocoa/ScintillaView.mm
index 8abc37308..8d51dc825 100644
--- a/cocoa/ScintillaView.mm
+++ b/cocoa/ScintillaView.mm
@@ -9,7 +9,9 @@
* This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt).
*/
+#import "Platform.h"
#import "ScintillaView.h"
+#import "ScintillaCocoa.h"
using namespace Scintilla;
@@ -195,12 +197,13 @@ static NSCursor *cursorFromEnum(Window::Cursor cursor)
/**
* Called by the backend if a new cursor must be set for the view.
*/
-- (void) setCursor: (Window::Cursor) cursor
+- (void) setCursor: (int) cursor
{
+ Window::Cursor eCursor = (Window::Cursor)cursor;
[mCurrentCursor autorelease];
- mCurrentCursor = cursorFromEnum(cursor);
+ mCurrentCursor = cursorFromEnum(eCursor);
[mCurrentCursor retain];
-
+
// Trigger recreation of the cursor rectangle(s).
[[self window] invalidateCursorRectsForView: self];
}