mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-05 09:15:34 +08:00
refs #640, find COverlayMessagesFrame in widget hierarchy
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
*/
|
||||
|
||||
#include "guiutility.h"
|
||||
#include "overlaymessagesframe.h"
|
||||
#include "blackcore/corefacade.h"
|
||||
#include "blackcore/cookiemanager.h"
|
||||
#include "blackmisc/filelogger.h"
|
||||
@@ -160,6 +161,23 @@ namespace BlackGui
|
||||
return typeId;
|
||||
}
|
||||
|
||||
COverlayMessagesFrame *CGuiUtility::nextOverlayMessageFrame(QWidget *widget, int maxLevels)
|
||||
{
|
||||
if (!widget || maxLevels < 1) { return nullptr; }
|
||||
COverlayMessagesFrame *o = qobject_cast<COverlayMessagesFrame *> (widget);
|
||||
if (o) { return o; }
|
||||
int cl = 0;
|
||||
QWidget *cw = widget->parentWidget();
|
||||
while (cl < maxLevels && cw)
|
||||
{
|
||||
o = qobject_cast<COverlayMessagesFrame *> (cw);
|
||||
if (o) { return o; }
|
||||
cl++;
|
||||
cw = cw->parentWidget();
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
const QString &CGuiUtility::swiftJsonDragAndDropMimeType()
|
||||
{
|
||||
static const QString m("text/json/swift");
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
|
||||
namespace BlackGui
|
||||
{
|
||||
class COverlayMessagesFrame;
|
||||
|
||||
//! GUI utilities
|
||||
class BLACKGUI_EXPORT CGuiUtility
|
||||
{
|
||||
@@ -65,6 +67,9 @@ namespace BlackGui
|
||||
//! Meta type id from dropped data
|
||||
static int metaTypeIdFromSwiftDragAndDropData(const QMimeData *mime);
|
||||
|
||||
//! Find next BlackGui::COverlayMessages QFrame
|
||||
static COverlayMessagesFrame *nextOverlayMessageFrame(QWidget *widget, int maxLevels = 10);
|
||||
|
||||
//! Metatype
|
||||
static const QString &swiftJsonDragAndDropMimeType();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user