Hex Artifact Content

Not logged in

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_..