ReactOS
0.4.16-dev-106-g10b08aa
pane.h
Go to the documentation of this file.
1
/*
2
* Copyright 2003, 2004 Martin Fuchs
3
*
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* This library is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with this library; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
20
//
21
// Explorer clone
22
//
23
// pane.h
24
//
25
// Martin Fuchs, 23.07.2003
26
//
27
28
29
#define IDW_TREE_LEFT 3
30
#define IDW_TREE_RIGHT 6
31
#define IDW_HEADER_LEFT 2
32
#define IDW_HEADER_RIGHT 5
33
34
35
enum
COLUMN_FLAGS
{
36
COL_TYPE
= 0x0001,
37
COL_SIZE
= 0x0002,
38
COL_DATE
= 0x0004,
39
COL_TIME
= 0x0008,
40
COL_ATTRIBUTES
= 0x0010,
41
COL_DOSNAMES
= 0x0020,
42
COL_INDEX
= 0x0040,
43
COL_LINKS
= 0x0080,
44
COL_CONTENT
= 0x0100,
45
COL_ALL
=
COL_TYPE
|
COL_SIZE
|
COL_DATE
|
COL_TIME
|
COL_ATTRIBUTES
|
COL_DOSNAMES
|
COL_INDEX
|
COL_LINKS
|
COL_CONTENT
46
};
47
48
50
struct
OutputWorker
51
{
52
OutputWorker
();
53
54
void
init_output
(
HWND
hwnd
);
55
void
output_text
(
LPDRAWITEMSTRUCT
dis,
int
* positions,
int
col,
LPCTSTR
str
,
DWORD
flags
);
56
void
output_tabbed_text
(
LPDRAWITEMSTRUCT
dis,
int
* positions,
int
col,
LPCTSTR
str
);
57
void
output_number
(
LPDRAWITEMSTRUCT
dis,
int
* positions,
int
col,
LPCTSTR
str
);
58
59
SIZE
_spaceSize
;
60
TCHAR
_num_sep
;
61
HFONT
_hfont
;
62
};
63
64
66
struct
Pane
:
public
SubclassedWindow
67
{
68
typedef
SubclassedWindow
super
;
69
70
Pane
(
HWND
hparent,
int
id
,
int
id_header,
Entry
* rool,
bool
treePane,
int
visible_cols);
71
~Pane
();
72
73
#define COLUMNS 12
74
int
_widths
[
COLUMNS
];
75
int
_positions
[
COLUMNS
+1];
76
77
WindowHandle
_hwndHeader
;
78
79
Entry
*
_root
;
80
Entry
*
_cur
;
81
82
COLORREF
_clrCompressed
;
83
84
int
_visible_cols
;
85
bool
_treePane
;
86
87
void
init
();
88
void
set_header
();
89
bool
create_header
(
HWND
parent
,
int
id
);
90
91
bool
calc_widths
(
bool
anyway);
92
void
calc_single_width
(
int
col);
93
void
draw_item
(
LPDRAWITEMSTRUCT
dis,
Entry
*
entry
,
int
calcWidthCol=-1);
94
95
int
insert_entries
(
Entry
*
dir
,
int
idx
=-1);
96
BOOL
command
(
UINT
cmd
);
97
virtual
int
Notify
(
int
id
,
NMHDR
* pnmh);
98
99
protected
:
100
virtual
LRESULT
WndProc
(
UINT
nmsg,
WPARAM
wparam
,
LPARAM
lparam
);
101
102
void
calc_width
(
LPDRAWITEMSTRUCT
dis,
int
col,
LPCTSTR
str
);
103
void
calc_tabbed_width
(
LPDRAWITEMSTRUCT
dis,
int
col,
LPCTSTR
str
);
104
struct
MainFrameBase
*
get_frame
();
105
106
protected
:
107
HIMAGELIST
_himl
;
108
OutputWorker
_out_wrkr
;
109
};
110
lparam
@ lparam
Definition:
SystemMenu.c:31
wparam
@ wparam
Definition:
SystemMenu.c:30
dir
unsigned int dir
Definition:
maze.c:112
idx
unsigned int idx
Definition:
utils.c:41
parent
r parent
Definition:
btrfs.c:3010
BOOL
unsigned int BOOL
Definition:
ntddk_ex.h:94
DWORD
unsigned long DWORD
Definition:
ntddk_ex.h:95
flags
GLbitfield flags
Definition:
glext.h:7161
void
Definition:
nsiface.idl:2307
entry
uint32_t entry
Definition:
isohybrid.c:63
HFONT
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
UINT
unsigned int UINT
Definition:
ndis.h:50
COLUMNS
#define COLUMNS
Definition:
pane.h:73
COLUMN_FLAGS
COLUMN_FLAGS
Definition:
pane.h:35
COL_DATE
@ COL_DATE
Definition:
pane.h:38
COL_ALL
@ COL_ALL
Definition:
pane.h:45
COL_CONTENT
@ COL_CONTENT
Definition:
pane.h:44
COL_LINKS
@ COL_LINKS
Definition:
pane.h:43
COL_ATTRIBUTES
@ COL_ATTRIBUTES
Definition:
pane.h:40
COL_INDEX
@ COL_INDEX
Definition:
pane.h:42
COL_DOSNAMES
@ COL_DOSNAMES
Definition:
pane.h:41
COL_TIME
@ COL_TIME
Definition:
pane.h:39
COL_TYPE
@ COL_TYPE
Definition:
pane.h:36
COL_SIZE
@ COL_SIZE
Definition:
pane.h:37
str
const WCHAR * str
Definition:
rpc_transport.c:2724
Entry
base of all file and directory entries
Definition:
entries.h:83
MainFrameBase
Explorer frame window base class.
Definition:
mainframe.h:42
OutputWorker
Worker for drawing contents of file lists in child pane.
Definition:
pane.h:51
OutputWorker::output_number
void output_number(LPDRAWITEMSTRUCT dis, int *positions, int col, LPCTSTR str)
Definition:
pane.cpp:910
OutputWorker::output_text
void output_text(LPDRAWITEMSTRUCT dis, int *positions, int col, LPCTSTR str, DWORD flags)
Definition:
pane.cpp:881
OutputWorker::init_output
void init_output(HWND hwnd)
Definition:
pane.cpp:865
OutputWorker::OutputWorker
OutputWorker()
Definition:
pane.cpp:860
OutputWorker::_spaceSize
SIZE _spaceSize
Definition:
pane.h:59
OutputWorker::_num_sep
TCHAR _num_sep
Definition:
pane.h:60
OutputWorker::_hfont
HFONT _hfont
Definition:
pane.h:61
OutputWorker::output_tabbed_text
void output_tabbed_text(LPDRAWITEMSTRUCT dis, int *positions, int col, LPCTSTR str)
Definition:
pane.cpp:894
Pane
child window pane for displaying file lists
Definition:
pane.h:67
Pane::calc_width
void calc_width(LPDRAWITEMSTRUCT dis, int col, LPCTSTR str)
Definition:
pane.cpp:632
Pane::Notify
virtual int Notify(int id, NMHDR *pnmh)
Definition:
pane.cpp:786
Pane::create_header
bool create_header(HWND parent, int id)
Definition:
pane.cpp:127
Pane::_visible_cols
int _visible_cols
Definition:
pane.h:84
Pane::_cur
Entry * _cur
Definition:
pane.h:80
Pane::insert_entries
int insert_entries(Entry *dir, int idx=-1)
Definition:
pane.cpp:658
Pane::calc_widths
bool calc_widths(bool anyway)
Definition:
pane.cpp:178
Pane::_widths
int _widths[COLUMNS]
Definition:
pane.h:74
Pane::_hwndHeader
WindowHandle _hwndHeader
Definition:
pane.h:77
Pane::_root
Entry * _root
Definition:
pane.h:79
Pane::~Pane
~Pane()
Definition:
pane.cpp:92
Pane::_positions
int _positions[COLUMNS+1]
Definition:
pane.h:75
Pane::super
SubclassedWindow super
Definition:
pane.h:68
Pane::draw_item
void draw_item(LPDRAWITEMSTRUCT dis, Entry *entry, int calcWidthCol=-1)
Definition:
pane.cpp:298
Pane::WndProc
virtual LRESULT WndProc(UINT nmsg, WPARAM wparam, LPARAM lparam)
Definition:
pane.cpp:98
Pane::_treePane
bool _treePane
Definition:
pane.h:85
Pane::_out_wrkr
OutputWorker _out_wrkr
Definition:
pane.h:108
Pane::get_frame
struct MainFrameBase * get_frame()
Definition:
pane.cpp:990
Pane::set_header
void set_header()
Definition:
pane.cpp:693
Pane::_clrCompressed
COLORREF _clrCompressed
Definition:
pane.h:82
Pane::calc_single_width
void calc_single_width(int col)
Definition:
pane.cpp:726
Pane::init
void init()
Definition:
pane.cpp:153
Pane::_himl
HIMAGELIST _himl
Definition:
pane.h:107
Pane::calc_tabbed_width
void calc_tabbed_width(LPDRAWITEMSTRUCT dis, int col, LPCTSTR str)
Definition:
pane.cpp:642
SubclassedWindow
Definition:
window.h:177
_IMAGELIST
Definition:
imagelist.c:84
_SIZE
Definition:
kdterminal.h:26
cmd
Definition:
ftp_var.h:139
command
Definition:
tnmain.cpp:425
tagDRAWITEMSTRUCT
Definition:
winuser.h:3087
tagNMHDR
Definition:
winuser.h:3159
hwnd
_In_ LONG _In_ HWND hwnd
Definition:
winddi.h:4023
LPARAM
LONG_PTR LPARAM
Definition:
windef.h:208
LRESULT
LONG_PTR LRESULT
Definition:
windef.h:209
WPARAM
UINT_PTR WPARAM
Definition:
windef.h:207
COLORREF
DWORD COLORREF
Definition:
windef.h:300
TCHAR
char TCHAR
Definition:
xmlstorage.h:189
LPCTSTR
const CHAR * LPCTSTR
Definition:
xmlstorage.h:193
modules
rosapps
applications
explorer-old
shell
pane.h
Generated on Tue Oct 8 2024 06:09:40 for ReactOS by
1.9.6