Skip to content
Snippets Groups Projects
Select Git revision
  • 5c5d92de0c205ea014740446d97e5bd487e1d3a0
  • main default
  • add-sdl_mixer
  • adjust-drawtext-function
  • add-multiline-text
  • change-button-border-color
  • cleaner-build-files
  • add-color-to-textinput
  • new-widget-slider
  • editor-actions-fix
  • update-dropdownlist
  • new-widget-textbox
  • mousewheel-and-const-correctness
  • softwareRender
  • add-lambda-function-Color
  • add-destructor-Image
  • seperate-animationwindow-and-std-lib-facilities
17 results

RadioButton.h

Blame
  • RadioButton.h 1.62 KiB
    #pragma once
    
    #include "Widget.h"
    #include "Point.h"
    #include <string>
    #include "Color.h"
    
    namespace TDT4102 {
        class RadioButton : public TDT4102::Widget {
        private:
            std::string label;
            nk_bool isSelected_ = false;
            bool lastRightMouseButtonState = false;
            bool lastLeftMouseButtonState = false;
            nk_color labelColor = nk_rgba(100, 100, 100, 255);
            nk_color radioColor = nk_rgba(150, 150, 150, 255);
            nk_color radioColorHover = nk_rgba(150, 150, 150, 255);
            nk_color radioColorActive = nk_rgba(150, 150, 150, 255);
            
        protected:
            void update(nk_context* context) override;
        public:
            explicit RadioButton(TDT4102::Point location, unsigned int width, unsigned int height, std::string label);
            bool isSelected() const;
            void setLabel(std::string newLabel);
            void setLabelColor(Color newColor) {labelColor = nk_color{(nk_byte)newColor.redChannel, (nk_byte)newColor.greenChannel, (nk_byte)newColor.blueChannel, (nk_byte)newColor.alphaChannel};};
            void setRadioColor(Color newColor) {radioColor = nk_color{(nk_byte)newColor.redChannel, (nk_byte)newColor.greenChannel, (nk_byte)newColor.blueChannel, (nk_byte)newColor.alphaChannel};}
            void setRadioColorHover(Color newColor) {radioColorHover = nk_color{(nk_byte)newColor.redChannel, (nk_byte)newColor.greenChannel, (nk_byte)newColor.blueChannel, (nk_byte)newColor.alphaChannel};}
            void setRadioColorActive(Color newColor) {radioColorActive = nk_color{(nk_byte)newColor.redChannel, (nk_byte)newColor.greenChannel, (nk_byte)newColor.blueChannel, (nk_byte)newColor.alphaChannel};}
        };
    }