mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-29 23:52:22 +00:00
7b9177ec56
The plan is to use it for variable lookups etc.
47 lines
1.1 KiB
Objective-C
47 lines
1.1 KiB
Objective-C
#ifndef __qwaq_editor_h
|
|
#define __qwaq_editor_h
|
|
|
|
#include "qwaq-editbuffer.h"
|
|
#include "qwaq-view.h"
|
|
|
|
@class Editor;
|
|
@class EditBuffer;
|
|
@class ListenerGroup;
|
|
|
|
// Data sent to onKeyEvent listeners
|
|
typedef struct ed_event_s {
|
|
Editor *editor;
|
|
struct qwaq_event_s *event;
|
|
} ed_event_t;
|
|
|
|
@interface Editor : View
|
|
{
|
|
EditBuffer *buffer;
|
|
DrawBuffer *linebuffer;
|
|
eb_sel_t selection;
|
|
unsigned base_index; // top left corner
|
|
unsigned line_index; // current line
|
|
unsigned char_index; // current character
|
|
unsigned old_cind; // previous character
|
|
Point scroll;
|
|
Point cursor;
|
|
unsigned line_count;
|
|
string filename;
|
|
ListenerGroup *onEvent;
|
|
ed_event_t _event;
|
|
}
|
|
-initWithRect:(Rect) rect file:(string) filename;
|
|
-(ListenerGroup *)onEvent;
|
|
-(string)filename;
|
|
-scrollUp:(unsigned) count;
|
|
-scrollDown:(unsigned) count;
|
|
-scrollLeft:(unsigned) count;
|
|
-scrollRight:(unsigned) count;
|
|
|
|
-recenter:(int) force;
|
|
-gotoLine:(unsigned) line;
|
|
-highlightLine;
|
|
-(string)getWordAt:(Point) pos; // view relative coordinates
|
|
@end
|
|
|
|
#endif//__qwaq_editor_h
|