コード例 #1
0
LLButton::LLButton(	const std::string& name, const LLRect& rect, const std::string& control_name, void (*click_callback)(void*), void *callback_data)
:	LLUICtrl(name, rect, TRUE, NULL, NULL),
	mClickedCallback( click_callback ),
	mMouseDownCallback( NULL ),
	mMouseUpCallback( NULL ),
	mHeldDownCallback( NULL ),
	mGLFont( NULL ),
	mMouseDownFrame( 0 ),
	mHeldDownDelay( 0.5f ),			// seconds until held-down callback is called
	mHeldDownFrameDelay( 0 ),
	mImageUnselected( NULL ),
	mImageSelected( NULL ),
	mImageHoverSelected( NULL ),
	mImageHoverUnselected( NULL ),
	mImageDisabled( NULL ),
	mImageDisabledSelected( NULL ),
	mToggleState( FALSE ),
	mIsToggle( FALSE ),
	mScaleImage( TRUE ),
	mDropShadowedText( TRUE ),
	mBorderEnabled( FALSE ),
	mFlashing( FALSE ),
	mHAlign( LLFontGL::HCENTER ),
	mLeftHPad( LLBUTTON_H_PAD ),
	mRightHPad( LLBUTTON_H_PAD ),
	mHoverGlowStrength(0.15f),
	mCurGlowStrength(0.f),
	mNeedsHighlight(FALSE),
	mCommitOnReturn(TRUE),
	mImagep( NULL )
{
	mUnselectedLabel = name;
	mSelectedLabel = name;

	setImageUnselected(std::string("button_enabled_32x128.tga"));
	setImageSelected(std::string("button_enabled_selected_32x128.tga"));
	setImageDisabled(std::string("button_disabled_32x128.tga"));
	setImageDisabledSelected(std::string("button_disabled_32x128.tga"));

	mImageColor = LLUI::sColorsGroup->getColor( "ButtonImageColor" );
	mDisabledImageColor = LLUI::sColorsGroup->getColor( "ButtonImageColor" );

	init(click_callback, callback_data, NULL, control_name);
}
コード例 #2
0
void			LLButton::setImageDisabled(const std::string &image_name)
{
	setImageDisabled(LLUI::getUIImage(image_name));
	mImageDisabledName = image_name;
}
コード例 #3
0
void LLButton::setDisabledImages( const std::string &image_name, const std::string &selected_name, const LLColor4& c )
{
	setImageDisabled(image_name);
	setImageDisabledSelected(selected_name);
	mDisabledImageColor = c;
}
コード例 #4
0
LLButton::LLButton(const std::string& name, const LLRect& rect, 
				   const std::string &unselected_image_name, 
				   const std::string &selected_image_name, 
				   const std::string& control_name,
				   void (*click_callback)(void*),
				   void *callback_data,
				   const LLFontGL *font,
				   const std::string& unselected_label, 
				   const std::string& selected_label )
