~ctwm/ctwm/trunk

535.1.43 by Matthew Fuller
Whoops, add the file.
1
/*
2
 * Functions related to window occupation and workspaces.  Not the
3
 * workspace manager itself; that's off with the icon managers.
4
 */
5
6
#include "ctwm.h"
7
8
#include "functions_internal.h"
9
#include "screen.h"
10
#include "occupation.h"
535.1.44 by Matthew Fuller
Pull out the next block of occupation/workspace bits.
11
#include "workspace_utils.h"
535.1.43 by Matthew Fuller
Whoops, add the file.
12
13
535.1.45 by Matthew Fuller
Reorder and comment so these are grouped a little better.
14
15
/*
16
 * Setting occupation on a specific window.
17
 */
18
DFHANDLER(occupy)
19
{
20
	Occupy(tmp_win);
21
}
22
23
DFHANDLER(occupyall)
24
{
25
	OccupyAll(tmp_win);
26
}
27
28
29
/*
30
 * Selecting a window and passing a specific workspace as the function
31
 * arg.
32
 */
535.1.43 by Matthew Fuller
Whoops, add the file.
33
DFHANDLER(addtoworkspace)
34
{
35
	AddToWorkSpace(action, tmp_win);
36
}
37
38
DFHANDLER(removefromworkspace)
39
{
40
	RemoveFromWorkSpace(action, tmp_win);
41
}
42
43
DFHANDLER(toggleoccupation)
44
{
45
	ToggleOccupation(action, tmp_win);
46
}
47
535.1.45 by Matthew Fuller
Reorder and comment so these are grouped a little better.
48
49
/*
50
 * Pushing a window away from / pulling it to "here".
51
 */
52
DFHANDLER(vanish)
53
{
54
	WMgrRemoveFromCurrentWorkSpace(Scr->currentvs, tmp_win);
55
}
56
57
DFHANDLER(warphere)
58
{
59
	WMgrAddToCurrentWorkSpaceAndWarp(Scr->currentvs, action);
60
}
61
62
63
/*
64
 * Pushing a window away somewhere and potentially following it.
65
 */
535.1.43 by Matthew Fuller
Whoops, add the file.
66
DFHANDLER(movetonextworkspace)
67
{
68
	MoveToNextWorkSpace(Scr->currentvs, tmp_win);
69
}
70
71
DFHANDLER(movetoprevworkspace)
72
{
73
	MoveToPrevWorkSpace(Scr->currentvs, tmp_win);
74
}
75
76
DFHANDLER(movetonextworkspaceandfollow)
77
{
78
	MoveToNextWorkSpaceAndFollow(Scr->currentvs, tmp_win);
79
}
80
81
DFHANDLER(movetoprevworkspaceandfollow)
82
{
83
	MoveToPrevWorkSpaceAndFollow(Scr->currentvs, tmp_win);
84
}
85
535.1.44 by Matthew Fuller
Pull out the next block of occupation/workspace bits.
86
535.1.45 by Matthew Fuller
Reorder and comment so these are grouped a little better.
87
88
/*
89
 * Switching to other workspaces.
90
 */
535.1.44 by Matthew Fuller
Pull out the next block of occupation/workspace bits.
91
DFHANDLER(gotoworkspace)
92
{
591.1.26 by Matthew Fuller
Add some back-references to the developer manual for these functions
93
	/*
94
	 * n.b.: referenced in the Developer Manual in doc/devman/; if you
95
	 * make any changes here be sure to tweak that if necessary.
96
	 */
535.1.44 by Matthew Fuller
Pull out the next block of occupation/workspace bits.
97
	GotoWorkSpaceByName(Scr->currentvs, action);
98
}
99
100
DFHANDLER(prevworkspace)
101
{
102
	GotoPrevWorkSpace(Scr->currentvs);
103
}
104
105
DFHANDLER(nextworkspace)
106
{
107
	GotoNextWorkSpace(Scr->currentvs);
108
}
109
110
DFHANDLER(rightworkspace)
111
{
112
	GotoRightWorkSpace(Scr->currentvs);
113
}
114
115
DFHANDLER(leftworkspace)
116
{
117
	GotoLeftWorkSpace(Scr->currentvs);
118
}
119
120
DFHANDLER(upworkspace)
121
{
122
	GotoUpWorkSpace(Scr->currentvs);
123
}
124
125
DFHANDLER(downworkspace)
126
{
127
	GotoDownWorkSpace(Scr->currentvs);
128
}