code_uiinlineselect.cs 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // UIInlineSelect application source code
  2. using System;
  3. using AtomicEngine;
  4. public class code_uiinlineselect : CSComponent {
  5. public void Setup( UIWidget layout )
  6. {
  7. var dest = new AtomicEngine.Vector<AtomicEngine.UIWidget>();
  8. layout.SearchWidgetClass( "TBButton", dest );
  9. for (var ii = 0; ii < dest.Size; ii++) {
  10. dest[ii].SubscribeToEvent<WidgetEvent> (dest [ii], HandleUiinlineselectEvent );
  11. }
  12. UIWidget demo1 = layout.GetWidget ("ilsstep");
  13. if ( !demo1.Equals(null))
  14. demo1.SubscribeToEvent<WidgetEvent> ( demo1, HandleUiinlineselectEvent );
  15. UIWidget demo2 = layout.GetWidget ("inlineselectdemo");
  16. if ( !demo2.Equals(null))
  17. demo2.SubscribeToEvent<WidgetEvent> ( demo2, HandleUiinlineselectEvent );
  18. }
  19. private static void HandleUiinlineselectEvent ( WidgetEvent ev )
  20. {
  21. UIWidget widget = (UIWidget)ev.Target;
  22. if ( widget.Equals(null)) return;
  23. if ( ev.Type == UI_EVENT_TYPE.UI_EVENT_TYPE_CLICK) {
  24. if (widget.GetId() == "uiinlineselectcode" ) {
  25. AtomicMain.AppLog( "UIInlineSelect support : " + widget.GetId() + " was pressed " );
  26. AtomicMain.ViewCode ( "Components/code_uiinlineselect.cs", widget.GetParent() );
  27. }
  28. if (widget.GetId() == "uiinlineselectlayout" ) {
  29. AtomicMain.AppLog( "UIInlineSelect support : " + widget.GetId() + " was pressed ");
  30. AtomicMain.ViewCode ( "Scenes/layout_uiinlineselect.ui.txt", widget.GetParent() );
  31. }
  32. } else if ( ev.Type == UI_EVENT_TYPE.UI_EVENT_TYPE_CHANGED ) {
  33. if (widget.GetId() == "inlineselectdemo" ) {
  34. UIInlineSelect ils = (UIInlineSelect)widget;
  35. if ( !ils.Equals(null)) {
  36. AtomicMain.AppLog( "UIInlineSelect event : " + widget.GetId() + " changed value to " + ils.GetValue().ToString() );
  37. }
  38. }
  39. if (widget.GetId() == "ilsstep" ) {
  40. UISlider steps = (UISlider)widget;
  41. if ( !steps.Equals(null)) {
  42. UIInlineSelect ils = (UIInlineSelect)widget.FindWidget("inlineselectdemo");
  43. if ( !ils.Equals(null)) {
  44. ils.SetStepSize (steps.GetValue());
  45. }
  46. AtomicMain.AppLog( "UIInlineSelect event : " + widget.GetId() + " step size changed to " + steps.GetValue().ToString() );
  47. }
  48. }
  49. }
  50. }
  51. }