iup_fill.e 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. class IUP_FILL
  2. -- Creates void element, which dynamically occupies empty spaces
  3. -- always trying to expand itself. Its parent should be an IUP_HBOX, an IUP_VBOX
  4. -- or a IUP_GRIDBOX, or else this type of expansion will not work. If an EXPAND
  5. -- is set on at least one of the other children of the box, then the fill
  6. -- expansion is ignored.
  7. --
  8. -- EXPAND: If User size is not defined, then when inside a
  9. -- IUP_HBOX/IUP_GRID_BOX EXPAND is HORIZONTAL, when inside a IupVbox EXPAND is
  10. -- VERTICAL. If User size is defined then EXPAND is NO.
  11. inherit
  12. IUP_CONTAINER
  13. IUP_WIDGET_EXPAND
  14. IUP_WIDGET_WID
  15. IUP_WIDGET_SIZE
  16. IUP_WIDGET_RASTERSIZE
  17. IUP_WIDGET_USERSIZE
  18. IUP_WIDGET_FONT
  19. IUP_WIDGET_POSITION
  20. IUP_WIDGET_MAXMIN_SIZE
  21. IUP_WIDGET_CHILD
  22. IUP_WIDGET_NAME
  23. create {ANY}
  24. fill
  25. feature {ANY}
  26. fill
  27. -- Create a new fill.
  28. local
  29. a_fill: POINTER
  30. do
  31. a_fill := int_fill
  32. set_widget(a_fill)
  33. end
  34. feature {NONE}
  35. -- Internals
  36. int_fill: POINTER
  37. external
  38. "C inline use %"eiffel-iup.h%""
  39. alias
  40. "return IupFill();"
  41. end
  42. end -- class IUP_FILL
  43. -- The MIT License (MIT)
  44. -- Copyright (c) 2016, 2017, 2019 by German A. Arias
  45. -- Permission is hereby granted, free of charge, to any person obtaining a copy
  46. -- of this software and associated documentation files (the "Software"), to deal
  47. -- in the Software without restriction, including without limitation the rights
  48. -- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  49. -- copies of the Software, and to permit persons to whom the Software is
  50. -- furnished to do so, subject to the following conditions:
  51. --
  52. -- The above copyright notice and this permission notice shall be included in
  53. -- all copies or substantial portions of the Software.
  54. --
  55. -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  56. -- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  57. -- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  58. -- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  59. -- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  60. -- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  61. -- SOFTWARE.