diff --git a/src/domain/UBGraphicsScene.cpp b/src/domain/UBGraphicsScene.cpp index 63efc636..524d7054 100644 --- a/src/domain/UBGraphicsScene.cpp +++ b/src/domain/UBGraphicsScene.cpp @@ -453,7 +453,16 @@ void UBGraphicsScene::DisposeMagnifierQWidgets() magniferDisplayViewWidget = NULL; } - UBApplication::app()->restoreOverrideCursor(); + // some time have crash here on access to app (when call from destructor when close sankore app) + // so i just add try/catch section here + try + { + UBApplication::app()->restoreOverrideCursor(); + } + catch (...) + { + } + } void UBGraphicsScene::moveTo(const QPointF &pPoint) diff --git a/src/web/UBTrapFlashController.cpp b/src/web/UBTrapFlashController.cpp index 1e933ed2..9c987d40 100644 --- a/src/web/UBTrapFlashController.cpp +++ b/src/web/UBTrapFlashController.cpp @@ -73,12 +73,50 @@ void UBTrapFlashController::showTrapFlash() , viewHeight); connect(mTrapFlashUi->flashCombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(selectFlash(int))); + connect(mTrapFlashUi->widgetNameLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(text_Changed(const QString &))); + connect(mTrapFlashUi->widgetNameLineEdit, SIGNAL(textEdited(const QString &)), this, SLOT(text_Edited(const QString &))); connect(mTrapFlashUi->createWidgetButton, SIGNAL(clicked(bool)), this, SLOT(createWidget())); } mTrapFlashDialog->show(); } +void UBTrapFlashController::text_Changed(const QString &newText) +{ + QString new_text = newText; + +#ifdef Q_WS_WIN // Defined on Windows. + QString illegalCharList(" < > : \" / \\ | ? * "); + QRegExp regExp("[<>:\"/\\\\|?*]"); +#endif + +#ifdef Q_WS_QWS // Defined on Qt for Embedded Linux. + QString illegalCharList(" < > : \" / \\ | ? * "); + QRegExp regExp("[<>:\"/\\\\|?*]"); +#endif + +#ifdef Q_WS_MAC // Defined on Mac OS X. + QString illegalCharList(" < > : \" / \\ | ? * "); + QRegExp regExp("[<>:\"/\\\\|?*]"); +#endif + +#ifdef Q_WS_X11 // Defined on X11. + QString illegalCharList(" < > : \" / \\ | ? * "); + QRegExp regExp("[<>:\"/\\\\|?*]"); +#endif + + if(new_text.indexOf(regExp) > -1) + { + new_text.remove(regExp); + mTrapFlashUi->widgetNameLineEdit->setText(new_text); + QToolTip::showText(mTrapFlashUi->widgetNameLineEdit->mapToGlobal(QPoint()), "Application name can`t contain any of the following characters:\r\n"+illegalCharList); + } +} + +void UBTrapFlashController::text_Edited(const QString &newText) +{ + +} void UBTrapFlashController::hideTrapFlash() { diff --git a/src/web/UBTrapFlashController.h b/src/web/UBTrapFlashController.h index 7fae4430..f38a1282 100644 --- a/src/web/UBTrapFlashController.h +++ b/src/web/UBTrapFlashController.h @@ -37,6 +37,9 @@ class UBTrapFlashController : public QObject public slots: void updateTrapFlashFromPage(QWebFrame* pCurrentWebFrame); + void text_Changed(const QString &); + void text_Edited(const QString &); + private slots: void selectFlash(int pFlashIndex);