219 lines
6.7 KiB
Plaintext
219 lines
6.7 KiB
Plaintext
MarriageManualPicDiy = class("MarriageManualPicDiy", ContainerView)
|
|
autoImport("PicutureWallSyncPanel")
|
|
|
|
|
|
MarriageManualPicDiy.ViewType = UIViewType.PopUpLayer
|
|
|
|
MarriageManualPicDiy.BgTextureName = "marry_bg_bottom1";
|
|
|
|
function MarriageManualPicDiy:Init()
|
|
self:AddViewEvts()
|
|
self:initView()
|
|
self:initData()
|
|
end
|
|
|
|
function MarriageManualPicDiy:AddViewEvts()
|
|
self:AddListenEvt(WeddingWallPicManager.WeddingPicDownloadCompleteCallback,self.photoCompleteCallback);
|
|
self:AddListenEvt(WeddingWallPicManager.WeddingPicDownloadProgressCallback,self.photoProgressCallback);
|
|
self:AddListenEvt(WeddingWallPicManager.WeddingPicDownloadErrorCallback,self.photoErrorCallback);
|
|
self:AddListenEvt(ServiceEvent.WeddingCCmdUpdateWeddingManualCCmd,self.UpdateCurPhoto);
|
|
end
|
|
|
|
function MarriageManualPicDiy:PhotoCmdFrameActionPhotoCmd( note )
|
|
end
|
|
|
|
function MarriageManualPicDiy:UpdateCurPhoto( note )
|
|
|
|
-- local serverData = Game.PictureWallManager:getServerDataByFrameId(self.frameId)
|
|
-- if(serverData)then
|
|
-- if(self.serverData and Game.PictureWallManager:checkSamePicture(self.serverData.photoData,serverData.photoData))then
|
|
-- return
|
|
-- end
|
|
-- self.serverData = serverData
|
|
-- local photoData = self.serverData.photoData
|
|
-- self.anglez = photoData.anglez
|
|
if(self.curPhotoIndex ~= self.weddingProxy.manualPhotoIndex)then
|
|
self:getPhoto()
|
|
self.curPhotoIndex = self.weddingProxy.manualPhotoIndex
|
|
|
|
end
|
|
-- else
|
|
-- local texture = self.photo.mainTexture
|
|
-- self.photo.mainTexture = nil
|
|
-- Object.DestroyImmediate(texture)
|
|
-- end
|
|
self:updateBtnState()
|
|
end
|
|
|
|
function MarriageManualPicDiy:updateBtnState()
|
|
if(not self.weddingProxy.manualPhotoIndex or self.weddingProxy.manualPhotoIndex ==0 )then
|
|
self.uploadBtn.text = ZhString.WeddingPictureDiyUploadTitle
|
|
self:Show(self.defPhoto)
|
|
PictureManager.Instance:SetWedding(MarriageManualPicDiy.BgTextureName, self.defPhotoTx);
|
|
else
|
|
self:Hide(self.defPhoto)
|
|
PictureManager.Instance:UnLoadWedding(MarriageManualPicDiy.BgTextureName,self.defPhotoTx);
|
|
self.uploadBtn.text = ZhString.WeddingPictureDiyReplace
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:changePhotoSize()
|
|
|
|
local frameData = Table_ScenePhotoFrame[self.frameId]
|
|
local dir = 0
|
|
if(frameData)then
|
|
dir = frameData.Dir
|
|
end
|
|
if(dir == 1)then
|
|
self.photo.width = 400
|
|
self.photo.height = 600
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:photoCompleteCallback( note )
|
|
-- body
|
|
local data = note.body
|
|
local index = data.index
|
|
-- Game.PictureWallManager:log("MarriageManualPicDiy:photoCompleteCallback1",photoData.sourceid,photoData.source,photoData.charid)
|
|
if(index == self.weddingProxy.manualPhotoIndex)then
|
|
self:completeCallback(data.byte)
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:photoProgressCallback( note )
|
|
-- body
|
|
local data = note.body
|
|
local id = data.id
|
|
local index = data.index
|
|
-- Game.PictureWallManager:log("MarriageManualPicDiy:photoCompleteCallback1",photoData.sourceid,photoData.source,photoData.charid)
|
|
if(index == self.weddingProxy.manualPhotoIndex)then
|
|
self:progressCallback(data.progress)
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:photoErrorCallback( note )
|
|
-- body
|
|
helplog("photoErrorCallback")
|
|
end
|
|
|
|
function MarriageManualPicDiy:initData( )
|
|
-- body
|
|
self.weddingProxy = WeddingProxy.Instance
|
|
self.curPhotoIndex = self.weddingProxy.manualPhotoIndex
|
|
self:initDefaultTextureSize()
|
|
-- self:initScreenShotData()
|
|
-- self:changePhotoSize()
|
|
-- end
|
|
self:updateBtnState()
|
|
|
|
LeanTween.cancel(self.gameObject)
|
|
LeanTween.delayedCall(self.gameObject,0.1,function ( )
|
|
self:getPhoto()
|
|
end)
|
|
end
|
|
|
|
function MarriageManualPicDiy:initView( )
|
|
-- body
|
|
self.photo = self:FindComponent("photo",UITexture)
|
|
self.progress = self:FindComponent("loadProgress",UILabel)
|
|
self:Hide(self.progress.gameObject)
|
|
|
|
local marriageDes = self:FindComponent("marriageDes",UILabel)
|
|
marriageDes.text = ZhString.WeddingPictureDiyDes
|
|
local title = self:FindComponent("title",UILabel)
|
|
title.text = ZhString.WeddingPictureDiyUploadTitle
|
|
|
|
self.uploadBtn = self:FindComponent("btnLabel",UILabel)
|
|
self.defPhoto = self:FindGO("defPhoto")
|
|
self.defPhotoTx = self:FindComponent("defPhoto",UITexture)
|
|
|
|
self:AddButtonEvent("actionBtn",function ( )
|
|
PicutureWallSyncPanel.ViewType = UIViewType.Lv4PopUpLayer
|
|
self:sendNotification(UIEvent.JumpPanel, {view = PanelConfig.PicutureWallSyncPanel,viewdata = {frameId = 0,from = PicutureWallSyncPanel.PictureSyncFrom.WeddingCertificateDiy}})
|
|
end)
|
|
end
|
|
|
|
function MarriageManualPicDiy:initDefaultTextureSize( )
|
|
-- body
|
|
self.originWith = self.photo.width
|
|
self.originHeight = self.photo.height
|
|
end
|
|
|
|
function MarriageManualPicDiy:setTexture( texture )
|
|
-- body
|
|
-- local anglez = 0
|
|
-- if(self.anglez >=45 and self.anglez <= 135)then
|
|
-- anglez = 90
|
|
-- elseif(self.anglez >= 225 and self.anglez <= 315)then
|
|
-- anglez = 270
|
|
-- elseif(self.anglez >=135 and self.anglez <=225)then
|
|
-- anglez = 180
|
|
-- end
|
|
|
|
-- tempVector3:Set(0, 0, anglez)
|
|
-- tempRot.eulerAngles = tempVector3
|
|
-- self.PhotoCt.transform.localRotation = tempRot
|
|
|
|
local orginRatio = self.originWith / self.originHeight
|
|
local textureRatio = 0
|
|
-- if(anglez == 90 or anglez == 270)then
|
|
-- textureRatio = texture.height / texture.width
|
|
-- else
|
|
textureRatio = texture.width / texture.height
|
|
-- end
|
|
local wRatio = math.min(orginRatio,textureRatio) == orginRatio
|
|
local height = self.originHeight
|
|
local width = self.originWith
|
|
if(wRatio)then
|
|
height = self.originWith/textureRatio
|
|
else
|
|
width = self.originHeight*textureRatio
|
|
end
|
|
|
|
-- if(anglez == 90 or anglez == 270)then
|
|
-- self.photo.width = height
|
|
-- self.photo.height = width
|
|
-- else
|
|
self.photo.width = width
|
|
self.photo.height = height
|
|
-- end
|
|
Object.DestroyImmediate(self.photo.mainTexture)
|
|
self.photo.mainTexture = texture
|
|
end
|
|
|
|
function MarriageManualPicDiy:getPhoto( )
|
|
-- body
|
|
if(self.weddingProxy.manualPhotoIndex and self.weddingProxy.manualPhotoIndex ~= 0)then
|
|
Game.WeddingWallPicManager:GetWeddingPicture(self.weddingProxy.manualPhotoIndex,self.weddingProxy.manualPhotoTime)
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:progressCallback( progress )
|
|
-- body
|
|
self:Show(self.progress.gameObject)
|
|
progress = progress >=1 and 1 or progress
|
|
local value = progress*100
|
|
value = math.floor(value)
|
|
self.progress.text = value.."%"
|
|
end
|
|
|
|
function MarriageManualPicDiy:completeCallback(bytes )
|
|
-- body
|
|
self:Hide(self.progress.gameObject)
|
|
if(bytes)then
|
|
local texture = Texture2D(0,0,TextureFormat.RGB24,false)
|
|
local bRet = ImageConversion.LoadImage(texture, bytes)
|
|
if( bRet)then
|
|
self:setTexture(texture)
|
|
else
|
|
Object.DestroyImmediate(texture)
|
|
end
|
|
end
|
|
end
|
|
|
|
function MarriageManualPicDiy:OnExit()
|
|
-- body
|
|
PictureManager.Instance:UnLoadWedding(MarriageManualPicDiy.BgTextureName,self.defPhotoTx);
|
|
LeanTween.cancel(self.gameObject)
|
|
Object.DestroyImmediate(self.photo.mainTexture)
|
|
end |