Subversion Repositories Kolibri OS

Rev

Rev 4428 | Rev 6562 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4428 Rev 5598
-
 
1
#ifndef INCLUDE_CLIPBOARD_H
-
 
2
#define INCLUDE_CLIPBOARD_H
-
 
3
 
-
 
4
#ifndef INCLUDE_KOLIBRI_H
-
 
5
#include "../lib/kolibri.h"
-
 
6
#endif
-
 
7
 
1
struct buffer_data
8
struct buffer_data
2
{
9
{
3
	dword	size;
10
	dword	size;
4
	dword	type;
11
	dword	type;
5
	dword	encoding;
12
	dword	encoding;
6
	byte	buffer_data[4096];
13
	byte	buffer_data[4096];
7
};
14
};
8
 
15
 
9
 
16
 
10
struct Clipboard {
17
struct Clipboard {
11
	buffer_data data;
18
	buffer_data data;
12
	dword GetSlotCount();
19
	dword GetSlotCount();
13
	dword GetSlotData( ECX);
20
	dword GetSlotData( ECX);
14
	dword SetSlotData( EDX, ESI);
21
	dword SetSlotData( EDX, ESI);
15
	dword DelLastSlot();
22
	dword DelLastSlot();
16
	dword ResetBlockingBuffer();
23
	dword ResetBlockingBuffer();
17
};
24
};
18
 
25
 
19
dword Clipboard::GetSlotCount()
26
dword Clipboard::GetSlotCount()
20
{
27
{
21
	$mov eax, 54 
28
	$mov eax, 54 
22
	$mov ebx, 0
29
	$mov ebx, 0
23
	$int 0x40
30
	$int 0x40
24
}
31
}
25
 
32
 
26
dword Clipboard::GetSlotData( ECX) //ECX = slot number
33
dword Clipboard::GetSlotData( ECX) //ECX = slot number
27
{
34
{
28
	$mov eax, 54 
35
	$mov eax, 54 
29
	$mov ebx, 1
36
	$mov ebx, 1
30
	$int 0x40
37
	$int 0x40
31
}
38
}
32
 
39
 
33
dword Clipboard::SetSlotData( ECX, EDX) //ECX = data size, EDX - pointer to data
40
dword Clipboard::SetSlotData( ECX, EDX) //ECX = data size, EDX - pointer to data
34
{
41
{
35
	$mov eax, 54 
42
	$mov eax, 54 
36
	$mov ebx, 2
43
	$mov ebx, 2
37
	$int 0x40
44
	$int 0x40
38
}
45
}
39
 
46
 
40
dword Clipboard::DelLastSlot()
47
dword Clipboard::DelLastSlot()
41
{
48
{
42
	$mov eax, 54 
49
	$mov eax, 54 
43
	$mov ebx, 3
50
	$mov ebx, 3
44
	$int 0x40
51
	$int 0x40
45
}
52
}
46
 
53
 
47
dword Clipboard::ResetBlockingBuffer()
54
dword Clipboard::ResetBlockingBuffer()
48
{
55
{
49
	$mov eax, 54 
56
	$mov eax, 54 
50
	$mov ebx, 3
57
	$mov ebx, 3
51
	$int 0x40
58
	$int 0x40
52
}
59
}
53
60
 
-
 
61
#endif
-
 
62
54
63