summaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorSimon Rettberg2014-05-05 14:10:56 +0200
committerSimon Rettberg2014-05-05 14:10:56 +0200
commit9cb78ede183571984e8b47ac912f7121fb83c975 (patch)
treed81e91a521d67b20be452d9fc987461588b65d7e /src/main.cpp
parentREFRESH!!!! (diff)
downloadvmchooser2-9cb78ede183571984e8b47ac912f7121fb83c975.tar.gz
vmchooser2-9cb78ede183571984e8b47ac912f7121fb83c975.tar.xz
vmchooser2-9cb78ede183571984e8b47ac912f7121fb83c975.zip
Fix layout, give proper name to bug report button, disable button as long as it's not doing anything, add --fullscreen option
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp45
1 files changed, 29 insertions, 16 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 87f30b9..30e30f3 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -145,26 +145,32 @@ int main(int argc, char *argv[]) {
}
QString size;
- if (cmdOptions.contains("size")) {
+ int width, height;
+ if (cmdOptions.contains("fullscreen")) {
+ size = "fullscreen";
+ } else if (settings.contains("fullscreen")) {
+ size = "fullscreen";
+ } else if (cmdOptions.contains("size")) {
size = cmdOptions.value("size");
} else if (settings.contains("size")) {
size = settings.value("size").toString();
}
- int width, height;
- QRegExp rx("^(\\d+)x(\\d+)$");
- if (rx.indexIn(size) != -1) {
- QStringList list = rx.capturedTexts();
- width = list.value(1).toInt();
- height = list.value(2).toInt();
- } else if (!size.isEmpty()) {
- std::cerr
- << a.translate("Console", "vmchooser: invalid size argument").toUtf8().data()
- << std::endl;
- return EXIT_FAILURE;
- } else {
- width = VMCHOOSER_DEFAULT_WIDTH;
- height = VMCHOOSER_DEFAULT_HEIGHT;
+ if (size != "fullscreen") {
+ QRegExp rx("^(\\d+)x(\\d+)$");
+ if (rx.indexIn(size) != -1) {
+ QStringList list = rx.capturedTexts();
+ width = list.value(1).toInt();
+ height = list.value(2).toInt();
+ } else if (!size.isEmpty()) {
+ std::cerr
+ << a.translate("Console", "vmchooser: invalid size argument").toUtf8().data()
+ << std::endl;
+ return EXIT_FAILURE;
+ } else {
+ width = VMCHOOSER_DEFAULT_WIDTH;
+ height = VMCHOOSER_DEFAULT_HEIGHT;
+ }
}
if (cmdOptions.contains("pool")) {
@@ -187,6 +193,8 @@ int main(int argc, char *argv[]) {
basePath = cmdOptions.value("base");
} else if (settings.contains("base")) {
basePath = settings.value("base").toString();
+ } else if (settings.contains("path")) { // Compatibility to v1.0
+ basePath = settings.value("path").toString();
}
/* read session files */
@@ -225,6 +233,12 @@ int main(int argc, char *argv[]) {
if (pvsEnabled)
w.showSettingsPVS();
+ QRect desktopRect = QApplication::desktop()->availableGeometry(&w);
+ if (size == "fullscreen") {
+ width = desktopRect.width();
+ height = desktopRect.height();
+ }
+
w.resize(width, height);
if (xsessions.size()) {
@@ -241,7 +255,6 @@ int main(int argc, char *argv[]) {
w.show();
// center dialog on primary screen
- QRect desktopRect = QApplication::desktop()->availableGeometry(&w);
QPoint center = desktopRect.center();
w.move(center.x() - w.width() * 0.5, center.y() - w.height() * 0.5);
a.setActiveWindow(&w);