final fix for ufoai
authornamespace <namespace>
Sat, 6 Jan 2007 13:47:21 +0000 (13:47 +0000)
committernamespace <namespace>
Sat, 6 Jan 2007 13:47:21 +0000 (13:47 +0000)
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@135 8a3a26a2-13c4-0310-b231-cf6edde360e5

SConscript
contrib/ufoaiplug/ufoai.cpp
contrib/ufoaiplug/ufoai_gtk.cpp
contrib/ufoaiplug/ufoai_gtk.h

index f63531f..a0509a9 100644 (file)
@@ -465,7 +465,7 @@ bob_env.useGlib2()
 bob_env.useGtk2()
 bob_env.Install(INSTALL + '/plugins', bob_lib)
 
-#camera_lst = build_list('contrib/camera', 
+#camera_lst = build_list('contrib/camera',
 #'camera.cpp dialogs.cpp dialogs_common.cpp funchandlers.cpp listener.cpp misc.cpp renderer.cpp')
 #camera_lst.append('libs/libsplines.a')
 #bob_env.SharedLibrarySafe(target='camera', source=camera_lst)
@@ -494,10 +494,10 @@ sunplug_lib = sunplug_env.SharedLibrarySafe(target='sunplug', source=sunplug_lst
 sunplug_env.Install(INSTALL + '/plugins', sunplug_lib)
 
 ufoai_env = module_env.Copy()
-ufoai_lst = build_list('contrib/ufoai', 'ufoai.cpp ufoai_filters.cpp ufoai_gtk.cpp ufoai_level.cpp')
+ufoai_lst = build_list('contrib/ufoaiplug', 'ufoai.cpp ufoai_filters.cpp ufoai_gtk.cpp ufoai_level.cpp')
 ufoai_env.useGlib2()
 ufoai_env.useGtk2()
-ufoai_lib = ufoai_env.SharedLibrarySafe(target='ufoai', source=ufoai_lst, LIBPATH='libs')
+ufoai_lib = ufoai_env.SharedLibrarySafe(target='ufoaiplug', source=ufoai_lst, LIBPATH='libs')
 ufoai_env.Install(INSTALL + '/plugins', ufoai_lib)
 
 shaderplug_env = module_env.Copy()
index 81e749f..e2372dd 100644 (file)
@@ -204,8 +204,15 @@ public:
 
        UFOAIToolbarModule()
        {
-               m_table.m_pfnToolbarButtonCount = ToolbarButtonCount;
-               m_table.m_pfnGetToolbarButton = GetToolbarButton;
+               if (!strcmp(GlobalRadiant().getGameDescriptionKeyValue("name"), "UFO:Alien Invasion")) {
+                       m_table.m_pfnToolbarButtonCount = ToolbarButtonCount;
+                       m_table.m_pfnGetToolbarButton = GetToolbarButton;
+               }
+               else
+               {
+                       m_table.m_pfnToolbarButtonCount = ToolbarNoButtons;
+                       m_table.m_pfnGetToolbarButton = GetToolbarNoButton;
+               }
        }
        _QERPlugToolbarTable* getTable()
        {
index 3fff09b..34685ee 100644 (file)
@@ -78,6 +78,14 @@ std::size_t ToolbarButtonCount(void)
 }
 
 /**
+ * @brief Used if the ufo plugin should not be visible (at least the toolbar stuff)
+ */
+std::size_t ToolbarNoButtons (void)
+{
+       return 0;
+}
+
+/**
  * @brief
  */
 class CUFOAIToolbarButton : public IToolbarButton
@@ -179,3 +187,11 @@ const IToolbarButton* GetToolbarButton(std::size_t index)
        g_ufoaiToolbarButtons[index].mIndex = index;
        return &g_ufoaiToolbarButtons[index];
 }
+
+/**
+ * @brief
+ */
+const IToolbarButton* GetToolbarNoButton(std::size_t index)
+{
+       return NULL;
+}
index 6199bdb..ef2ae3c 100644 (file)
@@ -23,6 +23,8 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 #include <gtk/gtk.h>
 
 const IToolbarButton* GetToolbarButton(std::size_t index);
+const IToolbarButton* GetToolbarNoButton(std::size_t index);
 std::size_t ToolbarButtonCount(void);
+std::size_t ToolbarNoButtons(void);
 
 #endif