Artifact fb5b8d0bd744fed9d96684f67453b8d44e9eaa4a:
0000: 23 69 66 6e 64 65 66 20 5f 47 52 45 45 4e 50 41 #ifndef _GREENPA
0010: 44 5f 4d 41 49 4e 5f 48 5f 0d 0a 23 64 65 66 69 D_MAIN_H_..#defi
0020: 6e 65 20 5f 47 52 45 45 4e 50 41 44 5f 4d 41 49 ne _GREENPAD_MAI
0030: 4e 5f 48 5f 0d 0a 23 69 6e 63 6c 75 64 65 20 22 N_H_..#include "
0040: 6b 69 6c 69 62 2f 6b 69 6c 69 62 2e 68 22 0d 0a kilib/kilib.h"..
0050: 23 69 6e 63 6c 75 64 65 20 22 65 64 69 74 77 69 #include "editwi
0060: 6e 67 2f 65 64 69 74 77 69 6e 67 2e 68 22 0d 0a ng/editwing.h"..
0070: 23 69 6e 63 6c 75 64 65 20 22 4f 70 65 6e 53 61 #include "OpenSa
0080: 76 65 44 6c 67 2e 68 22 0d 0a 23 69 6e 63 6c 75 veDlg.h"..#inclu
0090: 64 65 20 22 43 6f 6e 66 69 67 4d 61 6e 61 67 65 de "ConfigManage
00a0: 72 2e 68 22 0d 0a 23 69 6e 63 6c 75 64 65 20 22 r.h"..#include "
00b0: 53 65 61 72 63 68 2e 68 22 0d 0a 0d 0a 0d 0a 0d Search.h".......
00c0: 0a 2f 2f 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .//=============
00d0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
00e0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
00f0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0100: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a 2f 2f ============..//
0110: 40 7b 20 40 70 6b 67 20 47 70 2e 4d 61 69 6e 20 @{ @pkg Gp.Main
0120: 2f 2f 40 7d 0d 0a 2f 2f 40 7b 0d 0a 2f 2f 09 83 //@}..//@{..//..
0130: 58 83 65 81 5b 83 5e 83 58 83 6f 81 5b 0d 0a 2f X.e.[.^.X.o.[../
0140: 2f 40 7d 0d 0a 2f 2f 3d 3d 3d 3d 3d 3d 3d 3d 3d /@}..//=========
0150: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0160: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0170: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0180: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0190: 0d 0a 0d 0a 63 6c 61 73 73 20 47 70 53 74 42 61 ....class GpStBa
01a0: 72 20 3a 20 70 75 62 6c 69 63 20 6b 69 3a 3a 53 r : public ki::S
01b0: 74 61 74 75 73 42 61 72 0d 0a 7b 0d 0a 70 75 62 tatusBar..{..pub
01c0: 6c 69 63 3a 0d 0a 09 47 70 53 74 42 61 72 28 29 lic:...GpStBar()
01d0: 3b 0d 0a 09 69 6e 74 20 41 75 74 6f 52 65 73 69 ;...int AutoResi
01e0: 7a 65 28 20 62 6f 6f 6c 20 6d 61 78 69 6d 69 7a ze( bool maximiz
01f0: 65 64 20 29 3b 0d 0a 09 76 6f 69 64 20 53 65 74 ed );...void Set
0200: 43 73 54 65 78 74 28 20 63 6f 6e 73 74 20 54 43 CsText( const TC
0210: 48 41 52 2a 20 73 74 72 20 29 3b 0d 0a 09 76 6f HAR* str );...vo
0220: 69 64 20 53 65 74 4c 62 54 65 78 74 28 20 69 6e id SetLbText( in
0230: 74 20 6c 62 20 29 3b 0d 0a 70 72 69 76 61 74 65 t lb );..private
0240: 3a 0d 0a 09 63 6f 6e 73 74 20 54 43 48 41 52 20 :...const TCHAR
0250: 2a 73 74 72 5f 3b 0d 0a 09 69 6e 74 20 6c 62 5f *str_;...int lb_
0260: 3b 0d 0a 7d 3b 0d 0a 0d 0a 0d 0a 0d 0a 2f 2f 3d ;..};........//=
0270: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0280: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0290: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
02a0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
02b0: 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a 2f 2f 40 7b 0d 0a ========..//@{..
02c0: 2f 2f 09 83 81 83 43 83 93 83 45 83 43 83 93 83 //....C...E.C...
02d0: 68 83 45 0d 0a 2f 2f 40 7d 0d 0a 2f 2f 3d 3d 3d h.E..//@}..//===
02e0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
02f0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0300: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0310: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0320: 3d 3d 3d 3d 3d 3d 0d 0a 0d 0a 63 6c 61 73 73 20 ======....class
0330: 47 72 65 65 6e 50 61 64 57 6e 64 0d 0a 09 3a 20 GreenPadWnd...:
0340: 70 75 62 6c 69 63 20 6b 69 3a 3a 57 6e 64 49 6d public ki::WndIm
0350: 70 6c 0d 0a 09 2c 20 70 75 62 6c 69 63 20 65 64 pl..., public ed
0360: 69 74 77 69 6e 67 3a 3a 64 6f 63 3a 3a 44 6f 63 itwing::doc::Doc
0370: 45 76 48 61 6e 64 6c 65 72 0d 0a 09 2c 20 70 75 EvHandler..., pu
0380: 62 6c 69 63 20 65 64 69 74 77 69 6e 67 3a 3a 76 blic editwing::v
0390: 69 65 77 3a 3a 43 75 72 45 76 48 61 6e 64 6c 65 iew::CurEvHandle
03a0: 72 0d 0a 7b 0d 0a 70 75 62 6c 69 63 3a 0d 0a 0d r..{..public:...
03b0: 0a 09 47 72 65 65 6e 50 61 64 57 6e 64 28 29 3b ..GreenPadWnd();
03c0: 0d 0a 09 62 6f 6f 6c 20 53 74 61 72 74 55 70 28 ...bool StartUp(
03d0: 20 63 6f 6e 73 74 20 6b 69 3a 3a 50 61 74 68 26 const ki::Path&
03e0: 20 66 6e 2c 20 69 6e 74 20 63 73 2c 20 69 6e 74 fn, int cs, int
03f0: 20 6c 6e 20 29 3b 0d 0a 09 76 6f 69 64 20 53 68 ln );...void Sh
0400: 6f 77 55 70 32 28 29 3b 0d 0a 0d 0a 70 72 69 76 owUp2();....priv
0410: 61 74 65 3a 0d 0a 0d 0a 09 76 6f 69 64 20 55 70 ate:.....void Up
0420: 64 61 74 65 57 69 6e 64 6f 77 4e 61 6d 65 28 29 dateWindowName()
0430: 3b 0d 0a 09 76 6f 69 64 20 52 65 6c 6f 61 64 43 ;...void ReloadC
0440: 6f 6e 66 69 67 28 20 62 6f 6f 6c 20 6e 6f 53 65 onfig( bool noSe
0450: 74 44 6f 63 54 79 70 65 3d 66 61 6c 73 65 20 29 tDocType=false )
0460: 3b 0d 0a 0d 0a 09 62 6f 6f 6c 20 53 68 6f 77 4f ;.....bool ShowO
0470: 70 65 6e 44 6c 67 28 20 6b 69 3a 3a 50 61 74 68 penDlg( ki::Path
0480: 2a 20 66 6e 2c 20 69 6e 74 2a 20 63 73 20 29 3b * fn, int* cs );
0490: 0d 0a 09 62 6f 6f 6c 20 4f 70 65 6e 28 20 63 6f ...bool Open( co
04a0: 6e 73 74 20 6b 69 3a 3a 50 61 74 68 26 20 66 6e nst ki::Path& fn
04b0: 2c 20 69 6e 74 20 63 73 20 29 3b 0d 0a 09 62 6f , int cs );...bo
04c0: 6f 6c 20 4f 70 65 6e 42 79 4d 79 73 65 6c 66 28 ol OpenByMyself(
04d0: 20 63 6f 6e 73 74 20 6b 69 3a 3a 50 61 74 68 26 const ki::Path&
04e0: 20 66 6e 2c 20 69 6e 74 20 63 73 2c 20 62 6f 6f fn, int cs, boo
04f0: 6c 20 6e 65 65 64 52 65 43 6f 6e 66 3d 74 72 75 l needReConf=tru
0500: 65 20 29 3b 0d 0a 0d 0a 09 62 6f 6f 6c 20 41 73 e );.....bool As
0510: 6b 54 6f 53 61 76 65 28 29 3b 0d 0a 09 62 6f 6f kToSave();...boo
0520: 6c 20 53 61 76 65 5f 73 68 6f 77 44 6c 67 49 66 l Save_showDlgIf
0530: 4e 65 65 64 65 64 28 29 3b 0d 0a 09 62 6f 6f 6c Needed();...bool
0540: 20 53 68 6f 77 53 61 76 65 44 6c 67 28 29 3b 0d ShowSaveDlg();.
0550: 0a 09 62 6f 6f 6c 20 53 61 76 65 28 29 3b 0d 0a ..bool Save();..
0560: 0d 0a 09 76 6f 69 64 20 4a 75 6d 70 54 6f 4c 69 ...void JumpToLi
0570: 6e 65 28 20 75 6c 6f 6e 67 20 6c 6e 20 29 3b 0d ne( ulong ln );.
0580: 0a 09 76 6f 69 64 20 53 65 74 75 70 53 75 62 4d ..void SetupSubM
0590: 65 6e 75 28 29 3b 0d 0a 09 76 6f 69 64 20 53 65 enu();...void Se
05a0: 74 75 70 4d 52 55 4d 65 6e 75 28 29 3b 0d 0a 0d tupMRUMenu();...
05b0: 0a 70 72 69 76 61 74 65 3a 0d 0a 0d 0a 09 62 6f .private:.....bo
05c0: 6f 6c 20 69 73 55 6e 74 69 74 6c 65 64 28 29 20 ol isUntitled()
05d0: 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 66 const { return f
05e0: 69 6c 65 6e 61 6d 65 5f 2e 6c 65 6e 28 29 3d 3d ilename_.len()==
05f0: 30 3b 20 7d 0d 0a 0d 0a 70 72 69 76 61 74 65 3a 0; }....private:
0600: 0d 0a 0d 0a 09 43 6f 6e 66 69 67 4d 61 6e 61 67 .....ConfigManag
0610: 65 72 20 20 20 20 63 66 67 5f 3b 0d 0a 09 53 65 er cfg_;...Se
0620: 61 72 63 68 4d 61 6e 61 67 65 72 20 20 20 20 73 archManager s
0630: 65 61 72 63 68 5f 3b 0d 0a 09 43 68 61 72 53 65 earch_;...CharSe
0640: 74 4c 69 73 74 26 20 20 20 20 20 63 68 61 72 53 tList& charS
0650: 65 74 73 5f 3b 0d 0a 0d 0a 09 65 64 69 74 77 69 ets_;.....editwi
0660: 6e 67 3a 3a 45 77 45 64 69 74 20 65 64 69 74 5f ng::EwEdit edit_
0670: 3b 0d 0a 09 47 70 53 74 42 61 72 20 20 20 20 20 ;...GpStBar
0680: 20 20 20 20 20 73 74 62 5f 3b 0d 0a 09 48 41 43 stb_;...HAC
0690: 43 45 4c 20 20 20 20 20 20 20 20 20 20 20 61 63 CEL ac
06a0: 63 65 6c 5f 3b 0d 0a 0d 0a 09 6b 69 3a 3a 50 61 cel_;.....ki::Pa
06b0: 74 68 20 20 20 20 20 20 20 20 20 66 69 6c 65 6e th filen
06c0: 61 6d 65 5f 3b 0d 0a 09 69 6e 74 20 20 20 20 20 ame_;...int
06d0: 20 20 20 20 20 20 20 20 20 63 73 69 5f 3b 0d 0a csi_;..
06e0: 09 69 6e 74 20 20 20 20 20 20 20 20 20 20 20 20 .int
06f0: 20 20 6c 62 5f 3b 0d 0a 09 69 6e 74 20 20 20 20 lb_;...int
0700: 20 20 20 20 20 20 20 20 20 20 77 72 61 70 5f 3b wrap_;
0710: 0d 0a 0d 0a 09 73 74 61 74 69 63 20 43 6c 73 4e .....static ClsN
0720: 61 6d 65 20 20 20 63 6c 61 73 73 4e 61 6d 65 5f ame className_
0730: 3b 0d 0a 0d 0a 70 72 69 76 61 74 65 3a 0d 0a 0d ;....private:...
0740: 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 63 72 65 ..void on_cre
0750: 61 74 65 28 20 43 52 45 41 54 45 53 54 52 55 43 ate( CREATESTRUC
0760: 54 2a 20 63 73 20 29 3b 0d 0a 09 4c 52 45 53 55 T* cs );...LRESU
0770: 4c 54 20 6f 6e 5f 6d 65 73 73 61 67 65 28 20 55 LT on_message( U
0780: 49 4e 54 20 6d 73 67 2c 20 57 50 41 52 41 4d 20 INT msg, WPARAM
0790: 77 70 2c 20 4c 50 41 52 41 4d 20 6c 70 20 29 3b wp, LPARAM lp );
07a0: 0d 0a 09 62 6f 6f 6c 20 20 20 20 6f 6e 5f 63 6f ...bool on_co
07b0: 6d 6d 61 6e 64 28 20 55 49 4e 54 20 69 64 2c 20 mmand( UINT id,
07c0: 48 57 4e 44 20 63 74 72 6c 20 29 3b 0d 0a 09 76 HWND ctrl );...v
07d0: 6f 69 64 20 20 20 20 6f 6e 5f 6e 65 77 66 69 6c oid on_newfil
07e0: 65 28 29 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f e();...void o
07f0: 6e 5f 6f 70 65 6e 66 69 6c 65 28 29 3b 0d 0a 09 n_openfile();...
0800: 76 6f 69 64 20 20 20 20 6f 6e 5f 72 65 6f 70 65 void on_reope
0810: 6e 66 69 6c 65 28 29 3b 0d 0a 09 76 6f 69 64 20 nfile();...void
0820: 20 20 20 6f 6e 5f 73 61 76 65 66 69 6c 65 28 29 on_savefile()
0830: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 73 ;...void on_s
0840: 61 76 65 66 69 6c 65 61 73 28 29 3b 0d 0a 09 76 avefileas();...v
0850: 6f 69 64 20 20 20 20 6f 6e 5f 65 78 69 74 28 29 oid on_exit()
0860: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 69 ;...void on_i
0870: 6e 69 74 6d 65 6e 75 28 20 48 4d 45 4e 55 20 6d nitmenu( HMENU m
0880: 65 6e 75 2c 20 62 6f 6f 6c 20 65 64 69 74 6d 65 enu, bool editme
0890: 6e 75 5f 6f 6e 6c 79 20 29 3b 0d 0a 09 76 6f 69 nu_only );...voi
08a0: 64 20 20 20 20 6f 6e 5f 64 72 6f 70 28 20 48 44 d on_drop( HD
08b0: 52 4f 50 20 68 64 20 29 3b 0d 0a 09 76 6f 69 64 ROP hd );...void
08c0: 20 20 20 20 6f 6e 5f 64 69 72 74 79 66 6c 61 67 on_dirtyflag
08d0: 5f 63 68 61 6e 67 65 28 20 62 6f 6f 6c 20 29 3b _change( bool );
08e0: 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 6d 6f ...void on_mo
08f0: 76 65 28 20 63 6f 6e 73 74 20 65 64 69 74 77 69 ve( const editwi
0900: 6e 67 3a 3a 44 50 6f 73 26 20 63 2c 20 63 6f 6e ng::DPos& c, con
0910: 73 74 20 65 64 69 74 77 69 6e 67 3a 3a 44 50 6f st editwing::DPo
0920: 73 26 20 73 20 29 3b 0d 0a 09 76 6f 69 64 20 20 s& s );...void
0930: 20 20 6f 6e 5f 6a 75 6d 70 28 29 3b 0d 0a 09 76 on_jump();...v
0940: 6f 69 64 20 20 20 20 6f 6e 5f 67 72 65 70 28 29 oid on_grep()
0950: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 63 ;...void on_c
0960: 6f 6e 66 69 67 28 29 3b 0d 0a 09 76 6f 69 64 20 onfig();...void
0970: 20 20 20 6f 6e 5f 64 61 74 65 74 69 6d 65 28 29 on_datetime()
0980: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 64 ;...void on_d
0990: 6f 63 74 79 70 65 28 20 69 6e 74 20 6e 6f 20 29 octype( int no )
09a0: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 6e ;...void on_n
09b0: 65 78 74 77 6e 64 28 29 3b 0d 0a 09 76 6f 69 64 extwnd();...void
09c0: 20 20 20 20 6f 6e 5f 70 72 65 76 77 6e 64 28 29 on_prevwnd()
09d0: 3b 0d 0a 09 76 6f 69 64 20 20 20 20 6f 6e 5f 6d ;...void on_m
09e0: 72 75 28 20 69 6e 74 20 6e 6f 20 29 3b 0d 0a 09 ru( int no );...
09f0: 76 6f 69 64 20 20 20 20 6f 6e 5f 73 74 61 74 75 void on_statu
0a00: 73 42 61 72 28 29 3b 0d 0a 09 62 6f 6f 6c 20 20 sBar();...bool
0a10: 20 20 50 72 65 54 72 61 6e 73 6c 61 74 65 4d 65 PreTranslateMe
0a20: 73 73 61 67 65 28 20 4d 53 47 2a 20 6d 73 67 20 ssage( MSG* msg
0a30: 29 3b 0d 0a 7d 3b 0d 0a 0d 0a 0d 0a 0d 0a 2f 2f );..};........//
0a40: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0a50: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0a60: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0a70: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
0a80: 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a 0d 0a 23 65 6e =========....#en
0a90: 64 69 66 20 2f 2f 20 5f 47 52 45 45 4e 50 41 44 dif // _GREENPAD
0aa0: 5f 4d 41 49 4e 5f 48 5f 0d 0a _MAIN_H_..