:	LLUICtrl(name, rect, TRUE, NULL, NULL),
	mClickedCallback( click_callback ),
	mMouseDownCallback( NULL ),
	mMouseUpCallback( NULL ),
	mHeldDownCallback( NULL ),
	mGLFont( NULL ),
	mMouseDownFrame( 0 ),
	mHeldDownDelay( 0.5f ),			// seconds until held-down callback is called
	mHeldDownFrameDelay( 0 ),
	mImageUnselected( NULL ),
	mImageSelected( NULL ),
	mImageHoverSelected( NULL ),
	mImageHoverUnselected( NULL ),
	mImageDisabled( NULL ),
	mImageDisabledSelected( NULL ),
	mToggleState( FALSE ),
	mIsToggle( FALSE ),
	mScaleImage( TRUE ),
	mDropShadowedText( TRUE ),
	mBorderEnabled( FALSE ),
	mFlashing( FALSE ),
	mHAlign( LLFontGL::HCENTER ),
	mLeftHPad( LLBUTTON_H_PAD ), 
	mRightHPad( LLBUTTON_H_PAD ),
	mHoverGlowStrength(0.25f),
	mCurGlowStrength(0.f),
	mNeedsHighlight(FALSE),
	mCommitOnReturn(TRUE),
	mImagep( NULL )
{
	mUnselectedLabel = unselected_label;
	mSelectedLabel = selected_label;

	// by default, disabled color is same as enabled
	mImageColor = LLUI::sColorsGroup->getColor( "ButtonImageColor" );
	mDisabledImageColor = LLUI::sColorsGroup->getColor( "ButtonImageColor" );

	if( unselected_image_name != "" )
	{
		// user-specified image - don't use fixed borders unless requested
		setImageUnselected(unselected_image_name);
		setImageDisabled(unselected_image_name);
		
		mDisabledImageColor.mV[VALPHA] = 0.5f;
		mScaleImage = FALSE;
	}
	else
	{
		setImageUnselected(std::string("button_enabled_32x128.tga"));
		setImageDisabled(std::string("button_disabled_32x128.tga"));
	}

	if( selected_image_name != "" )
	{
		// user-specified image - don't use fixed borders unless requested
		setImageSelected(selected_image_name);
		setImageDisabledSelected(selected_image_name);

		mDisabledImageColor.mV[VALPHA] = 0.5f;
		mScaleImage = FALSE;
	}
	else
	{
		setImageSelected(std::string("button_enabled_selected_32x128.tga"));
		setImageDisabledSelected(std::string("button_disabled_32x128.tga"));
	}

	init(click_callback, callback_data, font, control_name);
}
コード例 #5
0
bool HeroIcon::init( const std::string & heroname, const ccMenuCallback & callback )
{
	do
	{
		CC_BREAK_IF( !MenuItemImageWithText::initWithNormalImage( empty, empty, empty, empty, empty, callback ) );
		std::string cancel = k::resourceGameSceneFolder + "icon_x_10.png";
		std::string normal = k::resourceGameSceneFolder + heroname + "_2" + ext;
		std::string selected = k::resourceGameSceneFolder + heroname + "_3" + ext;
		std::string disabled = k::resourceGameSceneFolder + heroname + "_1" + ext;

		_unselectedHero = normal;
		_selectedHero = selected;
		
		std::string timer = k::resourceGameSceneFolder + "hero_progressbar1" + ext;
		std::string timer_bg = k::resourceGameSceneFolder + "hero_progressbar2" + ext;

		setImageNormal( normal );
		setImageDisabled( disabled );

		auto progress = Node::create();
		Sprite * image = ImageManager::sprite( timer );
		CC_BREAK_IF( !image );
		_timer = ProgressTimer::create( image );
		CC_BREAK_IF( !_timer );

		image->setAnchorPoint( Point::ANCHOR_BOTTOM_LEFT );
		_timer->setType( ProgressTimer::Type::BAR );
		_timer->setMidpoint( Point( 0.0f, 0.5f ) );
		_timer->setBarChangeRate( Point( 1, 0 ) );
		_timer->setPercentage( 0 );
		
		progress->addChild( ImageManager::sprite( timer_bg ) );
		progress->addChild( _timer, 1 );

		addChild( progress );
		Point pos;
		pos.x = getNormalImage()->getContentSize().width / 2;
		pos.y = -image->getContentSize().height * 0.7f;
		progress->setPosition( pos );
		
		if( 0 )
		{
			_cancelImage = ImageManager::sprite( cancel );
			getNormalImage()->addChild( _cancelImage );
			_cancelImage->setPosition( Point( getNormalImage()->getContentSize() ) - Point( 5, 5 ) );
			_cancelImage->setVisible( false );
			_cancelImage->setScale( 1.5f );
			
			auto s1 = ScaleTo::create( 0.4f, 1.2f );
			auto s2 = ScaleTo::create( 0.4f, 1.0f );
			auto d = DelayTime::create( 1 );
			auto s = Sequence::create( s1, s2, d, nullptr );
			auto action = RepeatForever::create( EaseInOut::create( s, 0.5f ) );
			_cancelImage->runAction( action );
		}


		return true;
	}
	while( false );
	return false;
}
コード例 #6
0
ファイル: llbutton.cpp プロジェクト: Boy/netbook
void			LLButton::setImageDisabled(const LLString &image_name)
{
	setImageDisabled(image_name.empty() ? NULL : LLUI::getUIImageByName(image_name));
	mImageDisabledName = image_name;
}