wx/unix/taskbarx11.h \
wx/generic/animate.h
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION__ADVANCED_PLATFORM_HDR)
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ADVANCED_PLATFORM_HDR \
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ = wx/unix/joystick.h wx/unix/sound.h \
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ wx/unix/taskbarx11.h
+COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_HDR = \
+ wx/unix/joystick.h \
+ wx/unix/sound.h \
+ wx/unix/taskbarx11.h \
+ wx/gtk/hildon/notifmsg.h
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_HDR)
COND_TOOLKIT_MAC_ADVANCED_PLATFORM_HDR = \
wx/generic/animate.h \
wx/mac/carbon/drawer.h \
wx/generic/helpext.h \
wx/generic/hyperlink.h \
wx/generic/laywin.h \
+ wx/generic/notifmsg.h \
wx/generic/propdlg.h \
wx/generic/sashwin.h \
wx/generic/splash.h \
wx/hyperlink.h \
wx/joystick.h \
wx/laywin.h \
+ wx/notifmsg.h \
wx/odcombo.h \
wx/propdlg.h \
wx/sashwin.h \
wx/generic/helpext.h \
wx/generic/hyperlink.h \
wx/generic/laywin.h \
+ wx/generic/notifmsg.h \
wx/generic/propdlg.h \
wx/generic/sashwin.h \
wx/generic/splash.h \
wx/hyperlink.h \
wx/joystick.h \
wx/laywin.h \
+ wx/notifmsg.h \
wx/odcombo.h \
wx/propdlg.h \
wx/sashwin.h \
monodll_helpext.o \
monodll_hyperlinkg.o \
monodll_laywin.o \
+ monodll_notifmsgg.o \
monodll_odcombo.o \
monodll_propdlg.o \
monodll_sashwin.o \
monodll_helpext.o \
monodll_hyperlinkg.o \
monodll_laywin.o \
+ monodll_notifmsgg.o \
monodll_odcombo.o \
monodll_propdlg.o \
monodll_sashwin.o \
monolib_helpext.o \
monolib_hyperlinkg.o \
monolib_laywin.o \
+ monolib_notifmsgg.o \
monolib_odcombo.o \
monolib_propdlg.o \
monolib_sashwin.o \
monolib_helpext.o \
monolib_hyperlinkg.o \
monolib_laywin.o \
+ monolib_notifmsgg.o \
monolib_odcombo.o \
monolib_propdlg.o \
monolib_sashwin.o \
advdll_helpext.o \
advdll_hyperlinkg.o \
advdll_laywin.o \
+ advdll_notifmsgg.o \
advdll_odcombo.o \
advdll_propdlg.o \
advdll_sashwin.o \
advdll_helpext.o \
advdll_hyperlinkg.o \
advdll_laywin.o \
+ advdll_notifmsgg.o \
advdll_odcombo.o \
advdll_propdlg.o \
advdll_sashwin.o \
advlib_helpext.o \
advlib_hyperlinkg.o \
advlib_laywin.o \
+ advlib_notifmsgg.o \
advlib_odcombo.o \
advlib_propdlg.o \
advlib_sashwin.o \
advlib_helpext.o \
advlib_hyperlinkg.o \
advlib_laywin.o \
+ advlib_notifmsgg.o \
advlib_odcombo.o \
advlib_propdlg.o \
advlib_sashwin.o \
monodll_sound.o \
monodll_taskbarx11.o \
monodll_taskbar.o \
- monodll_eggtrayicon.o
+ monodll_eggtrayicon.o \
+ monodll_notifmsg.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS)
COND_TOOLKIT_MAC___ADVANCED_PLATFORM_SRC_OBJECTS = \
monodll_taskbarcmn.o \
monolib_sound.o \
monolib_taskbarx11.o \
monolib_taskbar.o \
- monolib_eggtrayicon.o
+ monolib_eggtrayicon.o \
+ monolib_notifmsg.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_0 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_0)
COND_TOOLKIT_MAC___ADVANCED_PLATFORM_SRC_OBJECTS_0 = \
monolib_taskbarcmn.o \
advdll_sound.o \
advdll_taskbarx11.o \
advdll_taskbar.o \
- advdll_eggtrayicon.o
+ advdll_eggtrayicon.o \
+ advdll_notifmsg.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_8 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_8)
COND_TOOLKIT_MAC___ADVANCED_PLATFORM_SRC_OBJECTS_8 = \
advdll_taskbarcmn.o \
advlib_sound.o \
advlib_taskbarx11.o \
advlib_taskbar.o \
- advlib_eggtrayicon.o
+ advlib_eggtrayicon.o \
+ advlib_notifmsg.o
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_9 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_9)
COND_TOOLKIT_MAC___ADVANCED_PLATFORM_SRC_OBJECTS_9 = \
advlib_taskbarcmn.o \
@COND_USE_GUI_1@monodll_laywin.o: $(srcdir)/src/generic/laywin.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/laywin.cpp
+@COND_USE_GUI_1@monodll_notifmsgg.o: $(srcdir)/src/generic/notifmsgg.cpp $(MONODLL_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/notifmsgg.cpp
+
@COND_USE_GUI_1@monodll_odcombo.o: $(srcdir)/src/generic/odcombo.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/odcombo.cpp
@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monodll_eggtrayicon.o: $(srcdir)/src/gtk1/eggtrayicon.c $(MONODLL_ODEP)
@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@ $(CCC) -c -o $@ $(MONODLL_CFLAGS) $(srcdir)/src/gtk1/eggtrayicon.c
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monodll_notifmsg.o: $(srcdir)/src/gtk/hildon/notifmsg.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/hildon/notifmsg.cpp
+
@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monodll_datectrl.o: $(srcdir)/src/msw/datectrl.cpp $(MONODLL_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/datectrl.cpp
@COND_USE_GUI_1@monolib_laywin.o: $(srcdir)/src/generic/laywin.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/laywin.cpp
+@COND_USE_GUI_1@monolib_notifmsgg.o: $(srcdir)/src/generic/notifmsgg.cpp $(MONOLIB_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/notifmsgg.cpp
+
@COND_USE_GUI_1@monolib_odcombo.o: $(srcdir)/src/generic/odcombo.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/odcombo.cpp
@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monolib_eggtrayicon.o: $(srcdir)/src/gtk1/eggtrayicon.c $(MONOLIB_ODEP)
@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@ $(CCC) -c -o $@ $(MONOLIB_CFLAGS) $(srcdir)/src/gtk1/eggtrayicon.c
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monolib_notifmsg.o: $(srcdir)/src/gtk/hildon/notifmsg.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/hildon/notifmsg.cpp
+
@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monolib_datectrl.o: $(srcdir)/src/msw/datectrl.cpp $(MONOLIB_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/datectrl.cpp
advdll_laywin.o: $(srcdir)/src/generic/laywin.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/laywin.cpp
+advdll_notifmsgg.o: $(srcdir)/src/generic/notifmsgg.cpp $(ADVDLL_ODEP)
+ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/notifmsgg.cpp
+
advdll_odcombo.o: $(srcdir)/src/generic/odcombo.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/odcombo.cpp
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@advdll_eggtrayicon.o: $(srcdir)/src/gtk1/eggtrayicon.c $(ADVDLL_ODEP)
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ $(CCC) -c -o $@ $(ADVDLL_CFLAGS) $(srcdir)/src/gtk1/eggtrayicon.c
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@advdll_notifmsg.o: $(srcdir)/src/gtk/hildon/notifmsg.cpp $(ADVDLL_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/hildon/notifmsg.cpp
+
@COND_TOOLKIT_MSW_WXUNIV_0@advdll_datectrl.o: $(srcdir)/src/msw/datectrl.cpp $(ADVDLL_ODEP)
@COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/datectrl.cpp
advlib_laywin.o: $(srcdir)/src/generic/laywin.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/laywin.cpp
+advlib_notifmsgg.o: $(srcdir)/src/generic/notifmsgg.cpp $(ADVLIB_ODEP)
+ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/notifmsgg.cpp
+
advlib_odcombo.o: $(srcdir)/src/generic/odcombo.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/odcombo.cpp
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@advlib_eggtrayicon.o: $(srcdir)/src/gtk1/eggtrayicon.c $(ADVLIB_ODEP)
@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ $(CCC) -c -o $@ $(ADVLIB_CFLAGS) $(srcdir)/src/gtk1/eggtrayicon.c
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@advlib_notifmsg.o: $(srcdir)/src/gtk/hildon/notifmsg.cpp $(ADVLIB_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/hildon/notifmsg.cpp
+
@COND_TOOLKIT_MSW_WXUNIV_0@advlib_datectrl.o: $(srcdir)/src/msw/datectrl.cpp $(ADVLIB_ODEP)
@COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/datectrl.cpp
src/generic/helpext.cpp
src/generic/hyperlinkg.cpp
src/generic/laywin.cpp
+ src/generic/notifmsgg.cpp
src/generic/odcombo.cpp
src/generic/propdlg.cpp
src/generic/sashwin.cpp
wx/generic/helpext.h
wx/generic/hyperlink.h
wx/generic/laywin.h
+ wx/generic/notifmsg.h
wx/generic/propdlg.h
wx/generic/sashwin.h
wx/generic/splash.h
wx/hyperlink.h
wx/joystick.h
wx/laywin.h
+ wx/notifmsg.h
wx/odcombo.h
wx/propdlg.h
wx/sashwin.h
<set var="ADVANCED_GTK_SRC" hints="files">
src/gtk/taskbar.cpp
src/gtk/eggtrayicon.c
+ src/gtk/hildon/notifmsg.cpp
</set>
<set var="ADVANCED_GTK_HDR" hints="files">
+ wx/gtk/hildon/notifmsg.h
</set>
<set var="ADVANCED_GTK_NATIVE_SRC" hints="files">
$(OBJS)\monodll_helpext.obj \
$(OBJS)\monodll_hyperlinkg.obj \
$(OBJS)\monodll_laywin.obj \
+ $(OBJS)\monodll_notifmsgg.obj \
$(OBJS)\monodll_odcombo.obj \
$(OBJS)\monodll_propdlg.obj \
$(OBJS)\monodll_sashwin.obj \
$(OBJS)\monodll_helpext.obj \
$(OBJS)\monodll_hyperlinkg.obj \
$(OBJS)\monodll_laywin.obj \
+ $(OBJS)\monodll_notifmsgg.obj \
$(OBJS)\monodll_odcombo.obj \
$(OBJS)\monodll_propdlg.obj \
$(OBJS)\monodll_sashwin.obj \
$(OBJS)\monolib_helpext.obj \
$(OBJS)\monolib_hyperlinkg.obj \
$(OBJS)\monolib_laywin.obj \
+ $(OBJS)\monolib_notifmsgg.obj \
$(OBJS)\monolib_odcombo.obj \
$(OBJS)\monolib_propdlg.obj \
$(OBJS)\monolib_sashwin.obj \
$(OBJS)\monolib_helpext.obj \
$(OBJS)\monolib_hyperlinkg.obj \
$(OBJS)\monolib_laywin.obj \
+ $(OBJS)\monolib_notifmsgg.obj \
$(OBJS)\monolib_odcombo.obj \
$(OBJS)\monolib_propdlg.obj \
$(OBJS)\monolib_sashwin.obj \
$(OBJS)\advdll_helpext.obj \
$(OBJS)\advdll_hyperlinkg.obj \
$(OBJS)\advdll_laywin.obj \
+ $(OBJS)\advdll_notifmsgg.obj \
$(OBJS)\advdll_odcombo.obj \
$(OBJS)\advdll_propdlg.obj \
$(OBJS)\advdll_sashwin.obj \
$(OBJS)\advdll_helpext.obj \
$(OBJS)\advdll_hyperlinkg.obj \
$(OBJS)\advdll_laywin.obj \
+ $(OBJS)\advdll_notifmsgg.obj \
$(OBJS)\advdll_odcombo.obj \
$(OBJS)\advdll_propdlg.obj \
$(OBJS)\advdll_sashwin.obj \
$(OBJS)\advlib_helpext.obj \
$(OBJS)\advlib_hyperlinkg.obj \
$(OBJS)\advlib_laywin.obj \
+ $(OBJS)\advlib_notifmsgg.obj \
$(OBJS)\advlib_odcombo.obj \
$(OBJS)\advlib_propdlg.obj \
$(OBJS)\advlib_sashwin.obj \
$(OBJS)\advlib_helpext.obj \
$(OBJS)\advlib_hyperlinkg.obj \
$(OBJS)\advlib_laywin.obj \
+ $(OBJS)\advlib_notifmsgg.obj \
$(OBJS)\advlib_odcombo.obj \
$(OBJS)\advlib_propdlg.obj \
$(OBJS)\advlib_sashwin.obj \
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monodll_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monolib_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
$(OBJS)\advdll_laywin.obj: ..\..\src\generic\laywin.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
+$(OBJS)\advdll_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
+
$(OBJS)\advdll_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advlib_laywin.obj: ..\..\src\generic\laywin.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
+$(OBJS)\advlib_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
+
$(OBJS)\advlib_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\monodll_helpext.o \
$(OBJS)\monodll_hyperlinkg.o \
$(OBJS)\monodll_laywin.o \
+ $(OBJS)\monodll_notifmsgg.o \
$(OBJS)\monodll_odcombo.o \
$(OBJS)\monodll_propdlg.o \
$(OBJS)\monodll_sashwin.o \
$(OBJS)\monodll_helpext.o \
$(OBJS)\monodll_hyperlinkg.o \
$(OBJS)\monodll_laywin.o \
+ $(OBJS)\monodll_notifmsgg.o \
$(OBJS)\monodll_odcombo.o \
$(OBJS)\monodll_propdlg.o \
$(OBJS)\monodll_sashwin.o \
$(OBJS)\monolib_helpext.o \
$(OBJS)\monolib_hyperlinkg.o \
$(OBJS)\monolib_laywin.o \
+ $(OBJS)\monolib_notifmsgg.o \
$(OBJS)\monolib_odcombo.o \
$(OBJS)\monolib_propdlg.o \
$(OBJS)\monolib_sashwin.o \
$(OBJS)\monolib_helpext.o \
$(OBJS)\monolib_hyperlinkg.o \
$(OBJS)\monolib_laywin.o \
+ $(OBJS)\monolib_notifmsgg.o \
$(OBJS)\monolib_odcombo.o \
$(OBJS)\monolib_propdlg.o \
$(OBJS)\monolib_sashwin.o \
$(OBJS)\advdll_helpext.o \
$(OBJS)\advdll_hyperlinkg.o \
$(OBJS)\advdll_laywin.o \
+ $(OBJS)\advdll_notifmsgg.o \
$(OBJS)\advdll_odcombo.o \
$(OBJS)\advdll_propdlg.o \
$(OBJS)\advdll_sashwin.o \
$(OBJS)\advdll_helpext.o \
$(OBJS)\advdll_hyperlinkg.o \
$(OBJS)\advdll_laywin.o \
+ $(OBJS)\advdll_notifmsgg.o \
$(OBJS)\advdll_odcombo.o \
$(OBJS)\advdll_propdlg.o \
$(OBJS)\advdll_sashwin.o \
$(OBJS)\advlib_helpext.o \
$(OBJS)\advlib_hyperlinkg.o \
$(OBJS)\advlib_laywin.o \
+ $(OBJS)\advlib_notifmsgg.o \
$(OBJS)\advlib_odcombo.o \
$(OBJS)\advlib_propdlg.o \
$(OBJS)\advlib_sashwin.o \
$(OBJS)\advlib_helpext.o \
$(OBJS)\advlib_hyperlinkg.o \
$(OBJS)\advlib_laywin.o \
+ $(OBJS)\advlib_notifmsgg.o \
$(OBJS)\advlib_odcombo.o \
$(OBJS)\advlib_propdlg.o \
$(OBJS)\advlib_sashwin.o \
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\monodll_notifmsgg.o: ../../src/generic/notifmsgg.cpp
+ $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_odcombo.o: ../../src/generic/odcombo.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\monolib_notifmsgg.o: ../../src/generic/notifmsgg.cpp
+ $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_odcombo.o: ../../src/generic/odcombo.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_laywin.o: ../../src/generic/laywin.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
+$(OBJS)\advdll_notifmsgg.o: ../../src/generic/notifmsgg.cpp
+ $(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
+
$(OBJS)\advdll_odcombo.o: ../../src/generic/odcombo.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_laywin.o: ../../src/generic/laywin.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
+$(OBJS)\advlib_notifmsgg.o: ../../src/generic/notifmsgg.cpp
+ $(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
+
$(OBJS)\advlib_odcombo.o: ../../src/generic/odcombo.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_helpext.obj \
$(OBJS)\monodll_hyperlinkg.obj \
$(OBJS)\monodll_laywin.obj \
+ $(OBJS)\monodll_notifmsgg.obj \
$(OBJS)\monodll_odcombo.obj \
$(OBJS)\monodll_propdlg.obj \
$(OBJS)\monodll_sashwin.obj \
$(OBJS)\monodll_helpext.obj \
$(OBJS)\monodll_hyperlinkg.obj \
$(OBJS)\monodll_laywin.obj \
+ $(OBJS)\monodll_notifmsgg.obj \
$(OBJS)\monodll_odcombo.obj \
$(OBJS)\monodll_propdlg.obj \
$(OBJS)\monodll_sashwin.obj \
$(OBJS)\monolib_helpext.obj \
$(OBJS)\monolib_hyperlinkg.obj \
$(OBJS)\monolib_laywin.obj \
+ $(OBJS)\monolib_notifmsgg.obj \
$(OBJS)\monolib_odcombo.obj \
$(OBJS)\monolib_propdlg.obj \
$(OBJS)\monolib_sashwin.obj \
$(OBJS)\monolib_helpext.obj \
$(OBJS)\monolib_hyperlinkg.obj \
$(OBJS)\monolib_laywin.obj \
+ $(OBJS)\monolib_notifmsgg.obj \
$(OBJS)\monolib_odcombo.obj \
$(OBJS)\monolib_propdlg.obj \
$(OBJS)\monolib_sashwin.obj \
$(OBJS)\advdll_helpext.obj \
$(OBJS)\advdll_hyperlinkg.obj \
$(OBJS)\advdll_laywin.obj \
+ $(OBJS)\advdll_notifmsgg.obj \
$(OBJS)\advdll_odcombo.obj \
$(OBJS)\advdll_propdlg.obj \
$(OBJS)\advdll_sashwin.obj \
$(OBJS)\advdll_helpext.obj \
$(OBJS)\advdll_hyperlinkg.obj \
$(OBJS)\advdll_laywin.obj \
+ $(OBJS)\advdll_notifmsgg.obj \
$(OBJS)\advdll_odcombo.obj \
$(OBJS)\advdll_propdlg.obj \
$(OBJS)\advdll_sashwin.obj \
$(OBJS)\advlib_helpext.obj \
$(OBJS)\advlib_hyperlinkg.obj \
$(OBJS)\advlib_laywin.obj \
+ $(OBJS)\advlib_notifmsgg.obj \
$(OBJS)\advlib_odcombo.obj \
$(OBJS)\advlib_propdlg.obj \
$(OBJS)\advlib_sashwin.obj \
$(OBJS)\advlib_helpext.obj \
$(OBJS)\advlib_hyperlinkg.obj \
$(OBJS)\advlib_laywin.obj \
+ $(OBJS)\advlib_notifmsgg.obj \
$(OBJS)\advlib_odcombo.obj \
$(OBJS)\advlib_propdlg.obj \
$(OBJS)\advlib_sashwin.obj \
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monodll_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monolib_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
$(OBJS)\advdll_laywin.obj: ..\..\src\generic\laywin.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
+$(OBJS)\advdll_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
+
$(OBJS)\advdll_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advlib_laywin.obj: ..\..\src\generic\laywin.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
+$(OBJS)\advlib_notifmsgg.obj: ..\..\src\generic\notifmsgg.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
+
$(OBJS)\advlib_odcombo.obj: ..\..\src\generic\odcombo.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\monodll_helpext.obj &
$(OBJS)\monodll_hyperlinkg.obj &
$(OBJS)\monodll_laywin.obj &
+ $(OBJS)\monodll_notifmsgg.obj &
$(OBJS)\monodll_odcombo.obj &
$(OBJS)\monodll_propdlg.obj &
$(OBJS)\monodll_sashwin.obj &
$(OBJS)\monodll_helpext.obj &
$(OBJS)\monodll_hyperlinkg.obj &
$(OBJS)\monodll_laywin.obj &
+ $(OBJS)\monodll_notifmsgg.obj &
$(OBJS)\monodll_odcombo.obj &
$(OBJS)\monodll_propdlg.obj &
$(OBJS)\monodll_sashwin.obj &
$(OBJS)\monolib_helpext.obj &
$(OBJS)\monolib_hyperlinkg.obj &
$(OBJS)\monolib_laywin.obj &
+ $(OBJS)\monolib_notifmsgg.obj &
$(OBJS)\monolib_odcombo.obj &
$(OBJS)\monolib_propdlg.obj &
$(OBJS)\monolib_sashwin.obj &
$(OBJS)\monolib_helpext.obj &
$(OBJS)\monolib_hyperlinkg.obj &
$(OBJS)\monolib_laywin.obj &
+ $(OBJS)\monolib_notifmsgg.obj &
$(OBJS)\monolib_odcombo.obj &
$(OBJS)\monolib_propdlg.obj &
$(OBJS)\monolib_sashwin.obj &
$(OBJS)\advdll_helpext.obj &
$(OBJS)\advdll_hyperlinkg.obj &
$(OBJS)\advdll_laywin.obj &
+ $(OBJS)\advdll_notifmsgg.obj &
$(OBJS)\advdll_odcombo.obj &
$(OBJS)\advdll_propdlg.obj &
$(OBJS)\advdll_sashwin.obj &
$(OBJS)\advdll_helpext.obj &
$(OBJS)\advdll_hyperlinkg.obj &
$(OBJS)\advdll_laywin.obj &
+ $(OBJS)\advdll_notifmsgg.obj &
$(OBJS)\advdll_odcombo.obj &
$(OBJS)\advdll_propdlg.obj &
$(OBJS)\advdll_sashwin.obj &
$(OBJS)\advlib_helpext.obj &
$(OBJS)\advlib_hyperlinkg.obj &
$(OBJS)\advlib_laywin.obj &
+ $(OBJS)\advlib_notifmsgg.obj &
$(OBJS)\advlib_odcombo.obj &
$(OBJS)\advlib_propdlg.obj &
$(OBJS)\advlib_sashwin.obj &
$(OBJS)\advlib_helpext.obj &
$(OBJS)\advlib_hyperlinkg.obj &
$(OBJS)\advlib_laywin.obj &
+ $(OBJS)\advlib_notifmsgg.obj &
$(OBJS)\advlib_odcombo.obj &
$(OBJS)\advlib_propdlg.obj &
$(OBJS)\advlib_sashwin.obj &
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\monodll_notifmsgg.obj : .AUTODEPEND ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\monodll_odcombo.obj : .AUTODEPEND ..\..\src\generic\odcombo.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\monolib_notifmsgg.obj : .AUTODEPEND ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\monolib_odcombo.obj : .AUTODEPEND ..\..\src\generic\odcombo.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
$(OBJS)\advdll_laywin.obj : .AUTODEPEND ..\..\src\generic\laywin.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<
+$(OBJS)\advdll_notifmsgg.obj : .AUTODEPEND ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<
+
$(OBJS)\advdll_odcombo.obj : .AUTODEPEND ..\..\src\generic\odcombo.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(ADVDLL_CXXFLAGS) $<
$(OBJS)\advlib_laywin.obj : .AUTODEPEND ..\..\src\generic\laywin.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<
+$(OBJS)\advlib_notifmsgg.obj : .AUTODEPEND ..\..\src\generic\notifmsgg.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<
+
$(OBJS)\advlib_odcombo.obj : .AUTODEPEND ..\..\src\generic\odcombo.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(ADVLIB_CXXFLAGS) $<
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\src\generic\notifmsgg.cpp\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\src\generic\odcombo.cpp\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\generic\notifmsg.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\generic\propdlg.h\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\notifmsg.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\odcombo.h\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\generic\notifmsg.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\generic\numdlgg.h\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\notifmsg.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\numdlg.h\r
# End Source File\r
# Begin Source File\r
#! /bin/sh
-# From configure.in Id: configure.in 50116 2007-11-20 22:35:40Z VS .
+# From configure.in Id: configure.in 50135 2007-11-21 14:24:40Z VZ .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for wxWidgets 2.9.0.
#
--enable-listbox use wxListBox class
--enable-listctrl use wxListCtrl class
--enable-notebook use wxNotebook class
+ --enable-notifmsg use wxNotificationMessage class
--enable-odcombobox use wxOwnerDrawnComboBox class
--enable-radiobox use wxRadioBox class
--enable-radiobtn use wxRadioButton class
echo "${ECHO_T}$result" >&6; }
+ enablestring=
+ defaultval=$wxUSE_ALL_FEATURES
+ if test -z "$defaultval"; then
+ if test x"$enablestring" = xdisable; then
+ defaultval=yes
+ else
+ defaultval=no
+ fi
+ fi
+
+ { echo "$as_me:$LINENO: checking for --${enablestring:-enable}-notifmsg" >&5
+echo $ECHO_N "checking for --${enablestring:-enable}-notifmsg... $ECHO_C" >&6; }
+ # Check whether --enable-notifmsg was given.
+if test "${enable_notifmsg+set}" = set; then
+ enableval=$enable_notifmsg;
+ if test "$enableval" = yes; then
+ wx_cv_use_notifmsg='wxUSE_NOTIFICATION_MESSAGE=yes'
+ else
+ wx_cv_use_notifmsg='wxUSE_NOTIFICATION_MESSAGE=no'
+ fi
+
+else
+
+ wx_cv_use_notifmsg='wxUSE_NOTIFICATION_MESSAGE=${'DEFAULT_wxUSE_NOTIFICATION_MESSAGE":-$defaultval}"
+
+fi
+
+
+ eval "$wx_cv_use_notifmsg"
+
+ if test x"$enablestring" = xdisable; then
+ if test $wxUSE_NOTIFICATION_MESSAGE = yes; then
+ result=no
+ else
+ result=yes
+ fi
+ else
+ result=$wxUSE_NOTIFICATION_MESSAGE
+ fi
+
+ { echo "$as_me:$LINENO: result: $result" >&5
+echo "${ECHO_T}$result" >&6; }
+
+
enablestring=
defaultval=$wxUSE_ALL_FEATURES
if test -z "$defaultval"; then
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
fi
+if test "$wxUSE_NOTIFICATION_MESSAGE" = "yes"; then
+ cat >>confdefs.h <<\_ACEOF
+#define wxUSE_NOTIFICATION_MESSAGE 1
+_ACEOF
+
+fi
+
if test "$wxUSE_ODCOMBOBOX" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define wxUSE_ODCOMBOBOX 1
WX_ARG_FEATURE(listbox, [ --enable-listbox use wxListBox class], wxUSE_LISTBOX)
WX_ARG_FEATURE(listctrl, [ --enable-listctrl use wxListCtrl class], wxUSE_LISTCTRL)
WX_ARG_FEATURE(notebook, [ --enable-notebook use wxNotebook class], wxUSE_NOTEBOOK)
+WX_ARG_FEATURE(notifmsg, [ --enable-notifmsg use wxNotificationMessage class], wxUSE_NOTIFICATION_MESSAGE)
WX_ARG_FEATURE(odcombobox, [ --enable-odcombobox use wxOwnerDrawnComboBox class], wxUSE_ODCOMBOBOX)
WX_ARG_FEATURE(radiobox, [ --enable-radiobox use wxRadioBox class], wxUSE_RADIOBOX)
WX_ARG_FEATURE(radiobtn, [ --enable-radiobtn use wxRadioButton class], wxUSE_RADIOBTN)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
fi
+if test "$wxUSE_NOTIFICATION_MESSAGE" = "yes"; then
+ AC_DEFINE(wxUSE_NOTIFICATION_MESSAGE)
+fi
+
if test "$wxUSE_ODCOMBOBOX" = "yes"; then
AC_DEFINE(wxUSE_ODCOMBOBOX)
USES_CONTROLS=1
- Added {wxTextCtrl,wxComboBox}::AutoComplete() and AutoCompleteFileNames()
- Added wxH[V]ScrolledWindow (Brad Anderson, Bryan Petty).
+- Added wxNotificationMessage class for non-intrusive notifications
- Added wxDC::StretchBlit() for wxMac and wxMSW (Vince Harron).
- Added support for drop down toolbar buttons (Tim Kosse).
- Added support for labels for toolbar controls (Vince Harron).
\input notebook.tex
\input noteevt.tex
\input nbsizer.tex
+\input notifmsg.tex
\input notifevt.tex
\input object.tex
\input objectdataptr.tex
--- /dev/null
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Name: notifmsg.tex
+%% Purpose: wxNotificationMessage documentation
+%% Author: Vadim Zeitlin
+%% Created: 2007-11-24
+%% RCS-ID: $Id: cmdlpars.tex 49199 2007-10-17 17:32:16Z VZ $
+%% Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwidgets.org>
+%% License: wxWindows license
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{\class{wxNotificationMessage}}\label{wxnotificationmessage}
+
+This class allows to show the user a message non intrusively. Currently it is
+implemented natively only for the Maemo platform and uses (non-modal) dialogs
+for the display of the notifications under the other platforms but it will be
+extended to use the platform-specific notifications in the other ports in the
+future.
+
+Notice that this class is not a window and so doesn't derive from wxWindow.
+
+\wxheading{Derived from}
+
+\helpref{wxEvtHandler}{wxevthandler}
+
+\wxheading{Include files}
+
+<wx/notifmsg.h>
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+
+\membersection{wxNotificationMessage::wxNotificationMessage}\label{wxnotificationmessagewxnotificationmessage}
+
+\func{}{wxNotificationMessage}{\void}
+
+Default constructor, use \helpref{SetParent}{\wxnotificationmessagesetparent},
+\helpref{SetTitle}{wxnotificationmessagesettitle} and
+\helpref{SetMessage}{wxnotificationmessagesetmessage} to initialize the object
+before showing it.
+
+
+\func{}{wxNotificationMessage}{\param{const wxString\& }{title}, \param{const wxString\& }{message = wxString()}, \param{wxWindow* }{parent = NULL}}
+
+Create a notification object with the given title and message (the
+latter may be empty in which case only the title will be shown).
+
+
+\membersection{wxNotificationMessage::Close}\label{wxnotificationmessageclose}
+
+\func{bool}{Close}{\void}
+
+Hides the notification.
+
+Returns \true if it was hidden or \false if it couldn't be done (e.g. on some
+systems automatically hidden notifications can't be hidden manually)
+
+
+\membersection{wxNotificationMessage::SetMessage}\label{wxnotificationmessagesetmessage}
+
+\func{void}{SetMessage}{\param{const wxString\& }{message}}
+
+Set the main text of the notification.
+
+
+\membersection{wxNotificationMessage::SetParent}\label{wxnotificationmessagesetparent}
+
+\func{void}{SetParent}{\param{wxWindow* }{parent}}
+
+Set the parent for this notification: the notification will be associated with
+the top level parent of this window or, if this method is not called, with the
+main application window by default
+
+
+\membersection{wxNotificationMessage::SetTitle}\label{wxnotificationmessagesettitle}
+
+\func{void}{SetTitle}{\param{const wxString\& }{title}}
+
+Set the title, it must be a concise string, use
+\helpref{SetMessage}{wxnotificationmessagesetmessage} to give the user more
+details.
+
+
+\membersection{wxNotificationMessage::Show}\label{wxnotificationmessageshow}
+
+\func{bool}{Show}{\param{int }{timeout = Timeout\_Auto}}
+
+Show the notification to the user and hides it after timeout seconds
+pass. Special values \texttt{Timeout\_Auto} and \texttt{Timeout\_Never} can be
+used here, notice that you shouldn't rely on \arg{timeout} being exactly
+respected because the current platform may only support default timeout value
+and also because the user may be able to close the notification.
+
+Returns \false if an error occurred.
+
# endif
#endif /* !defined(wxUSE_NOTEBOOK) */
+#ifndef wxUSE_NOTIFICATION_MESSAGE
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxUSE_NOTIFICATION_MESSAGE must be defined."
+# else
+# define wxUSE_NOTIFICATION_MESSAGE 0
+# endif
+#endif /* !defined(wxUSE_NOTIFICATION_MESSAGE) */
+
#ifndef wxUSE_ODCOMBOBOX
# ifdef wxABORT_ON_CONFIG_ERROR
# error "wxUSE_ODCOMBOBOX must be defined."
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/generic/notifmsg.h
+// Purpose: generic implementation of wxNotificationMessage
+// Author: Vadim Zeitlin
+// Created: 2007-11-24
+// RCS-ID: $Id$
+// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_GENERIC_NOTIFMSG_H_
+#define _WX_GENERIC_NOTIFMSG_H_
+
+class wxNotificationMessageDialog;
+
+// ----------------------------------------------------------------------------
+// wxNotificationMessage
+// ----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_ADV wxNotificationMessage : public wxNotificationMessageBase
+{
+public:
+ wxNotificationMessage() { Init(); }
+ wxNotificationMessage(const wxString& title,
+ const wxString& message = wxString(),
+ wxWindow *parent = NULL)
+ : wxNotificationMessageBase(title, message, parent)
+ {
+ Init();
+ }
+
+ virtual ~wxNotificationMessage();
+
+
+ virtual bool Show(int timeout = Timeout_Auto);
+ virtual bool Close();
+
+ // generic implementation-specific methods
+
+ // get/set the default timeout (used if Timeout_Auto is specified)
+ static int GetDefaultTimeout() { return ms_timeout; }
+ static void SetDefaultTimeout(int timeout);
+
+private:
+ void Init();
+
+
+ // default timeout
+ static int ms_timeout;
+
+ // notification message is represented by a modeless dialog in this
+ // implementation
+ wxNotificationMessageDialog *m_dialog;
+
+
+ DECLARE_NO_COPY_CLASS(wxNotificationMessage)
+};
+
+#endif // _WX_GENERIC_NOTIFMSG_H_
+
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/gtk/hildon/notifmsg.h
+// Purpose: Hildon implementation of wxNotificationMessage
+// Author: Vadim Zeitlin
+// Created: 2007-11-21
+// RCS-ID: $Id$
+// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_GTK_HILDON_NOTIFMSG_H_
+#define _WX_GTK_HILDON_NOTIFMSG_H_
+
+typedef struct _HildonBanner HildonBanner;
+
+// ----------------------------------------------------------------------------
+// wxNotificationMessage
+// ----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_ADV wxNotificationMessage : public wxNotificationMessageBase
+{
+public:
+ wxNotificationMessage() { Init(); }
+ wxNotificationMessage(const wxString& title,
+ const wxString& message = wxString(),
+ wxWindow *parent = NULL)
+ : wxNotificationMessageBase(title, message, parent)
+ {
+ Init();
+ }
+
+ virtual ~wxNotificationMessage();
+
+
+ virtual bool Show(int timeout = Timeout_Auto);
+ virtual bool Close();
+
+private:
+ void Init() { m_banner = NULL; }
+
+ // return the string containing markup for both the title and, if
+ // specified, the message
+ wxString HildonGetMarkup() const;
+
+ // returns the widget of the parent GtkWindow to use or NULL
+ GtkWidget *HildonGetWindow() const;
+
+
+ // the banner we're showing, only non-NULL if it's an animation or progress
+ // banner as the informational dialog times out on its own and we don't
+ // need to store it (nor do we have any way to get its widget anyhow)
+ GtkWidget *m_banner;
+
+
+ DECLARE_NO_COPY_CLASS(wxNotificationMessage)
+};
+
+#endif // _WX_GTK_HILDON_NOTIFMSG_H_
+
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/notifmsg.h
+// Purpose: class allowing to show notification messages to the user
+// Author: Vadim Zeitlin
+// Created: 2007-11-19
+// RCS-ID: $Id$
+// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_NOTIFMSG_H_
+#define _WX_NOTIFMSG_H_
+
+#include "wx/event.h"
+
+#if wxUSE_NOTIFICATION_MESSAGE
+
+// ----------------------------------------------------------------------------
+// wxNotificationMessage: allows to show the user a message non intrusively
+// ----------------------------------------------------------------------------
+
+// notice that this class is not a window and so doesn't derive from wxWindow
+
+class WXDLLIMPEXP_ADV wxNotificationMessageBase : public wxEvtHandler
+{
+public:
+ // ctors and initializers
+ // ----------------------
+
+ // default ctor, use setters below to initialize it later
+ wxNotificationMessageBase() { }
+
+ // create a notification object with the given title and message (the
+ // latter may be empty in which case only the title will be shown)
+ wxNotificationMessageBase(const wxString& title,
+ const wxString& message = wxString(),
+ wxWindow *parent = NULL)
+ : m_title(title),
+ m_message(message),
+ m_parent(parent)
+ {
+ }
+
+ // note that the setters must be called before Show()
+
+ // set the title: short string, markup not allowed
+ void SetTitle(const wxString& title) { m_title = title; }
+
+ // set the text of the message: this is a longer string than the title and
+ // some platforms allow simple HTML-like markup in it
+ void SetMessage(const wxString& message) { m_message = message; }
+
+ // set the parent for this notification: we'll be associated with the top
+ // level parent of this window or, if this method is not called, with the
+ // main application window by default
+ void SetParent(wxWindow *parent) { m_parent = parent; }
+
+
+ // showing and hiding
+ // ------------------
+
+ // possible values for Show() timeout
+ enum
+ {
+ Timeout_Auto = -1, // notification will be hidden automatically
+ Timeout_Never = 0 // notification will never time out
+ };
+
+ // show the notification to the user and hides it after timeout seconds
+ // pass (special values Timeout_Auto and Timeout_Never can be used)
+ //
+ // returns false if an error occurred
+ virtual bool Show(int timeout = Timeout_Auto) = 0;
+
+ // hide the notification, returns true if it was hidden or false if it
+ // couldn't be done (e.g. on some systems automatically hidden
+ // notifications can't be hidden manually)
+ virtual bool Close() = 0;
+
+protected:
+ // accessors for the derived classes
+ const wxString& GetTitle() const { return m_title; }
+ const wxString& GetMessage() const { return m_message; }
+ wxWindow *GetParent() const { return m_parent; }
+
+ // return the concatenation of title and message separated by a new line,
+ // this is suitable for simple implementation which have no support for
+ // separate title and message parts of the notification
+ wxString GetFullMessage() const
+ {
+ wxString text(m_title);
+ if ( !m_message.empty() )
+ {
+ text << "\n\n" << m_message;
+ }
+
+ return text;
+ }
+
+private:
+ wxString m_title,
+ m_message;
+
+ wxWindow *m_parent;
+
+ DECLARE_NO_COPY_CLASS(wxNotificationMessageBase)
+};
+
+#define wxUSE_GENERIC_NOTIFICATION_MESSAGE 1
+
+#if defined(__WXGTK__) && wxUSE_LIBHILDON
+ // we always use the native implementation in Hildon while the other ports
+ // will fall back to the generic one even if they have a native version too
+ #undef wxUSE_GENERIC_NOTIFICATION_MESSAGE
+ #define wxUSE_GENERIC_NOTIFICATION_MESSAGE 0
+
+ #include "wx/gtk/hildon/notifmsg.h"
+/*
+ TODO: provide support for
+ - libnotify (Gnome)
+ - Snarl (http://www.fullphat.net/, Win32)
+ - Growl (http://growl.info/, OS X)
+ */
+#else
+ #include "wx/generic/notifmsg.h"
+#endif
+
+#endif // wxUSE_NOTIFICATION_MESSAGE
+
+#endif // _WX_NOTIFMSG_H_
+
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
// Recommended setting: 1 (can't be disabled under MSW)
#define wxUSE_MENUS 1
+// Use wxNotificationMessage.
+//
+// wxNotificationMessage allows to show non-intrusive messages to the user
+// using balloons, banners, popups or whatever is the appropriate method for
+// the current platform.
+//
+// Default is 1.
+//
+// Recommended setting: 1
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
// Use wxSashWindow class.
//
// Default is 1.
#include "wx/imaglist.h"
#include "wx/minifram.h"
#include "wx/sysopt.h"
+#include "wx/notifmsg.h"
#if wxUSE_COLOURDLG
#include "wx/colordlg.h"
EVT_MENU(DIALOGS_PROPERTY_SHEET, MyFrame::OnPropertySheet)
EVT_MENU(DIALOGS_PROPERTY_SHEET_TOOLBOOK, MyFrame::OnPropertySheet)
EVT_MENU(DIALOGS_PROPERTY_SHEET_BUTTONTOOLBOOK, MyFrame::OnPropertySheet)
-#endif
+#endif // USE_SETTINGS_DIALOG
EVT_MENU(DIALOGS_STANDARD_BUTTON_SIZER_DIALOG, MyFrame::OnStandardButtonsSizerDialog)
+
EVT_MENU(DIALOGS_REQUEST, MyFrame::OnRequestUserAttention)
+#if wxUSE_NOTIFICATION_MESSAGE
+ EVT_MENU(DIALOGS_NOTIFY_AUTO, MyFrame::OnNotifMsgAuto)
+ EVT_MENU(DIALOGS_NOTIFY_SHOW, MyFrame::OnNotifMsgShow)
+ EVT_MENU(DIALOGS_NOTIFY_HIDE, MyFrame::OnNotifMsgHide)
+#endif // wxUSE_NOTIFICATION_MESSAGE
EVT_MENU(wxID_EXIT, MyFrame::OnExit)
END_EVENT_TABLE()
menuDlg->Append(wxID_ANY, _T("&Property sheets"), sheet_menu);
#endif // USE_SETTINGS_DIALOG
- menuDlg->Append(DIALOGS_STANDARD_BUTTON_SIZER_DIALOG, _T("&Standard Buttons Sizer Dialog"));
+ wxMenu *menuNotif = new wxMenu;
+ menuNotif->Append(DIALOGS_REQUEST, _T("&Request user attention\tCtrl-R"));
+#if wxUSE_NOTIFICATION_MESSAGE
+ menuNotif->Append(DIALOGS_NOTIFY_AUTO, "&Automatically hidden notification");
+ menuNotif->Append(DIALOGS_NOTIFY_SHOW, "&Show manual notification");
+ menuNotif->Append(DIALOGS_NOTIFY_HIDE, "&Hide manual notification");
+#endif // wxUSE_NOTIFICATION_MESSAGE
+ menuDlg->AppendSubMenu(menuNotif, "&User notifications");
- menuDlg->Append(DIALOGS_REQUEST, _T("&Request user attention\tCtrl-R"));
+ menuDlg->Append(DIALOGS_STANDARD_BUTTON_SIZER_DIALOG, _T("&Standard Buttons Sizer Dialog"));
menuDlg->AppendSeparator();
menuDlg->Append(wxID_EXIT, _T("E&xit\tAlt-X"));
}
#endif // wxUSE_COLOURDLG
+#if wxUSE_NOTIFICATION_MESSAGE
+ m_notifMsg = NULL;
+#endif // wxUSE_NOTIFICATION_MESSAGE
+
#if wxUSE_STATUSBAR
CreateStatusBar();
#endif // wxUSE_STATUSBAR
}
+MyFrame::~MyFrame()
+{
+#if wxUSE_NOTIFICATION_MESSAGE
+ delete m_notifMsg;
+#endif // wxUSE_NOTIFICATION_MESSAGE
+}
+
#if wxUSE_COLOURDLG
void MyFrame::ChooseColour(wxCommandEvent& WXUNUSED(event))
RequestUserAttention(wxUSER_ATTENTION_ERROR);
}
+#if wxUSE_NOTIFICATION_MESSAGE
+
+void MyFrame::OnNotifMsgAuto(wxCommandEvent& WXUNUSED(event))
+{
+ if ( !wxNotificationMessage
+ (
+ "Automatic Notification",
+ "Nothing important has happened\n"
+ "this notification will disappear soon."
+ ).Show() )
+ {
+ wxLogStatus("Failed to show notification message");
+ }
+}
+
+void MyFrame::OnNotifMsgShow(wxCommandEvent& WXUNUSED(event))
+{
+ if ( !m_notifMsg )
+ {
+ m_notifMsg = new wxNotificationMessage
+ (
+ "wxWidgets Manual Notification",
+ "You can hide this notification from the menu",
+ this
+ );
+ }
+
+ if ( !m_notifMsg->Show(wxNotificationMessage::Timeout_Never) )
+ {
+ wxLogStatus("Failed to show manual notification message");
+ }
+}
+
+void MyFrame::OnNotifMsgHide(wxCommandEvent& WXUNUSED(event))
+{
+ if ( m_notifMsg )
+ {
+ if ( !m_notifMsg->Close() )
+ wxLogStatus("Failed to hide manual notification message");
+ }
+}
+
+#endif // wxUSE_NOTIFICATION_MESSAGE
+
void MyFrame::OnStandardButtonsSizerDialog(wxCommandEvent& WXUNUSED(event))
{
StdButtonSizerDialog dialog(this);
{
public:
MyFrame(wxWindow *parent, const wxString& title);
+ virtual ~MyFrame();
#if wxUSE_MSGDLG
void MessageBox(wxCommandEvent& event);
#endif // USE_FONTDLG_GENERIC
void OnPropertySheet(wxCommandEvent& event);
+
void OnRequestUserAttention(wxCommandEvent& event);
+#if wxUSE_NOTIFICATION_MESSAGE
+ void OnNotifMsgAuto(wxCommandEvent& event);
+ void OnNotifMsgShow(wxCommandEvent& event);
+ void OnNotifMsgHide(wxCommandEvent& event);
+#endif // wxUSE_NOTIFICATION_MESSAGE
+
void OnStandardButtonsSizerDialog(wxCommandEvent& event);
void OnExit(wxCommandEvent& event);
*m_dlgReplace;
#endif // wxUSE_FINDREPLDLG
+#if wxUSE_NOTIFICATION_MESSAGE
+ wxNotificationMessage *m_notifMsg;
+#endif // wxUSE_NOTIFICATION_MESSAGE
+
wxColourData m_clrData;
DECLARE_EVENT_TABLE()
DIALOGS_FIND,
DIALOGS_REPLACE,
DIALOGS_REQUEST,
+ DIALOGS_NOTIFY_AUTO,
+ DIALOGS_NOTIFY_SHOW,
+ DIALOGS_NOTIFY_HIDE,
DIALOGS_PROPERTY_SHEET,
DIALOGS_PROPERTY_SHEET_TOOLBOOK,
DIALOGS_PROPERTY_SHEET_BUTTONTOOLBOOK,
#define wxUSE_MENUS 0
+#define wxUSE_NOTIFICATION_MESSAGE 0
+
#define wxUSE_SASH 0
#define wxUSE_SPLITTER 0
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: src/generic/notifmsgg.cpp
+// Purpose: generic implementation of wxNotificationMessage
+// Author: Vadim Zeitlin
+// Created: 2007-11-24
+// RCS-ID: $Id$
+// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declarations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+// include this before the test below, wxUSE_GENERIC_NOTIFICATION_MESSAGE is
+// defined in this header
+#include "wx/notifmsg.h"
+
+#if wxUSE_GENERIC_NOTIFICATION_MESSAGE
+
+#ifndef WX_PRECOMP
+ #include "wx/dialog.h"
+ #include "wx/timer.h"
+#endif //WX_PRECOMP
+
+// ----------------------------------------------------------------------------
+// wxNotificationMessageDialog
+// ----------------------------------------------------------------------------
+
+class wxNotificationMessageDialog : public wxDialog
+{
+public:
+ wxNotificationMessageDialog(wxWindow *parent,
+ const wxString& text,
+ int timeout);
+
+ void Set(wxWindow *parent,
+ const wxString& text,
+ int timeout);
+
+ bool IsAutomatic() const { return m_timer.IsRunning(); }
+ void SetDeleteOnHide() { m_deleteOnHide = true; }
+
+private:
+ void OnClose(wxCloseEvent& event);
+ void OnTimer(wxTimerEvent& event);
+
+ // if true, delete the dialog when it should disappear, otherwise just hide
+ // it (initially false)
+ bool m_deleteOnHide;
+
+ // timer which will hide this dialog when it expires, if it's not running
+ // it means we were created without timeout
+ wxTimer m_timer;
+
+
+ DECLARE_EVENT_TABLE()
+ DECLARE_NO_COPY_CLASS(wxNotificationMessageDialog)
+};
+
+// ============================================================================
+// wxNotificationMessageDialog implementation
+// ============================================================================
+
+BEGIN_EVENT_TABLE(wxNotificationMessageDialog, wxDialog)
+ EVT_CLOSE(wxNotificationMessageDialog::OnClose)
+
+ EVT_TIMER(wxID_ANY, wxNotificationMessageDialog::OnTimer)
+END_EVENT_TABLE()
+
+wxNotificationMessageDialog::wxNotificationMessageDialog(wxWindow *parent,
+ const wxString& text,
+ int timeout)
+ : wxDialog(parent, wxID_ANY, _("Notice"),
+ wxDefaultPosition, wxDefaultSize,
+ 0 /* no caption, no border styles */),
+ m_timer(this)
+{
+ m_deleteOnHide = false;
+
+ Set(parent, text, timeout);
+}
+
+void
+wxNotificationMessageDialog::Set(wxWindow * WXUNUSED(parent),
+ const wxString& text,
+ int timeout)
+{
+ wxSizer *sizer = CreateTextSizer(text);
+ SetSizerAndFit(sizer);
+
+ if ( timeout != wxNotificationMessage::Timeout_Never )
+ {
+ // wxTimer uses ms, timeout is in seconds
+ m_timer.Start(timeout*1000, true /* one shot only */);
+ }
+ else if ( m_timer.IsRunning() )
+ {
+ m_timer.Stop();
+ }
+}
+
+void wxNotificationMessageDialog::OnClose(wxCloseEvent& event)
+{
+ if ( m_deleteOnHide )
+ {
+ // we don't need to keep this dialog alive any more
+ Destroy();
+ }
+ else // don't really close, just hide, as we can be shown again later
+ {
+ event.Veto();
+
+ Hide();
+ }
+}
+
+void wxNotificationMessageDialog::OnTimer(wxTimerEvent& WXUNUSED(event))
+{
+ if ( m_deleteOnHide )
+ Destroy();
+ else
+ Hide();
+}
+
+// ============================================================================
+// wxNotificationMessage implementation
+// ============================================================================
+
+int wxNotificationMessage::ms_timeout = 10;
+
+/* static */ void wxNotificationMessage::SetDefaultTimeout(int timeout)
+{
+ wxASSERT_MSG( timeout > 0,
+ "negative or zero default timeout doesn't make sense" );
+
+ ms_timeout = timeout;
+}
+
+void wxNotificationMessage::Init()
+{
+ m_dialog = NULL;
+}
+
+wxNotificationMessage::~wxNotificationMessage()
+{
+ if ( m_dialog->IsAutomatic() )
+ {
+ // we want to allow the user to create an automatically hidden
+ // notification just by creating a local wxNotificationMessage object
+ // and so we shouldn't hide the notification when this object goes out
+ // of scope
+ m_dialog->SetDeleteOnHide();
+ }
+ else // manual dialog, hide it immediately
+ {
+ // OTOH for permanently shown dialogs only the code can hide them and
+ // if the object is deleted, we must do it now as it won't be
+ // accessible programmatically any more
+ delete m_dialog;
+ }
+}
+
+bool wxNotificationMessage::Show(int timeout)
+{
+ if ( timeout == Timeout_Auto )
+ {
+ timeout = GetDefaultTimeout();
+ }
+
+ if ( !m_dialog )
+ {
+ m_dialog = new wxNotificationMessageDialog
+ (
+ GetParent(),
+ GetFullMessage(),
+ timeout
+ );
+ }
+ else // update the existing dialog
+ {
+ m_dialog->Set(GetParent(), GetFullMessage(), timeout);
+ }
+
+ m_dialog->Show();
+
+ return true;
+}
+
+bool wxNotificationMessage::Close()
+{
+ if ( !m_dialog )
+ return false;
+
+ m_dialog->Hide();
+
+ return true;
+}
+
+#endif // wxUSE_GENERIC_NOTIFICATION_MESSAGE
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: gtk/hildon/notifmsg.cpp
+// Purpose: Hildon implementation of wxNotificationMessage
+// Author: Vadim Zeitlin
+// Created: 2007-11-21
+// RCS-ID: $Id$
+// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declarations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#if wxUSE_LIBHILDON
+
+#ifndef WX_PRECOMP
+#endif //WX_PRECOMP
+
+#include "wx/notifmsg.h"
+#include "wx/toplevel.h"
+
+#include <hildon-widgets/hildon-banner.h>
+
+// ============================================================================
+// wxNotificationMessage implementation
+// ============================================================================
+
+wxString wxNotificationMessage::HildonGetMarkup() const
+{
+ const wxString& message = GetMessage(),
+ title = GetTitle();
+
+ wxString text;
+ if ( message.empty() )
+ {
+ text = title;
+ }
+ else // combine title with message in a single string
+ {
+ text << "<big><b>" << title << "</b></big>\n"
+ "\n"
+ << message;
+ }
+
+ return text;
+}
+
+GtkWidget *wxNotificationMessage::HildonGetWindow() const
+{
+ wxWindow *parent = GetParent();
+ if ( parent )
+ {
+ parent = wxGetTopLevelParent(parent);
+ if ( parent )
+ {
+ wxTopLevelWindow * const
+ tlw = wxDynamicCast(parent, wxTopLevelWindow);
+ if ( tlw )
+ return tlw->m_mainWidget;
+ }
+ }
+
+ return NULL;
+}
+
+bool wxNotificationMessage::Show(int timeout)
+{
+ if ( timeout == Timeout_Never )
+ {
+ m_banner = hildon_banner_show_animation
+ (
+ HildonGetWindow(),
+ NULL,
+ GetFullMessage() // markup not supported here
+ );
+ if ( !m_banner )
+ return false;
+ }
+ else // the message will time out
+ {
+ // we don't have any way to set the timeout interval so we just let it
+ // time out automatically
+ hildon_banner_show_information_with_markup
+ (
+ HildonGetWindow(),
+ NULL,
+ HildonGetMarkup()
+ );
+ }
+
+ return true;
+}
+
+bool wxNotificationMessage::Close()
+{
+ if ( !m_banner )
+ {
+ // either we hadn't been shown or we are using an information banner
+ // which will disappear on its own, nothing we can do about it
+ return false;
+ }
+
+ gtk_widget_destroy(m_banner);
+ m_banner = NULL;
+
+ return true;
+}
+
+wxNotificationMessage::~wxNotificationMessage()
+{
+ Close();
+}
+
+#endif // wxUSE_LIBHILDON