|
- require("luaScript.Tools.Effect.UIEffectNode")
- -- 链接到其他Effect文件的EffectNode
- cc.EffectButton.ClassName = "EffectButton"
-
- function cc.EffectButton:loadFromXmlNode(xmlNode)
- cc.Widget.loadFromXmlNode(self , xmlNode);
-
- if xmlNode.NormalClip then
- self:setNormalClip(xmlNode.NormalClip);
- end
- if xmlNode.MouseDownClip then
- self:setMouseDownClip(xmlNode.MouseDownClip);
- end
- if xmlNode.MouseUpClip then
- self:setMouseUpClip(xmlNode.MouseUpClip);
- end
- if xmlNode.DisabledClip then
- self:setDisabledClip(xmlNode.DisabledClip);
- end
- if xmlNode.FadeInClip then
- self:setFadeInClip(xmlNode.FadeInClip);
- end
- if xmlNode.FadeOutClip then
- self:setFadeOutClip(xmlNode.FadeOutClip);
- end
-
- self:setEffectFile(xmlNode.EffectFile);
- self:setFontConfig(xmlNode.TitleFontConfig);
- self:setCharPadding(xmlNode.CharPadding);
- self:setLinePadding(xmlNode.LinePadding);
- self:setTitleText(xmlNode.TitleText);
- end
-
- -- 收集ui的文本,返回文本table
- function cc.EffectButton:collectText()
- return {TextTranslator:collect(self:getTitleText())};
- end
-
- -- 翻译xmlNode里的文本,dict是字典表
- function cc.EffectButton:applyDict(dict)
- local translated = dict[TextTranslator:collect(self:getTitleText())];
- if translated then
- self:setTitleText(TextTranslator:translate(self:getTitleText() , translated));
- end
- end
-
- function cc.EffectButton:createNode()
- local layer = cc.EffectButton:create();
- return layer;
- end
-
- -- 注册按钮被点击的事件
- function cc.EffectButton:registerClick(callbackFunc)
- local function onTouchEvent(sender, eventType)
- if eventType == cc.TouchEventType.ended then
- callbackFunc(self);
- end
- return true;
- end
-
- self:addTouchEventListener(onTouchEvent)
- end
-
-
- -- 设置默认值
- function cc.EffectButton:setDefaults()
- local ttfConfig = {}
- ttfConfig.fontFilePath = "res/default/msyh.ttc"
- ttfConfig.fontSize = 30
- ttfConfig.glyphs = cc.GLYPHCOLLECTION_DYNAMIC
- ttfConfig.customGlyphs = nil
- ttfConfig.distanceFieldEnabled = false
- ttfConfig.outlineSize = 0
-
- self:setFontConfig(ttfConfig);
- self:setTitleText("确定");
- self:setAutoSize(false);
- self:setSize(cc.size(100,100));
-
- self:setEffectFile("res/default/test.effect");
- -- 默认需要响应touch事件
- self:setTouchEnabled(true)
- end
|