Krotos Modules 3
Loading...
Searching...
No Matches
krotos::KwidgetGUI_XyPad Class Reference

#include <KwidgetGUI_XyPad.h>

Inheritance diagram for krotos::KwidgetGUI_XyPad:
krotos::KwidgetGUI

Classes

struct  ComponentIds
 
struct  Constants
 

Public Types

using Parameters = Kwidget_XyPad::Parameters
 
- Public Types inherited from krotos::KwidgetGUI
enum class  RenderStyle {
  normal = 0 , borderless , borderless_with_buttons , minimised ,
  NUM_STYLES
}
 

Public Member Functions

 KwidgetGUI_XyPad (Kwidget &owner)
 
 ~KwidgetGUI_XyPad ()
 
void paint (Graphics &g) override
 
void resized () override
 
void setToggleVisibility (bool visible)
 
void setPerformMode (bool performMode)
 
XYButtongetXYButton ()
 
- Public Member Functions inherited from krotos::KwidgetGUI
 KwidgetGUI (Kwidget &owner)
 
 ~KwidgetGUI () override=default
 
void moved () override
 
void paint (Graphics &g) override
 
void resized () override
 
void mouseDown (const MouseEvent &event) override
 
const String & getKwidgetType () const
 
const String & getKwidgetID () const
 
void setRenderStyle (RenderStyle newStyle)
 
int divideIntByFloat (int dividend, float divisor)
 
int multiplyIntByFloat (int mult, float factor)
 
virtual void finalSetup ()
 
void ignorePadding (bool ignore)
 
TopBarComponentgetTopBarComponent ()
 
KwidgetgetOwner ()
 

Private Member Functions

void showContextMenu ()
 
void drawDebugGraphics (Graphics &g)
 

Private Attributes

bool m_goSlow = false
 
struct krotos::KwidgetGUI_XyPad::Constants constants
 
XYButton m_xyButton
 
juce::Label m_toggleLabel
 
std::unique_ptr< XYButtonParameterAttachmentm_xyButtonAttachment
 
std::unique_ptr< ParameterAttachment > m_toggleLabelAttachment
 
std::unique_ptr< AttachedLabelm_editableLabelX {nullptr}
 
std::unique_ptr< AttachedLabelm_editableLabelY {nullptr}
 
std::unique_ptr< AttachedLabelm_editableLabelW {nullptr}
 
std::unique_ptr< AttachedLabelm_editableLabelZ {nullptr}
 
bool m_toggleVisibility {false}
 
bool m_performMode {false}
 
std::unique_ptr< krotos::GrainVisualiserm_grainVisualiser
 
Range< float > m_zoomRange
 
ContextMenuButton m_contextMenu
 
LookAndFeel_V4 m_lookAndFeelv4
 

Additional Inherited Members

- Public Attributes inherited from krotos::KwidgetGUI
std::function< void(const String &)> onDelete
 
- Protected Member Functions inherited from krotos::KwidgetGUI
std::unique_ptr< SliderParameterAttachment > createParameterAttachment (const String &paramID, Slider &slider)
 
std::unique_ptr< ButtonParameterAttachment > createParameterAttachment (const String &paramID, Button &button)
 
std::unique_ptr< ComboBoxParameterAttachment > createParameterAttachment (const String &paramID, ComboBox &comboBox)
 
std::unique_ptr< ParameterAttachment > createParameterAttachment (const String &paramID, std::function< void(float)> callback)
 
std::unique_ptr< LabelCustomParameterAttachmentcreateCustomParameterAttachment (const String &paramID, Label &label)
 
template<typename AttachedComponentType >
void addAttachedComponent (AttachedComponentType &component, const String &paramID, bool isDraggable=true)
 
template<typename AttachedComponentType >
void addAttachedComponent (Component &parent, AttachedComponentType &component, const String &paramID, bool isDraggable=true)
 
void addParameterCallback (const String &paramID, std::function< void(float)> callback)
 
