2 * Copyright 2004 by Krzysztof Foltman
3 * Copyright 2007-2008 by Alexander N. Sørnes <alex@thehandofagony.com>
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #define MAX_STRING_LEN 255
22 #define TWIPS_PER_CM 567
24 #define ID_FILE_EXIT 1000
25 #define ID_FILE_OPEN 1001
26 #define ID_FILE_SAVE 1002
27 #define ID_FILE_NEW 1003
28 #define ID_FILE_SAVEAS 1004
30 #define ID_FILE_RECENT1 1005
31 #define ID_FILE_RECENT2 1006
32 #define ID_FILE_RECENT3 1007
33 #define ID_FILE_RECENT4 1008
34 #define ID_FILE_RECENT_SEPARATOR 1009
37 #define ID_PREVIEW 1011
38 #define ID_PRINTSETUP 1012
39 #define ID_PRINT_QUICK 1013
42 #define ID_FIND_NEXT 1015
43 #define ID_REPLACE 1016
45 #define ID_PREVIEW_NEXTPAGE 1017
46 #define ID_PREVIEW_PREVPAGE 1018
47 #define ID_PREVIEW_NUMPAGES 1019
49 #define ID_ALIGN_LEFT 1100
50 #define ID_ALIGN_CENTER 1101
51 #define ID_ALIGN_RIGHT 1102
53 #define ID_BACK_1 1200
54 #define ID_BACK_2 1201
56 #define ID_EDIT_SELECTALL 1300
57 #define ID_EDIT_SELECTIONINFO 1301
58 #define ID_EDIT_READONLY 1302
59 #define ID_EDIT_MODIFIED 1303
60 #define ID_EDIT_CHARFORMAT 1304
61 #define ID_EDIT_PARAFORMAT 1305
62 #define ID_EDIT_DEFCHARFORMAT 1306
63 #define ID_EDIT_UNDO 1307
64 #define ID_EDIT_REDO 1308
65 #define ID_EDIT_GETTEXT 1309
66 #define ID_EDIT_COPY 1310
67 #define ID_EDIT_CUT 1311
68 #define ID_EDIT_PASTE 1312
69 #define ID_EDIT_CLEAR 1313
70 #define ID_BULLET 1314
72 #define ID_FONTSETTINGS 1315
74 #define ID_FORMAT_BOLD 1400
75 #define ID_FORMAT_ITALIC 1401
76 #define ID_FORMAT_UNDERLINE 1402
78 #define ID_TOGGLE_TOOLBAR 1500
79 #define ID_TOGGLE_FORMATBAR 1501
80 #define ID_TOGGLE_STATUSBAR 1502
81 #define ID_TOGGLE_RULER 1503
83 #define PREVIEW_BUTTONS 5
85 #define FILELIST_ENTRIES 4
86 #define FILELIST_ENTRY_LENGTH 33
88 #define BANDID_TOOLBAR 2
89 #define BANDID_FORMATBAR 3
90 #define BANDID_RULER 0
91 #define BANDID_STATUSBAR 1
92 #define BANDID_FONTLIST 4
93 #define BANDID_SIZELIST 5
95 #define BANDID_PREVIEW_BTN1 6
96 #define BANDID_PREVIEW_BTN2 7
97 #define BANDID_PREVIEW_BTN3 8
98 #define BANDID_PREVIEW_BTN4 9
99 #define BANDID_PREVIEW_BTN5 10
100 #define BANDID_PREVIEW_BUFFER 11
102 #define ID_WORDWRAP_NONE 0
103 #define ID_WORDWRAP_WINDOW 1
104 #define ID_WORDWRAP_MARGIN 2
106 #define ID_NEWFILE_ABORT 100
108 #define ID_TAB_ADD 100
109 #define ID_TAB_DEL 101
110 #define ID_TAB_EMPTY 102
112 #define IDC_PAGEFMT_TB 100
113 #define IDC_PAGEFMT_FB 101
114 #define IDC_PAGEFMT_RU 102
115 #define IDC_PAGEFMT_SB 103
116 #define IDC_PAGEFMT_WW 104
117 #define IDC_PAGEFMT_WM 105
118 #define IDC_PAGEFMT_ID 106
120 #define ID_DATETIME 1600
121 #define ID_PARAFORMAT 1601
122 #define ID_TABSTOPS 1602
124 #define ID_ABOUT 1603
125 #define ID_VIEWPROPERTIES 1604
127 #define IDC_STATUSBAR 2000
128 #define IDC_EDITOR 2001
129 #define IDC_TOOLBAR 2002
130 #define IDC_FORMATBAR 2003
131 #define IDC_REBAR 2004
132 #define IDC_COMBO 2005
133 #define IDC_DATETIME 2006
134 #define IDC_NEWFILE 2007
135 #define IDC_PARA_LEFT 2008
136 #define IDC_PARA_RIGHT 2009
137 #define IDC_PARA_FIRST 2010
138 #define IDC_PARA_ALIGN 2011
139 #define IDC_TABSTOPS 2012
140 #define IDC_FONTLIST 2013
141 #define IDC_SIZELIST 2014
142 #define IDC_RULER 2015
144 #define IDD_DATETIME 2100
145 #define IDD_NEWFILE 2101
146 #define IDD_PARAFORMAT 2102
147 #define IDD_TABSTOPS 2103
148 #define IDD_FORMATOPTS 2104
150 #define IDM_MAINMENU 2200
151 #define IDM_POPUP 2201
153 #define IDB_TOOLBAR 100
154 #define IDB_FORMATBAR 101
156 #define IDI_WORDPAD 102
161 #define STRING_ALL_FILES 1400
162 #define STRING_TEXT_FILES_TXT 1401
163 #define STRING_TEXT_FILES_UNICODE_TXT 1402
164 #define STRING_RICHTEXT_FILES_RTF 1403
166 #define STRING_NEWFILE_RICHTEXT 1404
167 #define STRING_NEWFILE_TXT 1405
168 #define STRING_NEWFILE_TXT_UNICODE 1406
170 #define STRING_ALIGN_LEFT 1407
171 #define STRING_ALIGN_RIGHT 1408
172 #define STRING_ALIGN_CENTER 1409
174 #define STRING_PRINTER_FILES_PRN 1410
176 #define STRING_VIEWPROPS_TITLE 1411
177 #define STRING_VIEWPROPS_TEXT 1412
178 #define STRING_VIEWPROPS_RICHTEXT 1413
180 #define STRING_PREVIEW_PRINT 1414
181 #define STRING_PREVIEW_NEXTPAGE 1415
182 #define STRING_PREVIEW_PREVPAGE 1416
183 #define STRING_PREVIEW_TWOPAGES 1417
184 #define STRING_PREVIEW_ONEPAGE 1418
185 #define STRING_PREVIEW_CLOSE 1419
187 #define STRING_UNITS_CM 1420
189 #define STRING_DEFAULT_FILENAME 1700
190 #define STRING_PROMPT_SAVE_CHANGES 1701
191 #define STRING_SEARCH_FINISHED 1702
192 #define STRING_LOAD_RICHED_FAILED 1703
193 #define STRING_SAVE_LOSEFORMATTING 1704
194 #define STRING_INVALID_NUMBER 1705
195 #define STRING_OLE_STORAGE_NOT_SUPPORTED 1706
197 LPWSTR file_basename(LPWSTR);
199 void dialog_printsetup(HWND);
200 void dialog_print(HWND, LPWSTR);
201 void target_device(HWND, DWORD);
202 void print_quick(LPWSTR);
203 LRESULT preview_command(HWND, WPARAM, LPARAM);
204 void init_preview(HWND, LPWSTR);
205 void close_preview(HWND);
206 BOOL preview_isactive(void);
207 LRESULT print_preview(HWND);
208 void get_default_printer_opts(void);
209 void registry_set_pagemargins(HKEY);
210 void registry_read_pagemargins(HKEY);
211 LRESULT CALLBACK ruler_proc(HWND, UINT, WPARAM, LPARAM);
212 void redraw_ruler(HWND);
214 int reg_formatindex(WPARAM);
215 void registry_read_filelist(HWND);
216 void registry_read_options(void);
217 void registry_read_formatopts_all(DWORD[], DWORD[]);
218 void registry_read_winrect(RECT*);
219 void registry_set_filelist(LPCWSTR, HWND);
220 void registry_set_formatopts_all(DWORD[]);
221 void registry_set_options(HWND);