Fixed searchclients to handle new Google URLs correctly; added GUI
[movie-schedule] / src / ui / contextdialog.cpp
index 6122238..330f1da 100644 (file)
 #include "data/cinema.h"
 #include "data/movie.h"
 #include "utils/assertedlocker.h"
 #include "data/cinema.h"
 #include "data/movie.h"
 #include "utils/assertedlocker.h"
+#include "uiutils.h"
 
 #include <QLayoutItem>
 
 #include <QLayoutItem>
+#include <QDesktopWidget>
 
 ContextDialog::ContextDialog(CinemaSchedule *cinema_schedule, QWidget *parent) :
         QDialog(parent),
 
 ContextDialog::ContextDialog(CinemaSchedule *cinema_schedule, QWidget *parent) :
         QDialog(parent),
@@ -40,6 +42,8 @@ ContextDialog::ContextDialog(CinemaSchedule *cinema_schedule, QWidget *parent) :
     connect(ui->find_route_to_theater, SIGNAL(clicked()), this, SLOT(FindRouteToTheater()));
     connect(ui->search_movie_in_web, SIGNAL(clicked()), this, SLOT(SearchMovieInWeb()));
     connect(ui->search_theater_in_web, SIGNAL(clicked()), this, SLOT(SearchTheaterInWeb()));
     connect(ui->find_route_to_theater, SIGNAL(clicked()), this, SLOT(FindRouteToTheater()));
     connect(ui->search_movie_in_web, SIGNAL(clicked()), this, SLOT(SearchMovieInWeb()));
     connect(ui->search_theater_in_web, SIGNAL(clicked()), this, SLOT(SearchTheaterInWeb()));
+    connect(QApplication::desktop(), SIGNAL(resized(int)), this, SLOT(Rotate()));
+    Rotate();
 }
 
 ContextDialog::~ContextDialog()
 }
 
 ContextDialog::~ContextDialog()
@@ -98,10 +102,11 @@ void ContextDialog::removeAllWidgets()
 
 void ContextDialog::addWidget(QWidget *widget)
 {
 
 void ContextDialog::addWidget(QWidget *widget)
 {
+    bool landscape = UiUtils::IsLandscape();
     widget->setVisible(true);
     ui->gridLayout->addWidget(widget, _next_row, _next_column, 1, 1);
     ++_next_column;
     widget->setVisible(true);
     ui->gridLayout->addWidget(widget, _next_row, _next_column, 1, 1);
     ++_next_column;
-    if (_next_column > 1) {
+    if (_next_column > (landscape ? 1 : 0)) {
         ++_next_row;
         _next_column = 0;
     }
         ++_next_row;
         _next_column = 0;
     }
@@ -136,3 +141,10 @@ void ContextDialog::SearchTheaterInWeb()
     hide();
     emit SearchTheaterInWeb(_schedule_entry_key.GetCinemaKey());
 }
     hide();
     emit SearchTheaterInWeb(_schedule_entry_key.GetCinemaKey());
 }
+
+void ContextDialog::Rotate()
+{
+    if (isVisible()) {
+        Show(_schedule_entry_key);
+    }
+}