10#ifndef INCLUDED_VCL_BUILDER_HXX
11#define INCLUDED_VCL_BUILDER_HXX
71 typedef std::map<OString, std::pair<OString, OString>>
accelmap;
77 const OString& sID = OString(),
78 const css::uno::Reference<css::frame::XFrame>& rFrame
79 = css::uno::Reference<css::frame::XFrame>(),
84 void disposeBuilder();
86 template <
typename T> T*
get(
VclPtr<T>& ret,
const OString& sID);
89 template <
typename T = vcl::Window> T*
get(
const OString& sID);
94 PopupMenu* get_menu(std::string_view sID);
103 void setDeferredProperties();
111 static SymbolType mapStockToSymbol(std::u16string_view icon_name);
134 : m_bVerticalOrient(bVerticalOrient)
148 , m_aPackingData(bVertical)
212 , m_nActiveId(nActiveId)
219 typedef std::vector<OUString>
row;
223 const ListStore* get_model_by_name(
const OString& sID)
const;
224 void mungeModel(
ListBox &rTarget,
const ListStore &rStore, sal_uInt16 nActiveId);
225 void mungeModel(
ComboBox &rTarget,
const ListStore &rStore, sal_uInt16 nActiveId);
229 const TextBuffer* get_buffer_by_name(
const OString& sID)
const;
234 const Adjustment* get_adjustment_by_name(
const OString& sID)
const;
239 static void mungeAdjustment(
Slider &rTarget,
const Adjustment &rAdjustment);
305 void delete_by_name(
const OString& sID);
324 const OString &rClass,
const OString &rID,
329 const OString &rClass,
const OString &rID,
332 void connectNumericFormatterAdjustment(
const OString &
id,
const OUString &rAdjustment);
333 void connectFormattedFormatterAdjustment(
const OString &
id,
const OUString &rAdjustment);
335 static int getImageSize(
const stringmap &rMap);
337 void extractGroup(
const OString &
id,
stringmap &rVec);
338 void extractModel(
const OString &
id,
stringmap &rVec);
339 void extractBuffer(
const OString &
id,
stringmap &rVec);
340 static bool extractAdjustmentToMap(
const OString &
id,
stringmap &rVec, std::vector<WidgetAdjustmentMap>& rAdjustmentMap);
341 void extractButtonImage(
const OString &
id,
stringmap &rMap,
bool bRadio);
342 void extractMnemonicWidget(
const OString &
id,
stringmap &rMap);
349 static std::vector<vcl::EnumContext::Context> handleStyle(
xmlreader::XmlReader &reader,
int &nPriority);
358 void insertMenuObject(
361 const OString &rClass,
370 void handleListStore(
xmlreader::XmlReader &reader,
const OString &rID, std::string_view rClass);
385 void set_window_packing_position(
const vcl::Window *pWindow, sal_Int32 nPosition);
390 void set_response(std::string_view sID,
short nResponse);
392 OString get_by_window(
const vcl::Window *pWindow)
const;
423 SAL_WARN_IF(!
w,
"vcl.layout",
"widget \"" << sID <<
"\" not found in .ui");
425 "vcl.layout",
".ui widget \"" << sID <<
"\" needs to correspond to vcl type " <<
typeid(T).
name());
427 assert(
dynamic_cast<T*
>(
w));
428 ret =
static_cast<T*
>(
w);
438 "vcl.layout",
".ui widget \"" << sID <<
"\" needs to correspond to vcl type " <<
typeid(T).
name());
439 assert(!
w ||
dynamic_cast<T*
>(
w));
440 return static_cast<T*
>(
w);
VCL_DLLPUBLIC bool toBool(std::u16string_view rValue)
A widget used to choose from a list of items and which has an entry.
A widget used to choose from a list of items and which has no entry.
sortIntoBestTabTraversalOrder(VclBuilder *pBuilder)
Creates a hierarchy of vcl::Windows (widgets) from a .ui file for dialogs, sidebar,...
const OString & getUIFile() const
return UI-File name (without '.ui')
stringmap m_aDeferredProperties
UStringPair WidgetAdjustmentMap
VclPtr< vcl::Window > m_pParent
css::uno::Reference< css::frame::XFrame > m_xFrame
XFrame to be able to extract labels and other properties of the UNO commands (like of ....
VclBuilder(const VclBuilder &)=delete
bool m_bToplevelHasDeferredInit
std::vector< WinAndId > m_aChildren
std::map< OString, OUString > stringmap
bool m_bToplevelHasDeferredProperties
std::vector< std::unique_ptr< OUString > > m_aUserData
ResHookProc m_pStringReplace
bool m_bToplevelParentFound
UStringPair ButtonMenuMap
std::map< OString, std::pair< OString, OString > > accelmap
StringPair RadioButtonGroupMap
T * get(VclPtr< T > &ret, const OString &sID)
std::vector< MenuAndId > m_aMenus
vcl::Window * get_by_name(std::string_view sID)
std::unique_ptr< ParserState > m_pParserState
std::map< OString, int > ImageSizeMap
VclBuilder & operator=(const VclBuilder &)=delete
UStringPair TextBufferMap
UStringPair MnemonicWidgetMap
std::unique_ptr< NotebookBarAddonsItem > m_pNotebookBarAddonsItem
reference_type * get() const
Get the body.
#define SAL_WARN_IF(condition, area, stream)
void ensureDefaultWidthChars(VclBuilder::stringmap &rMap)
sal_Int16 getRoleFromName(const OString &roleName)
void set_properties(vcl::Window *pWindow, const VclBuilder::stringmap &rProps)
OUString convertMnemonicMarkup(std::u16string_view rIn)
bool extractDropdown(VclBuilder::stringmap &rMap)
OUString extractCustomProperty(VclBuilder::stringmap &rMap)
void reorderWithinParent(vcl::Window &rWindow, sal_uInt16 nNewPosition)
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
OUString(* ResHookProc)(const OUString &rStr)
ComboBoxTextItem(const OUString &rItem, const OString &rId)
ComboBoxModelMap(const OString &rId, const OUString &rValue, sal_Int32 nActiveId)
std::vector< row > m_aEntries
std::vector< OUString > row
PackingData(bool bVerticalOrient=false)
ToolBoxItemId m_nLastToolbarId
std::vector< MnemonicWidgetMap > m_aMnemonicWidgetMaps
std::vector< ButtonImageWidgetMap > m_aButtonImageWidgetMaps
ImageSizeMap m_aImageSizeMap
std::vector< WidgetAdjustmentMap > m_aScrollAdjustmentMaps
std::vector< RadioButtonGroupMap > m_aGroupMaps
std::vector< VclPtr< MessageDialog > > m_aMessageDialogs
std::vector< SizeGroup > m_aSizeGroups
std::vector< WidgetAdjustmentMap > m_aFormattedFormatterAdjustmentMaps
std::vector< TextBufferMap > m_aTextBufferMaps
std::map< VclPtr< vcl::Window >, stringmap > m_aAtkInfo
std::map< OString, TextBuffer > m_aTextBuffers
std::vector< WidgetAdjustmentMap > m_aSliderAdjustmentMaps
sal_uInt16 m_nLastMenuItemId
std::vector< ButtonMenuMap > m_aButtonMenuMaps
std::map< VclPtr< vcl::Window >, VclPtr< vcl::Window > > m_aRedundantParentWidgets
std::map< OString, Adjustment > m_aAdjustments
std::vector< ComboBoxModelMap > m_aModelMaps
std::map< OString, ListStore > m_aModels
std::vector< WidgetAdjustmentMap > m_aNumericFormatterAdjustmentMaps
std::vector< VclPtr< VclExpander > > m_aExpanderWidgets
std::vector< OString > m_aWidgets
StringPair(const OString &rId, const OString &rValue)
UStringPair(const OString &rId, const OUString &rValue)
WinAndId(const OString &rId, vcl::Window *pWindow, bool bVertical)
PackingData m_aPackingData
VclPtr< vcl::Window > m_pWindow