- Protected Attributes inherited from krotos::KwidgetGUI
bool m_ignorePadding {false}
 
Rectangle< int > m_currentBounds
 
TextButton m_selectButton
 
TextButton m_deleteButton
 
Colour m_borderColour {Colours::fuchsia}
 
TopBarComponent m_topBarComponent
 
RenderStyle m_renderStyle {RenderStyle::normal}
 

Member Typedef Documentation

◆ Parameters

Constructor & Destructor Documentation

◆ KwidgetGUI_XyPad()

krotos::KwidgetGUI_XyPad::KwidgetGUI_XyPad ( Kwidget & owner)

◆ ~KwidgetGUI_XyPad()

krotos::KwidgetGUI_XyPad::~KwidgetGUI_XyPad ( )

Member Function Documentation

◆ drawDebugGraphics()

void krotos::KwidgetGUI_XyPad::drawDebugGraphics ( Graphics & g)
private

◆ getXYButton()

XYButton & krotos::KwidgetGUI_XyPad::getXYButton ( )
inline

◆ paint()

void krotos::KwidgetGUI_XyPad::paint ( Graphics & g)
override

◆ resized()

void krotos::KwidgetGUI_XyPad::resized ( )
override

◆ setPerformMode()

void krotos::KwidgetGUI_XyPad::setPerformMode ( bool performMode)
inline

◆ setToggleVisibility()

void krotos::KwidgetGUI_XyPad::setToggleVisibility ( bool visible)

Sets the visibility flag to show the toggle in perform Mode

◆ showContextMenu()

void krotos::KwidgetGUI_XyPad::showContextMenu ( )
private

Member Data Documentation

◆ constants

struct krotos::KwidgetGUI_XyPad::Constants krotos::KwidgetGUI_XyPad::constants
private

◆ m_contextMenu

ContextMenuButton krotos::KwidgetGUI_XyPad::m_contextMenu
private

◆ m_editableLabelW

std::unique_ptr<AttachedLabel> krotos::KwidgetGUI_XyPad::m_editableLabelW {nullptr}
private

◆ m_editableLabelX

std::unique_ptr<AttachedLabel> krotos::KwidgetGUI_XyPad::m_editableLabelX {nullptr}
private

◆ m_editableLabelY

std::unique_ptr<AttachedLabel> krotos::KwidgetGUI_XyPad::m_editableLabelY {nullptr}
private

◆ m_editableLabelZ

std::unique_ptr<AttachedLabel> krotos::KwidgetGUI_XyPad::m_editableLabelZ {nullptr}
private

◆ m_goSlow

bool krotos::KwidgetGUI_XyPad::m_goSlow = false
private

◆ m_grainVisualiser

std::unique_ptr<krotos::GrainVisualiser> krotos::KwidgetGUI_XyPad::m_grainVisualiser
private

◆ m_lookAndFeelv4

LookAndFeel_V4 krotos::KwidgetGUI_XyPad::m_lookAndFeelv4
private

◆ m_performMode

bool krotos::KwidgetGUI_XyPad::m_performMode {false}
private

◆ m_toggleLabel

juce::Label krotos::KwidgetGUI_XyPad::m_toggleLabel
private

◆ m_toggleLabelAttachment

std::unique_ptr<ParameterAttachment> krotos::KwidgetGUI_XyPad::m_toggleLabelAttachment
private

◆ m_toggleVisibility

bool krotos::KwidgetGUI_XyPad::m_toggleVisibility {false}
private

◆ m_xyButton

XYButton krotos::KwidgetGUI_XyPad::m_xyButton
private

◆ m_xyButtonAttachment

std::unique_ptr<XYButtonParameterAttachment> krotos::KwidgetGUI_XyPad::m_xyButtonAttachment
private

◆ m_zoomRange

Range<float> krotos::KwidgetGUI_XyPad::m_zoomRange
private

The documentation for this class was generated from the following files: