ShaderConst.hx 899 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package hrt.shgraph;
  2. using hxsl.Ast;
  3. class ShaderConst extends ShaderNode {
  4. @prop() public var name : String = "";
  5. override public function getOutputType(key : String) : Type {
  6. return getOutputTExpr(key).t;
  7. }
  8. override public function build(key : String) : TExpr {
  9. return null;
  10. }
  11. #if editor
  12. override public function getPropertiesHTML(width : Float) : Array<hide.Element> {
  13. var elements = super.getPropertiesHTML(width);
  14. var element = new hide.Element('<div style="width: 75px; height: 20px"></div>');
  15. element.append(new hide.Element('<input type="text" id="value" style="width: ${width*0.75}px" placeholder="Name" value="${this.name}" />'));
  16. var input = element.children("input");
  17. input.on("keydown", function(e) {
  18. e.stopPropagation();
  19. });
  20. input.on("change", function(e) {
  21. this.name = input.val();
  22. });
  23. elements.push(element);
  24. return elements;
  25. }
  26. #end
  27. }