mirror of
https://github.com/autc04/Retro68.git
synced 2024-11-24 07:31:32 +00:00
103 lines
2.7 KiB
C
103 lines
2.7 KiB
C
/*
|
|
* Copyright (c) 1994 by Xerox Corporation. All rights reserved.
|
|
*
|
|
* THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
|
|
* OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
|
|
*
|
|
* Permission is hereby granted to use or copy this program
|
|
* for any purpose, provided the above notices are retained on all copies.
|
|
* Permission to modify the code and to distribute modified code is granted,
|
|
* provided the above notices are retained, and a notice that the code was
|
|
* modified is included with the above copyright notice.
|
|
*/
|
|
/* Boehm, May 19, 1994 2:25 pm PDT */
|
|
|
|
/* cord.h, de_cmds.h, and windows.h should be included before this. */
|
|
|
|
|
|
# define OTHER_FLAG 0x100
|
|
# define EDIT_CMD_FLAG 0x200
|
|
# define REPEAT_FLAG 0x400
|
|
|
|
# define CHAR_CMD(i) ((i) & 0xff)
|
|
|
|
/* MENU: DE */
|
|
#define IDM_FILESAVE (EDIT_CMD_FLAG + WRITE)
|
|
#define IDM_FILEEXIT (OTHER_FLAG + 1)
|
|
#define IDM_HELPABOUT (OTHER_FLAG + 2)
|
|
#define IDM_HELPCONTENTS (OTHER_FLAG + 3)
|
|
|
|
#define IDM_EDITPDOWN (REPEAT_FLAG + EDIT_CMD_FLAG + DOWN)
|
|
#define IDM_EDITPUP (REPEAT_FLAG + EDIT_CMD_FLAG + UP)
|
|
#define IDM_EDITUNDO (EDIT_CMD_FLAG + UNDO)
|
|
#define IDM_EDITLOCATE (EDIT_CMD_FLAG + LOCATE)
|
|
#define IDM_EDITDOWN (EDIT_CMD_FLAG + DOWN)
|
|
#define IDM_EDITUP (EDIT_CMD_FLAG + UP)
|
|
#define IDM_EDITLEFT (EDIT_CMD_FLAG + LEFT)
|
|
#define IDM_EDITRIGHT (EDIT_CMD_FLAG + RIGHT)
|
|
#define IDM_EDITBS (EDIT_CMD_FLAG + BS)
|
|
#define IDM_EDITDEL (EDIT_CMD_FLAG + DEL)
|
|
#define IDM_EDITREPEAT (EDIT_CMD_FLAG + REPEAT)
|
|
#define IDM_EDITTOP (EDIT_CMD_FLAG + TOP)
|
|
|
|
|
|
|
|
|
|
/* Windows UI stuff */
|
|
|
|
LRESULT CALLBACK WndProc (HWND hwnd, UINT message,
|
|
UINT wParam, LONG lParam);
|
|
|
|
LRESULT CALLBACK AboutBox( HWND hDlg, UINT message,
|
|
UINT wParam, LONG lParam );
|
|
|
|
|
|
/* Screen dimensions. Maintained by de_win.c. */
|
|
extern int LINES;
|
|
extern int COLS;
|
|
|
|
/* File being edited. */
|
|
extern char * arg_file_name;
|
|
|
|
/* Current display position in file. Maintained by de.c */
|
|
extern int dis_line;
|
|
extern int dis_col;
|
|
|
|
/* Current cursor position in file. */
|
|
extern int line;
|
|
extern int col;
|
|
|
|
/*
|
|
* Calls from de_win.c to de.c
|
|
*/
|
|
|
|
CORD retrieve_screen_line(int i);
|
|
/* Get the contents of i'th screen line. */
|
|
/* Relies on COLS. */
|
|
|
|
void set_position(int x, int y);
|
|
/* Set column, row. Upper left of window = (0,0). */
|
|
|
|
void do_command(int);
|
|
/* Execute an editor command. */
|
|
/* Agument is a command character or one */
|
|
/* of the IDM_ commands. */
|
|
|
|
void generic_init(void);
|
|
/* OS independent initialization */
|
|
|
|
|
|
/*
|
|
* Calls from de.c to de_win.c
|
|
*/
|
|
|
|
void move_cursor(int column, int line);
|
|
/* Physically move the cursor on the display, */
|
|
/* so that it appears at */
|
|
/* (column, line). */
|
|
|
|
void invalidate_line(int line);
|
|
/* Invalidate line i on the screen. */
|
|
|
|
void de_error(char *s);
|
|
/* Display error message. */ |