GUIFramework 1.1.0
Framework for desktop GUI applications in C++.
Loading...
Searching...
No Matches
gui_framework::BaseComboBox Class Referenceabstract

Base class for all combo boxes. More...

#include <BaseComboBox.h>

Inheritance diagram for gui_framework::BaseComboBox:
gui_framework::BaseComponent gui_framework::interfaces::IResizableComponent gui_framework::interfaces::ISerializable gui_framework::DropDownComboBox gui_framework::DropDownListComboBox gui_framework::SimpleComboBox

Public Types

enum class  itemHeightEnum { forAllItems , selectionFieldItem }
 

Public Member Functions

 BaseComboBox (const std::wstring &comboBoxName, const utility::ComponentSettings &settings, const styles::ComboBoxStyles &styles, BaseComposite *parent)
 
LRESULT addValue (const std::wstring &value)
 
LRESULT addValues (const std::vector< std::wstring > &values)
 
LRESULT removeValue (size_t index)
 
virtual LRESULT insertValue (const std::wstring &value, LRESULT index)
 
virtual LRESULT changeValue (const std::wstring &newValue, LRESULT index)
 
LRESULT findSubstring (const std::wstring &substringToFind)
 Find not case sensitive substring.
 
LRESULT findString (const std::wstring &stringToFind)
 Find not case sensitive string.
 
std::wstring getValue (size_t index) const
 
LRESULT getCurrentSelectionIndex () const
 
LRESULT setCurrentSelection (LRESULT index) const
 
LRESULT size () const
 
void clear ()
 
void setSortingMode (bool isSorting)
 
LRESULT setItemHeight (itemHeightEnum value, uint16_t height)
 
LRESULT setDroppedWidth (uint16_t width)
 
void setOnSelectionChange (const std::function< void(BaseComboBox &)> &onSelectionChange)
 Set callback function with on selection change event.
 
void setOnSelectionChange (const std::string &functionName, const std::string &moduleName)
 Set serializable callback function with on selection change event.
 
LRESULT getItemHeight (itemHeightEnum value) const
 
LRESULT getDroppedWidth () const
 
virtual void resize (uint16_t width, uint16_t height) override
 
virtual void setBackgroundColor (uint8_t red, uint8_t green, uint8_t blue) final override
 Not implemented.
 
virtual void setTextColor (uint8_t red, uint8_t green, uint8_t blue) final override
 Not implemented.
 
virtual size_t getHash () const override=0
 Used as key in creators.
 
virtual json::JSONBuilder getStructure () const override
 
virtual ~BaseComboBox ()=default
 
- Public Member Functions inherited from gui_framework::BaseComponent
 BaseComponent (std::wstring_view className, std::wstring_view windowName, const utility::ComponentSettings &settings, const interfaces::IStyles &styles, BaseComposite *parent=nullptr, std::string_view windowFunctionName="", std::string_view moduleName="", uint16_t smallIconResource=NULL, uint16_t largeIconResource=NULL)
 
LRESULT handleMessages (HWND handle, UINT message, WPARAM wparam, LPARAM lparam, bool &isUsed)
 
bool destroyComponent ()
 
bool asyncDestroyComponent ()
 
void enable ()
 
void disable ()
 
bool isEnabled () const
 
bool isDisabled () const
 
LRESULT sendRawMessage (UINT message, WPARAM wparam, LPARAM lparam)
 SendMessage WinAPI wrapper.
 
void setDesiredWidth (uint16_t desiredWidth)
 
void setDesiredHeight (uint16_t desiredHeight)
 
void setDesiredX (int desiredX)
 
void setDesiredY (int desiredY)
 
BaseComponentgetParent () const
 
HWND getHandle () const
 
std::wstring_view getWindowName () const
 
std::wstring_view getClassName () const
 
uint16_t getDesiredWidth () const
 
uint16_t getDesiredHeight () const
 
