LibreOffice Module cui (master)  1
Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
SvxCharacterMap Class Referencefinal

The main purpose of this dialog is to enable the use of characters that are not easily accessible from the keyboard. More...

#include <cuicharmap.hxx>

Inheritance diagram for SvxCharacterMap:
[legend]
Collaboration diagram for SvxCharacterMap:
[legend]

Public Member Functions

 SvxCharacterMap (weld::Widget *pParent, const SfxItemSet *pSet, const css::uno::Reference< css::frame::XFrame > &rFrame)
 
virtual short run () override
 
void set_title (const OUString &rTitle)
 
const SfxItemSetGetOutputItemSet () const
 
void DisableFontSelection ()
 
const vcl::FontGetCharFont () const
 
void SetCharFont (const vcl::Font &rFont)
 
void SetChar (sal_UCS4)
 
sal_UCS4 GetChar () const
 
void getRecentCharacterList ()
 
void updateRecentCharacterList (const OUString &rChar, const OUString &rFont)
 
void getFavCharacterList ()
 
void updateFavCharacterList (const OUString &rChar, const OUString &rFont)
 
void deleteFavCharacterFromList (std::u16string_view rChar, std::u16string_view rFont)
 
bool isFavChar (std::u16string_view sTitle, std::u16string_view rFont)
 
void updateRecentCharControl ()
 
void insertCharToDoc (const OUString &sChar)
 
void updateFavCharControl ()
 
void setFavButtonState (std::u16string_view sTitle, std::u16string_view rFont)
 
void setCharName (sal_UCS4 nDecimalValue)
 
void toggleSearchView (bool state)
 
- Public Member Functions inherited from SfxDialogController
 SfxDialogController (weld::Widget *pParent, const OUString &rUIFile, const OString &rDialogId)
 
virtual void Activate ()
 
virtual void Deactivate ()
 
virtual void ChildWinDispose ()
 
virtual void Close ()
 
virtual void EndDialog ()
 

Private Types

enum  Radix : sal_Int16 {
  Radix::decimal = 10,
  Radix::hexadecimal = 16
}
 

Private Member Functions

