{
if (mLayerData->mHasMask) {
for (auto i : mLayerData->mMasks) {
- mMasks.push_back(std::unique_ptr<LOTMaskItem>(new LOTMaskItem(i.get())));
+ mMasks.push_back(std::make_unique<LOTMaskItem>(i.get()));
}
}
}
void LOTSolidLayerItem::updateContent()
{
if (!mRenderNode) {
- mRenderNode = std::unique_ptr<VDrawable>(new VDrawable());
+ mRenderNode = std::make_unique<VDrawable>();
mRenderNode->mType = VDrawable::Type::Fill;
mRenderNode->mFlag |= VDrawable::DirtyState::All;
}
{
for(auto paintItem : list) {
bool sameGroup = (externalCount-- > 0) ? false : true;
- mNodeList.push_back(std::unique_ptr<VDrawable>(new VDrawable()));
+ mNodeList.push_back(std::make_unique<VDrawable>());
mRenderList.push_back(LOTRenderNode(this, paintItem, mNodeList.back().get(), sameGroup));
}
}
bool init = false;
if (!grad) {
if (mGradientType == 1)
- grad = std::unique_ptr<VLinearGradient>(new VLinearGradient(0,0,0,0));
+ grad = std::make_unique<VLinearGradient>(0,0,0,0);
else
- grad = std::unique_ptr<VRadialGradient>(new VRadialGradient(0,0,0,0,0,0));
+ grad = std::make_unique<VRadialGradient>(0,0,0,0,0,0);
grad->mSpread = VGradient::Spread::Pad;
init = true;
}
LottieLoader loader;
if (loader.load(path)) {
mModel = loader.model();
- mCompItem = std::unique_ptr<LOTCompItem>(new LOTCompItem(mModel.get()));
+ mCompItem = std::make_unique<LOTCompItem>(mModel.get());
setPos(0);
return true;
}
#include"vdebug.h"
#define VECTOR_FALLTHROUGH
+/*
+ * keep this till we move the code to c++14
+ */
+namespace std {
+template<typename T, typename ...Args>
+std::unique_ptr<T> make_unique( Args&& ...args )
+{
+ return std::unique_ptr<T>( new T( std::forward<Args>(args)... ) );
+}
+}
#include<atomic>
class RefCount