当前位置: 首页>>代码示例>>C++>>正文


C++ util::DefaultHookProxy_ptr类代码示例

本文整理汇总了C++中util::DefaultHookProxy_ptr的典型用法代码示例。如果您正苦于以下问题:C++ DefaultHookProxy_ptr类的具体用法?C++ DefaultHookProxy_ptr怎么用?C++ DefaultHookProxy_ptr使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了DefaultHookProxy_ptr类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: addItem

	void HistoryModel::addItem (QString title, QString url,
			QDateTime date, QObject *browserWidget)
	{
		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy);
		emit hookAddingToHistory (proxy, title, url, date, browserWidget);
		if (proxy->IsCancelled ())
			return;

		QVariantList result = proxy->GetReturnValue ().toList ();
		int size = result.size ();
		if (size >= 1)
			title = result.at (0).toString ();
		if (size >= 2)
			url = result.at (1).toString ();
		if (size >= 3)
			date = result.at (2).toDateTime ();

		HistoryItem item =
		{
			title,
			date,
			url
		};
		Core::Instance ().GetStorageBackend ()->AddToHistory (item);
	}
开发者ID:MellonQ,项目名称:leechcraft,代码行数:25,代码来源:historymodel.cpp

示例2: setBase

			void URLCompletionModel::setBase (const QString& str)
			{
				Valid_ = false;
				Base_ = str;
			
				Populate ();

				Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy);
				int size = Items_.size ();
				emit hookURLCompletionNewStringRequested (proxy, this, str, size);
				if (proxy->IsCancelled ())
				{
					int newSize = Items_.size ();
					if (newSize == size)
						Items_.clear ();
					else
					{
						history_items_t newItems;
						std::copy (Items_.begin (), Items_.begin () + newSize - size,
								std::back_inserter (newItems));
						Items_ = newItems;
					}
				}

				emit baseUpdated (sender ());
			}
开发者ID:grio,项目名称:leechcraft,代码行数:26,代码来源:urlcompletionmodel.cpp

示例3: handleAddToFavorites

	void Core::handleAddToFavorites (QString title, QString url)
	{
		Util::DefaultHookProxy_ptr proxy = Util::DefaultHookProxy_ptr (new Util::DefaultHookProxy ());
		emit hookAddToFavoritesRequested (proxy, title, url);
		if (proxy->IsCancelled ())
			return;
		
		proxy->FillValue ("title", title);
		proxy->FillValue ("url", url);

		std::auto_ptr<AddToFavoritesDialog> dia (new AddToFavoritesDialog (title,
					url,
					qApp->activeWindow ()));

		bool result = false;
		do
		{
			if (dia->exec () == QDialog::Rejected)
				return;

			result = FavoritesModel_->addItem (dia->GetTitle (),
					url, dia->GetTags ());
		}
		while (!result);
	}
开发者ID:Zereal,项目名称:leechcraft,代码行数:25,代码来源:core.cpp

示例4: RemoveTab

	void SeparateTabWidget::RemoveTab (int index)
	{
		if (index >= WidgetCount ())
		{
			qWarning () << Q_FUNC_INFO
					<< "invalid index"
					<< index;
			return;
		}

		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy);
		const auto winId = Core::Instance ().GetRootWindowsManager ()->GetWindowIndex (Window_);
		emit hookTabIsRemoving (proxy, index, winId);
		if (proxy->IsCancelled ())
			return;

		const auto widget = Widget (index);

		if (widget == PreviousWidget_)
			PreviousWidget_ = 0;
		else if (widget == CurrentWidget_)
			CurrentWidget_ = 0;

		if (auto itw = qobject_cast<ITabWidget*> (widget))
			if (auto bar = itw->GetToolBar ())
				RemoveWidgetFromSeparateTabWidget (bar);

		if (!CurrentWidget_)
		{
			int nextIdx = -1;
			switch (MainTabBar_->selectionBehaviorOnRemove ())
			{
			case QTabBar::SelectLeftTab:
				nextIdx = index - 1;
				if (nextIdx == -1 && WidgetCount () > 1)
					nextIdx = 1;
				break;
			case QTabBar::SelectRightTab:
				nextIdx = index == WidgetCount () - 1 ?
						WidgetCount () - 2 :
						index + 1;
				break;
			default:
				nextIdx = IndexOf (PreviousWidget_);
				break;
			}

			if (nextIdx >= 0)
				setCurrentTab (nextIdx);
		}

		MainStackedWidget_->removeWidget (widget);
		MainTabBar_->removeTab (index);

		TabNames_.removeAt (index);

		widget->setParent (0);
	}
开发者ID:ForNeVeR,项目名称:leechcraft,代码行数:58,代码来源:separatetabwidget.cpp

示例5: RestoreSession

	void Core::RestoreSession (bool ask)
	{
		if (!SavedSessionState_.size ()) ;
		else if (ask)
		{
			std::auto_ptr<RestoreSessionDialog> dia (new RestoreSessionDialog (Core::Instance ().GetProxy ()->GetMainWindow ()));
			bool added = false;
			for (int i = 0; i < SavedSessionState_.size (); ++i)
			{
				QPair<QString, QString> pair = SavedSessionState_.at (i);
				QString title = pair.first;
				QString url = pair.second;
				if (url.isEmpty ())
					continue;
				dia->AddPair (title, url);
				added = true;
			}

			if (added &&
					dia->exec () == QDialog::Accepted)
			{
				RestoredURLs_ = dia->GetSelectedURLs ();
				QTimer::singleShot (2000, this, SLOT (restorePages ()));
			}
			else
				saveSession ();
		}
		else
		{
			for (int i = 0; i < SavedSessionState_.size (); ++i)
			{
				QString url = SavedSessionState_.at (i).second;
				if (url.isEmpty ())
					continue;
				RestoredURLs_ << i;
			}
			QTimer::singleShot (2000, this, SLOT (restorePages ()));
		}
		
		QList<QUrl> toRestore;
		Q_FOREACH (int idx, RestoredURLs_)
			toRestore << SavedSessionState_ [idx].second;
		
		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy);
		emit hookSessionRestoreScheduled (proxy,
				toRestore);
		if (proxy->IsCancelled ())
		{
			RestoredURLs_.clear ();
			SavedSessionState_.clear ();
		}
	}
