X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e678981e9a19bbba85d4ee9eb9bae5cb2fab7483..4cf1a9bf4af038e88d2a9fffdc7f919fa91e7572:/src/gtk/hyperlink.cpp diff --git a/src/gtk/hyperlink.cpp b/src/gtk/hyperlink.cpp index 697d7e358b..21610311c5 100644 --- a/src/gtk/hyperlink.cpp +++ b/src/gtk/hyperlink.cpp @@ -23,7 +23,7 @@ #pragma hdrstop #endif -#if wxUSE_HYPERLINKCTRL && defined(__WXGTK210__) +#if wxUSE_HYPERLINKCTRL && defined(__WXGTK210__) && !defined(__WXUNIVERSAL__) #include "wx/hyperlink.h" @@ -47,9 +47,6 @@ static inline bool UseNative() // implementation // ============================================================================ -IMPLEMENT_DYNAMIC_CLASS(wxHyperlinkCtrl, wxGenericHyperlinkCtrl) - - // ---------------------------------------------------------------------------- // "clicked" // ---------------------------------------------------------------------------- @@ -76,9 +73,6 @@ bool wxHyperlinkCtrl::Create(wxWindow *parent, wxWindowID id, // do validation checks: CheckParams(label, url, style); - m_needParent = true; - m_acceptsFocus = true; - if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { @@ -87,7 +81,8 @@ bool wxHyperlinkCtrl::Create(wxWindow *parent, wxWindowID id, } m_widget = gtk_link_button_new("asdfsaf asdfdsaf asdfdsa"); - gtk_widget_show( GTK_WIDGET(m_widget) ); + g_object_ref(m_widget); + gtk_widget_show(m_widget); // alignment float x_alignment = 0.5; @@ -109,7 +104,6 @@ bool wxHyperlinkCtrl::Create(wxWindow *parent, wxWindowID id, m_parent->DoAddChild( this ); PostCreation(size); - SetInitialSize(size); // wxWindowGTK will connect to the enter_notify and leave_notify GTK+ signals // thus overriding GTK+'s internal signal handlers which set the cursor of @@ -129,6 +123,13 @@ wxSize wxHyperlinkCtrl::DoGetBestSize() const return wxGenericHyperlinkCtrl::DoGetBestSize(); } +wxSize wxHyperlinkCtrl::DoGetBestClientSize() const +{ + if ( UseNative() ) + return wxControl::DoGetBestClientSize(); + return wxGenericHyperlinkCtrl::DoGetBestClientSize(); +} + void wxHyperlinkCtrl::SetLabel(const wxString &label) { if ( UseNative() ) @@ -154,7 +155,7 @@ wxString wxHyperlinkCtrl::GetURL() const if ( UseNative() ) { const gchar *str = gtk_link_button_get_uri(GTK_LINK_BUTTON(m_widget)); - return wxConvFileName->cMB2WX(str); + return wxString::FromUTF8(str); } return wxGenericHyperlinkCtrl::GetURL();