22#include <com/sun/star/util/XStringWidth.hpp>
26#include <osl/file.hxx>
43 : GenericDialogController(pParentWindow,
"uui/ui/filterselect.ui",
"FilterSelectDialog")
44 , m_pFilterNames(nullptr)
45 , m_xFtURL(m_xBuilder->weld_label(
"url"))
46 , m_xLbFilters(m_xBuilder->weld_tree_view(
"filters"))
116 bool bSelected =
false;
123 if (!sEntry.isEmpty())
129 pSelectedItem +=
nPos;
150class StringCalculator :
public ::cppu::WeakImplHelper<css::util::XStringWidth>
158 sal_Int32 SAL_CALL queryStringWidth(
const OUString& sString)
override
183 OUString sShortName(
sName);
185 if (osl::FileBase::getSystemPathFromFileURL(
sName, sShortName) == osl::FileBase::E_None)
193 css::uno::Reference<css::util::XStringWidth> xStringCalculator(
194 new StringCalculator(
m_xFtURL.get()));
195 if (xStringCalculator.is())
OUString getAbbreviated(css::uno::Reference< css::util::XStringWidth > const &rStringWidth, sal_Int32 nWidth, DecodeMechanism eMechanism=DecodeMechanism::ToIUri, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8) const
constexpr tools::Long Width() const
void ChangeFilters(const FilterNameList *pFilterNames)
void SetURL(const OUString &sURL)
FilterDialog(weld::Window *pParentWindow)
OUString impl_buildUIFileName(const OUString &sURL)
std::unique_ptr< weld::Label > m_xFtURL
std::unique_ptr< weld::TreeView > m_xLbFilters
bool AskForFilter(FilterNameListPtr &pSelectedItem)
const FilterNameList * m_pFilterNames
virtual ~FilterDialog() override
std::shared_ptr< weld::Dialog > m_xDialog
FilterNameList::const_iterator FilterNameListPtr
::std::vector< FilterNamePair > FilterNameList