#include "cEWMHVDesktopTools.h"
#include <iostream>
bool rotateScreen(bool bDirection, int iScreenNumber, int iScreenCount){
cEWMHVDesktopTools aEWMHVDesktopTools;
std::cout << "initially on " << iScreenNumber << std::endl;
if (bDirection == true){
if (iScreenCount <= iScreenNumber){
iScreenNumber = -1;
}
std::cout << "++" << iScreenNumber << std::endl;
aEWMHVDesktopTools.setCurrentDesktop(++iScreenNumber);
} else{
if (iScreenNumber <= 0){
iScreenNumber = iScreenCount;
}
std::cout << "--" << iScreenNumber << std::endl;
aEWMHVDesktopTools.setCurrentDesktop(--iScreenNumber);
}
std::cout << "switching to " << iScreenNumber << std::endl;
return true;
};
int main(int iArguments, char *sArguments[]){
cEWMHVDesktopTools aEWMHVDesktopTools;
int iVDesktopNumber = 0;
int iScreenCount = 0;
std::cout << "Trying to request number of desktops by using an EWMH message..." << std::endl;
if (aEWMHVDesktopTools.probeWM()){
iScreenCount = aEWMHVDesktopTools.getDesktopCount();
iVDesktopNumber = aEWMHVDesktopTools.getCurrentDesktopID();
std::cout << "actualDestopCount = " << iScreenCount << std::endl;
std::cout << "actualCurrentDesktopID = " << iVDesktopNumber << std::endl;
}
else {
std::cout << "We are not in an EWMH environment - sorry, you can't use this tool here!" << std::endl;
return (-1);
}
if (iArguments == 2){
rotateScreen(false, iVDesktopNumber, iScreenCount);
}
else
rotateScreen(true, iVDesktopNumber, iScreenCount);
return 1;
}