X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c105dda0810d927d8531e4949ada0b407a1cbebd..9d5507f7a2701395e1d5c121bd877bb9066ee6ea:/src/gtk/hyperlink.cpp diff --git a/src/gtk/hyperlink.cpp b/src/gtk/hyperlink.cpp index 4093de2957..d9d9ea1420 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" @@ -37,7 +37,7 @@ // local functions // ---------------------------------------------------------------------------- -inline bool UseNative() +static inline bool UseNative() { // native gtk_link_button widget is only available in GTK+ 2.10 and later return !gtk_check_version(2, 10, 0); @@ -76,9 +76,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 +84,7 @@ bool wxHyperlinkCtrl::Create(wxWindow *parent, wxWindowID id, } m_widget = gtk_link_button_new("asdfsaf asdfdsaf asdfdsa"); - gtk_widget_show( GTK_WIDGET(m_widget) ); + gtk_widget_show(m_widget); // alignment float x_alignment = 0.5; @@ -113,7 +110,7 @@ bool wxHyperlinkCtrl::Create(wxWindow *parent, wxWindowID id, // wxWindowGTK will connect to the enter_notify and leave_notify GTK+ signals // thus overriding GTK+'s internal signal handlers which set the cursor of - // the widget - thus we need to manually set it here: + // the widget - thus we need to manually set it here: SetCursor(wxCursor(wxCURSOR_HAND)); } else @@ -144,7 +141,7 @@ void wxHyperlinkCtrl::SetLabel(const wxString &label) void wxHyperlinkCtrl::SetURL(const wxString &uri) { if ( UseNative() ) - gtk_link_button_set_uri(GTK_LINK_BUTTON(m_widget), uri.c_str()); + gtk_link_button_set_uri(GTK_LINK_BUTTON(m_widget), wxGTK_CONV(uri)); else wxGenericHyperlinkCtrl::SetURL(uri); } @@ -154,7 +151,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(str, *wxConvFileName); } return wxGenericHyperlinkCtrl::GetURL(); @@ -172,21 +169,21 @@ void wxHyperlinkCtrl::SetNormalColour(const wxColour &colour) wxColour wxHyperlinkCtrl::GetNormalColour() const { + wxColour ret; if ( UseNative() ) { GdkColor *link_color = NULL; - wxColour ret = wxNullColour; // convert GdkColor in wxColour gtk_widget_style_get(m_widget, "link-color", &link_color, NULL); if (link_color) - ret.Set(link_color->red, link_color->green, link_color->blue); + ret = wxColour(*link_color); gdk_color_free (link_color); - - return ret; } else - return wxGenericHyperlinkCtrl::GetNormalColour(); + ret = wxGenericHyperlinkCtrl::GetNormalColour(); + + return ret; } void wxHyperlinkCtrl::SetVisitedColour(const wxColour &colour) @@ -201,21 +198,21 @@ void wxHyperlinkCtrl::SetVisitedColour(const wxColour &colour) wxColour wxHyperlinkCtrl::GetVisitedColour() const { + wxColour ret; if ( UseNative() ) { GdkColor *link_color = NULL; - wxColour ret = wxNullColour; // convert GdkColor in wxColour gtk_widget_style_get(m_widget, "visited-link-color", &link_color, NULL); if (link_color) - ret.Set(link_color->red, link_color->green, link_color->blue); + ret = wxColour(*link_color); gdk_color_free (link_color); - - return ret; } else return wxGenericHyperlinkCtrl::GetVisitedColour(); + + return ret; } void wxHyperlinkCtrl::SetHoverColour(const wxColour &colour)