uint16_t getActualWidth () const
 
uint16_t getActualHeight () const
 
RECT getActualCoordinates () const
 
int getDesiredX () const
 
int getDesiredY () const
 
uint32_t getId () const
 
COLORREF getBackgroundColor () const
 
COLORREF getTextColor () const
 
const smartPointerType< interfaces::IStyles > & getStyles () const
 
virtual ~BaseComponent ()
 
- Public Member Functions inherited from gui_framework::interfaces::ISerializable
 ISerializable ()=default
 
virtual ~ISerializable ()=default
 
- Public Member Functions inherited from gui_framework::interfaces::IResizableComponent
 IResizableComponent (HWND resizeableHandle, HWND parent, bool autoResize=false, bool blockResize=false)
 
virtual RECT calculateNewSizes (uint16_t width, uint16_t height) final
 
virtual void setBlockResize (bool blockResize) final
 
virtual void setAutoResize (bool autoResize) final
 
virtual bool getBlockResize () const final
 
virtual bool getAutoResize () const final
 
virtual ~IResizableComponent ()=default
 

Static Public Member Functions

static void loadOnSelectionChangeFromModule (std::function< void(BaseComboBox &)> &onSelectionChange, const std::string &functionName, const std::string &moduleName)
 Load function from module.
 
- Static Public Member Functions inherited from gui_framework::BaseComponent
static void runFunctionAsync (const std::function< void()> &callable, const std::function< void()> &callback=nullptr) noexcept
 Add task to thread pool.
 
static void runFunctionAsync (std::function< void()> &&callable, const std::function< void()> &callback=nullptr) noexcept
 Add task to thread pool.
 
- Static Public Member Functions inherited from gui_framework::interfaces::ISerializable
static uint32_t getCodepage ()
 

Protected Member Functions

virtual LRESULT windowMessagesHandle (HWND handle, UINT message, WPARAM wparam, LPARAM lparam, bool &isUsed) final override
 
- Protected Member Functions inherited from gui_framework::BaseComponent
virtual LRESULT preWindowMessagesHandle (HWND handle, UINT message, WPARAM wparam, LPARAM lparam, bool &isUsed)
 
virtual void setLocalizationKeys (interfaces::ITextLocalized *localized, const std::vector< std::string > &localizationKeys)
 Override for custom localization.
 

Protected Attributes

SIZE requiredSize
 
std::function< void(BaseComboBox &)> onSelectionChange
 
std::string functionName
 
std::string moduleName
 
- Protected Attributes inherited from gui_framework::BaseComponent
BaseCompositeparent
 
const std::wstring className
 
const std::wstring windowName
 
HWND handle
 
uint16_t desiredWidth
 
uint16_t desiredHeight
 
int desiredX
 
int desiredY
 
uint32_t id
 
COLORREF backgroundColor
 
COLORREF textColor
 
smartPointerType< interfaces::IStylesstyles
 
- Protected Attributes inherited from gui_framework::interfaces::IResizableComponent
bool blockResize
 
bool autoResize
 
int initX
 
int initY
 
uint16_t initWidth
 
uint16_t initHeight
 
uint16_t parentWidth
 
uint16_t parentHeight
 

Detailed Description

Base class for all combo boxes.

Definition at line 12 of file BaseComboBox.h.

Member Enumeration Documentation

◆ itemHeightEnum

Enumerator
forAllItems 
selectionFieldItem 

Definition at line 34 of file BaseComboBox.h.

Constructor & Destructor Documentation

◆ BaseComboBox()

gui_framework::BaseComboBox::BaseComboBox ( const std::wstring & comboBoxName,
const utility::ComponentSettings & settings,
const styles::ComboBoxStyles & styles,
BaseComposite * parent )

Definition at line 62 of file BaseComboBox.cpp.

◆ ~BaseComboBox()

virtual gui_framework::BaseComboBox::~BaseComboBox ( )
virtualdefault

