wx/listbox.h \
wx/mdi.h \
wx/menu.h \
+ wx/mousemanager.h \
wx/msgdlg.h \
wx/nativewin.h \
wx/numdlg.h \
monodll_listctrlcmn.o \
monodll_matrix.o \
monodll_menucmn.o \
+ monodll_mousemanager.o \
monodll_nbkbase.o \
monodll_overlaycmn.o \
monodll_paper.o \
monodll_listctrlcmn.o \
monodll_matrix.o \
monodll_menucmn.o \
+ monodll_mousemanager.o \
monodll_nbkbase.o \
monodll_overlaycmn.o \
monodll_paper.o \
monolib_listctrlcmn.o \
monolib_matrix.o \
monolib_menucmn.o \
+ monolib_mousemanager.o \
monolib_nbkbase.o \
monolib_overlaycmn.o \
monolib_paper.o \
monolib_listctrlcmn.o \
monolib_matrix.o \
monolib_menucmn.o \
+ monolib_mousemanager.o \
monolib_nbkbase.o \
monolib_overlaycmn.o \
monolib_paper.o \
coredll_listctrlcmn.o \
coredll_matrix.o \
coredll_menucmn.o \
+ coredll_mousemanager.o \
coredll_nbkbase.o \
coredll_overlaycmn.o \
coredll_paper.o \
coredll_listctrlcmn.o \
coredll_matrix.o \
coredll_menucmn.o \
+ coredll_mousemanager.o \
coredll_nbkbase.o \
coredll_overlaycmn.o \
coredll_paper.o \
corelib_listctrlcmn.o \
corelib_matrix.o \
corelib_menucmn.o \
+ corelib_mousemanager.o \
corelib_nbkbase.o \
corelib_overlaycmn.o \
corelib_paper.o \
corelib_listctrlcmn.o \
corelib_matrix.o \
corelib_menucmn.o \
+ corelib_mousemanager.o \
corelib_nbkbase.o \
corelib_overlaycmn.o \
corelib_paper.o \
@COND_USE_GUI_1@monodll_menucmn.o: $(srcdir)/src/common/menucmn.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/menucmn.cpp
+@COND_USE_GUI_1@monodll_mousemanager.o: $(srcdir)/src/common/mousemanager.cpp $(MONODLL_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/mousemanager.cpp
+
@COND_USE_GUI_1@monodll_nbkbase.o: $(srcdir)/src/common/nbkbase.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/nbkbase.cpp
@COND_USE_GUI_1@monolib_menucmn.o: $(srcdir)/src/common/menucmn.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/menucmn.cpp
+@COND_USE_GUI_1@monolib_mousemanager.o: $(srcdir)/src/common/mousemanager.cpp $(MONOLIB_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/mousemanager.cpp
+
@COND_USE_GUI_1@monolib_nbkbase.o: $(srcdir)/src/common/nbkbase.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/nbkbase.cpp
@COND_USE_GUI_1@coredll_menucmn.o: $(srcdir)/src/common/menucmn.cpp $(COREDLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/menucmn.cpp
+@COND_USE_GUI_1@coredll_mousemanager.o: $(srcdir)/src/common/mousemanager.cpp $(COREDLL_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/mousemanager.cpp
+
@COND_USE_GUI_1@coredll_nbkbase.o: $(srcdir)/src/common/nbkbase.cpp $(COREDLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/nbkbase.cpp
@COND_USE_GUI_1@corelib_menucmn.o: $(srcdir)/src/common/menucmn.cpp $(CORELIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/menucmn.cpp
+@COND_USE_GUI_1@corelib_mousemanager.o: $(srcdir)/src/common/mousemanager.cpp $(CORELIB_ODEP)
+@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/mousemanager.cpp
+
@COND_USE_GUI_1@corelib_nbkbase.o: $(srcdir)/src/common/nbkbase.cpp $(CORELIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/nbkbase.cpp
src/common/listctrlcmn.cpp
src/common/matrix.cpp
src/common/menucmn.cpp
+ src/common/mousemanager.cpp
src/common/nbkbase.cpp
src/common/overlaycmn.cpp
src/common/paper.cpp
wx/listbox.h
wx/mdi.h
wx/menu.h
+ wx/mousemanager.h
wx/msgdlg.h
wx/nativewin.h
wx/numdlg.h
$(OBJS)\monodll_listctrlcmn.obj \
$(OBJS)\monodll_matrix.obj \
$(OBJS)\monodll_menucmn.obj \
+ $(OBJS)\monodll_mousemanager.obj \
$(OBJS)\monodll_nbkbase.obj \
$(OBJS)\monodll_overlaycmn.obj \
$(OBJS)\monodll_paper.obj \
$(OBJS)\monodll_listctrlcmn.obj \
$(OBJS)\monodll_matrix.obj \
$(OBJS)\monodll_menucmn.obj \
+ $(OBJS)\monodll_mousemanager.obj \
$(OBJS)\monodll_nbkbase.obj \
$(OBJS)\monodll_overlaycmn.obj \
$(OBJS)\monodll_paper.obj \
$(OBJS)\monolib_listctrlcmn.obj \
$(OBJS)\monolib_matrix.obj \
$(OBJS)\monolib_menucmn.obj \
+ $(OBJS)\monolib_mousemanager.obj \
$(OBJS)\monolib_nbkbase.obj \
$(OBJS)\monolib_overlaycmn.obj \
$(OBJS)\monolib_paper.obj \
$(OBJS)\monolib_listctrlcmn.obj \
$(OBJS)\monolib_matrix.obj \
$(OBJS)\monolib_menucmn.obj \
+ $(OBJS)\monolib_mousemanager.obj \
$(OBJS)\monolib_nbkbase.obj \
$(OBJS)\monolib_overlaycmn.obj \
$(OBJS)\monolib_paper.obj \
$(OBJS)\coredll_listctrlcmn.obj \
$(OBJS)\coredll_matrix.obj \
$(OBJS)\coredll_menucmn.obj \
+ $(OBJS)\coredll_mousemanager.obj \
$(OBJS)\coredll_nbkbase.obj \
$(OBJS)\coredll_overlaycmn.obj \
$(OBJS)\coredll_paper.obj \
$(OBJS)\coredll_listctrlcmn.obj \
$(OBJS)\coredll_matrix.obj \
$(OBJS)\coredll_menucmn.obj \
+ $(OBJS)\coredll_mousemanager.obj \
$(OBJS)\coredll_nbkbase.obj \
$(OBJS)\coredll_overlaycmn.obj \
$(OBJS)\coredll_paper.obj \
$(OBJS)\corelib_listctrlcmn.obj \
$(OBJS)\corelib_matrix.obj \
$(OBJS)\corelib_menucmn.obj \
+ $(OBJS)\corelib_mousemanager.obj \
$(OBJS)\corelib_nbkbase.obj \
$(OBJS)\corelib_overlaycmn.obj \
$(OBJS)\corelib_paper.obj \
$(OBJS)\corelib_listctrlcmn.obj \
$(OBJS)\corelib_matrix.obj \
$(OBJS)\corelib_menucmn.obj \
+ $(OBJS)\corelib_mousemanager.obj \
$(OBJS)\corelib_nbkbase.obj \
$(OBJS)\corelib_overlaycmn.obj \
$(OBJS)\corelib_paper.obj \
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monodll_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monolib_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\coredll_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\coredll_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\corelib_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\corelib_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(OBJS)\monodll_listctrlcmn.o \
$(OBJS)\monodll_matrix.o \
$(OBJS)\monodll_menucmn.o \
+ $(OBJS)\monodll_mousemanager.o \
$(OBJS)\monodll_nbkbase.o \
$(OBJS)\monodll_overlaycmn.o \
$(OBJS)\monodll_paper.o \
$(OBJS)\monodll_listctrlcmn.o \
$(OBJS)\monodll_matrix.o \
$(OBJS)\monodll_menucmn.o \
+ $(OBJS)\monodll_mousemanager.o \
$(OBJS)\monodll_nbkbase.o \
$(OBJS)\monodll_overlaycmn.o \
$(OBJS)\monodll_paper.o \
$(OBJS)\monolib_listctrlcmn.o \
$(OBJS)\monolib_matrix.o \
$(OBJS)\monolib_menucmn.o \
+ $(OBJS)\monolib_mousemanager.o \
$(OBJS)\monolib_nbkbase.o \
$(OBJS)\monolib_overlaycmn.o \
$(OBJS)\monolib_paper.o \
$(OBJS)\monolib_listctrlcmn.o \
$(OBJS)\monolib_matrix.o \
$(OBJS)\monolib_menucmn.o \
+ $(OBJS)\monolib_mousemanager.o \
$(OBJS)\monolib_nbkbase.o \
$(OBJS)\monolib_overlaycmn.o \
$(OBJS)\monolib_paper.o \
$(OBJS)\coredll_listctrlcmn.o \
$(OBJS)\coredll_matrix.o \
$(OBJS)\coredll_menucmn.o \
+ $(OBJS)\coredll_mousemanager.o \
$(OBJS)\coredll_nbkbase.o \
$(OBJS)\coredll_overlaycmn.o \
$(OBJS)\coredll_paper.o \
$(OBJS)\coredll_listctrlcmn.o \
$(OBJS)\coredll_matrix.o \
$(OBJS)\coredll_menucmn.o \
+ $(OBJS)\coredll_mousemanager.o \
$(OBJS)\coredll_nbkbase.o \
$(OBJS)\coredll_overlaycmn.o \
$(OBJS)\coredll_paper.o \
$(OBJS)\corelib_listctrlcmn.o \
$(OBJS)\corelib_matrix.o \
$(OBJS)\corelib_menucmn.o \
+ $(OBJS)\corelib_mousemanager.o \
$(OBJS)\corelib_nbkbase.o \
$(OBJS)\corelib_overlaycmn.o \
$(OBJS)\corelib_paper.o \
$(OBJS)\corelib_listctrlcmn.o \
$(OBJS)\corelib_matrix.o \
$(OBJS)\corelib_menucmn.o \
+ $(OBJS)\corelib_mousemanager.o \
$(OBJS)\corelib_nbkbase.o \
$(OBJS)\corelib_overlaycmn.o \
$(OBJS)\corelib_paper.o \
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\monodll_mousemanager.o: ../../src/common/mousemanager.cpp
+ $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_nbkbase.o: ../../src/common/nbkbase.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\monolib_mousemanager.o: ../../src/common/mousemanager.cpp
+ $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_nbkbase.o: ../../src/common/nbkbase.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\coredll_mousemanager.o: ../../src/common/mousemanager.cpp
+ $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\coredll_nbkbase.o: ../../src/common/nbkbase.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
endif
+ifeq ($(USE_GUI),1)
+$(OBJS)\corelib_mousemanager.o: ../../src/common/mousemanager.cpp
+ $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
+endif
+
ifeq ($(USE_GUI),1)
$(OBJS)\corelib_nbkbase.o: ../../src/common/nbkbase.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_listctrlcmn.obj \
$(OBJS)\monodll_matrix.obj \
$(OBJS)\monodll_menucmn.obj \
+ $(OBJS)\monodll_mousemanager.obj \
$(OBJS)\monodll_nbkbase.obj \
$(OBJS)\monodll_overlaycmn.obj \
$(OBJS)\monodll_paper.obj \
$(OBJS)\monodll_listctrlcmn.obj \
$(OBJS)\monodll_matrix.obj \
$(OBJS)\monodll_menucmn.obj \
+ $(OBJS)\monodll_mousemanager.obj \
$(OBJS)\monodll_nbkbase.obj \
$(OBJS)\monodll_overlaycmn.obj \
$(OBJS)\monodll_paper.obj \
$(OBJS)\monolib_listctrlcmn.obj \
$(OBJS)\monolib_matrix.obj \
$(OBJS)\monolib_menucmn.obj \
+ $(OBJS)\monolib_mousemanager.obj \
$(OBJS)\monolib_nbkbase.obj \
$(OBJS)\monolib_overlaycmn.obj \
$(OBJS)\monolib_paper.obj \
$(OBJS)\monolib_listctrlcmn.obj \
$(OBJS)\monolib_matrix.obj \
$(OBJS)\monolib_menucmn.obj \
+ $(OBJS)\monolib_mousemanager.obj \
$(OBJS)\monolib_nbkbase.obj \
$(OBJS)\monolib_overlaycmn.obj \
$(OBJS)\monolib_paper.obj \
$(OBJS)\coredll_listctrlcmn.obj \
$(OBJS)\coredll_matrix.obj \
$(OBJS)\coredll_menucmn.obj \
+ $(OBJS)\coredll_mousemanager.obj \
$(OBJS)\coredll_nbkbase.obj \
$(OBJS)\coredll_overlaycmn.obj \
$(OBJS)\coredll_paper.obj \
$(OBJS)\coredll_listctrlcmn.obj \
$(OBJS)\coredll_matrix.obj \
$(OBJS)\coredll_menucmn.obj \
+ $(OBJS)\coredll_mousemanager.obj \
$(OBJS)\coredll_nbkbase.obj \
$(OBJS)\coredll_overlaycmn.obj \
$(OBJS)\coredll_paper.obj \
$(OBJS)\corelib_listctrlcmn.obj \
$(OBJS)\corelib_matrix.obj \
$(OBJS)\corelib_menucmn.obj \
+ $(OBJS)\corelib_mousemanager.obj \
$(OBJS)\corelib_nbkbase.obj \
$(OBJS)\corelib_overlaycmn.obj \
$(OBJS)\corelib_paper.obj \
$(OBJS)\corelib_listctrlcmn.obj \
$(OBJS)\corelib_matrix.obj \
$(OBJS)\corelib_menucmn.obj \
+ $(OBJS)\corelib_mousemanager.obj \
$(OBJS)\corelib_nbkbase.obj \
$(OBJS)\corelib_overlaycmn.obj \
$(OBJS)\corelib_paper.obj \
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monodll_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\monolib_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\coredll_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\coredll_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\common\menucmn.cpp
!endif
+!if "$(USE_GUI)" == "1"
+$(OBJS)\corelib_mousemanager.obj: ..\..\src\common\mousemanager.cpp
+ $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\common\mousemanager.cpp
+!endif
+
!if "$(USE_GUI)" == "1"
$(OBJS)\corelib_nbkbase.obj: ..\..\src\common\nbkbase.cpp
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\common\nbkbase.cpp
$(OBJS)\monodll_listctrlcmn.obj &
$(OBJS)\monodll_matrix.obj &
$(OBJS)\monodll_menucmn.obj &
+ $(OBJS)\monodll_mousemanager.obj &
$(OBJS)\monodll_nbkbase.obj &
$(OBJS)\monodll_overlaycmn.obj &
$(OBJS)\monodll_paper.obj &
$(OBJS)\monodll_listctrlcmn.obj &
$(OBJS)\monodll_matrix.obj &
$(OBJS)\monodll_menucmn.obj &
+ $(OBJS)\monodll_mousemanager.obj &
$(OBJS)\monodll_nbkbase.obj &
$(OBJS)\monodll_overlaycmn.obj &
$(OBJS)\monodll_paper.obj &
$(OBJS)\monolib_listctrlcmn.obj &
$(OBJS)\monolib_matrix.obj &
$(OBJS)\monolib_menucmn.obj &
+ $(OBJS)\monolib_mousemanager.obj &
$(OBJS)\monolib_nbkbase.obj &
$(OBJS)\monolib_overlaycmn.obj &
$(OBJS)\monolib_paper.obj &
$(OBJS)\monolib_listctrlcmn.obj &
$(OBJS)\monolib_matrix.obj &
$(OBJS)\monolib_menucmn.obj &
+ $(OBJS)\monolib_mousemanager.obj &
$(OBJS)\monolib_nbkbase.obj &
$(OBJS)\monolib_overlaycmn.obj &
$(OBJS)\monolib_paper.obj &
$(OBJS)\coredll_listctrlcmn.obj &
$(OBJS)\coredll_matrix.obj &
$(OBJS)\coredll_menucmn.obj &
+ $(OBJS)\coredll_mousemanager.obj &
$(OBJS)\coredll_nbkbase.obj &
$(OBJS)\coredll_overlaycmn.obj &
$(OBJS)\coredll_paper.obj &
$(OBJS)\coredll_listctrlcmn.obj &
$(OBJS)\coredll_matrix.obj &
$(OBJS)\coredll_menucmn.obj &
+ $(OBJS)\coredll_mousemanager.obj &
$(OBJS)\coredll_nbkbase.obj &
$(OBJS)\coredll_overlaycmn.obj &
$(OBJS)\coredll_paper.obj &
$(OBJS)\corelib_listctrlcmn.obj &
$(OBJS)\corelib_matrix.obj &
$(OBJS)\corelib_menucmn.obj &
+ $(OBJS)\corelib_mousemanager.obj &
$(OBJS)\corelib_nbkbase.obj &
$(OBJS)\corelib_overlaycmn.obj &
$(OBJS)\corelib_paper.obj &
$(OBJS)\corelib_listctrlcmn.obj &
$(OBJS)\corelib_matrix.obj &
$(OBJS)\corelib_menucmn.obj &
+ $(OBJS)\corelib_mousemanager.obj &
$(OBJS)\corelib_nbkbase.obj &
$(OBJS)\corelib_overlaycmn.obj &
$(OBJS)\corelib_paper.obj &
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\monodll_mousemanager.obj : .AUTODEPEND ..\..\src\common\mousemanager.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\monodll_nbkbase.obj : .AUTODEPEND ..\..\src\common\nbkbase.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\monolib_mousemanager.obj : .AUTODEPEND ..\..\src\common\mousemanager.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\monolib_nbkbase.obj : .AUTODEPEND ..\..\src\common\nbkbase.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
$(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\coredll_mousemanager.obj : .AUTODEPEND ..\..\src\common\mousemanager.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\coredll_nbkbase.obj : .AUTODEPEND ..\..\src\common\nbkbase.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
$(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
!endif
+!ifeq USE_GUI 1
+$(OBJS)\corelib_mousemanager.obj : .AUTODEPEND ..\..\src\common\mousemanager.cpp
+ $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
+!endif
+
!ifeq USE_GUI 1
$(OBJS)\corelib_nbkbase.obj : .AUTODEPEND ..\..\src\common\nbkbase.cpp
$(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\src\common\mousemanager.cpp\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\src\common\msgout.cpp\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\include\wx\mousemanager.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\include\wx\msgdlg.h\r
# End Source File\r
# Begin Source File\r
<File\r
RelativePath="..\..\src\common\menucmn.cpp">\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\common\mousemanager.cpp">\r
+ </File>\r
<File\r
RelativePath="..\..\src\common\msgout.cpp">\r
</File>\r
<File\r
RelativePath="..\..\include\wx\minifram.h">\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\mousemanager.h">\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msgdlg.h">\r
</File>\r
RelativePath="..\..\src\common\menucmn.cpp"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\common\mousemanager.cpp"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\src\common\msgout.cpp"\r
>\r
RelativePath="..\..\include\wx\minifram.h"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\mousemanager.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msgdlg.h"\r
>\r
RelativePath="..\..\src\common\menucmn.cpp"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\src\common\mousemanager.cpp"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\src\common\msgout.cpp"\r
>\r
RelativePath="..\..\include\wx\minifram.h"\r
>\r
</File>\r
+ <File\r
+ RelativePath="..\..\include\wx\mousemanager.h"\r
+ >\r
+ </File>\r
<File\r
RelativePath="..\..\include\wx\msgdlg.h"\r
>\r
- wxGrid: add possibility to prevent resizing of individual rows/columns.
- wxHTML: add support for table borders width (Laurent Humbertclaude).
+- Added wxMouseEventsManager.
MSW:
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/mousemanager.h
+// Purpose: wxMouseEventsManager class declaration
+// Author: Vadim Zeitlin
+// Created: 2009-04-20
+// RCS-ID: $Id$
+// Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_MOUSEMANAGER_H_
+#define _WX_MOUSEMANAGER_H_
+
+#include "wx/event.h"
+
+// ----------------------------------------------------------------------------
+// wxMouseEventsManager
+// ----------------------------------------------------------------------------
+
+/*
+ This class handles mouse events and synthesizes high-level notifications
+ such as clicks and drag events from low level mouse button presses and
+ mouse movement events. It is useful because handling the mouse events is
+ less obvious than might seem at a first glance: for example, clicks on an
+ object should only be generated if the mouse was both pressed and released
+ over it and not just released (so it requires storing the previous state)
+ and dragging shouldn't start before the mouse moves away far enough.
+
+ This class encapsulates all these dull details for controls containing
+ multiple items which can be identified by a positive integer index and you
+ just need to implement its pure virtual functions to use it.
+ */
+class WXDLLIMPEXP_CORE wxMouseEventsManager : public wxEvtHandler
+{
+public:
+ // a mouse event manager is always associated with a window and must be
+ // deleted by the window when it is destroyed
+ wxMouseEventsManager(wxWindow *win);
+
+ virtual ~wxMouseEventsManager();
+
+protected:
+ // called to find the item at the given position: return wxNOT_FOUND (-1)
+ // if there is no item here
+ virtual int MouseHitTest(const wxPoint& pos) = 0;
+
+ // called when the user clicked (i.e. pressed and released mouse over the
+ // same item), should normally generate a notification about this click and
+ // return true if it was handled or false otherwise, determining whether
+ // the original mouse event is skipped or not
+ virtual bool MouseClicked(int item) = 0;
+
+ // called to start dragging the given item, should generate the appropriate
+ // BEGIN_DRAG event and return false if dragging this item was forbidden
+ virtual bool MouseDragBegin(int item, const wxPoint& pos) = 0;
+
+ // called while the item is being dragged, should normally update the
+ // feedback on screen (usually using wxOverlay)
+ virtual void MouseDragging(int item, const wxPoint& pos) = 0;
+
+ // called when the mouse is released after dragging the item
+ virtual void MouseDragEnd(int item, const wxPoint& pos) = 0;
+
+ // called when mouse capture is lost while dragging the item, should remove
+ // the visual feedback drawn by MouseDragging()
+ virtual void MouseDragCancelled(int item) = 0;
+
+
+ // you don't need to override those but you will want to do if it your
+ // control renders pressed items differently
+
+ // called when the item is becomes pressed, can be used to change its
+ // appearance
+ virtual void MouseClickBegin(int WXUNUSED(item)) { }
+
+ // called if the mouse capture was lost while the item was pressed, can be
+ // used to restore the default item appearance if it was changed in
+ // MouseClickBegin()
+ virtual void MouseClickCancelled(int WXUNUSED(item)) { }
+
+private:
+ /*
+ Here is a small diagram explaining the switches between different
+ states:
+
+
+ /---------->NORMAL<--------------- Drag end
+ / / / | event
+ / / | | ^
+ / / | | |
+ Click / N | | mouse | mouse up
+ event / | | down |
+ | / | | DRAGGING
+ | / | | ^
+ Y|/ N \ v |Y
+ +-------------+ +--------+ N +-----------+
+ |On same item?| |On item?| -----------|Begin drag?|
+ +-------------+ +--------+ / +-----------+
+ ^ | / ^
+ | | / |
+ \ mouse | / mouse moved |
+ \ up v v far enough /
+ \--------PRESSED-------------------/
+
+
+ There are also transitions from PRESSED and DRAGGING to NORMAL in case
+ the mouse capture is lost or Escape key is pressed which are not shown.
+ */
+ enum State
+ {
+ State_Normal, // initial, default state
+ State_Pressed, // mouse was pressed over an item
+ State_Dragging // the item is being dragged
+ };
+
+
+ // various event handlers
+ void OnCaptureLost(wxMouseCaptureLostEvent& event);
+ void OnLeftDown(wxMouseEvent& event);
+ void OnLeftUp(wxMouseEvent& event);
+ void OnMove(wxMouseEvent& event);
+
+
+ // the associated window, never NULL
+ wxWindow * const m_win;
+
+ // the current state
+ State m_state;
+
+ // the details of the operation currently in progress, only valid if
+ // m_state is not normal
+
+ // the item being pressed or dragged (always valid, i.e. != wxNOT_FOUND if
+ // m_state != State_Normal)
+ int m_item;
+
+ // the position of the last mouse event of interest: either mouse press in
+ // State_Pressed or last movement event in State_Dragging
+ wxPoint m_posLast;
+
+
+ DECLARE_EVENT_TABLE()
+
+ wxDECLARE_NO_COPY_CLASS(wxMouseEventsManager);
+};
+
+#endif // _WX_MOUSEMANAGER_H_
+
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/mousemanager.h
+// Purpose: documentation of wxMouseEventsManager class
+// Author: Vadim Zeitlin
+// Created: 2009-04-20
+// RCS-ID: $Id$
+// Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+/**
+ @class wxMouseEventsManager
+
+ Helper for handling mouse input events in windows containing multiple
+ items.
+
+ This class handles mouse events and synthesizes high-level notifications
+ such as clicks and drag events from low level mouse button presses and
+ mouse movement events. It is useful because handling the mouse events is
+ less obvious than might seem at a first glance: for example, clicks on an
+ object should only be generated if the mouse was both pressed and released
+ over it and not just released (so it requires storing the previous state)
+ and dragging shouldn't start before the mouse moves away far enough.
+
+ This class encapsulates all these dull details for controls containing
+ multiple items which can be identified by a positive integer index and you
+ just need to implement its pure virtual functions to use it.
+
+ Notice that this class supposes that all items can be identified by an
+ integer "index" but it doesn't need to be an ordinal index of the item
+ (although this is the most common case) -- it can be any value which can
+ be used to uniquely identify an item.
+
+ @library{core}
+ @category{events}
+ */
+class wxMouseEventsManager : public wxEvtHandler
+{
+public:
+ /**
+ Constructor creates the manager for the window.
+
+ A mouse event manager is always associated with a window and must be
+ destroyed by the window when it is destroyed (it doesn't need to be
+ allocated on the heap however).
+ */
+ wxMouseEventsManager(wxWindow *win);
+
+protected:
+ /**
+ Must be overridden to return the item at the given position.
+
+ @param pos
+ The position to test, in physical coordinates.
+ @return
+ The index of the item at the given position or wxNOT_FOUND if there
+ is no item there.
+ */
+ virtual int MouseHitTest(const wxPoint& pos) = 0;
+
+ /**
+ Must be overridden to react to mouse clicks.
+
+ This method is called when the user clicked (i.e. pressed and released
+ mouse over the @e same item) and should normally generate a
+ notification about this click and return true if it was handled or
+ false otherwise, determining whether the original mouse event is
+ skipped or not.
+
+ @param item
+ The item which was clicked.
+ @return
+ @true if the mouse event was processed and @false otherwise.
+ */
+ virtual bool MouseClicked(int item) = 0;
+
+ /**
+ Must be overridden to allow or deny dragging of the item.
+
+ This method is called when the user attempts to start dragging the
+ given item.
+
+ @param item
+ The item which is going to be dragged.
+ @param pos
+ The position from where it is being dragged.
+ @return
+ @true to allow the item to be dragged (in which case
+ MouseDragging() and MouseDragEnd() will be called later, unless
+ MouseDragCancelled() is called instead) or @false to forbid it.
+ */
+ virtual bool MouseDragBegin(int item, const wxPoint& pos) = 0;
+
+ /**
+ Must be overridden to provide feed back while an item is being dragged.
+
+ This method is called while the item is being dragged and should
+ normally update the feedback shown on screen (usually this is done
+ using wxOverlay).
+
+ Notice that this method will never be called for the items for which
+ MouseDragBegin() returns @false. Consequently, if MouseDragBegin()
+ always returns @false you can do nothing in this method.
+
+ @param item
+ The item being dragged.
+ @param pos
+ The current position of the item.
+
+ @see MouseDragEnd()
+ */
+ virtual void MouseDragging(int item, const wxPoint& pos) = 0;
+
+ /**
+ Must be overridden to handle item drop.
+
+ This method is called when the mouse is released after dragging the
+ item. Normally the item should be positioned at the new location.
+
+ @param item
+ The item which was dragged and now dropped.
+ @param pos
+ The position at which the item was dropped.
+
+ @see MouseDragBegin(), MouseDragging()
+ */
+ virtual void MouseDragEnd(int item, const wxPoint& pos) = 0;
+
+ /**
+ Must be overridden to handle cancellation of mouse dragging.
+
+ This method is called when mouse capture is lost while dragging the
+ item and normally should remove the visual feedback drawn by
+ MouseDragging() as well as reset any internal variables set in
+ MouseDragBegin().
+
+ @see wxMouseCaptureLostEvent
+ */
+ virtual void MouseDragCancelled(int item) = 0;
+
+
+ /**
+ May be overridden to update the state of an item when it is pressed.
+
+ This method is called when the item is becomes pressed and can be used
+ to change its appearance when this happens. It is mostly useful for
+ button-like items and doesn't need to be overridden if the items
+ shouldn't change their appearance when pressed.
+
+ @param item
+ The item being pressed.
+ */
+ virtual void MouseClickBegin(int item);
+
+ /**
+ Must be overridden to reset the item appearance changed by
+ MouseClickBegin().
+
+ This method is called if the mouse capture was lost while the item was
+ pressed and must be overridden to restore the default item appearance
+ if it was changed in MouseClickBegin().
+
+ @see MouseDragCancelled(), wxMouseCaptureLostEvent
+ */
+ virtual void MouseClickCancelled(int item);
+};
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: src/common/mousemanager.cpp
+// Purpose: implementation of wxMouseEventsManager class
+// Author: Vadim Zeitlin
+// Created: 2009-04-21
+// RCS-ID: $Id$
+// Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declarations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#ifndef WX_PRECOMP
+#endif // WX_PRECOMP
+
+#include "wx/mousemanager.h"
+
+// ----------------------------------------------------------------------------
+// event tables
+// ----------------------------------------------------------------------------
+
+BEGIN_EVENT_TABLE(wxMouseEventsManager, wxEvtHandler)
+ EVT_MOUSE_CAPTURE_LOST(wxMouseEventsManager::OnCaptureLost)
+ EVT_LEFT_DOWN(wxMouseEventsManager::OnLeftDown)
+ EVT_LEFT_UP(wxMouseEventsManager::OnLeftUp)
+ EVT_MOTION(wxMouseEventsManager::OnMove)
+END_EVENT_TABLE()
+
+// ============================================================================
+// wxMouseEventsManager implementation
+// ============================================================================
+
+wxMouseEventsManager::wxMouseEventsManager(wxWindow *win)
+ : m_win(win)
+{
+ m_state = State_Normal;
+ m_item = wxNOT_FOUND;
+
+ win->PushEventHandler(this);
+}
+
+wxMouseEventsManager::~wxMouseEventsManager()
+{
+ m_win->RemoveEventHandler(this);
+}
+
+void wxMouseEventsManager::OnCaptureLost(wxMouseCaptureLostEvent& WXUNUSED(event))
+{
+ switch ( m_state )
+ {
+ case State_Normal:
+ wxFAIL_MSG( "mouse shouldn't be captured in normal state" );
+ break;
+
+ case State_Pressed:
+ MouseClickCancelled(m_item);
+ break;
+
+ case State_Dragging:
+ MouseDragCancelled(m_item);
+ break;
+ }
+
+ m_state = State_Normal;
+ m_item = wxNOT_FOUND;
+}
+
+void wxMouseEventsManager::OnLeftDown(wxMouseEvent& event)
+{
+ wxASSERT_MSG( m_state == State_Normal,
+ "state hasn't been reset to normal somehow" );
+
+ m_posLast = event.GetPosition();
+ m_item = MouseHitTest(m_posLast);
+ if ( m_item == wxNOT_FOUND )
+ {
+ event.Skip();
+ return;
+ }
+
+ m_state = State_Pressed;
+ m_win->CaptureMouse();
+ MouseClickBegin(m_item);
+}
+
+void wxMouseEventsManager::OnLeftUp(wxMouseEvent& event)
+{
+ switch ( m_state )
+ {
+ case State_Normal:
+ // ignore it, the mouse hasn't been pressed over any item initially
+ // so releasing it shouldn't do anything
+ event.Skip();
+
+ // skip releasing the capture below
+ return;
+
+ case State_Pressed:
+ if ( MouseHitTest(event.GetPosition()) == m_item )
+ {
+ // mouse released over the same item, so it was a click
+ MouseClicked(m_item);
+ }
+ break;
+
+ case State_Dragging:
+ MouseDragEnd(m_item, event.GetPosition());
+ break;
+ }
+
+ m_state = State_Normal;
+ m_item = wxNOT_FOUND;
+ m_win->ReleaseMouse();
+}
+
+void wxMouseEventsManager::OnMove(wxMouseEvent& event)
+{
+ switch ( m_state )
+ {
+ case State_Normal:
+ event.Skip();
+ break;
+
+ case State_Pressed:
+ wxASSERT_MSG( event.LeftIsDown(),
+ "should have detected mouse being released" );
+
+ {
+ // it's probably a bad idea to query the system for these
+ // values every time the mouse is moved so cache them on the
+ // assumption that they don't change -- which is wrong, of
+ // course, the user can change them but it doesn't happen often
+ static const int
+ dragMinX = wxSystemSettings::GetMetric(wxSYS_DRAG_X);
+ static const int
+ dragMinY = wxSystemSettings::GetMetric(wxSYS_DRAG_Y);
+
+ const wxPoint& pos = event.GetPosition();
+ const wxPoint ofs = pos - m_posLast;
+ if ( abs(ofs.x) > dragMinX || abs(ofs.y) > dragMinY )
+ {
+ // the mouse left the rectangle inside which its movements
+ // are considered to be too small to constitute a start of
+ // drag operation, do [attempt to] start it now
+ if ( MouseDragBegin(m_item, pos) )
+ {
+ m_state = State_Dragging;
+ }
+ }
+ else // still didn't move far enough away
+ {
+ event.Skip();
+ }
+ }
+ break;
+
+ case State_Dragging:
+ m_posLast = event.GetPosition();
+ MouseDragging(m_item, m_posLast);
+ break;
+ }
+}
+