ConfigOutput.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /*\
  2. |*| Copyright 2015-2016 bill-auger <https://github.com/bill-auger/av-caster/issues>
  3. |*|
  4. |*| This file is part of the AvCaster program.
  5. |*|
  6. |*| AvCaster is free software: you can redistribute it and/or modify
  7. |*| it under the terms of the GNU General Public License version 3
  8. |*| as published by the Free Software Foundation.
  9. |*|
  10. |*| AvCaster is distributed in the hope that it will be useful,
  11. |*| but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. |*| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. |*| GNU General Public License for more details.
  14. |*|
  15. |*| You should have received a copy of the GNU General Public License
  16. |*| along with AvCaster. If not, see <http://www.gnu.org/licenses/>.
  17. \*/
  18. #ifndef _CONFIGOUTPUT_H_
  19. #define _CONFIGOUTPUT_H_
  20. //[Headers] -- You can add your own extra header files here --
  21. #include "JuceHeader.h"
  22. class MainContent ;
  23. //[/Headers]
  24. //==============================================================================
  25. /**
  26. //[Comments]
  27. ConfigOutput is the stream output configuration GUI for the AvCaster application.
  28. It has it controls for setting the per-preset stream output parameters.
  29. //[/Comments]
  30. */
  31. class ConfigOutput : public Component,
  32. public ComboBoxListener
  33. {
  34. public:
  35. //==============================================================================
  36. ConfigOutput ();
  37. ~ConfigOutput();
  38. //==============================================================================
  39. //[UserMethods] -- You can add your own custom methods in this section.
  40. //[/UserMethods]
  41. void paint (Graphics& g);
  42. void resized();
  43. void comboBoxChanged (ComboBox* comboBoxThatHasChanged);
  44. private:
  45. //[UserVariables] -- You can add your own custom variables in this section.
  46. friend class Config ;
  47. MainContent* mainContent ;
  48. //[/UserVariables]
  49. //==============================================================================
  50. ScopedPointer<Label> outputStreamLabel;
  51. ScopedPointer<ComboBox> outputSinkCombo;
  52. ScopedPointer<Label> outputWidthLabel;
  53. ScopedPointer<TextEditor> outputWidthText;
  54. ScopedPointer<Label> outputHeightLabel;
  55. ScopedPointer<TextEditor> outputHeightText;
  56. ScopedPointer<Label> framerateLabel;
  57. ScopedPointer<ComboBox> framerateCombo;
  58. ScopedPointer<Label> bitrateLabel;
  59. ScopedPointer<ComboBox> videoBitrateCombo;
  60. ScopedPointer<Label> outputDestLabel;
  61. ScopedPointer<TextEditor> outputDestText;
  62. //==============================================================================
  63. JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ConfigOutput)
  64. };
  65. //[EndFile] You can add extra defines here...
  66. //[/EndFile]
  67. #endif // _CONFIGOUTPUT_H_