Member Function Documentation

◆ addValue()

LRESULT gui_framework::BaseComboBox::addValue ( const std::wstring & value)
Parameters
value
Returns
Index of added value
Exceptions
SelectListException

Definition at line 82 of file BaseComboBox.cpp.

◆ addValues()

LRESULT gui_framework::BaseComboBox::addValues ( const std::vector< std::wstring > & values)
Parameters
values
Returns
Last index of added values
Exceptions
SelectListException

Definition at line 100 of file BaseComboBox.cpp.

◆ changeValue()

LRESULT gui_framework::BaseComboBox::changeValue ( const std::wstring & newValue,
LRESULT index )
virtual
Parameters
newValue
index
Returns
Exceptions
SelectListException

Definition at line 144 of file BaseComboBox.cpp.

◆ clear()

void gui_framework::BaseComboBox::clear ( )

Definition at line 235 of file BaseComboBox.cpp.

◆ findString()

LRESULT gui_framework::BaseComboBox::findString ( const std::wstring & stringToFind)

Find not case sensitive string.

Parameters
stringToFind
Returns
Exceptions
SelectListException

Definition at line 170 of file BaseComboBox.cpp.

◆ findSubstring()

LRESULT gui_framework::BaseComboBox::findSubstring ( const std::wstring & substringToFind)

Find not case sensitive substring.

Parameters
subStringToFind
Returns
Exceptions
SelectListException

Definition at line 158 of file BaseComboBox.cpp.

◆ getCurrentSelectionIndex()

LRESULT gui_framework::BaseComboBox::getCurrentSelectionIndex ( ) const
Returns
Exceptions
SelectListException

Definition at line 206 of file BaseComboBox.cpp.

◆ getDroppedWidth()

LRESULT gui_framework::BaseComboBox::getDroppedWidth ( ) const
Returns
Exceptions
SelectListException

Definition at line 309 of file BaseComboBox.cpp.

◆ getHash()

virtual size_t gui_framework::BaseComboBox::getHash ( ) const
overridepure virtual

Used as key in creators.

Returns
typeid().hash_code()

Implements gui_framework::BaseComponent.

Implemented in gui_framework::DropDownComboBox, gui_framework::DropDownListComboBox, and gui_framework::SimpleComboBox.

◆ getItemHeight()

LRESULT gui_framework::BaseComboBox::getItemHeight ( itemHeightEnum value) const
Parameters
value
Returns
Exceptions
SelectListException

Definition at line 297 of file BaseComboBox.cpp.

◆ getStructure()

json::JSONBuilder gui_framework::BaseComboBox::getStructure ( ) const
overridevirtual

◆ getValue()

wstring gui_framework::BaseComboBox::getValue ( size_t index) const
Parameters
index
Returns
Exceptions
SelectListException

Definition at line 182 of file BaseComboBox.cpp.

◆ insertValue()

LRESULT gui_framework::BaseComboBox::insertValue ( const std::wstring & value,
LRESULT index )
virtual
Parameters
value
index
Returns
Exceptions
SelectListException

Definition at line 126 of file BaseComboBox.cpp.

◆ loadOnSelectionChangeFromModule()

void gui_framework::BaseComboBox::loadOnSelectionChangeFromModule ( std::function< void(BaseComboBox &)> & onSelectionChange,
const std::string & functionName,
const std::string & moduleName )
static

Load function from module.

Parameters
onSelectionChangeOutput parameter for function load
functionNameName of function in module
moduleNameName of module in JSON array modules in gui_framework.json
Exceptions
CantFindFunctionFromModuleException

Definition at line 47 of file BaseComboBox.cpp.

◆ removeValue()

LRESULT gui_framework::BaseComboBox::removeValue ( size_t index)
Parameters
index
Returns
Exceptions
SelectListException

Definition at line 112 of file BaseComboBox.cpp.

◆ resize()

