40
40
class OutputDevices
45
void setCurrentOutput(unsigned int outputNum);
47
CompOutput& getCurrentOutputDev() { return outputDevs[currentOutputDev]; }
49
bool hasOverlappingOutputs() const { return overlappingOutputs; }
51
void computeWorkAreas(CompRect& workArea, bool& workAreaChanged,
52
CompRegion& allWorkArea, const CompWindowList& windows);
54
const CompOutput& getOutputDev(unsigned int outputNum) const
55
{ return outputDevs[outputNum]; }
46
void setCurrentOutput (unsigned int outputNum);
48
CompOutput& getCurrentOutputDev ()
50
return outputDevs[currentOutputDev];
53
bool hasOverlappingOutputs () const
55
return overlappingOutputs;
58
void computeWorkAreas (CompRect &workArea,
59
bool &workAreaChanged,
60
CompRegion &allWorkArea,
61
const CompWindowList &windows);
63
const CompOutput &getOutputDev (unsigned int outputNum) const
65
return outputDevs[outputNum];
57
68
// TODO breaks encapsulation horribly ought to be const at least
58
69
// Even better, use begin() and end() return const_iterators
59
70
// BUT this is exported directly through API - which makes changing
61
CompOutput::vector& getOutputDevs() { return outputDevs; }
63
int outputDeviceForGeometry(const CompWindow::Geometry& gm, int strategy,
64
CompSize* screen) const;
65
void updateOutputDevices(CoreOptions& coreOptions, CompSize* screen);
67
void setGeometryOnDevice(unsigned int nOutput, int x, int y,
68
const int width, const int height);
69
void adoptDevices(unsigned int nOutput, CompSize* screen);
72
CompOutput::vector &getOutputDevs ()
77
int outputDeviceForGeometry (const CompWindow::Geometry &gm,
79
CompSize *screen) const;
81
void updateOutputDevices (CoreOptions &coreOptions,
84
void setGeometryOnDevice (unsigned int nOutput,
90
void adoptDevices (unsigned int nOutput,
72
static CompRect computeWorkareaForBox(const CompRect& box,
73
const CompWindowList& windows);
95
static CompRect computeWorkareaForBox (const CompRect &box,
96
const CompWindowList &windows);
75
98
CompOutput::vector outputDevs;
76
99
bool overlappingOutputs;
100
int currentOutputDev;
80
103
} // namespace core