Text.hx 940 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package hrt.shgraph.nodes;
  2. using hxsl.Ast;
  3. @name("Text")
  4. @description("Only UI, to add text")
  5. @group("Other")
  6. @width(200)
  7. @color("#c7c700")
  8. @noheader()
  9. class Text extends ShaderNode {
  10. @prop() var text : String = "";
  11. override public function build(key : String) : TExpr {
  12. return null;
  13. }
  14. #if editor
  15. override public function getPropertiesHTML(width : Float) : Array<hide.Element> {
  16. var elements = super.getPropertiesHTML(width);
  17. var element = new hide.Element('<div style="width: ${width-35}px; height: 35px"></div>');
  18. element.append(new hide.Element('<input type="text" id="value" style="width: ${width-35}px; height: 22px; font-size: 16px;" placeholder="Name" value="${this.text}" />'));
  19. var input = element.children("input");
  20. input.on("keydown", function(e) {
  21. e.stopPropagation();
  22. });
  23. input.on("change", function(e) {
  24. this.text = input.val();
  25. });
  26. elements.push(element);
  27. return elements;
  28. }
  29. #end
  30. }