Ejemplo n.º 1
0
bool LxBaseWin::_initWidget()
{
	setObjectName("lomoxchildwin");

	do
	{
		LxOption* pOption = lxCoreApp->getOption();

		if (!pOption)
			break;

		Qt::WindowFlags winType = Qt::Dialog;

		if (pOption->getNeedShowChildNcFrame())
		{
			winType |= Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint;
		}
		else
		{
			winType |= Qt::FramelessWindowHint;
			winType |= Qt::WindowSystemMenuHint;//不加不出现窗口 modify by KeoJam 2015-04-19
			this->setAttribute(Qt::WA_TranslucentBackground, true);
			this->setStyleSheet("#lomoxwin{background-color:transparent} QMenu{background-color:none;}");
		}

		if (pOption->getChildWindowStaysOnTopHint())
			winType |= Qt::WindowStaysOnTopHint;
		this->setWindowFlags(winType);
#ifdef Q_OS_WIN
		SetWindowLong((HWND)this->winId(), GWL_EXSTYLE, WS_EX_APPWINDOW);//add  by KeoJam 强制子窗口最小化显示在任务
#endif
		QWebPage* ptrWebPage = new LxWebPage(this);
		this->setPage(ptrWebPage);//add  by KeoJam 启用自定义LxWebPage用于Permission处理
		//QPointer<QWebPage> ptrWebPage = this->page();
		QPointer<LxWebPluginFactory> ptrPlugin = new LxWebPluginFactory(ptrWebPage);
		ptrWebPage->setPluginFactory(ptrPlugin);
		//ptrWebPage->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);//LinkDelegationPolicy::DelegateAllLinks
	} while (false);


	return true;
}
Ejemplo n.º 2
0
bool LxMainWindow::_initWidget()
{
	setObjectName("lomoxwin");
	setAttribute(Qt::WA_DeleteOnClose);//主窗口关闭时析构

	do 
	{
		LxOption* pOption = lxCoreApp->getOption();

		if (!pOption)
			break;

		Qt::WindowFlags winType = Qt::Dialog ;

		if (pOption->getNeedShowMainNcFrame())
		{
			winType |=  Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint;
		}
		else
		{
			winType |= Qt::FramelessWindowHint;
			winType |= Qt::WindowSystemMenuHint;//不加不出现窗口 modify by KeoJam 2015-04-19
			this->setAttribute(Qt::WA_TranslucentBackground, true);
			this->setStyleSheet("#lomoxwin{background-color:transparent} QMenu{background-color:none;}");
		}

		if (pOption->getMainWindowStaysOnTopHint())
			winType |= Qt::WindowStaysOnTopHint;

		this->setWindowFlags(winType);

		QWebPage* ptrWebPage = new LxWebPage(this);
		this->setPage(ptrWebPage);//add  by KeoJam 启用自定义LxWebPage用于Permission处理
		//QPointer<QWebPage> ptrWebPage = this->page();
		QPointer<LxWebPluginFactory> ptrPlugin = new LxWebPluginFactory(ptrWebPage);
		ptrWebPage->setPluginFactory(ptrPlugin);
		//ptrWebPage->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);//LinkDelegationPolicy::DelegateAllLinks
	} while (false);


	return true;
}
Ejemplo n.º 3
0
void QWebPageProto::setPluginFactory(QWebPluginFactory * factory)
{
  QWebPage *item = qscriptvalue_cast<QWebPage*>(thisObject());
  if (item)
    item->setPluginFactory(factory);
}