void init ()
 
 DECL_DLLPRIVATE_LINK (FontSelectHdl, weld::ComboBox &, void)
 
 DECL_DLLPRIVATE_LINK (SubsetSelectHdl, weld::ComboBox &, void)
 
 DECL_DLLPRIVATE_LINK (CharDoubleClickHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (CharSelectHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (CharHighlightHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (CharPreSelectHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (FavClickHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (SearchCharDoubleClickHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (SearchCharSelectHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (SearchCharHighlightHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (SearchCharPreSelectHdl, SvxShowCharSet *, void)
 
 DECL_DLLPRIVATE_LINK (DecimalCodeChangeHdl, weld::Entry &, void)
 
 DECL_DLLPRIVATE_LINK (HexCodeChangeHdl, weld::Entry &, void)
 
 DECL_DLLPRIVATE_LINK (CharClickHdl, SvxCharView *, void)
 
 DECL_DLLPRIVATE_LINK (RecentClearClickHdl, SvxCharView *, void)
 
 DECL_DLLPRIVATE_LINK (FavClearClickHdl, SvxCharView *, void)
 
 DECL_DLLPRIVATE_LINK (RecentClearAllClickHdl, SvxCharView *, void)
 
 DECL_DLLPRIVATE_LINK (FavClearAllClickHdl, SvxCharView *, void)
 
 DECL_DLLPRIVATE_LINK (InsertClickHdl, weld::Button &, void)
 
 DECL_DLLPRIVATE_LINK (FavSelectHdl, weld::Button &, void)
 
 DECL_DLLPRIVATE_LINK (SearchUpdateHdl, weld::Entry &, void)
 
 DECL_DLLPRIVATE_LINK (SearchFieldGetFocusHdl, weld::Widget &, void)
 
void selectCharByCode (Radix radix)
 
std::pair< std::deque< OUString >::const_iterator, std::deque< OUString >::const_iterator > getRecentChar (std::u16string_view sTitle, std::u16string_view rFont) const
 
std::pair< std::deque< OUString >::const_iterator, std::deque< OUString >::const_iterator > getFavChar (std::u16string_view sTitle, std::u16string_view rFont) const
 

Static Private Member Functions

static void fillAllSubsets (weld::ComboBox &rListBox)
 

Private Attributes

ScopedVclPtr< VirtualDevicem_xVirDev
 
vcl::Font aFont
 
std::unique_ptr< const SubsetMappSubsetMap
 
bool isSearchMode
 
css::uno::Reference< css::frame::XFrame > m_xFrame
 
std::deque< OUString > maRecentCharList
 
std::deque< OUString > maRecentCharFontList
 
std::deque< OUString > maFavCharList
 
std::deque< OUString > maFavCharFontList
 
uno::Reference< uno::XComponentContext > mxContext
 
SvxCharView m_aRecentCharView [16]
 
SvxCharView m_aFavCharView [16]
 
SvxShowText m_aShowChar
 
std::unique_ptr< weld::Buttonm_xOKBtn
 
std::unique_ptr< weld::Labelm_xFontText
 
std::unique_ptr< weld::ComboBoxm_xFontLB
 
std::unique_ptr< weld::Labelm_xSubsetText
 
std::unique_ptr< weld::ComboBoxm_xSubsetLB
 
std::unique_ptr< weld::Entrym_xSearchText
 
std::unique_ptr< weld::Entrym_xHexCodeText
 
std::unique_ptr< weld::Entrym_xDecimalCodeText
 
std::unique_ptr< weld::Buttonm_xFavouritesBtn
 
std::unique_ptr< weld::Labelm_xCharName
 
std::unique_ptr< weld::Widgetm_xRecentGrid
 
std::unique_ptr< weld::Widgetm_xFavGrid
 
std::unique_ptr< weld::CustomWeldm_xShowChar
 
std::unique_ptr< weld::CustomWeldm_xRecentCharView [16]
 
std::unique_ptr< weld::CustomWeldm_xFavCharView [16]
 
std::unique_ptr< SvxShowCharSetm_xShowSet
 
std::unique_ptr< weld::CustomWeldm_xShowSetArea
 
std::unique_ptr< SvxSearchCharSetm_xSearchSet
 
std::unique_ptr< weld::CustomWeldm_xSearchSetArea
 
std::unique_ptr< SfxAllItemSetm_xOutputSet
 

Detailed Description

The main purpose of this dialog is to enable the use of characters that are not easily accessible from the keyboard.

Definition at line 76 of file cuicharmap.hxx.

Member Enumeration Documentation

enum SvxCharacterMap::Radix : sal_Int16
strongprivate
Enumerator
decimal 
hexadecimal 

Definition at line 118 of file cuicharmap.hxx.

Constructor & Destructor Documentation

SvxCharacterMap::SvxCharacterMap ( weld::Widget pParent,
const SfxItemSet pSet,
const css::uno::Reference< css::frame::XFrame > &  rFrame 
)

Definition at line 54 of file cuicharmap.cxx.

References Create(), getProcessComponentContext(), m_xFrame, m_xVirDev, and mxContext.

Member Function Documentation

SvxCharacterMap::DECL_DLLPRIVATE_LINK ( FontSelectHdl  ,
weld::ComboBox ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SubsetSelectHdl  ,
weld::ComboBox ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( CharDoubleClickHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( CharSelectHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( CharHighlightHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( CharPreSelectHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( FavClickHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchCharDoubleClickHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchCharSelectHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchCharHighlightHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchCharPreSelectHdl  ,
SvxShowCharSet ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( DecimalCodeChangeHdl  ,
weld::Entry ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( HexCodeChangeHdl  ,
weld::Entry ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( CharClickHdl  ,
SvxCharView ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( RecentClearClickHdl  ,
SvxCharView ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( FavClearClickHdl  ,
SvxCharView ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( RecentClearAllClickHdl  ,
SvxCharView ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( FavClearAllClickHdl  ,
SvxCharView ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( InsertClickHdl  ,
weld::Button ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( FavSelectHdl  ,
weld::Button ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchUpdateHdl  ,
weld::Entry ,
void   
)
private
SvxCharacterMap::DECL_DLLPRIVATE_LINK ( SearchFieldGetFocusHdl  ,
weld::Widget ,
void   
)
private
void SvxCharacterMap::deleteFavCharacterFromList ( std::u16string_view  rChar,
std::u16string_view  rFont 
)
void SvxCharacterMap::DisableFontSelection ( )

Definition at line 219 of file cuicharmap.cxx.

References m_xFontLB, and m_xFontText.

Referenced by GetSpecialCharsForEdit(), IMPL_LINK(), and SvxCharTwoLinesPage::SelectCharacter().

void SvxCharacterMap::fillAllSubsets ( weld::ComboBox rListBox)
staticprivate
sal_UCS4 SvxCharacterMap::GetChar ( ) const
const vcl::Font& SvxCharacterMap::GetCharFont ( ) const
inline

Definition at line 161 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG().

std::pair< std::deque< OUString >::const_iterator, std::deque< OUString >::const_iterator > SvxCharacterMap::getFavChar ( std::u16string_view  sTitle,
std::u16string_view  rFont 
) const
private
void SvxCharacterMap::getFavCharacterList ( )

Definition at line 249 of file cuicharmap.cxx.

References maFavCharFontList, and maFavCharList.

Referenced by IMPL_LINK_NOARG(), and init().

const SfxItemSet* SvxCharacterMap::GetOutputItemSet ( ) const
inline

Definition at line 157 of file cuicharmap.hxx.

std::pair< std::deque< OUString >::const_iterator, std::deque< OUString >::const_iterator > SvxCharacterMap::getRecentChar ( std::u16string_view  sTitle,
std::u16string_view  rFont 
) const
private

Definition at line 290 of file cuicharmap.cxx.

References findInPair(), maRecentCharFontList, and maRecentCharList.

Referenced by IMPL_LINK(), and updateRecentCharacterList().

void SvxCharacterMap::getRecentCharacterList ( )

Definition at line 226 of file cuicharmap.cxx.

References maRecentCharFontList, and maRecentCharList.

Referenced by init().

void SvxCharacterMap::init ( )
private
void SvxCharacterMap::insertCharToDoc ( const OUString &  sChar)
bool SvxCharacterMap::isFavChar ( std::u16string_view  sTitle,
std::u16string_view  rFont 
)

Definition at line 574 of file cuicharmap.cxx.

References getFavChar(), maFavCharFontList, and maFavCharList.

Referenced by setFavButtonState().

short SvxCharacterMap::run ( )
overridevirtual
void SvxCharacterMap::selectCharByCode ( Radix  radix)
private
void SvxCharacterMap::set_title ( const OUString &  rTitle)
inline

Definition at line 155 of file cuicharmap.hxx.

References m_xDialog.

Referenced by IMPL_LINK().

void SvxCharacterMap::SetChar ( sal_UCS4  c)
void SvxCharacterMap::SetCharFont ( const vcl::Font rFont)
void SvxCharacterMap::setCharName ( sal_UCS4  nDecimalValue)

Definition at line 736 of file cuicharmap.cxx.

References m_xCharName.

Referenced by IMPL_LINK(), IMPL_LINK_NOARG(), and init().

void SvxCharacterMap::setFavButtonState ( std::u16string_view  sTitle,
std::u16string_view  rFont 
)

Definition at line 581 of file cuicharmap.cxx.

References CuiResId(), isFavChar(), m_xFavouritesBtn, and maFavCharList.

Referenced by IMPL_LINK(), IMPL_LINK_NOARG(), init(), run(), and SetChar().

void SvxCharacterMap::toggleSearchView ( bool  state)

Definition at line 717 of file cuicharmap.cxx.

References isSearchMode, m_xDecimalCodeText, m_xHexCodeText, m_xSearchSet, m_xShowSet, and m_xSubsetLB.

Referenced by IMPL_LINK_NOARG().

void SvxCharacterMap::updateFavCharacterList ( const OUString &  rChar,
const OUString &  rFont 
)
void SvxCharacterMap::updateFavCharControl ( )
void SvxCharacterMap::updateRecentCharacterList ( const OUString &  rChar,
const OUString &  rFont 
)
void SvxCharacterMap::updateRecentCharControl ( )

Member Data Documentation

vcl::Font SvxCharacterMap::aFont
private

Definition at line 82 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), insertCharToDoc(), SetChar(), and SetCharFont().

bool SvxCharacterMap::isSearchMode
private

Definition at line 84 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), and toggleSearchView().

SvxCharView SvxCharacterMap::m_aFavCharView[16]
private

Definition at line 93 of file cuicharmap.hxx.

Referenced by init(), and updateFavCharControl().

SvxCharView SvxCharacterMap::m_aRecentCharView[16]
private

Definition at line 92 of file cuicharmap.hxx.

Referenced by init(), and updateRecentCharControl().

SvxShowText SvxCharacterMap::m_aShowChar
private

Definition at line 94 of file cuicharmap.hxx.

Referenced by GetChar(), IMPL_LINK(), IMPL_LINK_NOARG(), init(), run(), and selectCharByCode().

std::unique_ptr<weld::Label> SvxCharacterMap::m_xCharName
private

Definition at line 105 of file cuicharmap.hxx.

Referenced by selectCharByCode(), and setCharName().

std::unique_ptr<weld::Entry> SvxCharacterMap::m_xDecimalCodeText
private

Definition at line 103 of file cuicharmap.hxx.

Referenced by IMPL_LINK(), IMPL_LINK_NOARG(), init(), selectCharByCode(), and toggleSearchView().

std::unique_ptr<weld::CustomWeld> SvxCharacterMap::m_xFavCharView[16]
private

Definition at line 110 of file cuicharmap.hxx.

std::unique_ptr<weld::Widget> SvxCharacterMap::m_xFavGrid
private

Definition at line 107 of file cuicharmap.hxx.

std::unique_ptr<weld::Button> SvxCharacterMap::m_xFavouritesBtn
private

Definition at line 104 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), and setFavButtonState().

std::unique_ptr<weld::ComboBox> SvxCharacterMap::m_xFontLB
private

Definition at line 98 of file cuicharmap.hxx.

Referenced by DisableFontSelection(), IMPL_LINK_NOARG(), init(), and SetCharFont().

std::unique_ptr<weld::Label> SvxCharacterMap::m_xFontText
private

Definition at line 97 of file cuicharmap.hxx.

Referenced by DisableFontSelection().

css::uno::Reference<css::frame::XFrame> SvxCharacterMap::m_xFrame
private

Definition at line 85 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), and insertCharToDoc().

std::unique_ptr<weld::Entry> SvxCharacterMap::m_xHexCodeText
private

Definition at line 102 of file cuicharmap.hxx.

Referenced by IMPL_LINK(), IMPL_LINK_NOARG(), init(), selectCharByCode(), and toggleSearchView().

std::unique_ptr<weld::Button> SvxCharacterMap::m_xOKBtn
private

Definition at line 96 of file cuicharmap.hxx.

Referenced by IMPL_LINK(), IMPL_LINK_NOARG(), init(), and run().

std::unique_ptr<SfxAllItemSet> SvxCharacterMap::m_xOutputSet
private

Definition at line 116 of file cuicharmap.hxx.

Referenced by insertCharToDoc().

std::unique_ptr<weld::CustomWeld> SvxCharacterMap::m_xRecentCharView[16]
private

Definition at line 109 of file cuicharmap.hxx.

std::unique_ptr<weld::Widget> SvxCharacterMap::m_xRecentGrid
private

Definition at line 106 of file cuicharmap.hxx.

std::unique_ptr<SvxSearchCharSet> SvxCharacterMap::m_xSearchSet
private

Definition at line 113 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), toggleSearchView(), and updateFavCharControl().

std::unique_ptr<weld::CustomWeld> SvxCharacterMap::m_xSearchSetArea
private

Definition at line 114 of file cuicharmap.hxx.

std::unique_ptr<weld::Entry> SvxCharacterMap::m_xSearchText
private

Definition at line 101 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), and init().

std::unique_ptr<weld::CustomWeld> SvxCharacterMap::m_xShowChar
private

Definition at line 108 of file cuicharmap.hxx.

std::unique_ptr<SvxShowCharSet> SvxCharacterMap::m_xShowSet
private
std::unique_ptr<weld::CustomWeld> SvxCharacterMap::m_xShowSetArea
private

Definition at line 112 of file cuicharmap.hxx.

std::unique_ptr<weld::ComboBox> SvxCharacterMap::m_xSubsetLB
private

Definition at line 100 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), SetCharFont(), and toggleSearchView().

std::unique_ptr<weld::Label> SvxCharacterMap::m_xSubsetText
private

Definition at line 99 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG().

ScopedVclPtr<VirtualDevice> SvxCharacterMap::m_xVirDev
private

Definition at line 81 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG(), init(), SetCharFont(), and SvxCharacterMap().

std::deque<OUString> SvxCharacterMap::maFavCharFontList
private
std::deque<OUString> SvxCharacterMap::maFavCharList
private
std::deque<OUString> SvxCharacterMap::maRecentCharFontList
private
std::deque<OUString> SvxCharacterMap::maRecentCharList
private
uno::Reference<uno::XComponentContext> SvxCharacterMap::mxContext
private
std::unique_ptr<const SubsetMap> SvxCharacterMap::pSubsetMap
private

Definition at line 83 of file cuicharmap.hxx.

Referenced by IMPL_LINK_NOARG().


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