@COND_TOOLKIT_MOTIF@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_MOTIF_ADVANCED_PLATFORM_HDR)
COND_TOOLKIT_MSW_ADVANCED_PLATFORM_HDR = \
wx/msw/commandlinkbutton.h \
+ wx/msw/hyperlink.h \
wx/msw/notifmsg.h \
wx/msw/sound.h \
wx/msw/taskbar.h \
@COND_TOOLKIT_PM@ wx/generic/animate.h wx/os2/joystick.h wx/os2/sound.h
COND_TOOLKIT_WINCE_ADVANCED_PLATFORM_HDR = \
wx/msw/commandlinkbutton.h \
+ wx/msw/hyperlink.h \
wx/msw/notifmsg.h \
wx/msw/sound.h \
wx/msw/taskbar.h
monodll_gtk_bmpcbox.o \
monodll_gtk_calctrl.o \
monodll_gtk_dataview.o \
- monodll_hyperlink.o
+ monodll_gtk_hyperlink.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS)
COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \
monodll_animateg.o \
monolib_gtk_bmpcbox.o \
monolib_gtk_calctrl.o \
monolib_gtk_dataview.o \
- monolib_hyperlink.o
+ monolib_gtk_hyperlink.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1)
COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \
monolib_animateg.o \
advdll_gtk_bmpcbox.o \
advdll_gtk_calctrl.o \
advdll_gtk_dataview.o \
- advdll_hyperlink.o
+ advdll_gtk_hyperlink.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2)
COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \
advdll_animateg.o \
advlib_gtk_bmpcbox.o \
advlib_gtk_calctrl.o \
advlib_gtk_dataview.o \
- advlib_hyperlink.o
+ advlib_gtk_hyperlink.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3)
COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \
advlib_animateg.o \
monodll_taskbarcmn.o \
monodll_msw_aboutdlg.o \
monodll_commandlinkbutton.o \
+ monodll_msw_hyperlink.o \
monodll_msw_notifmsg.o \
monodll_msw_sound.o \
monodll_msw_taskbar.o \
monodll_taskbarcmn.o \
monodll_msw_aboutdlg.o \
monodll_commandlinkbutton.o \
+ monodll_msw_hyperlink.o \
monodll_msw_notifmsg.o \
monodll_msw_sound.o \
monodll_msw_taskbar.o
monolib_taskbarcmn.o \
monolib_msw_aboutdlg.o \
monolib_commandlinkbutton.o \
+ monolib_msw_hyperlink.o \
monolib_msw_notifmsg.o \
monolib_msw_sound.o \
monolib_msw_taskbar.o \
monolib_taskbarcmn.o \
monolib_msw_aboutdlg.o \
monolib_commandlinkbutton.o \
+ monolib_msw_hyperlink.o \
monolib_msw_notifmsg.o \
monolib_msw_sound.o \
monolib_msw_taskbar.o
advdll_taskbarcmn.o \
advdll_msw_aboutdlg.o \
advdll_commandlinkbutton.o \
+ advdll_msw_hyperlink.o \
advdll_msw_notifmsg.o \
advdll_msw_sound.o \
advdll_msw_taskbar.o \
advdll_taskbarcmn.o \
advdll_msw_aboutdlg.o \
advdll_commandlinkbutton.o \
+ advdll_msw_hyperlink.o \
advdll_msw_notifmsg.o \
advdll_msw_sound.o \
advdll_msw_taskbar.o
advlib_taskbarcmn.o \
advlib_msw_aboutdlg.o \
advlib_commandlinkbutton.o \
+ advlib_msw_hyperlink.o \
advlib_msw_notifmsg.o \
advlib_msw_sound.o \
advlib_msw_taskbar.o \
advlib_taskbarcmn.o \
advlib_msw_aboutdlg.o \
advlib_commandlinkbutton.o \
+ advlib_msw_hyperlink.o \
advlib_msw_notifmsg.o \
advlib_msw_sound.o \
advlib_msw_taskbar.o
monodll_gtk_dataview.o: $(srcdir)/src/gtk/dataview.cpp $(MONODLL_ODEP)
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/dataview.cpp
-monodll_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONODLL_ODEP)
+monodll_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONODLL_ODEP)
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp
monodll_mediactrlcmn.o: $(srcdir)/src/common/mediactrlcmn.cpp $(MONODLL_ODEP)
@COND_TOOLKIT_WINCE_USE_GUI_1@monodll_commandlinkbutton.o: $(srcdir)/src/msw/commandlinkbutton.cpp $(MONODLL_ODEP)
@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/commandlinkbutton.cpp
+@COND_TOOLKIT_MSW_USE_GUI_1@monodll_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
+@COND_TOOLKIT_WINCE_USE_GUI_1@monodll_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
@COND_TOOLKIT_MSW_USE_GUI_1@monodll_msw_notifmsg.o: $(srcdir)/src/msw/notifmsg.cpp $(MONODLL_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/notifmsg.cpp
monolib_gtk_dataview.o: $(srcdir)/src/gtk/dataview.cpp $(MONOLIB_ODEP)
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/dataview.cpp
-monolib_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONOLIB_ODEP)
+monolib_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONOLIB_ODEP)
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp
monolib_mediactrlcmn.o: $(srcdir)/src/common/mediactrlcmn.cpp $(MONOLIB_ODEP)
@COND_TOOLKIT_WINCE_USE_GUI_1@monolib_commandlinkbutton.o: $(srcdir)/src/msw/commandlinkbutton.cpp $(MONOLIB_ODEP)
@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/commandlinkbutton.cpp
+@COND_TOOLKIT_MSW_USE_GUI_1@monolib_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
+@COND_TOOLKIT_WINCE_USE_GUI_1@monolib_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
@COND_TOOLKIT_MSW_USE_GUI_1@monolib_msw_notifmsg.o: $(srcdir)/src/msw/notifmsg.cpp $(MONOLIB_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/notifmsg.cpp
advdll_gtk_dataview.o: $(srcdir)/src/gtk/dataview.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/dataview.cpp
-advdll_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVDLL_ODEP)
+advdll_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp
advdll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(ADVDLL_ODEP)
@COND_TOOLKIT_WINCE@advdll_commandlinkbutton.o: $(srcdir)/src/msw/commandlinkbutton.cpp $(ADVDLL_ODEP)
@COND_TOOLKIT_WINCE@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/commandlinkbutton.cpp
+@COND_TOOLKIT_MSW@advdll_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(ADVDLL_ODEP)
+@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
+@COND_TOOLKIT_WINCE@advdll_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(ADVDLL_ODEP)
+@COND_TOOLKIT_WINCE@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
@COND_TOOLKIT_MSW@advdll_msw_notifmsg.o: $(srcdir)/src/msw/notifmsg.cpp $(ADVDLL_ODEP)
@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/notifmsg.cpp
advlib_gtk_dataview.o: $(srcdir)/src/gtk/dataview.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/dataview.cpp
-advlib_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVLIB_ODEP)
+advlib_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp
advlib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(ADVLIB_ODEP)
@COND_TOOLKIT_WINCE@advlib_commandlinkbutton.o: $(srcdir)/src/msw/commandlinkbutton.cpp $(ADVLIB_ODEP)
@COND_TOOLKIT_WINCE@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/commandlinkbutton.cpp
+@COND_TOOLKIT_MSW@advlib_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(ADVLIB_ODEP)
+@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
+@COND_TOOLKIT_WINCE@advlib_msw_hyperlink.o: $(srcdir)/src/msw/hyperlink.cpp $(ADVLIB_ODEP)
+@COND_TOOLKIT_WINCE@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/hyperlink.cpp
+
@COND_TOOLKIT_MSW@advlib_msw_notifmsg.o: $(srcdir)/src/msw/notifmsg.cpp $(ADVLIB_ODEP)
@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/notifmsg.cpp
src/common/taskbarcmn.cpp
src/msw/aboutdlg.cpp
src/msw/commandlinkbutton.cpp
+ src/msw/hyperlink.cpp
src/msw/notifmsg.cpp
src/msw/sound.cpp
src/msw/taskbar.cpp
</set>
<set var="ADVANCED_MSW_HDR" hints="files">
wx/msw/commandlinkbutton.h
+ wx/msw/hyperlink.h
wx/msw/notifmsg.h
wx/msw/sound.h
wx/msw/taskbar.h
$(OBJS)\monodll_taskbarcmn.obj \\r
$(OBJS)\monodll_aboutdlg.obj \\r
$(OBJS)\monodll_commandlinkbutton.obj \\r
+ $(OBJS)\monodll_hyperlink.obj \\r
$(OBJS)\monodll_notifmsg.obj \\r
$(OBJS)\monodll_sound.obj \\r
$(OBJS)\monodll_taskbar.obj \\r
$(OBJS)\monodll_taskbarcmn.obj \\r
$(OBJS)\monodll_aboutdlg.obj \\r
$(OBJS)\monodll_commandlinkbutton.obj \\r
+ $(OBJS)\monodll_hyperlink.obj \\r
$(OBJS)\monodll_notifmsg.obj \\r
$(OBJS)\monodll_sound.obj \\r
$(OBJS)\monodll_taskbar.obj \\r
$(OBJS)\monolib_taskbarcmn.obj \\r
$(OBJS)\monolib_aboutdlg.obj \\r
$(OBJS)\monolib_commandlinkbutton.obj \\r
+ $(OBJS)\monolib_hyperlink.obj \\r
$(OBJS)\monolib_notifmsg.obj \\r
$(OBJS)\monolib_sound.obj \\r
$(OBJS)\monolib_taskbar.obj \\r
$(OBJS)\monolib_taskbarcmn.obj \\r
$(OBJS)\monolib_aboutdlg.obj \\r
$(OBJS)\monolib_commandlinkbutton.obj \\r
+ $(OBJS)\monolib_hyperlink.obj \\r
$(OBJS)\monolib_notifmsg.obj \\r
$(OBJS)\monolib_sound.obj \\r
$(OBJS)\monolib_taskbar.obj \\r
$(OBJS)\advdll_taskbarcmn.obj \\r
$(OBJS)\advdll_aboutdlg.obj \\r
$(OBJS)\advdll_commandlinkbutton.obj \\r
+ $(OBJS)\advdll_hyperlink.obj \\r
$(OBJS)\advdll_notifmsg.obj \\r
$(OBJS)\advdll_sound.obj \\r
$(OBJS)\advdll_taskbar.obj \\r
$(OBJS)\advdll_taskbarcmn.obj \\r
$(OBJS)\advdll_aboutdlg.obj \\r
$(OBJS)\advdll_commandlinkbutton.obj \\r
+ $(OBJS)\advdll_hyperlink.obj \\r
$(OBJS)\advdll_notifmsg.obj \\r
$(OBJS)\advdll_sound.obj \\r
$(OBJS)\advdll_taskbar.obj \\r
$(OBJS)\advlib_taskbarcmn.obj \\r
$(OBJS)\advlib_aboutdlg.obj \\r
$(OBJS)\advlib_commandlinkbutton.obj \\r
+ $(OBJS)\advlib_hyperlink.obj \\r
$(OBJS)\advlib_notifmsg.obj \\r
$(OBJS)\advlib_sound.obj \\r
$(OBJS)\advlib_taskbar.obj \\r
$(OBJS)\advlib_taskbarcmn.obj \\r
$(OBJS)\advlib_aboutdlg.obj \\r
$(OBJS)\advlib_commandlinkbutton.obj \\r
+ $(OBJS)\advlib_hyperlink.obj \\r
$(OBJS)\advlib_notifmsg.obj \\r
$(OBJS)\advlib_sound.obj \\r
$(OBJS)\advlib_taskbar.obj \\r
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
!endif\r
\r
+!if "$(USE_GUI)" == "1"\r
+$(OBJS)\monodll_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+!endif\r
+\r
!if "$(USE_GUI)" == "1"\r
$(OBJS)\monodll_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
!endif\r
\r
+!if "$(USE_GUI)" == "1"\r
+$(OBJS)\monolib_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+!endif\r
+\r
!if "$(USE_GUI)" == "1"\r
$(OBJS)\monolib_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
$(OBJS)\advdll_commandlinkbutton.obj: ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
\r
+$(OBJS)\advdll_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+\r
$(OBJS)\advdll_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
\r
$(OBJS)\advlib_commandlinkbutton.obj: ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
\r
+$(OBJS)\advlib_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+\r
$(OBJS)\advlib_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
\r
$(OBJS)\monodll_taskbarcmn.o \\r
$(OBJS)\monodll_aboutdlg.o \\r
$(OBJS)\monodll_commandlinkbutton.o \\r
+ $(OBJS)\monodll_hyperlink.o \\r
$(OBJS)\monodll_notifmsg.o \\r
$(OBJS)\monodll_sound.o \\r
$(OBJS)\monodll_taskbar.o \\r
$(OBJS)\monodll_taskbarcmn.o \\r
$(OBJS)\monodll_aboutdlg.o \\r
$(OBJS)\monodll_commandlinkbutton.o \\r
+ $(OBJS)\monodll_hyperlink.o \\r
$(OBJS)\monodll_notifmsg.o \\r
$(OBJS)\monodll_sound.o \\r
$(OBJS)\monodll_taskbar.o \\r
$(OBJS)\monolib_taskbarcmn.o \\r
$(OBJS)\monolib_aboutdlg.o \\r
$(OBJS)\monolib_commandlinkbutton.o \\r
+ $(OBJS)\monolib_hyperlink.o \\r
$(OBJS)\monolib_notifmsg.o \\r
$(OBJS)\monolib_sound.o \\r
$(OBJS)\monolib_taskbar.o \\r
$(OBJS)\monolib_taskbarcmn.o \\r
$(OBJS)\monolib_aboutdlg.o \\r
$(OBJS)\monolib_commandlinkbutton.o \\r
+ $(OBJS)\monolib_hyperlink.o \\r
$(OBJS)\monolib_notifmsg.o \\r
$(OBJS)\monolib_sound.o \\r
$(OBJS)\monolib_taskbar.o \\r
$(OBJS)\advdll_taskbarcmn.o \\r
$(OBJS)\advdll_aboutdlg.o \\r
$(OBJS)\advdll_commandlinkbutton.o \\r
+ $(OBJS)\advdll_hyperlink.o \\r
$(OBJS)\advdll_notifmsg.o \\r
$(OBJS)\advdll_sound.o \\r
$(OBJS)\advdll_taskbar.o \\r
$(OBJS)\advdll_taskbarcmn.o \\r
$(OBJS)\advdll_aboutdlg.o \\r
$(OBJS)\advdll_commandlinkbutton.o \\r
+ $(OBJS)\advdll_hyperlink.o \\r
$(OBJS)\advdll_notifmsg.o \\r
$(OBJS)\advdll_sound.o \\r
$(OBJS)\advdll_taskbar.o \\r
$(OBJS)\advlib_taskbarcmn.o \\r
$(OBJS)\advlib_aboutdlg.o \\r
$(OBJS)\advlib_commandlinkbutton.o \\r
+ $(OBJS)\advlib_hyperlink.o \\r
$(OBJS)\advlib_notifmsg.o \\r
$(OBJS)\advlib_sound.o \\r
$(OBJS)\advlib_taskbar.o \\r
$(OBJS)\advlib_taskbarcmn.o \\r
$(OBJS)\advlib_aboutdlg.o \\r
$(OBJS)\advlib_commandlinkbutton.o \\r
+ $(OBJS)\advlib_hyperlink.o \\r
$(OBJS)\advlib_notifmsg.o \\r
$(OBJS)\advlib_sound.o \\r
$(OBJS)\advlib_taskbar.o \\r
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<\r
endif\r
\r
+ifeq ($(USE_GUI),1)\r
+$(OBJS)\monodll_hyperlink.o: ../../src/msw/hyperlink.cpp\r
+ $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<\r
+endif\r
+\r
ifeq ($(USE_GUI),1)\r
$(OBJS)\monodll_notifmsg.o: ../../src/msw/notifmsg.cpp\r
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<\r
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<\r
endif\r
\r
+ifeq ($(USE_GUI),1)\r
+$(OBJS)\monolib_hyperlink.o: ../../src/msw/hyperlink.cpp\r
+ $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<\r
+endif\r
+\r
ifeq ($(USE_GUI),1)\r
$(OBJS)\monolib_notifmsg.o: ../../src/msw/notifmsg.cpp\r
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<\r
$(OBJS)\advdll_commandlinkbutton.o: ../../src/msw/commandlinkbutton.cpp\r
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<\r
\r
+$(OBJS)\advdll_hyperlink.o: ../../src/msw/hyperlink.cpp\r
+ $(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<\r
+\r
$(OBJS)\advdll_notifmsg.o: ../../src/msw/notifmsg.cpp\r
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<\r
\r
$(OBJS)\advlib_commandlinkbutton.o: ../../src/msw/commandlinkbutton.cpp\r
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<\r
\r
+$(OBJS)\advlib_hyperlink.o: ../../src/msw/hyperlink.cpp\r
+ $(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<\r
+\r
$(OBJS)\advlib_notifmsg.o: ../../src/msw/notifmsg.cpp\r
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<\r
\r
$(OBJS)\monodll_taskbarcmn.obj \\r
$(OBJS)\monodll_aboutdlg.obj \\r
$(OBJS)\monodll_commandlinkbutton.obj \\r
+ $(OBJS)\monodll_hyperlink.obj \\r
$(OBJS)\monodll_notifmsg.obj \\r
$(OBJS)\monodll_sound.obj \\r
$(OBJS)\monodll_taskbar.obj \\r
$(OBJS)\monodll_taskbarcmn.obj \\r
$(OBJS)\monodll_aboutdlg.obj \\r
$(OBJS)\monodll_commandlinkbutton.obj \\r
+ $(OBJS)\monodll_hyperlink.obj \\r
$(OBJS)\monodll_notifmsg.obj \\r
$(OBJS)\monodll_sound.obj \\r
$(OBJS)\monodll_taskbar.obj \\r
$(OBJS)\monolib_taskbarcmn.obj \\r
$(OBJS)\monolib_aboutdlg.obj \\r
$(OBJS)\monolib_commandlinkbutton.obj \\r
+ $(OBJS)\monolib_hyperlink.obj \\r
$(OBJS)\monolib_notifmsg.obj \\r
$(OBJS)\monolib_sound.obj \\r
$(OBJS)\monolib_taskbar.obj \\r
$(OBJS)\monolib_taskbarcmn.obj \\r
$(OBJS)\monolib_aboutdlg.obj \\r
$(OBJS)\monolib_commandlinkbutton.obj \\r
+ $(OBJS)\monolib_hyperlink.obj \\r
$(OBJS)\monolib_notifmsg.obj \\r
$(OBJS)\monolib_sound.obj \\r
$(OBJS)\monolib_taskbar.obj \\r
$(OBJS)\advdll_taskbarcmn.obj \\r
$(OBJS)\advdll_aboutdlg.obj \\r
$(OBJS)\advdll_commandlinkbutton.obj \\r
+ $(OBJS)\advdll_hyperlink.obj \\r
$(OBJS)\advdll_notifmsg.obj \\r
$(OBJS)\advdll_sound.obj \\r
$(OBJS)\advdll_taskbar.obj \\r
$(OBJS)\advdll_taskbarcmn.obj \\r
$(OBJS)\advdll_aboutdlg.obj \\r
$(OBJS)\advdll_commandlinkbutton.obj \\r
+ $(OBJS)\advdll_hyperlink.obj \\r
$(OBJS)\advdll_notifmsg.obj \\r
$(OBJS)\advdll_sound.obj \\r
$(OBJS)\advdll_taskbar.obj \\r
$(OBJS)\advlib_taskbarcmn.obj \\r
$(OBJS)\advlib_aboutdlg.obj \\r
$(OBJS)\advlib_commandlinkbutton.obj \\r
+ $(OBJS)\advlib_hyperlink.obj \\r
$(OBJS)\advlib_notifmsg.obj \\r
$(OBJS)\advlib_sound.obj \\r
$(OBJS)\advlib_taskbar.obj \\r
$(OBJS)\advlib_taskbarcmn.obj \\r
$(OBJS)\advlib_aboutdlg.obj \\r
$(OBJS)\advlib_commandlinkbutton.obj \\r
+ $(OBJS)\advlib_hyperlink.obj \\r
$(OBJS)\advlib_notifmsg.obj \\r
$(OBJS)\advlib_sound.obj \\r
$(OBJS)\advlib_taskbar.obj \\r
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
!endif\r
\r
+!if "$(USE_GUI)" == "1"\r
+$(OBJS)\monodll_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+!endif\r
+\r
!if "$(USE_GUI)" == "1"\r
$(OBJS)\monodll_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
!endif\r
\r
+!if "$(USE_GUI)" == "1"\r
+$(OBJS)\monolib_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+!endif\r
+\r
!if "$(USE_GUI)" == "1"\r
$(OBJS)\monolib_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
$(OBJS)\advdll_commandlinkbutton.obj: ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
\r
+$(OBJS)\advdll_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+\r
$(OBJS)\advdll_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
\r
$(OBJS)\advlib_commandlinkbutton.obj: ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\commandlinkbutton.cpp\r
\r
+$(OBJS)\advlib_hyperlink.obj: ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\hyperlink.cpp\r
+\r
$(OBJS)\advlib_notifmsg.obj: ..\..\src\msw\notifmsg.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) ..\..\src\msw\notifmsg.cpp\r
\r
$(OBJS)\monodll_taskbarcmn.obj &\r
$(OBJS)\monodll_aboutdlg.obj &\r
$(OBJS)\monodll_commandlinkbutton.obj &\r
+ $(OBJS)\monodll_hyperlink.obj &\r
$(OBJS)\monodll_notifmsg.obj &\r
$(OBJS)\monodll_sound.obj &\r
$(OBJS)\monodll_taskbar.obj &\r
$(OBJS)\monodll_taskbarcmn.obj &\r
$(OBJS)\monodll_aboutdlg.obj &\r
$(OBJS)\monodll_commandlinkbutton.obj &\r
+ $(OBJS)\monodll_hyperlink.obj &\r
$(OBJS)\monodll_notifmsg.obj &\r
$(OBJS)\monodll_sound.obj &\r
$(OBJS)\monodll_taskbar.obj &\r
$(OBJS)\monolib_taskbarcmn.obj &\r
$(OBJS)\monolib_aboutdlg.obj &\r
$(OBJS)\monolib_commandlinkbutton.obj &\r
+ $(OBJS)\monolib_hyperlink.obj &\r
$(OBJS)\monolib_notifmsg.obj &\r
$(OBJS)\monolib_sound.obj &\r
$(OBJS)\monolib_taskbar.obj &\r
$(OBJS)\monolib_taskbarcmn.obj &\r
$(OBJS)\monolib_aboutdlg.obj &\r
$(OBJS)\monolib_commandlinkbutton.obj &\r
+ $(OBJS)\monolib_hyperlink.obj &\r
$(OBJS)\monolib_notifmsg.obj &\r
$(OBJS)\monolib_sound.obj &\r
$(OBJS)\monolib_taskbar.obj &\r
$(OBJS)\advdll_taskbarcmn.obj &\r
$(OBJS)\advdll_aboutdlg.obj &\r
$(OBJS)\advdll_commandlinkbutton.obj &\r
+ $(OBJS)\advdll_hyperlink.obj &\r
$(OBJS)\advdll_notifmsg.obj &\r
$(OBJS)\advdll_sound.obj &\r
$(OBJS)\advdll_taskbar.obj &\r
$(OBJS)\advdll_taskbarcmn.obj &\r
$(OBJS)\advdll_aboutdlg.obj &\r
$(OBJS)\advdll_commandlinkbutton.obj &\r
+ $(OBJS)\advdll_hyperlink.obj &\r
$(OBJS)\advdll_notifmsg.obj &\r
$(OBJS)\advdll_sound.obj &\r
$(OBJS)\advdll_taskbar.obj &\r
$(OBJS)\advlib_taskbarcmn.obj &\r
$(OBJS)\advlib_aboutdlg.obj &\r
$(OBJS)\advlib_commandlinkbutton.obj &\r
+ $(OBJS)\advlib_hyperlink.obj &\r
$(OBJS)\advlib_notifmsg.obj &\r
$(OBJS)\advlib_sound.obj &\r
$(OBJS)\advlib_taskbar.obj &\r
$(OBJS)\advlib_taskbarcmn.obj &\r
$(OBJS)\advlib_aboutdlg.obj &\r
$(OBJS)\advlib_commandlinkbutton.obj &\r
+ $(OBJS)\advlib_hyperlink.obj &\r
$(OBJS)\advlib_notifmsg.obj &\r
$(OBJS)\advlib_sound.obj &\r
$(OBJS)\advlib_taskbar.obj &\r
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<\r
!endif\r
\r
+!ifeq USE_GUI 1\r
+$(OBJS)\monodll_hyperlink.obj : .AUTODEPEND ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<\r
+!endif\r
+\r
!ifeq USE_GUI 1\r
$(OBJS)\monodll_notifmsg.obj : .AUTODEPEND ..\..\src\msw\notifmsg.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<\r
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<\r
!endif\r
\r
+!ifeq USE_GUI 1\r
+$(OBJS)\monolib_hyperlink.obj : .AUTODEPEND ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<\r
+!endif\r
+\r
!ifeq USE_GUI 1\r
$(OBJS)\monolib_notifmsg.obj : .AUTODEPEND ..\..\src\msw\notifmsg.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<\r
$(OBJS)\advdll_commandlinkbutton.obj : .AUTODEPEND ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<\r
\r
+$(OBJS)\advdll_hyperlink.obj : .AUTODEPEND ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<\r
+\r
$(OBJS)\advdll_notifmsg.obj : .AUTODEPEND ..\..\src\msw\notifmsg.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<\r
\r
$(OBJS)\advlib_commandlinkbutton.obj : .AUTODEPEND ..\..\src\msw\commandlinkbutton.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<\r
\r
+$(OBJS)\advlib_hyperlink.obj : .AUTODEPEND ..\..\src\msw\hyperlink.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<\r
+\r
$(OBJS)\advlib_notifmsg.obj : .AUTODEPEND ..\..\src\msw\notifmsg.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<\r
\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\src\msw\hyperlink.cpp\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\src\msw\joystick.cpp\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\msw\hyperlink.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\msw\joystick.h\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\msw\hyperlink.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\msw\icon.h\r
# End Source File\r
# Begin Source File\r
Name="DLL Universal Release|Win32"\r
ExcludedFromBuild="TRUE"/>\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\msw\hyperlink.cpp">\r
+ </File>\r
<File\r
RelativePath="..\..\src\msw\joystick.cpp">\r
</File>\r
AdditionalDependencies=""..\..\lib\vc_dll\mswunivu\wx\msw""/>\r
</FileConfiguration>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h">\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\joystick.h">\r
</File>\r
<File\r
RelativePath="..\..\include\wx\msw\htmlhelp.h">\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h">\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\icon.h">\r
</File>\r
ExcludedFromBuild="true"\r
/>\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\msw\hyperlink.cpp"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\src\msw\joystick.cpp"\r
>\r
/>\r
</FileConfiguration>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\joystick.h"\r
>\r
RelativePath="..\..\include\wx\msw\htmlhelp.h"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\icon.h"\r
>\r
ExcludedFromBuild="true"\r
/>\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\msw\hyperlink.cpp"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\src\msw\joystick.cpp"\r
>\r
/>\r
</FileConfiguration>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\joystick.h"\r
>\r
RelativePath="..\..\include\wx\msw\htmlhelp.h"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\msw\hyperlink.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msw\icon.h"\r
>\r
MSW:
- Fix Cygwin 1.7 build (David Gangola).
+- Native wxHyperlinkCtrl implementation (Rickard Westerlund, GSoC 2010 project).
- Allow using wxDC::DrawText() with multiline texts.
- Fix wxBitmapButton best size determination broken in 2.9.1.
{
public:
// Default constructor (for two-step construction).
- wxGenericHyperlinkCtrl() { }
+ wxGenericHyperlinkCtrl() { Init(); }
// Constructor.
wxGenericHyperlinkCtrl(wxWindow *parent,
long style = wxHL_DEFAULT_STYLE,
const wxString& name = wxHyperlinkCtrlNameStr)
{
- (void)Create(parent, id, label, url, pos, size, style, name);
+ Init();
+ (void) Create(parent, id, label, url, pos, size, style, name);
}
// Creation function (for two-step construction).
protected:
+ // Helper used by this class itself and native MSW implementation that
+ // connects OnRightUp() and OnPopUpCopy() handlers.
+ void ConnectMenuHandlers();
+
// event handlers
// Renders the hyperlink.
// Returns the best size for the window, which is the size needed
// to display the text label.
- virtual wxSize DoGetBestSize() const;
+ virtual wxSize DoGetBestClientSize() const;
// creates a context menu with "Copy URL" menuitem
virtual void DoContextMenu(const wxPoint &);
private:
+ // Common part of all ctors.
+ void Init();
+
// URL associated with the link. This is transmitted inside
// the HyperlinkEvent fired when the user clicks on the label.
wxString m_url;
// True if a click is in progress (left button down) and the click
// originated inside the label's bounding box.
bool m_clicking;
-
-private:
- DECLARE_DYNAMIC_CLASS(wxGenericHyperlinkCtrl)
};
#endif // _WX_GENERICHYPERLINKCTRL_H_
#if defined(__WXGTK210__) && !defined(__WXUNIVERSAL__)
#include "wx/gtk/hyperlink.h"
+#elif defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
+ #include "wx/msw/hyperlink.h"
#else
#include "wx/generic/hyperlink.h"
- #define wxHyperlinkCtrl wxGenericHyperlinkCtrl
+
+ class WXDLLIMPEXP_ADV wxHyperlinkCtrl : public wxGenericHyperlinkCtrl
+ {
+ public:
+ wxHyperlinkCtrl() { }
+
+ wxHyperlinkCtrl(wxWindow *parent,
+ wxWindowID id,
+ const wxString& label,
+ const wxString& url,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxHL_DEFAULT_STYLE,
+ const wxString& name = wxHyperlinkCtrlNameStr)
+ : wxGenericHyperlinkCtrl(parent, id, label, url, pos, size,
+ style, name)
+ {
+ }
+
+ private:
+ wxDECLARE_DYNAMIC_CLASS_NO_COPY( wxHyperlinkCtrl );
+ };
#endif
--- /dev/null
+/////////////////////////////////////////////////////////////////////////////
+// Name: wx/msw/hyperlink.h
+// Purpose: Hyperlink control
+// Author: Rickard Westerlund
+// Created: 2010-08-04
+// RCS-ID: $Id$
+// Copyright: (c) 2010 wxWidgets team
+// Licence: wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_MSW_HYPERLINK_H_
+#define _WX_MSW_HYPERLINK_H_
+
+#include "wx/generic/hyperlink.h"
+
+// ----------------------------------------------------------------------------
+// wxHyperlinkCtrl
+// ----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_ADV wxHyperlinkCtrl : public wxGenericHyperlinkCtrl
+{
+public:
+ // Default constructor (for two-step construction).
+ wxHyperlinkCtrl() { }
+
+ // Constructor.
+ wxHyperlinkCtrl(wxWindow *parent,
+ wxWindowID id,
+ const wxString& label, const wxString& url,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxHL_DEFAULT_STYLE,
+ const wxString& name = wxHyperlinkCtrlNameStr)
+ {
+ (void)Create(parent, id, label, url, pos, size, style, name);
+ }
+
+ // Creation function (for two-step construction).
+ bool Create(wxWindow *parent,
+ wxWindowID id,
+ const wxString& label, const wxString& url,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxHL_DEFAULT_STYLE,
+ const wxString& name = wxHyperlinkCtrlNameStr);
+
+
+ // overridden base class methods
+ // -----------------------------
+
+ virtual void SetURL(const wxString &url);
+
+ virtual void SetLabel(const wxString &label);
+
+protected:
+ virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
+ virtual wxSize DoGetBestClientSize() const;
+
+private:
+ virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
+
+ wxDECLARE_DYNAMIC_CLASS( wxHyperlinkCtrl );
+};
+
+#endif // _WX_MSW_HYPERLINK_H_
@class wxHyperlinkCtrl
This class shows a static text element which links to an URL.
+
Appearance and behaviour is completely customizable.
In fact, when the user clicks on the hyperlink, a wxHyperlinkEvent is
@style{wxHL_ALIGN_LEFT}
Align the text to the left.
@style{wxHL_ALIGN_RIGHT}
- Align the text to the right.
+ Align the text to the right. This style is not supported under
+ Windows XP but is supported under all the other Windows versions.
@style{wxHL_ALIGN_CENTRE}
- Center the text (horizontally).
+ Center the text (horizontally). This style is not supported by the
+ native MSW implementation used under Windows XP and later.
@style{wxHL_CONTEXTMENU}
Pop up a context menu when the hyperlink is right-clicked. The
context menu contains a "Copy URL" menu item which is automatically
is done with the hyperlink's URL.
@endEventTable
+ Currently this class is implemented using native support in wxGTK and wxMSW
+ (under Windows XP and later only) and a generic version is used by the
+ other ports.
@library{wxadv}
@category{ctrl}
// implementation
// ============================================================================
+#if wxUSE_EXTENDED_RTTI
+ wxIMPLEMENT_DYNAMIC_CLASS_XTI( wxHyperlinkCtrl, wxControl, "wx/hyperlink.h")
+#else
+ wxIMPLEMENT_DYNAMIC_CLASS( wxHyperlinkCtrl, wxControl )
+#endif // wxUSE_EXTENDED_RTTI
+
IMPLEMENT_DYNAMIC_CLASS(wxHyperlinkEvent, wxCommandEvent)
wxDEFINE_EVENT( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEvent );
// implementation
// ============================================================================
-IMPLEMENT_DYNAMIC_CLASS(wxGenericHyperlinkCtrl, wxControl)
-
// reserved for internal use only
#define wxHYPERLINK_POPUP_COPY_ID 16384
SetURL(url.empty() ? label : url);
SetLabel(label.empty() ? url : label);
- m_rollover = false;
- m_clicking = false;
- m_visited = false;
-
- // colours
- m_normalColour = *wxBLUE;
- m_hoverColour = *wxRED;
- m_visitedColour = wxColour("#551a8b");
+ Init();
SetForegroundColour(m_normalColour);
// by default the font of an hyperlink control is underlined
Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler(wxGenericHyperlinkCtrl::OnLeftDown) );
Connect( wxEVT_LEFT_UP, wxMouseEventHandler(wxGenericHyperlinkCtrl::OnLeftUp) );
- Connect( wxEVT_RIGHT_UP, wxMouseEventHandler(wxGenericHyperlinkCtrl::OnRightUp) );
Connect( wxEVT_MOTION, wxMouseEventHandler(wxGenericHyperlinkCtrl::OnMotion) );
- Connect( wxHYPERLINK_POPUP_COPY_ID, wxEVT_COMMAND_MENU_SELECTED,
- wxCommandEventHandler(wxGenericHyperlinkCtrl::OnPopUpCopy) );
+ ConnectMenuHandlers();
return true;
}
-wxSize wxGenericHyperlinkCtrl::DoGetBestSize() const
+void wxGenericHyperlinkCtrl::Init()
+{
+ m_rollover = false;
+ m_clicking = false;
+ m_visited = false;
+
+ // colours
+ m_normalColour = *wxBLUE;
+ m_hoverColour = *wxRED;
+ m_visitedColour = wxColour("#551a8b");
+}
+
+void wxGenericHyperlinkCtrl::ConnectMenuHandlers()
{
- int w, h;
+ // Connect the event handlers for the context menu.
+ Connect( wxEVT_RIGHT_UP, wxMouseEventHandler(wxGenericHyperlinkCtrl::OnRightUp) );
+ Connect( wxHYPERLINK_POPUP_COPY_ID, wxEVT_COMMAND_MENU_SELECTED,
+ wxCommandEventHandler(wxGenericHyperlinkCtrl::OnPopUpCopy) );
+}
+wxSize wxGenericHyperlinkCtrl::DoGetBestClientSize() const
+{
wxClientDC dc((wxWindow *)this);
- dc.SetFont(GetFont());
- dc.GetTextExtent(GetLabel(), &w, &h);
-
- wxSize best(w, h);
- CacheBestSize(best);
- return best;
+ return dc.GetTextExtent(GetLabel());
}
// implementation
// ============================================================================
-IMPLEMENT_DYNAMIC_CLASS(wxHyperlinkCtrl, wxGenericHyperlinkCtrl)
-
-
// ----------------------------------------------------------------------------
// "clicked"
// ----------------------------------------------------------------------------
--- /dev/null
+/////////////////////////////////////////////////////////////////////////////
+// Name: src/msw/hyperlink.cpp
+// Purpose: Hyperlink control
+// Author: Rickard Westerlund
+// Created: 2010-08-03
+// RCS-ID: $Id$
+// Copyright: (c) 2010 wxWidgets team
+// Licence: wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#if wxUSE_HYPERLINKCTRL
+
+#include "wx/hyperlink.h"
+
+#ifndef WX_PRECOMP
+ #include "wx/stattext.h"
+#endif
+
+// ----------------------------------------------------------------------------
+// Definitions
+// ----------------------------------------------------------------------------
+
+#ifndef LM_GETIDEALSIZE
+ #define LM_GETIDEALSIZE (WM_USER + 0x301)
+#endif
+
+#ifndef LWS_RIGHT
+ #define LWS_RIGHT 0x0020
+#endif
+
+// ----------------------------------------------------------------------------
+// Helper functions
+// ----------------------------------------------------------------------------
+
+namespace
+{
+ bool HasNativeHyperlinkCtrl()
+ {
+ return wxGetWinVersion() >= wxWinVersion_XP;
+ }
+
+ wxString GetLabelForSysLink(const wxString& text, const wxString& url)
+ {
+ return wxString("<A HREF=\"") + wxStaticText::RemoveMarkup(url) + "\">"
+ + wxStaticText::RemoveMarkup(text) + "</A>";
+ }
+}
+
+// ----------------------------------------------------------------------------
+// wxHyperlinkCtrl
+// ----------------------------------------------------------------------------
+
+bool wxHyperlinkCtrl::Create(wxWindow *parent,
+ wxWindowID id,
+ const wxString& label, const wxString& url,
+ const wxPoint& pos,
+ const wxSize& size,
+ long style,
+ const wxString& name)
+{
+ if ( !HasNativeHyperlinkCtrl() )
+ {
+ return wxGenericHyperlinkCtrl::Create( parent, id, label, url, pos,
+ size, style, name );
+ }
+
+ if ( !CreateControl(parent, id, pos, size, style,
+ wxDefaultValidator, name) )
+ {
+ return false;
+ }
+
+ SetURL( url );
+ SetVisited( false );
+
+ WXDWORD exstyle;
+ WXDWORD msStyle = MSWGetStyle(style, &exstyle);
+
+ if ( !MSWCreateControl(WC_LINK, msStyle, pos, size,
+ GetLabelForSysLink( label, url ), exstyle) )
+ {
+ return false;
+ }
+
+ // Make sure both the label and URL are non-empty strings.
+ SetURL(url.empty() ? label : url);
+ SetLabel(label.empty() ? url : label);
+
+ ConnectMenuHandlers();
+
+ return true;
+}
+
+WXDWORD wxHyperlinkCtrl::MSWGetStyle(long style, WXDWORD *exstyle) const
+{
+ WXDWORD msStyle = wxControl::MSWGetStyle( style, exstyle );
+
+ if ( style & wxHL_ALIGN_RIGHT )
+ msStyle |= LWS_RIGHT;
+
+ return msStyle;
+}
+
+void wxHyperlinkCtrl::SetURL(const wxString &url)
+{
+ if ( !HasNativeHyperlinkCtrl() )
+ {
+ wxGenericHyperlinkCtrl::SetURL( url );
+ return;
+ }
+
+ if ( GetURL() != url )
+ SetVisited( false );
+ wxGenericHyperlinkCtrl::SetURL( url );
+ wxWindow::SetLabel( GetLabelForSysLink(m_labelOrig, url) );
+}
+
+void wxHyperlinkCtrl::SetLabel(const wxString &label)
+{
+ if ( !HasNativeHyperlinkCtrl() )
+ {
+ wxGenericHyperlinkCtrl::SetLabel( label );
+ return;
+ }
+
+ m_labelOrig = label;
+ wxWindow::SetLabel( GetLabelForSysLink(label, GetURL()) );
+ InvalidateBestSize();
+}
+
+wxSize wxHyperlinkCtrl::DoGetBestClientSize() const
+{
+ // LM_GETIDEALSIZE only exists under Vista so use the generic version even
+ // when using the native control under XP
+ if ( wxGetWinVersion() < wxWinVersion_6 )
+ return wxGenericHyperlinkCtrl::DoGetBestClientSize();
+
+ SIZE idealSize;
+ ::SendMessage(m_hWnd, LM_GETIDEALSIZE, 0, (LPARAM)&idealSize);
+
+ return wxSize(idealSize.cx, idealSize.cy);
+}
+
+bool wxHyperlinkCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result)
+{
+ if ( HasNativeHyperlinkCtrl() )
+ {
+ switch ( ((LPNMHDR) lParam)->code )
+ {
+ case NM_CLICK:
+ case NM_RETURN:
+ SetVisited();
+ SendEvent();
+ return 0;
+ }
+ }
+
+ return wxGenericHyperlinkCtrl::MSWOnNotify(idCtrl, lParam, result);
+}
+
+#endif // wxUSE_HYPERLINKCTRL