Fix placement of auxiliary IM window for Core Text
[MacVim.git] / src / MacVim / MMTextView.h
blob910fbeb3ba49f673704b4136643127bb8b198140
1 /* vi:set ts=8 sts=4 sw=4 ft=objc:
3 * VIM - Vi IMproved by Bram Moolenaar
4 * MacVim GUI port by Bjorn Winckler
6 * Do ":help uganda" in Vim to read copying and usage conditions.
7 * Do ":help credits" in Vim to see a list of people who contributed.
8 * See README.txt for an overview of the Vim source code.
9 */
11 #import <Cocoa/Cocoa.h>
13 @class MMTextViewHelper;
16 @interface MMTextView : NSTextView {
17 BOOL shouldDrawInsertionPoint;
18 int insertionPointRow;
19 int insertionPointColumn;
20 int insertionPointShape;
21 int insertionPointFraction;
22 BOOL antialias;
23 NSRect *invertRects;
24 int numInvertRects;
26 MMTextViewHelper *helper;
29 - (id)initWithFrame:(NSRect)frame;
31 - (void)setPreEditRow:(int)row column:(int)col;
32 - (void)performBatchDrawWithData:(NSData *)data;
33 - (void)setMouseShape:(int)shape;
34 - (void)setAntialias:(BOOL)antialias;
35 - (void)setImControl:(BOOL)enable;
36 - (void)activateIm:(BOOL)enable;
39 // MMTextStorage methods
41 - (NSFont *)font;
42 - (void)setFont:(NSFont *)newFont;
43 - (NSFont *)fontWide;
44 - (void)setWideFont:(NSFont *)newFont;
45 - (NSSize)cellSize;
46 - (void)setLinespace:(float)newLinespace;
47 - (int)maxRows;
48 - (int)maxColumns;
49 - (void)getMaxRows:(int*)rows columns:(int*)cols;
50 - (void)setMaxRows:(int)rows columns:(int)cols;
51 - (NSRect)rectForRowsInRange:(NSRange)range;
52 - (NSRect)rectForColumnsInRange:(NSRange)range;
53 - (void)setDefaultColorsBackground:(NSColor *)bgColor
54 foreground:(NSColor *)fgColor;
55 - (NSColor *)defaultBackgroundColor;
56 - (NSColor *)defaultForegroundColor;
58 - (NSSize)constrainRows:(int *)rows columns:(int *)cols toSize:(NSSize)size;
59 - (NSSize)desiredSize;
60 - (NSSize)minSize;
63 - (BOOL)convertPoint:(NSPoint)point toRow:(int *)row column:(int *)column;
64 - (NSPoint)pointForRow:(int)row column:(int)col;
65 - (NSRect)rectForRow:(int)row column:(int)col numRows:(int)nr
66 numColumns:(int)nc;
68 @end