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


C++ LLScriptFloater::savePosition方法代码示例

本文整理汇总了C++中LLScriptFloater::savePosition方法的典型用法代码示例。如果您正苦于以下问题:C++ LLScriptFloater::savePosition方法的具体用法?C++ LLScriptFloater::savePosition怎么用?C++ LLScriptFloater::savePosition使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在LLScriptFloater的用法示例。


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

示例1: show

LLScriptFloater* LLScriptFloater::show(const LLUUID& notification_id)
{
	LLScriptFloater* floater = LLFloaterReg::getTypedInstance<LLScriptFloater>("script_floater", notification_id);
	floater->setNotificationId(notification_id);
	floater->createForm(notification_id);

	//LLDialog(LLGiveInventory and LLLoadURL) should no longer steal focus (see EXT-5445)
	floater->setAutoFocus(FALSE);

	LLScriptFloaterManager::e_object_type floaterType=LLScriptFloaterManager::getObjectType(notification_id);

	// for some reason an inventory offer comes back as OBJ_UNKNOWN -Zi
	if(floaterType==LLScriptFloaterManager::OBJ_UNKNOWN ||
	   floaterType==LLScriptFloaterManager::OBJ_SCRIPT)
	{
		floater->setSavePosition(true);
		if(gSavedSettings.getBOOL("ShowScriptDialogsTopRight"))
		{
			// undock the dialog
			floater->setDocked(false,true);
			LLRect pos=floater->getRect();

			S32 width=pos.getWidth();
			S32 height=pos.getHeight();
			pos.setOriginAndSize(gViewerWindow->getWorldViewWidthScaled()-width,
								 gViewerWindow->getWorldViewHeightScaled()-height,
								 width,height);
			floater->setRect(pos);
			floater->savePosition();
		}
		// do this only for inventory offers -Zi
		else if(floaterType==LLScriptFloaterManager::OBJ_UNKNOWN)
		{
			// undock the dialog
			floater->setDocked(false,true);
			LLRect pos=floater->getRect();

			S32 width=pos.getWidth();
			S32 height=pos.getHeight();

			pos.setOriginAndSize(gViewerWindow->getWorldViewWidthScaled()-width,
								 gViewerWindow->getWorldViewHeightScaled()-height,
								 width,height);

			floater->setRect(pos);
			floater->savePosition();
		}

		floater->restorePosition();
	}
	else
	{
		floater->dockToChiclet(true);
	}

	//LLDialog(LLGiveInventory and LLLoadURL) should no longer steal focus (see EXT-5445)
	LLFloaterReg::showTypedInstance<LLScriptFloater>("script_floater", notification_id, FALSE);

	return floater;
}
开发者ID:JohnMcCaffery,项目名称:Armadillo-Phoenix,代码行数:60,代码来源:llscriptfloater.cpp

示例2: onRemoveNotification

void LLScriptFloaterManager::onRemoveNotification(const LLUUID& notification_id)
{
	if(notification_id.isNull())
	{
		llwarns << "Invalid notification ID" << llendl;
		return;
	}

	// remove related chiclet
	if (LLChicletBar::instanceExists())
	{
		LLChicletBar::getInstance()->getChicletPanel()->removeChiclet(notification_id);
	}

	LLIMWellWindow* im_well_window = LLIMWellWindow::findInstance();
	if (im_well_window)
	{
		im_well_window->removeObjectRow(notification_id);
	}

	mNotifications.erase(notification_id);

	// close floater
	LLScriptFloater* floater = LLFloaterReg::findTypedInstance<LLScriptFloater>("script_floater", notification_id);
	if(floater)
	{
		floater->savePosition();
		floater->setNotificationId(LLUUID::null);
		floater->closeFloater();
	}
}
开发者ID:JohnMcCaffery,项目名称:Armadillo-Phoenix,代码行数:31,代码来源:llscriptfloater.cpp


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