예제 #1
0
파일: mkStyle.cpp 프로젝트: JanChou/kiui
	InkStyle& Style::subskin(WidgetState state)
	{
		for(SubSkin& skin : reverse_adapt(mSubskins))
			if((state & skin.mState) == skin.mState)
				return skin.mSkin;
		return mSkin;
	}
예제 #2
0
파일: mkStyle.cpp 프로젝트: JanChou/kiui
	InkStyle& Style::copy(WidgetState state, InkStyle& original, bool inherit)
	{
		for(SubSkin& skin : reverse_adapt(mSubskins))
			if(state == skin.mState)
			{
				skin.mSkin.copy(original, inherit);
				return skin.mSkin;
			}

		mSubskins.emplace_back(state);
		mSubskins.back().mSkin.copy(original, inherit);
		return mSubskins.back().mSkin;
	}
예제 #3
0
파일: mkLayer.cpp 프로젝트: asdlei00/kiui
	Frame* Layer::pinpoint(float x, float y, bool opaque)
	{
		Frame* result = nullptr;
		for(Layer* layer : reverse_adapt(d_layers))
			if(layer->visible() && layer->frameType() != LAYER3D)
			{
				result = layer->pinpoint(x, y, opaque);
				if(result)
					return result;
			}

		result = Stripe::pinpoint(x, y, opaque);
		return result;
	}