diff options
Diffstat (limited to 'src/Notepad2.h')
-rw-r--r-- | src/Notepad2.h | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/src/Notepad2.h b/src/Notepad2.h new file mode 100644 index 0000000..e3f52c9 --- /dev/null +++ b/src/Notepad2.h @@ -0,0 +1,145 @@ +/******************************************************************************
+*
+*
+* Notepad2
+*
+* Notepad2.h
+* Global definitions and declarations
+*
+* See Readme.txt for more information about this source code.
+* Please send me your comments to this work.
+*
+* See License.txt for details about distribution and modification.
+*
+* (c) Florian Balmer 1996-2010
+* florian.balmer@gmail.com
+* http://www.flos-freeware.ch
+*
+*
+******************************************************************************/
+
+
+
+//==== Main Window ============================================================
+#define WC_NOTEPAD2 L"Notepad2"
+
+
+//==== Data Type for WM_COPYDATA ==============================================
+#define DATA_NOTEPAD2_PARAMS 0xFB09
+typedef struct np2params {
+
+ int flagFileSpecified;
+ int flagLexerSpecified;
+ int iInitialLexer;
+ int flagQuietCreate;
+ int flagJumpTo;
+ int iInitialLine;
+ int iInitialColumn;
+ int iSrcEncoding;
+ int flagSetEncoding;
+ int flagSetEOLMode;
+ int flagTitleExcerpt;
+ WCHAR wchData;
+
+} NP2PARAMS, *LPNP2PARAMS;
+
+
+//==== Toolbar Style ==========================================================
+#define WS_TOOLBAR (WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | \
+ TBSTYLE_TOOLTIPS | TBSTYLE_FLAT | TBSTYLE_ALTDRAG | \
+ TBSTYLE_LIST | CCS_NODIVIDER | CCS_NOPARENTALIGN | \
+ CCS_ADJUSTABLE)
+
+
+//==== ReBar Style ============================================================
+#define WS_REBAR (WS_CHILD | WS_CLIPCHILDREN | WS_BORDER | RBS_VARHEIGHT | \
+ RBS_BANDBORDERS | CCS_NODIVIDER | CCS_NOPARENTALIGN)
+
+
+//==== Ids ====================================================================
+#define IDC_STATUSBAR 0xFB00
+#define IDC_TOOLBAR 0xFB01
+#define IDC_REBAR 0xFB02
+#define IDC_EDIT 0xFB03
+#define IDC_EDITFRAME 0xFB04
+#define IDC_FILENAME 0xFB05
+#define IDC_REUSELOCK 0xFB06
+
+
+//==== Statusbar ==============================================================
+#define STATUS_DOCPOS 0
+#define STATUS_DOCSIZE 1
+#define STATUS_CODEPAGE 2
+#define STATUS_EOLMODE 3
+#define STATUS_OVRMODE 4
+#define STATUS_LEXER 5
+#define STATUS_HELP 255
+
+
+//==== Change Notifications ===================================================
+#define ID_WATCHTIMER 0xA000
+#define WM_CHANGENOTIFY WM_USER+1
+//#define WM_CHANGENOTIFYCLEAR WM_USER+2
+
+
+//==== Callback Message from System Tray ======================================
+#define WM_TRAYMESSAGE WM_USER
+
+
+//==== Paste Board Timer ======================================================
+#define ID_PASTEBOARDTIMER 0xA001
+
+
+//==== Reuse Window Lock Timeout ==============================================
+#define REUSEWINDOWLOCKTIMEOUT 1000
+
+
+//==== Function Declarations ==================================================
+BOOL InitApplication(HINSTANCE);
+HWND InitInstance(HINSTANCE,LPSTR,int);
+BOOL ActivatePrevInst();
+BOOL RelaunchMultiInst();
+BOOL RelaunchElevated();
+void ShowNotifyIcon(HWND,BOOL);
+void SetNotifyIconTitle(HWND);
+void InstallFileWatching(LPCWSTR);
+void CALLBACK WatchTimerProc(HWND,UINT,UINT_PTR,DWORD);
+void CALLBACK PasteBoardTimer(HWND,UINT,UINT_PTR,DWORD);
+
+
+void LoadSettings();
+void SaveSettings(BOOL);
+void ParseCommandLine();
+void LoadFlags();
+int CheckIniFile(LPWSTR,LPCWSTR);
+int CheckIniFileRedirect(LPWSTR,LPCWSTR);
+int FindIniFile();
+int TestIniFile();
+int CreateIniFile();
+int CreateIniFileEx(LPCWSTR);
+
+
+void UpdateStatusbar();
+void UpdateToolbar();
+void UpdateLineNumberWidth();
+
+
+BOOL FileIO(BOOL,LPCWSTR,BOOL,int*,int*,BOOL*,BOOL*,BOOL*,BOOL);
+BOOL FileLoad(BOOL,BOOL,BOOL,BOOL,LPCWSTR);
+BOOL FileSave(BOOL,BOOL,BOOL,BOOL);
+BOOL OpenFileDlg(HWND,LPWSTR,int,LPCWSTR);
+BOOL SaveFileDlg(HWND,LPWSTR,int,LPCWSTR);
+
+
+LRESULT CALLBACK MainWndProc(HWND,UINT,WPARAM,LPARAM);
+LRESULT MsgCreate(HWND,WPARAM,LPARAM);
+void CreateBars(HWND,HINSTANCE);
+void MsgThemeChanged(HWND,WPARAM,LPARAM);
+void MsgSize(HWND,WPARAM,LPARAM);
+void MsgInitMenu(HWND,WPARAM,LPARAM);
+LRESULT MsgCommand(HWND,WPARAM,LPARAM);
+LRESULT MsgNotify(HWND,WPARAM,LPARAM);
+
+
+
+/// End of Notepad2.h \\\
|