Further changes for child like behaviour

This commit is contained in:
Mohammed Nafees 2014-04-24 17:18:24 +05:30
parent ba7c696786
commit dd74ea64e7
5 changed files with 16 additions and 12 deletions

View file

@ -14,12 +14,12 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="src/Application.cpp" line="3749"/> <location filename="src/Application.cpp" line="3742"/>
<source>Open Script</source> <source>Open Script</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="src/Application.cpp" line="3750"/> <location filename="src/Application.cpp" line="3743"/>
<source>JavaScript Files (*.js)</source> <source>JavaScript Files (*.js)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View file

@ -625,7 +625,7 @@ void Application::resizeGL(int width, int height) {
updateProjectionMatrix(); updateProjectionMatrix();
glLoadIdentity(); glLoadIdentity();
if (_runningScriptsWidget->toggleViewAction()->isChecked()) { if (_runningScriptsWidgetWasVisible) {
_runningScriptsWidget->setGeometry(_window->geometry().topLeft().x(), _runningScriptsWidget->setGeometry(_window->geometry().topLeft().x(),
_window->geometry().topLeft().y(), _window->geometry().topLeft().y(),
_runningScriptsWidget->width(), _window->height()); _runningScriptsWidget->width(), _window->height());
@ -3636,19 +3636,15 @@ void Application::reloadAllScripts() {
void Application::manageRunningScriptsWidgetVisibility(bool shown) void Application::manageRunningScriptsWidgetVisibility(bool shown)
{ {
if (_runningScriptsWidgetWasVisible && shown) { if (_runningScriptsWidgetWasVisible && shown) {
_runningScriptsWidget->setWindowFlags(Qt::SubWindow | Qt::FramelessWindowHint |
Qt::WindowStaysOnTopHint);
_runningScriptsWidget->show(); _runningScriptsWidget->show();
} else { } else if (_runningScriptsWidgetWasVisible && !shown) {
_runningScriptsWidget->setWindowFlags(Qt::SubWindow | Qt::FramelessWindowHint);
_runningScriptsWidget->hide(); _runningScriptsWidget->hide();
} }
} }
void Application::toggleRunningScriptsWidget() void Application::toggleRunningScriptsWidget()
{ {
if (_runningScriptsWidget->toggleViewAction()->isChecked()) { if (_runningScriptsWidgetWasVisible) {
_runningScriptsWidget->toggleViewAction()->setChecked(false);
_runningScriptsWidget->hide(); _runningScriptsWidget->hide();
_runningScriptsWidgetWasVisible = false; _runningScriptsWidgetWasVisible = false;
} else { } else {
@ -3657,7 +3653,6 @@ void Application::toggleRunningScriptsWidget()
_runningScriptsWidget->setGeometry(_window->geometry().topLeft().x(), _runningScriptsWidget->setGeometry(_window->geometry().topLeft().x(),
_window->geometry().topLeft().y(), _window->geometry().topLeft().y(),
_runningScriptsWidget->width(), _window->height()); _runningScriptsWidget->width(), _window->height());
_runningScriptsWidget->toggleViewAction()->setChecked(true);
_runningScriptsWidget->show(); _runningScriptsWidget->show();
_runningScriptsWidgetWasVisible = true; _runningScriptsWidgetWasVisible = true;
} }

View file

@ -22,11 +22,13 @@ MainWindow::MainWindow(QWidget *parent) :
void MainWindow::moveEvent(QMoveEvent *e) void MainWindow::moveEvent(QMoveEvent *e)
{ {
emit windowGeometryChanged(QRect(e->pos(), size())); emit windowGeometryChanged(QRect(e->pos(), size()));
QMainWindow::moveEvent(e);
} }
void MainWindow::resizeEvent(QResizeEvent *e) void MainWindow::resizeEvent(QResizeEvent *e)
{ {
emit windowGeometryChanged(QRect(QPoint(x(), y()), e->size())); emit windowGeometryChanged(QRect(QPoint(x(), y()), e->size()));
QMainWindow::resizeEvent(e);
} }
void MainWindow::showEvent(QShowEvent *e) void MainWindow::showEvent(QShowEvent *e)
@ -34,6 +36,7 @@ void MainWindow::showEvent(QShowEvent *e)
if (e->spontaneous()) { if (e->spontaneous()) {
emit windowShown(true); emit windowShown(true);
} }
QMainWindow::showEvent(e);
} }
void MainWindow::hideEvent(QHideEvent *e) void MainWindow::hideEvent(QHideEvent *e)
@ -41,6 +44,7 @@ void MainWindow::hideEvent(QHideEvent *e)
if (e->spontaneous()) { if (e->spontaneous()) {
emit windowShown(false); emit windowShown(false);
} }
QMainWindow::hideEvent(e);
} }
void MainWindow::changeEvent(QEvent *e) void MainWindow::changeEvent(QEvent *e)
@ -61,4 +65,5 @@ void MainWindow::changeEvent(QEvent *e)
emit windowShown(false); emit windowShown(false);
} }
} }
QMainWindow::changeEvent(e);
} }

View file

@ -16,7 +16,7 @@
#include "Application.h" #include "Application.h"
RunningScriptsWidget::RunningScriptsWidget(QDockWidget *parent) : RunningScriptsWidget::RunningScriptsWidget(QWidget *parent) :
QDockWidget(parent), QDockWidget(parent),
ui(new Ui::RunningScriptsWidget), ui(new Ui::RunningScriptsWidget),
_mousePressed(false), _mousePressed(false),
@ -105,6 +105,7 @@ void RunningScriptsWidget::mousePressEvent(QMouseEvent *e)
_mousePressed = false; _mousePressed = false;
_mousePosition = QPoint(); _mousePosition = QPoint();
} }
QWidget::mousePressEvent(e);
} }
void RunningScriptsWidget::mouseMoveEvent(QMouseEvent *e) void RunningScriptsWidget::mouseMoveEvent(QMouseEvent *e)
@ -116,6 +117,7 @@ void RunningScriptsWidget::mouseMoveEvent(QMouseEvent *e)
move(newPosition.x(), _boundary.y()); move(newPosition.x(), _boundary.y());
} }
} }
QWidget::mouseMoveEvent(e);
} }
void RunningScriptsWidget::mouseReleaseEvent(QMouseEvent *e) void RunningScriptsWidget::mouseReleaseEvent(QMouseEvent *e)
@ -124,6 +126,7 @@ void RunningScriptsWidget::mouseReleaseEvent(QMouseEvent *e)
_mousePressed = false; _mousePressed = false;
_mousePosition = QPoint(); _mousePosition = QPoint();
} }
QWidget::mouseReleaseEvent(e);
} }
void RunningScriptsWidget::keyPressEvent(QKeyEvent *e) void RunningScriptsWidget::keyPressEvent(QKeyEvent *e)
@ -188,6 +191,7 @@ void RunningScriptsWidget::keyPressEvent(QKeyEvent *e)
default: default:
break; break;
} }
QWidget::keyPressEvent(e);
} }
void RunningScriptsWidget::paintEvent(QPaintEvent *) void RunningScriptsWidget::paintEvent(QPaintEvent *)

View file

@ -20,7 +20,7 @@ class RunningScriptsWidget : public QDockWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit RunningScriptsWidget(QDockWidget *parent = 0); explicit RunningScriptsWidget(QWidget *parent = 0);
~RunningScriptsWidget(); ~RunningScriptsWidget();
void setRunningScripts(const QStringList& list); void setRunningScripts(const QStringList& list);