refactored plugin api; refactored callback library; added signals library

git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@44 8a3a26a2-13c4-0310-b231-cf6edde360e5
This commit is contained in:
spog
2006-04-09 17:15:13 +00:00
parent ba55f1bbf6
commit 6ee91d153e
127 changed files with 3723 additions and 2092 deletions

View File

@@ -37,7 +37,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#include "renderable.h"
#include "preferencesystem.h"
#include "generic/callback.h"
#include "signal/signal.h"
#include "container/array.h"
#include "scenelib.h"
#include "render.h"
@@ -60,16 +60,16 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#include "timer.h"
std::vector<Callback> g_cameraMoved_callbacks;
Signal0 g_cameraMoved_callbacks;
void AddCameraMovedCallback(const Callback& callback)
void AddCameraMovedCallback(const SignalHandler& handler)
{
g_cameraMoved_callbacks.push_back(callback);
g_cameraMoved_callbacks.connectLast(handler);
}
void CameraMovedNotify()
{
std::for_each(g_cameraMoved_callbacks.begin(), g_cameraMoved_callbacks.end(), CallbackInvoke());
g_cameraMoved_callbacks();
}
@@ -1120,6 +1120,7 @@ void CamWnd_Move_Discrete_Import(bool value)
}
void CamWnd_Add_Handlers_Move(CamWnd& camwnd)
{
camwnd.m_selection_button_press_handler = g_signal_connect(G_OBJECT(camwnd.m_gl_widget), "button_press_event", G_CALLBACK(selection_button_press), camwnd.m_window_observer);