开发者ID:Zereal,项目名称:leechcraft,代码行数:52,代码来源:core.cpp

示例6: GetIcon

	QIcon Core::GetIcon (const QUrl& url) const
	{
		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy ());
		emit hookIconRequested (proxy, url);
		if (proxy->IsCancelled ())
			return proxy->GetReturnValue ().value<QIcon> ();

		QIcon result = QWebSettings::iconForUrl (url);
		if (!result.isNull ())
			return result;

		QUrl test;
		test.setScheme (url.scheme ());
		test.setHost (url.host ());

		result = QWebSettings::iconForUrl (test);
		if (!result.isNull ())
			return result;

		return QWebSettings::webGraphic (QWebSettings::DefaultFrameIconGraphic);
	}
开发者ID:Zereal,项目名称:leechcraft,代码行数:21,代码来源:core.cpp

示例7: stream

	bool CLModel::CheckHookDnDEntry2Entry (const QMimeData *mime, int row, const QModelIndex& parent)
	{
		if (row != -1 ||
				!mime->hasFormat (CLEntryFormat) ||
				parent.data (Core::CLREntryType).value<Core::CLEntryType> () != Core::CLETContact)
			return false;

		QDataStream stream (mime->data (CLEntryFormat));
		QString sid;
		stream >> sid;

		QObject *source = Core::Instance ().GetEntry (sid);
		if (!source)
			return false;

		QObject *target = parent.data (Core::CLREntryObject).value<QObject*> ();

		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy);
		emit hookDnDEntry2Entry (proxy, source, target);
		return proxy->IsCancelled ();
	}
开发者ID:panter-dsd,项目名称:leechcraft,代码行数:21,代码来源:clmodel.cpp

示例8: GetUserAgent

	QString Core::GetUserAgent (const QUrl& url, const QWebPage *page) const
	{
		Util::DefaultHookProxy_ptr proxy (new Util::DefaultHookProxy ());
		emit hookUserAgentForUrlRequested (proxy, url, page);
		if (proxy->IsCancelled ())
		{
			qDebug () << proxy->GetReturnValue ().toString ();
			return proxy->GetReturnValue ().toString ();
		}

		return QString ();

		/*
#if defined (Q_OS_WINCE) || defined (Q_OS_WIN32) || defined (Q_OS_MSDOS)
		QString winver = "unknown Windows";
		switch (QSysInfo::windowsVersion ())
		{
			case QSysInfo::WV_32s:
				winver = "Windows 3.1 with Win32s";
				break;
			case QSysInfo::WV_95:
				winver = "Windows 95";
				break;
			case QSysInfo::WV_98:
				winver = "Windows 98";
				break;
			case QSysInfo::WV_Me:
				winver = "Windows ME";
				break;
			case QSysInfo::WV_NT:
				winver = "Windows NT";
				break;
			case QSysInfo::WV_2000:
				winver = "Windows 2000";
				break;
			case QSysInfo::WV_XP:
				winver = "Windows XP";
				break;
			case QSysInfo::WV_2003:
				winver = "Windows 2003";
				break;
			case QSysInfo::WV_VISTA:
				winver = "Windows Vista";
				break;
			case QSysInfo::WV_WINDOWS7:
				winver = "Windows 7";
				break;
			case QSysInfo::WV_CE:
				winver = "Windows CE";
				break;
			case QSysInfo::WV_CENET:
				winver = "Windows CE .NET";
				break;
			case QSysInfo::WV_CE_5:
				winver = "Windows CE 5.x";
				break;
			case QSysInfo::WV_CE_6:
				winver = "Windows CE 6.x";
				break;
			case QSysInfo::WV_DOS_based:
				winver = "unknown DOS-based";
				break;
			case QSysInfo::WV_NT_based:
				winver = "unknown NT-based";
				break;
			case QSysInfo::WV_CE_based:
				winver = "unknown CE-based";
				break;
		}
#elif defined (Q_OS_DARWIN)
		QString macver;
		switch (QSysInfo::MacintoshVersion)
		{
			case QSysInfo::MV_CHEETAH:
				macver = "Cheetah";
				break;
			case QSysInfo::MV_PUMA:
				macver = "Puma";
				break;
			case QSysInfo::MV_JAGUAR:
				macver = "Jaguar";
				break;
			case QSysInfo::MV_PANTHER:
				macver = "Panther";
				break;
			case QSysInfo::MV_TIGER:
				macver = "Tiger";
				break;
			case QSysInfo::MV_LEOPARD:
				macver = "Leopard";
				break;
			case QSysInfo::MV_SNOWLEOPARD:
				macver = "Snow Leopard";
				break;
			default:
				macver = "unknown Mac OS ";
				break;
		}
#endif
		return QString ("LeechCraft (%1; %2; %3; %4) (LeechCraft/Poshuku %5; WebKit %6/%7)")
//.........这里部分代码省略.........
开发者ID:Zereal,项目名称:leechcraft,代码行数:101,代码来源:core.cpp


注:本文中的util::DefaultHookProxy_ptr类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。