void gui_framework::BaseComboBox::resize ( uint16_t width,
uint16_t height )
overridevirtual
Parameters
width
height
Exceptions
SelectListException

Reimplemented from gui_framework::interfaces::IResizableComponent.

Definition at line 321 of file BaseComboBox.cpp.

◆ setBackgroundColor()

void gui_framework::BaseComboBox::setBackgroundColor ( uint8_t red,
uint8_t green,
uint8_t blue )
finaloverridevirtual

Not implemented.

Parameters
red
green
blue
Exceptions
NotImplementedBackground color does not affects at combo boxes

Reimplemented from gui_framework::BaseComponent.

Definition at line 385 of file BaseComboBox.cpp.

◆ setCurrentSelection()

LRESULT gui_framework::BaseComboBox::setCurrentSelection ( LRESULT index) const
Parameters
index
Returns
Exceptions
SelectListException

Definition at line 211 of file BaseComboBox.cpp.

◆ setDroppedWidth()

LRESULT gui_framework::BaseComboBox::setDroppedWidth ( uint16_t width)
Parameters
width
Returns
Exceptions
SelectListException

Definition at line 259 of file BaseComboBox.cpp.

◆ setItemHeight()

LRESULT gui_framework::BaseComboBox::setItemHeight ( itemHeightEnum value,
uint16_t height )
Parameters
value
height
Returns
Exceptions
SelectListException

Definition at line 247 of file BaseComboBox.cpp.

◆ setOnSelectionChange() [1/2]

void gui_framework::BaseComboBox::setOnSelectionChange ( const std::function< void(BaseComboBox &)> & onSelectionChange)

Set callback function with on selection change event.

Parameters
onSelectionChangecallback with reference to current BaseCombobox

◆ setOnSelectionChange() [2/2]

void gui_framework::BaseComboBox::setOnSelectionChange ( const std::string & functionName,
const std::string & moduleName )

Set serializable callback function with on selection change event.

Parameters
functionNameName of function with comboBoxCallbackSignature signature
moduleName
Exceptions
CantFindFunctionFromModuleException
std::out_of_rangeCan't find moduleName in loaded modules

◆ setSortingMode()

void gui_framework::BaseComboBox::setSortingMode ( bool isSorting)
Parameters
isSorting

Definition at line 240 of file BaseComboBox.cpp.

◆ setTextColor()

void gui_framework::BaseComboBox::setTextColor ( uint8_t red,
uint8_t green,
uint8_t blue )
finaloverridevirtual

Not implemented.

Parameters
red
green
blue
Exceptions
NotImplementedText color does not affects at combo boxes

Reimplemented from gui_framework::BaseComponent.

Definition at line 390 of file BaseComboBox.cpp.

◆ size()

LRESULT gui_framework::BaseComboBox::size ( ) const
Returns
Exceptions
SelectListException

Definition at line 223 of file BaseComboBox.cpp.

◆ windowMessagesHandle()

LRESULT gui_framework::BaseComboBox::windowMessagesHandle ( HWND handle,
UINT message,
WPARAM wparam,
LPARAM lparam,
bool & isUsed )
finaloverrideprotectedvirtual

Reimplemented from gui_framework::BaseComponent.

Definition at line 21 of file BaseComboBox.cpp.

Member Data Documentation

◆ functionName

std::string gui_framework::BaseComboBox::functionName
protected

Definition at line 19 of file BaseComboBox.h.

◆ moduleName

std::string gui_framework::BaseComboBox::moduleName
protected

Definition at line 20 of file BaseComboBox.h.

◆ onSelectionChange

std::function<void(BaseComboBox&)> gui_framework::BaseComboBox::onSelectionChange
protected

Definition at line 18 of file BaseComboBox.h.

◆ requiredSize

SIZE gui_framework::BaseComboBox::requiredSize
protected

Definition at line 17 of file BaseComboBox.h.


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