Merge branch 'qt-notebk-fixes' of https://github.com/AliKet/wxWidgets

wxQt notebook fixes.

See #22997.
This commit is contained in:
Vadim Zeitlin 2022-11-27 00:32:41 +01:00
commit 58f5a885ec
2 changed files with 26 additions and 1 deletions

View file

@ -52,6 +52,8 @@ public:
protected:
virtual wxWindow *DoRemovePage(size_t page) override;
virtual void OnImagesChanged() override;
private:
QTabWidget *m_qtTabWidget;

View file

@ -75,7 +75,17 @@ bool wxNotebook::Create(wxWindow *parent,
{
m_qtTabWidget = new wxQtTabWidget( parent, this );
return QtCreateControl( parent, id, pos, size, style, wxDefaultValidator, name );
if ( !QtCreateControl( parent, id, pos, size, style, wxDefaultValidator, name ) )
return false;
if ( m_windowStyle & wxBK_RIGHT )
m_qtTabWidget->setTabPosition( QTabWidget::East );
else if ( m_windowStyle & wxBK_LEFT )
m_qtTabWidget->setTabPosition( QTabWidget::West );
else if ( m_windowStyle & wxBK_BOTTOM )
m_qtTabWidget->setTabPosition( QTabWidget::South );
return true;
}
void wxNotebook::SetPadding(const wxSize& WXUNUSED(padding))
@ -127,6 +137,19 @@ bool wxNotebook::SetPageImage(size_t n, int imageId)
return true;
}
void wxNotebook::OnImagesChanged()
{
if ( HasImages() )
{
wxImageList* const imageList = GetUpdatedImageListFor(this);
int width, height;
imageList->GetSize(0, width, height);
m_qtTabWidget->setIconSize(QSize(width, height));
m_qtTabWidget->update();
}
}
bool wxNotebook::InsertPage(size_t n, wxWindow *page, const wxString& text,
bool bSelect, int imageId)
{