final fix for ufoai

git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@135 8a3a26a2-13c4-0310-b231-cf6edde360e5
This commit is contained in:
namespace 2007-01-06 13:47:21 +00:00
parent c6db6ffb41
commit 5e882b2713
4 changed files with 30 additions and 5 deletions

View File

@ -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()

View 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()
{

View File

@ -77,6 +77,14 @@ std::size_t ToolbarButtonCount(void)
return NUM_TOOLBARBUTTONS;
}
/**
* @brief Used if the ufo plugin should not be visible (at least the toolbar stuff)
*/
std::size_t ToolbarNoButtons (void)
{
return 0;
}
/**
* @brief
*/
@ -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;
}

View 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