From: Garux <garux@mail.ru>
Date: Tue, 1 Aug 2017 11:03:16 +0000 (+0300)
Subject: Radiant:
X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=6f51c7f28dc9f56ae64e7da7d42dcbaa068da65a;p=xonotic%2Fnetradiant.git

Radiant:
misc...
	* filter toobar buttons also handle right mouse clicks:
		caulk: apply caulk tex
		clip: toggle apply clip/weapclip tex
		hint: toggle apply hint/hintlocal/hintskip tex
		triggers: apply trigger tex
		liquids: toggle apply watercaulk/lavacaulk/slimecaulk tex
		areaportals: toggle apply nodraw/nodrawnonsolid tex
			shader names are configurable through respective shader_* keys in .game file
		details: make detail
		structural: make structural
	* png icons with real alpha; partially antialiased
---

diff --git a/Makefile b/Makefile
index 911e5ff0..b7521e0a 100644
--- a/Makefile
+++ b/Makefile
@@ -646,6 +646,7 @@ $(INSTALLDIR)/radiant.$(EXE): \
 	radiant/error.o \
 	radiant/feedback.o \
 	radiant/filetypes.o \
+	radiant/filterbar.o \
 	radiant/filters.o \
 	radiant/findtexturedialog.o \
 	radiant/glwidget.o \
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.bmp b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.bmp
deleted file mode 100644
index bc307e26..00000000
Binary files a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.bmp and /dev/null differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.png b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.png
new file mode 100644
index 00000000..895cdd8d
Binary files /dev/null and b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_conf.png differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.bmp b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.bmp
deleted file mode 100644
index d95fa284..00000000
Binary files a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.bmp and /dev/null differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.png b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.png
new file mode 100644
index 00000000..e03b63a2
Binary files /dev/null and b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xy_toggle.png differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.bmp b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.bmp
deleted file mode 100644
index 6af8308d..00000000
Binary files a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.bmp and /dev/null differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.png b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.png
new file mode 100644
index 00000000..cbc9809d
Binary files /dev/null and b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_xz_toggle.png differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.bmp b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.bmp
deleted file mode 100644
index de9f4df9..00000000
Binary files a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.bmp and /dev/null differ
diff --git a/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.png b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.png
new file mode 100644
index 00000000..8ecffa76
Binary files /dev/null and b/contrib/bkgrnd2d/bitmaps/bkgrnd2d_yz_toggle.png differ
diff --git a/contrib/bkgrnd2d/plugin.cpp b/contrib/bkgrnd2d/plugin.cpp
index 44705711..35fb0720 100644
--- a/contrib/bkgrnd2d/plugin.cpp
+++ b/contrib/bkgrnd2d/plugin.cpp
@@ -107,28 +107,28 @@ struct toolbar_button_info_s
 struct toolbar_button_info_s toolbar_buttons[NUM_TOOLBAR_BUTTONS] =
 {
 	{
-		"bkgrnd2d_xy_toggle.bmp",
+		"bkgrnd2d_xy_toggle.png",
 		"xy background",
 		"Toggle xy background image",
 		DoBkgrndToggleXY,
 		IToolbarButton::eToggleButton
 	},
 	{
-		"bkgrnd2d_xz_toggle.bmp",
+		"bkgrnd2d_xz_toggle.png",
 		"xz background",
 		"Toggle xz background image",
 		DoBkgrndToggleXZ,
 		IToolbarButton::eToggleButton
 	},
 	{
-		"bkgrnd2d_yz_toggle.bmp",
+		"bkgrnd2d_yz_toggle.png",
 		"yz background",
 		"Toggle yz background image",
 		DoBkgrndToggleYZ,
 		IToolbarButton::eToggleButton
 	},
 	{
-		"bkgrnd2d_conf.bmp",
+		"bkgrnd2d_conf.png",
 		"Configure",
 		"Configure background images",
 		ShowBackgroundDialog,
diff --git a/contrib/bobtoolz/bitmaps/README-bitmaps.txt b/contrib/bobtoolz/bitmaps/README-bitmaps.txt
new file mode 100644
index 00000000..48e7794a
--- /dev/null
+++ b/contrib/bobtoolz/bitmaps/README-bitmaps.txt
@@ -0,0 +1 @@
+bobtoolz bitmaps are in setup/data/tools/plugins/bitmaps 
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_caulk.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_caulk.bmp
deleted file mode 100644
index 52239503..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_caulk.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_cleanup.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_cleanup.bmp
deleted file mode 100644
index 33cc9490..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_cleanup.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_dropent.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_dropent.bmp
deleted file mode 100644
index 2fcdcba3..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_dropent.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_merge.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_merge.bmp
deleted file mode 100644
index cc5e272c..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_merge.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_poly.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_poly.bmp
deleted file mode 100644
index ed720e90..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_poly.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_split.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_split.bmp
deleted file mode 100644
index fbb1571c..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_split.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_trainpathplot.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_trainpathplot.bmp
deleted file mode 100644
index 66537dc1..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_trainpathplot.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_treeplanter.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_treeplanter.bmp
deleted file mode 100644
index 08f55f3c..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_treeplanter.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bitmaps/bobtoolz_turnedge.bmp b/contrib/bobtoolz/bitmaps/bobtoolz_turnedge.bmp
deleted file mode 100644
index b72cb2aa..00000000
Binary files a/contrib/bobtoolz/bitmaps/bobtoolz_turnedge.bmp and /dev/null differ
diff --git a/contrib/bobtoolz/bobToolz-GTK.cpp b/contrib/bobtoolz/bobToolz-GTK.cpp
index d7893955..4eecfd92 100644
--- a/contrib/bobtoolz/bobToolz-GTK.cpp
+++ b/contrib/bobtoolz/bobToolz-GTK.cpp
@@ -166,20 +166,20 @@ class CBobtoolzToolbarButton : public IToolbarButton
 public:
 virtual const char* getImage() const {
 	switch ( mIndex ) {
-	case 0: return "bobtoolz_cleanup.bmp";
-	case 1: return "bobtoolz_poly.bmp";
-	case 2: return "bobtoolz_caulk.bmp";
+	case 0: return "bobtoolz_cleanup.png";
+	case 1: return "bobtoolz_poly.png";
+	case 2: return "bobtoolz_caulk.png";
 	case 3: return "";
-	case 4: return "bobtoolz_treeplanter.bmp";
-	case 5: return "bobtoolz_trainpathplot.bmp";
-	case 6: return "bobtoolz_dropent.bmp";
+	case 4: return "bobtoolz_treeplanter.png";
+	case 5: return "bobtoolz_trainpathplot.png";
+	case 6: return "bobtoolz_dropent.png";
 	case 7: return "";
-	case 8: return "bobtoolz_merge.bmp";
-	case 9: return "bobtoolz_split.bmp";
-	case 10: return "bobtoolz_splitrow.bmp";
-	case 11: return "bobtoolz_splitcol.bmp";
+	case 8: return "bobtoolz_merge.png";
+	case 9: return "bobtoolz_split.png";
+	case 10: return "bobtoolz_splitrow.png";
+	case 11: return "bobtoolz_splitcol.png";
 	case 12: return "";
-	case 13: return "bobtoolz_turnedge.bmp";
+	case 13: return "bobtoolz_turnedge.png";
 	}
 	return NULL;
 }
diff --git a/contrib/camera/bitmaps/camera_insp.bmp b/contrib/camera/bitmaps/camera_insp.bmp
deleted file mode 100644
index 1286716e..00000000
Binary files a/contrib/camera/bitmaps/camera_insp.bmp and /dev/null differ
diff --git a/contrib/camera/bitmaps/camera_insp.png b/contrib/camera/bitmaps/camera_insp.png
new file mode 100644
index 00000000..52966151
Binary files /dev/null and b/contrib/camera/bitmaps/camera_insp.png differ
diff --git a/contrib/camera/camera.cpp b/contrib/camera/camera.cpp
index 5647f4c0..0ee788d0 100644
--- a/contrib/camera/camera.cpp
+++ b/contrib/camera/camera.cpp
@@ -132,7 +132,7 @@ class CameraInspectorButton : public IToolbarButton
 {
 public:
 virtual const char* getImage() const {
-	return "camera_insp.bmp";
+	return "camera_insp.png";
 }
 virtual const char* getText() const {
 	return "Inspector";
diff --git a/contrib/ufoaiplug/bitmaps/README-bitmaps.txt b/contrib/ufoaiplug/bitmaps/README-bitmaps.txt
new file mode 100644
index 00000000..575e5083
--- /dev/null
+++ b/contrib/ufoaiplug/bitmaps/README-bitmaps.txt
@@ -0,0 +1 @@
+ufoaiplug bitmaps are in setup/data/tools/plugins/bitmaps 
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_actorclip.bmp b/contrib/ufoaiplug/bitmaps/ufoai_actorclip.bmp
deleted file mode 100644
index 43bdf933..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_actorclip.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level1.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level1.bmp
deleted file mode 100644
index 80a4b299..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level1.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level2.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level2.bmp
deleted file mode 100644
index e84e2544..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level2.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level3.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level3.bmp
deleted file mode 100644
index 141c3245..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level3.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level4.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level4.bmp
deleted file mode 100644
index 3783a803..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level4.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level5.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level5.bmp
deleted file mode 100644
index 8f62851c..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level5.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level6.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level6.bmp
deleted file mode 100644
index 418fdd28..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level6.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level7.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level7.bmp
deleted file mode 100644
index d82dab61..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level7.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_level8.bmp b/contrib/ufoaiplug/bitmaps/ufoai_level8.bmp
deleted file mode 100644
index c3809538..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_level8.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_nodraw.bmp b/contrib/ufoaiplug/bitmaps/ufoai_nodraw.bmp
deleted file mode 100644
index b9948562..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_nodraw.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_stepon.bmp b/contrib/ufoaiplug/bitmaps/ufoai_stepon.bmp
deleted file mode 100644
index 828449ef..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_stepon.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/bitmaps/ufoai_weaponclip.bmp b/contrib/ufoaiplug/bitmaps/ufoai_weaponclip.bmp
deleted file mode 100644
index fe6b3485..00000000
Binary files a/contrib/ufoaiplug/bitmaps/ufoai_weaponclip.bmp and /dev/null differ
diff --git a/contrib/ufoaiplug/ufoai_gtk.cpp b/contrib/ufoaiplug/ufoai_gtk.cpp
index c01a31fe..c5470474 100644
--- a/contrib/ufoaiplug/ufoai_gtk.cpp
+++ b/contrib/ufoaiplug/ufoai_gtk.cpp
@@ -88,18 +88,18 @@ public:
 virtual const char* getImage() const {
 	switch ( mIndex )
 	{
-	case 0: return "ufoai_level1.bmp";
-	case 1: return "ufoai_level2.bmp";
-	case 2: return "ufoai_level3.bmp";
-	case 3: return "ufoai_level4.bmp";
-	case 4: return "ufoai_level5.bmp";
-	case 5: return "ufoai_level6.bmp";
-	case 6: return "ufoai_level7.bmp";
-	case 7: return "ufoai_level8.bmp";
-	case 8: return "ufoai_stepon.bmp";
-	case 9: return "ufoai_actorclip.bmp";
-	case 10: return "ufoai_weaponclip.bmp";
-	case 11: return "ufoai_nodraw.bmp";
+	case 0: return "ufoai_level1.png";
+	case 1: return "ufoai_level2.png";
+	case 2: return "ufoai_level3.png";
+	case 3: return "ufoai_level4.png";
+	case 4: return "ufoai_level5.png";
+	case 5: return "ufoai_level6.png";
+	case 6: return "ufoai_level7.png";
+	case 7: return "ufoai_level8.png";
+	case 8: return "ufoai_stepon.png";
+	case 9: return "ufoai_actorclip.png";
+	case 10: return "ufoai_weaponclip.png";
+	case 11: return "ufoai_nodraw.png";
 	}
 	return NULL;
 }
diff --git a/libs/gtkutil/dialog.cpp b/libs/gtkutil/dialog.cpp
index 59f5c5d9..fb513e97 100644
--- a/libs/gtkutil/dialog.cpp
+++ b/libs/gtkutil/dialog.cpp
@@ -219,7 +219,7 @@ PathEntry PathEntry_new(){
 
 	// browse button
 	GtkButton* button = GTK_BUTTON( gtk_button_new() );
-	button_set_icon( button, "ellipsis.bmp" );
+	button_set_icon( button, "ellipsis.png" );
 	gtk_widget_show( GTK_WIDGET( button ) );
 	gtk_box_pack_end( GTK_BOX( hbox ), GTK_WIDGET( button ), FALSE, FALSE, 0 );
 
diff --git a/libs/gtkutil/image.cpp b/libs/gtkutil/image.cpp
index 4605d3f5..2791fd47 100644
--- a/libs/gtkutil/image.cpp
+++ b/libs/gtkutil/image.cpp
@@ -45,7 +45,8 @@ GdkPixbuf* pixbuf_new_from_file_with_mask( const char* filename ){
 	}
 	else
 	{
-		GdkPixbuf* rgba = gdk_pixbuf_add_alpha( rgb, TRUE, 255, 0, 255 );
+		//GdkPixbuf* rgba = gdk_pixbuf_add_alpha( rgb, TRUE, 255, 0, 255 ); //pink to alpha
+		GdkPixbuf* rgba = gdk_pixbuf_add_alpha( rgb, FALSE, 255, 0, 255 ); //alpha
 		gdk_pixbuf_unref( rgb );
 		return rgba;
 	}
diff --git a/plugins/shaders/plugin.cpp b/plugins/shaders/plugin.cpp
index 3f2cc483..f7c74fb3 100644
--- a/plugins/shaders/plugin.cpp
+++ b/plugins/shaders/plugin.cpp
@@ -41,7 +41,8 @@ class ShadersDependencies :
 ImageModuleRef m_bitmapModule;
 public:
 ShadersDependencies() :
-	m_bitmapModule( "bmp" ){
+	//m_bitmapModule( "bmp" ){
+	m_bitmapModule( "png" ){
 }
 ImageModuleRef& getBitmapModule(){
 	return m_bitmapModule;
diff --git a/plugins/shaders/shaders.cpp b/plugins/shaders/shaders.cpp
index 7a16594e..44cc0baf 100644
--- a/plugins/shaders/shaders.cpp
+++ b/plugins/shaders/shaders.cpp
@@ -207,7 +207,7 @@ Image* loadHeightmap( void* environment, const char* name ){
 Image* loadSpecial( void* environment, const char* name ){
 	if ( *name == '_' ) { // special image
 		StringOutputStream bitmapName( 256 );
-		bitmapName << GlobalRadiant().getAppPath() << "bitmaps/" << name + 1 << ".bmp";
+		bitmapName << GlobalRadiant().getAppPath() << "bitmaps/" << name + 1 << ".png";
 		Image* image = loadBitmap( environment, bitmapName.c_str() );
 		if ( image != 0 ) {
 			return image;
@@ -951,7 +951,7 @@ void realise(){
 
 		{
 			StringOutputStream name( 256 );
-			name << GlobalRadiant().getAppPath() << "bitmaps/" << ( IsDefault() ? "notex.bmp" : "shadernotex.bmp" );
+			name << GlobalRadiant().getAppPath() << "bitmaps/" << ( IsDefault() ? "notex.png" : "shadernotex.png" );
 			m_pTexture = GlobalTexturesCache().capture( LoadImageCallback( 0, loadBitmap ), name.c_str() );
 		}
 	}
diff --git a/radiant/camwindow.cpp b/radiant/camwindow.cpp
index e849f4cc..20fcb853 100644
--- a/radiant/camwindow.cpp
+++ b/radiant/camwindow.cpp
@@ -1694,7 +1694,7 @@ void Camera_ToggleFarClip(){
 
 
 void CamWnd_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_toggle_button( toolbar, "Cubic clip the camera view (Ctrl + \\)", "view_cubicclipping.bmp", "ToggleCubicClip" );
+	toolbar_append_toggle_button( toolbar, "Cubic clip the camera view (Ctrl + \\)", "view_cubicclipping.png", "ToggleCubicClip" );
 }
 
 void CamWnd_registerShortcuts(){
diff --git a/radiant/entity.cpp b/radiant/entity.cpp
index a5f42177..cc863c61 100644
--- a/radiant/entity.cpp
+++ b/radiant/entity.cpp
@@ -391,7 +391,7 @@ void Entity_createFromSelection( const char* name, const Vector3& origin ){
 	}
 
 	if ( string_compare_nocase_n( name, "trigger_", 8 ) == 0 && brushesSelected ){
-		const char* shader = g_pGameDescription->getKeyValue( "trigger_shader" );
+		const char* shader = g_pGameDescription->getKeyValue( "shader_trigger" );
 		if ( shader && *shader ){
 			Scene_PatchSetShader_Selected( GlobalSceneGraph(), shader );
 			Scene_BrushSetShader_Selected( GlobalSceneGraph(), shader );
diff --git a/radiant/environment.cpp b/radiant/environment.cpp
index fc23e9b0..99aa6c26 100644
--- a/radiant/environment.cpp
+++ b/radiant/environment.cpp
@@ -257,14 +257,14 @@ void environment_init( int argc, char* argv[] ){
 
 #include <windows.h>
 
-char openCmdMap[260];
+char* openCmdMap;
 
 void cmdMap(){
-	openCmdMap[0] = '\0';
+	openCmdMap = NULL;
 	for ( int i = 1; i < g_argc; ++i )
 	{
 		if ( !stricmp( g_argv[i] + strlen(g_argv[i]) - 4, ".map" ) ){
-			strcpy( openCmdMap, g_argv[i] );
+			openCmdMap = g_argv[i];
 		}
 	}
 }
diff --git a/radiant/environment.h b/radiant/environment.h
index 8d15115e..18398e8c 100644
--- a/radiant/environment.h
+++ b/radiant/environment.h
@@ -30,7 +30,7 @@ extern int g_argc;
 extern char** g_argv;
 
 #if defined( WIN32 )
-extern char openCmdMap[260];
+extern char* openCmdMap;
 #endif
 
 
diff --git a/radiant/filterbar.cpp b/radiant/filterbar.cpp
new file mode 100644
index 00000000..8251a4bf
--- /dev/null
+++ b/radiant/filterbar.cpp
@@ -0,0 +1,221 @@
+#include "filterbar.h"
+#include <gtk/gtktoolbar.h>
+#include "gtkmisc.h"
+#include "gtkutil/widget.h"
+#include "stream/stringstream.h"
+#include "select.h"
+#include "iundo.h"
+#include "preferences.h"
+
+#include "commands.h"
+#include "gtkutil/accelerator.h"
+#include "generic/callback.h"
+
+
+
+
+int ToggleActions = 0;
+int ButtonNum = 0;
+
+gboolean ToggleActions0( GtkWidget *widget, GdkEvent *event, gpointer user_data ){
+	ToggleActions = 0;
+	return FALSE;
+	//globalOutputStream() << "ToggleActions\n";
+}
+
+void SetCommonShader( const char* key, const char* shader ){
+	const char* gotShader = g_pGameDescription->getKeyValue( key );
+	UndoableCommand undo( "textureNameSetSelected" );
+	if ( gotShader && *gotShader ){
+		Select_SetShader( gotShader );
+	}
+	else{
+		Select_SetShader( shader );
+	}
+}
+
+
+gboolean Areaportals_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		if ( ButtonNum == 1 ){
+			ToggleActions %= 2;
+		}
+		else{
+			ToggleActions = 0;
+			ButtonNum = 1;
+		}
+		if( ToggleActions == 0 ){
+			SetCommonShader( "shader_nodraw", "textures/common/nodraw" );
+		}
+		else if( ToggleActions == 1 ){
+			SetCommonShader( "shader_nodrawnonsolid", "textures/common/nodrawnonsolid" );
+		}
+		//SetCommonShader( "shader_caulk", "textures/common/caulk" );
+		//globalOutputStream() << "Found '" << "fullname" << "'\n";
+		ToggleActions++;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+
+gboolean Caulk_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		SetCommonShader( "shader_caulk", "textures/common/caulk" );
+		ToggleActions = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+gboolean Clip_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		if ( ButtonNum == 3 ){
+			ToggleActions %= 2;
+		}
+		else{
+			ToggleActions = 0;
+			ButtonNum = 3;
+		}
+		if( ToggleActions == 0 ){
+			SetCommonShader( "shader_clip", "textures/common/clip" );
+		}
+		else if( ToggleActions == 1 ){
+			SetCommonShader( "shader_weapclip", "textures/common/weapclip" );
+		}
+		ToggleActions++;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+gboolean Liquids_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		if ( ButtonNum == 4 ){
+			ToggleActions %= 3;
+		}
+		else{
+			ToggleActions = 0;
+			ButtonNum = 4;
+		}
+		if( ToggleActions == 0 ){
+			SetCommonShader( "shader_watercaulk", "textures/common/watercaulk" );
+		}
+		else if( ToggleActions == 1 ){
+			SetCommonShader( "shader_lavacaulk", "textures/common/lavacaulk" );
+		}
+		else if( ToggleActions == 2 ){
+			SetCommonShader( "shader_slimecaulk", "textures/common/slimecaulk" );
+		}
+		ToggleActions++;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+
+gboolean Hint_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		if ( ButtonNum == 5 ){
+			ToggleActions %= 3;
+		}
+		else{
+			ToggleActions = 0;
+			ButtonNum = 5;
+		}
+		if( ToggleActions == 0 ){
+			SetCommonShader( "shader_hint", "textures/common/hint" );
+		}
+		else if( ToggleActions == 1 ){
+			SetCommonShader( "shader_hintlocal", "textures/common/hintlocal" );
+		}
+		else if( ToggleActions == 2 ){
+			SetCommonShader( "shader_hintskip", "textures/common/hintskip" );
+		}
+		ToggleActions++;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+gboolean Trigger_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		SetCommonShader( "shader_trigger", "textures/common/trigger" );
+		ToggleActions = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+gboolean Detail_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		GlobalCommands_find( "MakeDetail" ).m_callback();
+		ToggleActions = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+gboolean Structural_button_press( GtkWidget *widget, GdkEventButton *event, gpointer data ){
+	if ( event->button == 3 && event->type == GDK_BUTTON_PRESS ) {
+		GlobalCommands_find( "MakeStructural" ).m_callback();
+		ToggleActions = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+
+GtkToolbar* create_filter_toolbar(){
+			GtkToolbar* filter_toolbar = GTK_TOOLBAR( gtk_toolbar_new() );
+			gtk_widget_show( GTK_WIDGET( filter_toolbar ) );
+			g_signal_connect( G_OBJECT( filter_toolbar ), "enter_notify_event", G_CALLBACK( ToggleActions0 ), 0 );
+
+			GtkToggleButton* button;
+
+			toolbar_append_toggle_button( filter_toolbar, "World (ALT + 1)", "f-world.png", "FilterWorldBrushes" );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Details (CTRL + D)\nRightClick: MakeDetail", "f-details.png", "FilterDetails" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Detail_button_press ), 0 );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Structural (CTRL + SHIFT + D)\nRightClick: MakeStructural", "f-structural.png", "FilterStructural" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Structural_button_press ), 0 );
+
+
+			toolbar_append_toggle_button( filter_toolbar, "Patches (CTRL + P)", "patch_wireframe.png", "FilterPatches" );
+			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Areaportals (ALT + 3)\nRightClick: toggle tex\n\tnoDraw\n\tnoDrawNonSolid", "f-areaportal.png", "FilterAreaportals" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Areaportals_button_press ), 0 );
+
+
+
+			toolbar_append_toggle_button( filter_toolbar, "Translucent (ALT + 4)", "f-translucent.png", "FilterTranslucent" );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Liquids (ALT + 5)\nRightClick: toggle tex\n\twaterCaulk\n\tlavaCaulk\n\tslimeCaulk", "f-liquids.png", "FilterLiquids" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Liquids_button_press ), 0 );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Caulk (ALT + 6)\nRightClick: tex Caulk", "f-caulk.png", "FilterCaulk" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Caulk_button_press ), 0 );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Clips (ALT + 7)\nRightClick: toggle tex\n\tplayerClip\n\tweapClip", "f-clip.png", "FilterClips" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Clip_button_press ), 0 );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "HintsSkips (CTRL + H)\nRightClick: toggle tex\n\thint\n\thintLocal\n\thintSkip", "f-hint.png", "FilterHintsSkips" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Hint_button_press ), 0 );
+
+			//toolbar_append_toggle_button( filter_toolbar, "Paths (ALT + 8)", "texture_lock.png", "FilterPaths" );
+			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
+			toolbar_append_toggle_button( filter_toolbar, "Entities (ALT + 2)", "f-entities.png", "FilterEntities" );
+			toolbar_append_toggle_button( filter_toolbar, "Lights (ALT + 0)", "lightinspector.png", "FilterLights" );
+			toolbar_append_toggle_button( filter_toolbar, "Models (SHIFT + M)", "f-models.png", "FilterModels" );
+
+			button = toolbar_append_toggle_button( filter_toolbar, "Triggers (CTRL + SHIFT + T)\nRightClick: tex Trigger", "f-triggers.png", "FilterTriggers" );
+			g_signal_connect( G_OBJECT( button ), "button_press_event", G_CALLBACK( Trigger_button_press ), 0 );
+
+			//toolbar_append_toggle_button( filter_toolbar, "Decals (SHIFT + D)", "f-decals.png", "FilterDecals" );
+			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
+			toolbar_append_button( filter_toolbar, "InvertFilters", "f-invert.png", "InvertFilters" );
+			toolbar_append_button( filter_toolbar, "ResetFilters", "f-reset.png", "ResetFilters" );
+			return filter_toolbar;
+}
diff --git a/radiant/filterbar.h b/radiant/filterbar.h
new file mode 100644
index 00000000..7b2888bb
--- /dev/null
+++ b/radiant/filterbar.h
@@ -0,0 +1,16 @@
+#if !defined( INCLUDED_FILTERBAR_H )
+#define INCLUDED_FILTERBAR_H
+
+#include <gtk/gtktoolbar.h>
+
+
+
+
+
+
+
+GtkToolbar* create_filter_toolbar();
+
+
+
+#endif
diff --git a/radiant/gtkdlgs.cpp b/radiant/gtkdlgs.cpp
index b01965af..3780aecc 100644
--- a/radiant/gtkdlgs.cpp
+++ b/radiant/gtkdlgs.cpp
@@ -468,7 +468,7 @@ void DoAbout(){
 					GtkFrame* frame = create_dialog_frame( 0, GTK_SHADOW_IN );
 					gtk_box_pack_start( GTK_BOX( vbox2 ), GTK_WIDGET( frame ), FALSE, FALSE, 0 );
 					{
-						GtkImage* image = new_local_image( "logo.bmp" );
+						GtkImage* image = new_local_image( "logo.png" );
 						gtk_widget_show( GTK_WIDGET( image ) );
 						gtk_container_add( GTK_CONTAINER( frame ), GTK_WIDGET( image ) );
 					}
diff --git a/radiant/main.cpp b/radiant/main.cpp
index 0a1eb3b1..2e7c93b9 100644
--- a/radiant/main.cpp
+++ b/radiant/main.cpp
@@ -635,7 +635,7 @@ int main( int argc, char* argv[] ){
 	hide_splash();
 
 #ifdef WIN32
-	if( openCmdMap[0] != '\0' ){
+	if( openCmdMap && *openCmdMap ){
 		Map_LoadFile( openCmdMap );
 	}
 	else
diff --git a/radiant/mainframe.cpp b/radiant/mainframe.cpp
index 45348b98..a4eaf8df 100644
--- a/radiant/mainframe.cpp
+++ b/radiant/mainframe.cpp
@@ -117,6 +117,7 @@
 #include "feedback.h"
 #include "referencecache.h"
 
+#include "filterbar.h"
 
 
 struct layout_globals_t
@@ -2291,56 +2292,56 @@ void register_shortcuts(){
 }
 
 void File_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "Open an existing map (CTRL + O)", "file_open.bmp", "OpenMap" );
-	toolbar_append_button( toolbar, "Save the active map (CTRL + S)", "file_save.bmp", "SaveMap" );
+	toolbar_append_button( toolbar, "Open an existing map (CTRL + O)", "file_open.png", "OpenMap" );
+	toolbar_append_button( toolbar, "Save the active map (CTRL + S)", "file_save.png", "SaveMap" );
 }
 
 void UndoRedo_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "Undo (CTRL + Z)", "undo.bmp", "Undo" );
-	toolbar_append_button( toolbar, "Redo (CTRL + Y)", "redo.bmp", "Redo" );
+	toolbar_append_button( toolbar, "Undo (CTRL + Z)", "undo.png", "Undo" );
+	toolbar_append_button( toolbar, "Redo (CTRL + Y)", "redo.png", "Redo" );
 }
 
 void RotateFlip_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "x-axis Flip", "brush_flipx.bmp", "MirrorSelectionX" );
-	toolbar_append_button( toolbar, "x-axis Rotate", "brush_rotatex.bmp", "RotateSelectionX" );
-	toolbar_append_button( toolbar, "y-axis Flip", "brush_flipy.bmp", "MirrorSelectionY" );
-	toolbar_append_button( toolbar, "y-axis Rotate", "brush_rotatey.bmp", "RotateSelectionY" );
-	toolbar_append_button( toolbar, "z-axis Flip", "brush_flipz.bmp", "MirrorSelectionZ" );
-	toolbar_append_button( toolbar, "z-axis Rotate", "brush_rotatez.bmp", "RotateSelectionZ" );
+	toolbar_append_button( toolbar, "x-axis Flip", "brush_flipx.png", "MirrorSelectionX" );
+	toolbar_append_button( toolbar, "x-axis Rotate", "brush_rotatex.png", "RotateSelectionX" );
+	toolbar_append_button( toolbar, "y-axis Flip", "brush_flipy.png", "MirrorSelectionY" );
+	toolbar_append_button( toolbar, "y-axis Rotate", "brush_rotatey.png", "RotateSelectionY" );
+	toolbar_append_button( toolbar, "z-axis Flip", "brush_flipz.png", "MirrorSelectionZ" );
+	toolbar_append_button( toolbar, "z-axis Rotate", "brush_rotatez.png", "RotateSelectionZ" );
 }
 
 void Select_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "Select touching", "selection_selecttouching.bmp", "SelectTouching" );
-	toolbar_append_button( toolbar, "Select inside", "selection_selectinside.bmp", "SelectInside" );
+	toolbar_append_button( toolbar, "Select touching", "selection_selecttouching.png", "SelectTouching" );
+	toolbar_append_button( toolbar, "Select inside", "selection_selectinside.png", "SelectInside" );
 }
 
 void CSG_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "CSG Subtract (SHIFT + U)", "selection_csgsubtract.bmp", "CSGSubtract" );
-	toolbar_append_button( toolbar, "CSG Merge (CTRL + U)", "selection_csgmerge.bmp", "CSGMerge" );
-	toolbar_append_button( toolbar, "Hollow", "selection_makehollow.bmp", "CSGHollow" );
-	toolbar_append_button( toolbar, "Room", "selection_makeroom.bmp", "CSGroom" );
+	toolbar_append_button( toolbar, "CSG Subtract (SHIFT + U)", "selection_csgsubtract.png", "CSGSubtract" );
+	toolbar_append_button( toolbar, "CSG Merge (CTRL + U)", "selection_csgmerge.png", "CSGMerge" );
+	toolbar_append_button( toolbar, "Hollow", "selection_makehollow.png", "CSGHollow" );
+	toolbar_append_button( toolbar, "Room", "selection_makeroom.png", "CSGroom" );
 }
 
 void ComponentModes_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_toggle_button( toolbar, "Select Vertices (V)", "modify_vertices.bmp", "DragVertices" );
-	toolbar_append_toggle_button( toolbar, "Select Edges (E)", "modify_edges.bmp", "DragEdges" );
-	toolbar_append_toggle_button( toolbar, "Select Faces (F)", "modify_faces.bmp", "DragFaces" );
+	toolbar_append_toggle_button( toolbar, "Select Vertices (V)", "modify_vertices.png", "DragVertices" );
+	toolbar_append_toggle_button( toolbar, "Select Edges (E)", "modify_edges.png", "DragEdges" );
+	toolbar_append_toggle_button( toolbar, "Select Faces (F)", "modify_faces.png", "DragFaces" );
 }
 
 void Clipper_constructToolbar( GtkToolbar* toolbar ){
 
-	toolbar_append_toggle_button( toolbar, "Clipper (X)", "view_clipper.bmp", "ToggleClipper" );
+	toolbar_append_toggle_button( toolbar, "Clipper (X)", "view_clipper.png", "ToggleClipper" );
 }
 
 void XYWnd_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "Change views", "view_change.bmp", "NextView" );
+	toolbar_append_button( toolbar, "Change views", "view_change.png", "NextView" );
 }
 
 void Manipulators_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_toggle_button( toolbar, "Translate (W)", "select_mousetranslate.bmp", "MouseTranslate" );
-	toolbar_append_toggle_button( toolbar, "Rotate (R)", "select_mouserotate.bmp", "MouseRotate" );
-	toolbar_append_toggle_button( toolbar, "Scale", "select_mousescale.bmp", "MouseScale" );
-	toolbar_append_toggle_button( toolbar, "Resize (Q)", "select_mouseresize.bmp", "MouseDrag" );
+	toolbar_append_toggle_button( toolbar, "Translate (W)", "select_mousetranslate.png", "MouseTranslate" );
+	toolbar_append_toggle_button( toolbar, "Rotate (R)", "select_mouserotate.png", "MouseRotate" );
+	toolbar_append_toggle_button( toolbar, "Scale", "select_mousescale.png", "MouseScale" );
+	toolbar_append_toggle_button( toolbar, "Resize (Q)", "select_mouseresize.png", "MouseDrag" );
 
 	Clipper_constructToolbar( toolbar );
 }
@@ -2396,18 +2397,18 @@ GtkToolbar* create_main_toolbar( MainFrame::EViewStyle style ){
 
 	gtk_toolbar_append_space( GTK_TOOLBAR( toolbar ) );
 
-	toolbar_append_toggle_button( toolbar, "Texture Lock (SHIFT + T)", "texture_lock.bmp", "TogTexLock" );
+	toolbar_append_toggle_button( toolbar, "Texture Lock (SHIFT + T)", "texture_lock.png", "TogTexLock" );
 
 	gtk_toolbar_append_space( GTK_TOOLBAR( toolbar ) );
 
-	GtkButton* g_view_entities_button = toolbar_append_button( toolbar, "Entities (N)", "entities.bmp", "ToggleEntityInspector" );
-	GtkButton* g_view_console_button = toolbar_append_button( toolbar, "Console (O)", "console.bmp", "ToggleConsole" );
-	GtkButton* g_view_textures_button = toolbar_append_button( toolbar, "Texture Browser (T)", "texture_browser.bmp", "ToggleTextures" );
+	GtkButton* g_view_entities_button = toolbar_append_button( toolbar, "Entities (N)", "entities.png", "ToggleEntityInspector" );
+	GtkButton* g_view_console_button = toolbar_append_button( toolbar, "Console (O)", "console.png", "ToggleConsole" );
+	GtkButton* g_view_textures_button = toolbar_append_button( toolbar, "Texture Browser (T)", "texture_browser.png", "ToggleTextures" );
 	// TODO: call light inspector
-	//GtkButton* g_view_lightinspector_button = toolbar_append_button(toolbar, "Light Inspector", "lightinspector.bmp", "ToggleLightInspector");
+	//GtkButton* g_view_lightinspector_button = toolbar_append_button(toolbar, "Light Inspector", "lightinspector.png", "ToggleLightInspector");
 
 	gtk_toolbar_append_space( GTK_TOOLBAR( toolbar ) );
-	GtkButton* g_refresh_models_button = toolbar_append_button( toolbar, "Refresh Models", "refresh_models.bmp", "RefreshReferences" );
+	GtkButton* g_refresh_models_button = toolbar_append_button( toolbar, "Refresh Models", "refresh_models.png", "RefreshReferences" );
 
 
 	// disable the console and texture button in the regular layouts
@@ -2699,7 +2700,7 @@ GtkWindow* create_splash(){
 	gtk_window_set_position( window, GTK_WIN_POS_CENTER );
 	gtk_container_set_border_width( GTK_CONTAINER( window ), 0 );
 
-	GtkImage* image = new_local_image( "splash.bmp" );
+	GtkImage* image = new_local_image( "splash.png" );
 	gtk_widget_show( GTK_WIDGET( image ) );
 	gtk_container_add( GTK_CONTAINER( window ), GTK_WIDGET( image ) );
 
@@ -2743,7 +2744,7 @@ void MainFrame::Create(){
 
 #if !defined( WIN32 )
 	{
-		GdkPixbuf* pixbuf = pixbuf_new_from_file_with_mask( "bitmaps/icon.bmp" );
+		GdkPixbuf* pixbuf = pixbuf_new_from_file_with_mask( "bitmaps/icon.png" );
 		if ( pixbuf != 0 ) {
 			gtk_window_set_icon( window, pixbuf );
 			gdk_pixbuf_unref( pixbuf );
@@ -2798,31 +2799,7 @@ void MainFrame::Create(){
 			}
 		}
 		if ( g_Layout_enableFilterToolbar.m_value ){
-			GtkToolbar* filter_toolbar = GTK_TOOLBAR( gtk_toolbar_new() );
-			gtk_widget_show( GTK_WIDGET( filter_toolbar ) );
-
-			toolbar_append_toggle_button( filter_toolbar, "World (ALT + 1)", "f-world.bmp", "FilterWorldBrushes" );
-			toolbar_append_toggle_button( filter_toolbar, "Details (CTRL + D)", "f-details.bmp", "FilterDetails" );
-			toolbar_append_toggle_button( filter_toolbar, "Structural (CTRL + SHIFT + D)", "f-structural.bmp", "FilterStructural" );
-			toolbar_append_toggle_button( filter_toolbar, "Patches (CTRL + P)", "patch_wireframe.bmp", "FilterPatches" );
-			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
-			toolbar_append_toggle_button( filter_toolbar, "Areaportals (ALT + 3)", "f-areaportal.bmp", "FilterAreaportals" );
-			toolbar_append_toggle_button( filter_toolbar, "Translucent (ALT + 4)", "f-translucent.bmp", "FilterTranslucent" );
-			toolbar_append_toggle_button( filter_toolbar, "Liquids (ALT + 5)", "f-liquids.bmp", "FilterLiquids" );
-			toolbar_append_toggle_button( filter_toolbar, "Caulk (ALT + 6)", "f-caulk.bmp", "FilterCaulk" );
-			toolbar_append_toggle_button( filter_toolbar, "Clips (ALT + 7)", "f-clip.bmp", "FilterClips" );
-			toolbar_append_toggle_button( filter_toolbar, "HintsSkips (CTRL + H)", "f-hint.bmp", "FilterHintsSkips" );
-			//toolbar_append_toggle_button( filter_toolbar, "Paths (ALT + 8)", "texture_lock.bmp", "FilterPaths" );
-			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
-			toolbar_append_toggle_button( filter_toolbar, "Entities (ALT + 2)", "f-entities.bmp", "FilterEntities" );
-			toolbar_append_toggle_button( filter_toolbar, "Lights (ALT + 0)", "lightinspector.bmp", "FilterLights" );
-			toolbar_append_toggle_button( filter_toolbar, "Models (SHIFT + M)", "f-models.bmp", "FilterModels" );
-			toolbar_append_toggle_button( filter_toolbar, "Triggers (CTRL + SHIFT + T)", "f-triggers.bmp", "FilterTriggers" );
-			//toolbar_append_toggle_button( filter_toolbar, "Decals (SHIFT + D)", "f-decals.bmp", "FilterDecals" );
-			gtk_toolbar_append_space( GTK_TOOLBAR( filter_toolbar ) );
-			toolbar_append_button( filter_toolbar, "InvertFilters", "f-invert.bmp", "InvertFilters" );
-			toolbar_append_button( filter_toolbar, "ResetFilters", "f-reset.bmp", "ResetFilters" );
-
+			GtkToolbar* filter_toolbar = create_filter_toolbar();
 			gtk_box_pack_start( GTK_BOX( PFbox ), GTK_WIDGET( filter_toolbar ), TRUE, TRUE, 0 );
 		}
 	}
@@ -3202,7 +3179,7 @@ void GlobalGL_sharedContextDestroyed(){
 
 void Layout_constructPreferences( PreferencesPage& page ){
 	{
-		const char* layouts[] = { "window1.bmp", "window2.bmp", "window3.bmp", "window4.bmp" };
+		const char* layouts[] = { "window1.png", "window2.png", "window3.png", "window4.png" };
 		page.appendRadioIcons(
 			"Window Layout",
 			STRING_ARRAY_RANGE( layouts ),
diff --git a/radiant/patchmanip.cpp b/radiant/patchmanip.cpp
index b2c0b2d6..5a6db29c 100644
--- a/radiant/patchmanip.cpp
+++ b/radiant/patchmanip.cpp
@@ -820,7 +820,7 @@ void Patch_registerCommands(){
 }
 
 void Patch_constructToolbar( GtkToolbar* toolbar ){
-	toolbar_append_button( toolbar, "Put caps on the current patch (SHIFT + C)", "curve_cap.bmp", "CapCurrentCurve" );
+	toolbar_append_button( toolbar, "Put caps on the current patch (SHIFT + C)", "curve_cap.png", "CapCurrentCurve" );
 }
 
 void Patch_constructMenu( GtkMenu* menu ){
@@ -1152,35 +1152,35 @@ EMessageBoxReturn DoCapDlg( ECapDialog* type ){
 				gtk_table_set_col_spacings( table, 5 );
 
 				{
-					GtkImage* image = new_local_image( "cap_bevel.bmp" );
+					GtkImage* image = new_local_image( "cap_bevel.png" );
 					gtk_widget_show( GTK_WIDGET( image ) );
 					gtk_table_attach( table, GTK_WIDGET( image ), 0, 1, 0, 1,
 									  (GtkAttachOptions) ( GTK_FILL ),
 									  (GtkAttachOptions) ( 0 ), 0, 0 );
 				}
 				{
-					GtkImage* image = new_local_image( "cap_endcap.bmp" );
+					GtkImage* image = new_local_image( "cap_endcap.png" );
 					gtk_widget_show( GTK_WIDGET( image ) );
 					gtk_table_attach( table, GTK_WIDGET( image ), 0, 1, 1, 2,
 									  (GtkAttachOptions) ( GTK_FILL ),
 									  (GtkAttachOptions) ( 0 ), 0, 0 );
 				}
 				{
-					GtkImage* image = new_local_image( "cap_ibevel.bmp" );
+					GtkImage* image = new_local_image( "cap_ibevel.png" );
 					gtk_widget_show( GTK_WIDGET( image ) );
 					gtk_table_attach( table, GTK_WIDGET( image ), 0, 1, 2, 3,
 									  (GtkAttachOptions) ( GTK_FILL ),
 									  (GtkAttachOptions) ( 0 ), 0, 0 );
 				}
 				{
-					GtkImage* image = new_local_image( "cap_iendcap.bmp" );
+					GtkImage* image = new_local_image( "cap_iendcap.png" );
 					gtk_widget_show( GTK_WIDGET( image ) );
 					gtk_table_attach( table, GTK_WIDGET( image ), 0, 1, 3, 4,
 									  (GtkAttachOptions) ( GTK_FILL ),
 									  (GtkAttachOptions) ( 0 ), 0, 0 );
 				}
 				{
-					GtkImage* image = new_local_image( "cap_cylinder.bmp" );
+					GtkImage* image = new_local_image( "cap_cylinder.png" );
 					gtk_widget_show( GTK_WIDGET( image ) );
 					gtk_table_attach( table, GTK_WIDGET( image ), 0, 1, 4, 5,
 									  (GtkAttachOptions) ( GTK_FILL ),
diff --git a/radiant/texwindow.cpp b/radiant/texwindow.cpp
index 24e71a38..2b685f52 100644
--- a/radiant/texwindow.cpp
+++ b/radiant/texwindow.cpp
@@ -2047,11 +2047,11 @@ void TextureBrowser_checkTagFile(){
 
 void TextureBrowser_SetNotex(){
 	StringOutputStream name( 256 );
-	name << GlobalRadiant().getAppPath() << "bitmaps/notex.bmp";
+	name << GlobalRadiant().getAppPath() << "bitmaps/notex.png";
 	g_notex = name.c_str();
 
 	name = NULL;
-	name << GlobalRadiant().getAppPath() << "bitmaps/shadernotex.bmp";
+	name << GlobalRadiant().getAppPath() << "bitmaps/shadernotex.png";
 	g_shadernotex = name.c_str();
 }
 
diff --git a/setup/data/tools/bitmaps/black.bmp b/setup/data/tools/bitmaps/black.bmp
deleted file mode 100644
index 8fc59ba1..00000000
Binary files a/setup/data/tools/bitmaps/black.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/black.png b/setup/data/tools/bitmaps/black.png
new file mode 100644
index 00000000..6d3e4549
Binary files /dev/null and b/setup/data/tools/bitmaps/black.png differ
diff --git a/setup/data/tools/bitmaps/brush_flipx.bmp b/setup/data/tools/bitmaps/brush_flipx.bmp
deleted file mode 100644
index 48ee0dbc..00000000
Binary files a/setup/data/tools/bitmaps/brush_flipx.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_flipx.png b/setup/data/tools/bitmaps/brush_flipx.png
new file mode 100644
index 00000000..62073396
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_flipx.png differ
diff --git a/setup/data/tools/bitmaps/brush_flipy.bmp b/setup/data/tools/bitmaps/brush_flipy.bmp
deleted file mode 100644
index d7408773..00000000
Binary files a/setup/data/tools/bitmaps/brush_flipy.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_flipy.png b/setup/data/tools/bitmaps/brush_flipy.png
new file mode 100644
index 00000000..ce537f3e
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_flipy.png differ
diff --git a/setup/data/tools/bitmaps/brush_flipz.bmp b/setup/data/tools/bitmaps/brush_flipz.bmp
deleted file mode 100644
index 017c33e9..00000000
Binary files a/setup/data/tools/bitmaps/brush_flipz.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_flipz.png b/setup/data/tools/bitmaps/brush_flipz.png
new file mode 100644
index 00000000..d2d0708d
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_flipz.png differ
diff --git a/setup/data/tools/bitmaps/brush_rotatex.bmp b/setup/data/tools/bitmaps/brush_rotatex.bmp
deleted file mode 100644
index c7e55053..00000000
Binary files a/setup/data/tools/bitmaps/brush_rotatex.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_rotatex.png b/setup/data/tools/bitmaps/brush_rotatex.png
new file mode 100644
index 00000000..37c46fcb
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_rotatex.png differ
diff --git a/setup/data/tools/bitmaps/brush_rotatey.bmp b/setup/data/tools/bitmaps/brush_rotatey.bmp
deleted file mode 100644
index e50e5d6d..00000000
Binary files a/setup/data/tools/bitmaps/brush_rotatey.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_rotatey.png b/setup/data/tools/bitmaps/brush_rotatey.png
new file mode 100644
index 00000000..c3b33e79
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_rotatey.png differ
diff --git a/setup/data/tools/bitmaps/brush_rotatez.bmp b/setup/data/tools/bitmaps/brush_rotatez.bmp
deleted file mode 100644
index 52ab554a..00000000
Binary files a/setup/data/tools/bitmaps/brush_rotatez.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/brush_rotatez.png b/setup/data/tools/bitmaps/brush_rotatez.png
new file mode 100644
index 00000000..e56f1cb9
Binary files /dev/null and b/setup/data/tools/bitmaps/brush_rotatez.png differ
diff --git a/setup/data/tools/bitmaps/cap_bevel.bmp b/setup/data/tools/bitmaps/cap_bevel.bmp
deleted file mode 100644
index 3bb4186e..00000000
Binary files a/setup/data/tools/bitmaps/cap_bevel.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/cap_bevel.png b/setup/data/tools/bitmaps/cap_bevel.png
new file mode 100644
index 00000000..b39565df
Binary files /dev/null and b/setup/data/tools/bitmaps/cap_bevel.png differ
diff --git a/setup/data/tools/bitmaps/cap_cylinder.bmp b/setup/data/tools/bitmaps/cap_cylinder.bmp
deleted file mode 100644
index 21969267..00000000
Binary files a/setup/data/tools/bitmaps/cap_cylinder.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/cap_cylinder.png b/setup/data/tools/bitmaps/cap_cylinder.png
new file mode 100644
index 00000000..96889301
Binary files /dev/null and b/setup/data/tools/bitmaps/cap_cylinder.png differ
diff --git a/setup/data/tools/bitmaps/cap_endcap.bmp b/setup/data/tools/bitmaps/cap_endcap.bmp
deleted file mode 100644
index e6cea655..00000000
Binary files a/setup/data/tools/bitmaps/cap_endcap.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/cap_endcap.png b/setup/data/tools/bitmaps/cap_endcap.png
new file mode 100644
index 00000000..049b2503
Binary files /dev/null and b/setup/data/tools/bitmaps/cap_endcap.png differ
diff --git a/setup/data/tools/bitmaps/cap_ibevel.bmp b/setup/data/tools/bitmaps/cap_ibevel.bmp
deleted file mode 100644
index b1fa49b3..00000000
Binary files a/setup/data/tools/bitmaps/cap_ibevel.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/cap_ibevel.png b/setup/data/tools/bitmaps/cap_ibevel.png
new file mode 100644
index 00000000..c284b66b
Binary files /dev/null and b/setup/data/tools/bitmaps/cap_ibevel.png differ
diff --git a/setup/data/tools/bitmaps/cap_iendcap.bmp b/setup/data/tools/bitmaps/cap_iendcap.bmp
deleted file mode 100644
index da1f5b66..00000000
Binary files a/setup/data/tools/bitmaps/cap_iendcap.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/cap_iendcap.png b/setup/data/tools/bitmaps/cap_iendcap.png
new file mode 100644
index 00000000..11a3f162
Binary files /dev/null and b/setup/data/tools/bitmaps/cap_iendcap.png differ
diff --git a/setup/data/tools/bitmaps/console.bmp b/setup/data/tools/bitmaps/console.bmp
deleted file mode 100644
index 7fe64b0e..00000000
Binary files a/setup/data/tools/bitmaps/console.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/console.png b/setup/data/tools/bitmaps/console.png
new file mode 100644
index 00000000..4004739b
Binary files /dev/null and b/setup/data/tools/bitmaps/console.png differ
diff --git a/setup/data/tools/bitmaps/curve_cap.bmp b/setup/data/tools/bitmaps/curve_cap.bmp
deleted file mode 100644
index 574e7611..00000000
Binary files a/setup/data/tools/bitmaps/curve_cap.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/curve_cap.png b/setup/data/tools/bitmaps/curve_cap.png
new file mode 100644
index 00000000..6ce1c0c1
Binary files /dev/null and b/setup/data/tools/bitmaps/curve_cap.png differ
diff --git a/setup/data/tools/bitmaps/dontselectcurve.bmp b/setup/data/tools/bitmaps/dontselectcurve.bmp
deleted file mode 100644
index a7b97954..00000000
Binary files a/setup/data/tools/bitmaps/dontselectcurve.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/dontselectcurve.png b/setup/data/tools/bitmaps/dontselectcurve.png
new file mode 100644
index 00000000..66254df8
Binary files /dev/null and b/setup/data/tools/bitmaps/dontselectcurve.png differ
diff --git a/setup/data/tools/bitmaps/dontselectmodel.bmp b/setup/data/tools/bitmaps/dontselectmodel.bmp
deleted file mode 100644
index e81b1189..00000000
Binary files a/setup/data/tools/bitmaps/dontselectmodel.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/dontselectmodel.png b/setup/data/tools/bitmaps/dontselectmodel.png
new file mode 100644
index 00000000..82c472a1
Binary files /dev/null and b/setup/data/tools/bitmaps/dontselectmodel.png differ
diff --git a/setup/data/tools/bitmaps/ellipsis.bmp b/setup/data/tools/bitmaps/ellipsis.bmp
deleted file mode 100644
index a4360a9e..00000000
Binary files a/setup/data/tools/bitmaps/ellipsis.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/ellipsis.png b/setup/data/tools/bitmaps/ellipsis.png
new file mode 100644
index 00000000..270f7b10
Binary files /dev/null and b/setup/data/tools/bitmaps/ellipsis.png differ
diff --git a/setup/data/tools/bitmaps/entities.bmp b/setup/data/tools/bitmaps/entities.bmp
deleted file mode 100644
index ce3d8124..00000000
Binary files a/setup/data/tools/bitmaps/entities.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/entities.png b/setup/data/tools/bitmaps/entities.png
new file mode 100644
index 00000000..e6fa2d15
Binary files /dev/null and b/setup/data/tools/bitmaps/entities.png differ
diff --git a/setup/data/tools/bitmaps/f-areaportal.bmp b/setup/data/tools/bitmaps/f-areaportal.bmp
deleted file mode 100644
index e0c95b7e..00000000
Binary files a/setup/data/tools/bitmaps/f-areaportal.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-areaportal.png b/setup/data/tools/bitmaps/f-areaportal.png
new file mode 100644
index 00000000..dd85eaf0
Binary files /dev/null and b/setup/data/tools/bitmaps/f-areaportal.png differ
diff --git a/setup/data/tools/bitmaps/f-caulk.bmp b/setup/data/tools/bitmaps/f-caulk.bmp
deleted file mode 100644
index a021277a..00000000
Binary files a/setup/data/tools/bitmaps/f-caulk.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-caulk.png b/setup/data/tools/bitmaps/f-caulk.png
new file mode 100644
index 00000000..3b6b899f
Binary files /dev/null and b/setup/data/tools/bitmaps/f-caulk.png differ
diff --git a/setup/data/tools/bitmaps/f-clip.bmp b/setup/data/tools/bitmaps/f-clip.bmp
deleted file mode 100644
index 85f42136..00000000
Binary files a/setup/data/tools/bitmaps/f-clip.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-clip.png b/setup/data/tools/bitmaps/f-clip.png
new file mode 100644
index 00000000..e69ae950
Binary files /dev/null and b/setup/data/tools/bitmaps/f-clip.png differ
diff --git a/setup/data/tools/bitmaps/f-decals.bmp b/setup/data/tools/bitmaps/f-decals.bmp
deleted file mode 100644
index 9ccfcb73..00000000
Binary files a/setup/data/tools/bitmaps/f-decals.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-decals.png b/setup/data/tools/bitmaps/f-decals.png
new file mode 100644
index 00000000..a07fa5d0
Binary files /dev/null and b/setup/data/tools/bitmaps/f-decals.png differ
diff --git a/setup/data/tools/bitmaps/f-details.bmp b/setup/data/tools/bitmaps/f-details.bmp
deleted file mode 100644
index d5f9b36c..00000000
Binary files a/setup/data/tools/bitmaps/f-details.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-details.png b/setup/data/tools/bitmaps/f-details.png
new file mode 100644
index 00000000..d31bf024
Binary files /dev/null and b/setup/data/tools/bitmaps/f-details.png differ
diff --git a/setup/data/tools/bitmaps/f-entities.bmp b/setup/data/tools/bitmaps/f-entities.bmp
deleted file mode 100644
index a4bc42ae..00000000
Binary files a/setup/data/tools/bitmaps/f-entities.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-entities.png b/setup/data/tools/bitmaps/f-entities.png
new file mode 100644
index 00000000..7e90d43d
Binary files /dev/null and b/setup/data/tools/bitmaps/f-entities.png differ
diff --git a/setup/data/tools/bitmaps/f-hint.bmp b/setup/data/tools/bitmaps/f-hint.bmp
deleted file mode 100644
index a8cfa524..00000000
Binary files a/setup/data/tools/bitmaps/f-hint.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-hint.png b/setup/data/tools/bitmaps/f-hint.png
new file mode 100644
index 00000000..0358c221
Binary files /dev/null and b/setup/data/tools/bitmaps/f-hint.png differ
diff --git a/setup/data/tools/bitmaps/f-invert.bmp b/setup/data/tools/bitmaps/f-invert.bmp
deleted file mode 100644
index 7514af77..00000000
Binary files a/setup/data/tools/bitmaps/f-invert.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-invert.png b/setup/data/tools/bitmaps/f-invert.png
new file mode 100644
index 00000000..b7a7b457
Binary files /dev/null and b/setup/data/tools/bitmaps/f-invert.png differ
diff --git a/setup/data/tools/bitmaps/f-liquids.bmp b/setup/data/tools/bitmaps/f-liquids.bmp
deleted file mode 100644
index 9f982084..00000000
Binary files a/setup/data/tools/bitmaps/f-liquids.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-liquids.png b/setup/data/tools/bitmaps/f-liquids.png
new file mode 100644
index 00000000..38b59e3c
Binary files /dev/null and b/setup/data/tools/bitmaps/f-liquids.png differ
diff --git a/setup/data/tools/bitmaps/f-models.bmp b/setup/data/tools/bitmaps/f-models.bmp
deleted file mode 100644
index b96fc248..00000000
Binary files a/setup/data/tools/bitmaps/f-models.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-models.png b/setup/data/tools/bitmaps/f-models.png
new file mode 100644
index 00000000..3d936c4e
Binary files /dev/null and b/setup/data/tools/bitmaps/f-models.png differ
diff --git a/setup/data/tools/bitmaps/f-reset.bmp b/setup/data/tools/bitmaps/f-reset.bmp
deleted file mode 100644
index 373701ca..00000000
Binary files a/setup/data/tools/bitmaps/f-reset.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-reset.png b/setup/data/tools/bitmaps/f-reset.png
new file mode 100644
index 00000000..18bf28e8
Binary files /dev/null and b/setup/data/tools/bitmaps/f-reset.png differ
diff --git a/setup/data/tools/bitmaps/f-structural.bmp b/setup/data/tools/bitmaps/f-structural.bmp
deleted file mode 100644
index fca065de..00000000
Binary files a/setup/data/tools/bitmaps/f-structural.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-structural.png b/setup/data/tools/bitmaps/f-structural.png
new file mode 100644
index 00000000..040fb875
Binary files /dev/null and b/setup/data/tools/bitmaps/f-structural.png differ
diff --git a/setup/data/tools/bitmaps/f-translucent.bmp b/setup/data/tools/bitmaps/f-translucent.bmp
deleted file mode 100644
index bae69197..00000000
Binary files a/setup/data/tools/bitmaps/f-translucent.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-translucent.png b/setup/data/tools/bitmaps/f-translucent.png
new file mode 100644
index 00000000..98c2fe11
Binary files /dev/null and b/setup/data/tools/bitmaps/f-translucent.png differ
diff --git a/setup/data/tools/bitmaps/f-triggers.bmp b/setup/data/tools/bitmaps/f-triggers.bmp
deleted file mode 100644
index adcb3412..00000000
Binary files a/setup/data/tools/bitmaps/f-triggers.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-triggers.png b/setup/data/tools/bitmaps/f-triggers.png
new file mode 100644
index 00000000..4b2a8f9c
Binary files /dev/null and b/setup/data/tools/bitmaps/f-triggers.png differ
diff --git a/setup/data/tools/bitmaps/f-world.bmp b/setup/data/tools/bitmaps/f-world.bmp
deleted file mode 100644
index 0b5b72ce..00000000
Binary files a/setup/data/tools/bitmaps/f-world.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/f-world.png b/setup/data/tools/bitmaps/f-world.png
new file mode 100644
index 00000000..8f63d823
Binary files /dev/null and b/setup/data/tools/bitmaps/f-world.png differ
diff --git a/setup/data/tools/bitmaps/file_open.bmp b/setup/data/tools/bitmaps/file_open.bmp
deleted file mode 100644
index 754f10fb..00000000
Binary files a/setup/data/tools/bitmaps/file_open.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/file_open.png b/setup/data/tools/bitmaps/file_open.png
new file mode 100644
index 00000000..bbfe7cc3
Binary files /dev/null and b/setup/data/tools/bitmaps/file_open.png differ
diff --git a/setup/data/tools/bitmaps/file_save.bmp b/setup/data/tools/bitmaps/file_save.bmp
deleted file mode 100644
index 651afb68..00000000
Binary files a/setup/data/tools/bitmaps/file_save.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/file_save.png b/setup/data/tools/bitmaps/file_save.png
new file mode 100644
index 00000000..2d5a09f3
Binary files /dev/null and b/setup/data/tools/bitmaps/file_save.png differ
diff --git a/setup/data/tools/bitmaps/icon.bmp b/setup/data/tools/bitmaps/icon.bmp
deleted file mode 100644
index 01aec6ea..00000000
Binary files a/setup/data/tools/bitmaps/icon.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/icon.png b/setup/data/tools/bitmaps/icon.png
new file mode 100644
index 00000000..15fcf029
Binary files /dev/null and b/setup/data/tools/bitmaps/icon.png differ
diff --git a/setup/data/tools/bitmaps/lightinspector.bmp b/setup/data/tools/bitmaps/lightinspector.bmp
deleted file mode 100644
index 00b00a90..00000000
Binary files a/setup/data/tools/bitmaps/lightinspector.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/lightinspector.png b/setup/data/tools/bitmaps/lightinspector.png
new file mode 100644
index 00000000..93688b37
Binary files /dev/null and b/setup/data/tools/bitmaps/lightinspector.png differ
diff --git a/setup/data/tools/bitmaps/logo.bmp b/setup/data/tools/bitmaps/logo.bmp
deleted file mode 100644
index ddbd3461..00000000
Binary files a/setup/data/tools/bitmaps/logo.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/logo.png b/setup/data/tools/bitmaps/logo.png
new file mode 100644
index 00000000..fd5afd4b
Binary files /dev/null and b/setup/data/tools/bitmaps/logo.png differ
diff --git a/setup/data/tools/bitmaps/modify_edges.bmp b/setup/data/tools/bitmaps/modify_edges.bmp
deleted file mode 100644
index 7b048f96..00000000
Binary files a/setup/data/tools/bitmaps/modify_edges.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/modify_edges.png b/setup/data/tools/bitmaps/modify_edges.png
new file mode 100644
index 00000000..0bb87144
Binary files /dev/null and b/setup/data/tools/bitmaps/modify_edges.png differ
diff --git a/setup/data/tools/bitmaps/modify_faces.bmp b/setup/data/tools/bitmaps/modify_faces.bmp
deleted file mode 100644
index 03d9f8c2..00000000
Binary files a/setup/data/tools/bitmaps/modify_faces.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/modify_faces.png b/setup/data/tools/bitmaps/modify_faces.png
new file mode 100644
index 00000000..7615c5b5
Binary files /dev/null and b/setup/data/tools/bitmaps/modify_faces.png differ
diff --git a/setup/data/tools/bitmaps/modify_vertices.bmp b/setup/data/tools/bitmaps/modify_vertices.bmp
deleted file mode 100644
index c434732e..00000000
Binary files a/setup/data/tools/bitmaps/modify_vertices.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/modify_vertices.png b/setup/data/tools/bitmaps/modify_vertices.png
new file mode 100644
index 00000000..70aa38a4
Binary files /dev/null and b/setup/data/tools/bitmaps/modify_vertices.png differ
diff --git a/setup/data/tools/bitmaps/noFalloff.bmp b/setup/data/tools/bitmaps/noFalloff.bmp
deleted file mode 100644
index e86d10c9..00000000
Binary files a/setup/data/tools/bitmaps/noFalloff.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/noFalloff.png b/setup/data/tools/bitmaps/noFalloff.png
new file mode 100644
index 00000000..55c6a801
Binary files /dev/null and b/setup/data/tools/bitmaps/noFalloff.png differ
diff --git a/setup/data/tools/bitmaps/notex.bmp b/setup/data/tools/bitmaps/notex.bmp
deleted file mode 100644
index b06664a7..00000000
Binary files a/setup/data/tools/bitmaps/notex.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/notex.png b/setup/data/tools/bitmaps/notex.png
new file mode 100644
index 00000000..e09df399
Binary files /dev/null and b/setup/data/tools/bitmaps/notex.png differ
diff --git a/setup/data/tools/bitmaps/patch_bend.bmp b/setup/data/tools/bitmaps/patch_bend.bmp
deleted file mode 100644
index af4fc94c..00000000
Binary files a/setup/data/tools/bitmaps/patch_bend.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_bend.png b/setup/data/tools/bitmaps/patch_bend.png
new file mode 100644
index 00000000..62eb7563
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_bend.png differ
diff --git a/setup/data/tools/bitmaps/patch_drilldown.bmp b/setup/data/tools/bitmaps/patch_drilldown.bmp
deleted file mode 100644
index 01ebcf39..00000000
Binary files a/setup/data/tools/bitmaps/patch_drilldown.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_drilldown.png b/setup/data/tools/bitmaps/patch_drilldown.png
new file mode 100644
index 00000000..1794a137
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_drilldown.png differ
diff --git a/setup/data/tools/bitmaps/patch_insdel.bmp b/setup/data/tools/bitmaps/patch_insdel.bmp
deleted file mode 100644
index b60b76b0..00000000
Binary files a/setup/data/tools/bitmaps/patch_insdel.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_insdel.png b/setup/data/tools/bitmaps/patch_insdel.png
new file mode 100644
index 00000000..362285ec
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_insdel.png differ
diff --git a/setup/data/tools/bitmaps/patch_showboundingbox.bmp b/setup/data/tools/bitmaps/patch_showboundingbox.bmp
deleted file mode 100644
index 357cfaf1..00000000
Binary files a/setup/data/tools/bitmaps/patch_showboundingbox.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_showboundingbox.png b/setup/data/tools/bitmaps/patch_showboundingbox.png
new file mode 100644
index 00000000..891f3c7a
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_showboundingbox.png differ
diff --git a/setup/data/tools/bitmaps/patch_weld.bmp b/setup/data/tools/bitmaps/patch_weld.bmp
deleted file mode 100644
index a0c99730..00000000
Binary files a/setup/data/tools/bitmaps/patch_weld.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_weld.png b/setup/data/tools/bitmaps/patch_weld.png
new file mode 100644
index 00000000..3d53a6ba
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_weld.png differ
diff --git a/setup/data/tools/bitmaps/patch_wireframe.bmp b/setup/data/tools/bitmaps/patch_wireframe.bmp
deleted file mode 100644
index 9804274f..00000000
Binary files a/setup/data/tools/bitmaps/patch_wireframe.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/patch_wireframe.png b/setup/data/tools/bitmaps/patch_wireframe.png
new file mode 100644
index 00000000..78bb81eb
Binary files /dev/null and b/setup/data/tools/bitmaps/patch_wireframe.png differ
diff --git a/setup/data/tools/bitmaps/popup_selection.bmp b/setup/data/tools/bitmaps/popup_selection.bmp
deleted file mode 100644
index 676c4d98..00000000
Binary files a/setup/data/tools/bitmaps/popup_selection.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/popup_selection.png b/setup/data/tools/bitmaps/popup_selection.png
new file mode 100644
index 00000000..217fa824
Binary files /dev/null and b/setup/data/tools/bitmaps/popup_selection.png differ
diff --git a/setup/data/tools/bitmaps/redo.bmp b/setup/data/tools/bitmaps/redo.bmp
deleted file mode 100644
index 32a373af..00000000
Binary files a/setup/data/tools/bitmaps/redo.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/redo.png b/setup/data/tools/bitmaps/redo.png
new file mode 100644
index 00000000..befec6e3
Binary files /dev/null and b/setup/data/tools/bitmaps/redo.png differ
diff --git a/setup/data/tools/bitmaps/refresh_models.bmp b/setup/data/tools/bitmaps/refresh_models.bmp
deleted file mode 100644
index b6507f61..00000000
Binary files a/setup/data/tools/bitmaps/refresh_models.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/refresh_models.png b/setup/data/tools/bitmaps/refresh_models.png
new file mode 100644
index 00000000..ca77acb7
Binary files /dev/null and b/setup/data/tools/bitmaps/refresh_models.png differ
diff --git a/setup/data/tools/bitmaps/scalelockx.bmp b/setup/data/tools/bitmaps/scalelockx.bmp
deleted file mode 100644
index 61363da2..00000000
Binary files a/setup/data/tools/bitmaps/scalelockx.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/scalelockx.png b/setup/data/tools/bitmaps/scalelockx.png
new file mode 100644
index 00000000..9714120d
Binary files /dev/null and b/setup/data/tools/bitmaps/scalelockx.png differ
diff --git a/setup/data/tools/bitmaps/scalelocky.bmp b/setup/data/tools/bitmaps/scalelocky.bmp
deleted file mode 100644
index 812394db..00000000
Binary files a/setup/data/tools/bitmaps/scalelocky.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/scalelocky.png b/setup/data/tools/bitmaps/scalelocky.png
new file mode 100644
index 00000000..78362428
Binary files /dev/null and b/setup/data/tools/bitmaps/scalelocky.png differ
diff --git a/setup/data/tools/bitmaps/scalelockz.bmp b/setup/data/tools/bitmaps/scalelockz.bmp
deleted file mode 100644
index 5692e4a7..00000000
Binary files a/setup/data/tools/bitmaps/scalelockz.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/scalelockz.png b/setup/data/tools/bitmaps/scalelockz.png
new file mode 100644
index 00000000..f9676807
Binary files /dev/null and b/setup/data/tools/bitmaps/scalelockz.png differ
diff --git a/setup/data/tools/bitmaps/select_mouseresize.bmp b/setup/data/tools/bitmaps/select_mouseresize.bmp
deleted file mode 100644
index ca0c9ac3..00000000
Binary files a/setup/data/tools/bitmaps/select_mouseresize.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/select_mouseresize.png b/setup/data/tools/bitmaps/select_mouseresize.png
new file mode 100644
index 00000000..c841f054
Binary files /dev/null and b/setup/data/tools/bitmaps/select_mouseresize.png differ
diff --git a/setup/data/tools/bitmaps/select_mouserotate.bmp b/setup/data/tools/bitmaps/select_mouserotate.bmp
deleted file mode 100644
index 7f18a561..00000000
Binary files a/setup/data/tools/bitmaps/select_mouserotate.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/select_mouserotate.png b/setup/data/tools/bitmaps/select_mouserotate.png
new file mode 100644
index 00000000..6174568b
Binary files /dev/null and b/setup/data/tools/bitmaps/select_mouserotate.png differ
diff --git a/setup/data/tools/bitmaps/select_mousescale.bmp b/setup/data/tools/bitmaps/select_mousescale.bmp
deleted file mode 100644
index d8f39024..00000000
Binary files a/setup/data/tools/bitmaps/select_mousescale.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/select_mousescale.png b/setup/data/tools/bitmaps/select_mousescale.png
new file mode 100644
index 00000000..2ab67b2e
Binary files /dev/null and b/setup/data/tools/bitmaps/select_mousescale.png differ
diff --git a/setup/data/tools/bitmaps/select_mousetranslate.bmp b/setup/data/tools/bitmaps/select_mousetranslate.bmp
deleted file mode 100644
index 04962fde..00000000
Binary files a/setup/data/tools/bitmaps/select_mousetranslate.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/select_mousetranslate.png b/setup/data/tools/bitmaps/select_mousetranslate.png
new file mode 100644
index 00000000..8d852683
Binary files /dev/null and b/setup/data/tools/bitmaps/select_mousetranslate.png differ
diff --git a/setup/data/tools/bitmaps/selection_csgmerge.bmp b/setup/data/tools/bitmaps/selection_csgmerge.bmp
deleted file mode 100644
index fb5df4f9..00000000
Binary files a/setup/data/tools/bitmaps/selection_csgmerge.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_csgmerge.png b/setup/data/tools/bitmaps/selection_csgmerge.png
new file mode 100644
index 00000000..eabaecfa
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_csgmerge.png differ
diff --git a/setup/data/tools/bitmaps/selection_csgsubtract.bmp b/setup/data/tools/bitmaps/selection_csgsubtract.bmp
deleted file mode 100644
index 267d3749..00000000
Binary files a/setup/data/tools/bitmaps/selection_csgsubtract.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_csgsubtract.png b/setup/data/tools/bitmaps/selection_csgsubtract.png
new file mode 100644
index 00000000..71d92638
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_csgsubtract.png differ
diff --git a/setup/data/tools/bitmaps/selection_makehollow.bmp b/setup/data/tools/bitmaps/selection_makehollow.bmp
deleted file mode 100644
index d333e2e4..00000000
Binary files a/setup/data/tools/bitmaps/selection_makehollow.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_makehollow.png b/setup/data/tools/bitmaps/selection_makehollow.png
new file mode 100644
index 00000000..58426901
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_makehollow.png differ
diff --git a/setup/data/tools/bitmaps/selection_makeroom.bmp b/setup/data/tools/bitmaps/selection_makeroom.bmp
deleted file mode 100644
index 1fcc7883..00000000
Binary files a/setup/data/tools/bitmaps/selection_makeroom.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_makeroom.png b/setup/data/tools/bitmaps/selection_makeroom.png
new file mode 100644
index 00000000..8b44a8ce
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_makeroom.png differ
diff --git a/setup/data/tools/bitmaps/selection_selectcompletetall.bmp b/setup/data/tools/bitmaps/selection_selectcompletetall.bmp
deleted file mode 100644
index 8d2c1043..00000000
Binary files a/setup/data/tools/bitmaps/selection_selectcompletetall.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selectcompletetall.png b/setup/data/tools/bitmaps/selection_selectcompletetall.png
new file mode 100644
index 00000000..3f5813ed
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selectcompletetall.png differ
diff --git a/setup/data/tools/bitmaps/selection_selectcompletetall_old.bmp b/setup/data/tools/bitmaps/selection_selectcompletetall_old.bmp
deleted file mode 100644
index 1f911e8c..00000000
Binary files a/setup/data/tools/bitmaps/selection_selectcompletetall_old.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selectcompletetall_old.png b/setup/data/tools/bitmaps/selection_selectcompletetall_old.png
new file mode 100644
index 00000000..3f55564d
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selectcompletetall_old.png differ
diff --git a/setup/data/tools/bitmaps/selection_selectinside.bmp b/setup/data/tools/bitmaps/selection_selectinside.bmp
deleted file mode 100644
index 12b22afb..00000000
Binary files a/setup/data/tools/bitmaps/selection_selectinside.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selectinside.png b/setup/data/tools/bitmaps/selection_selectinside.png
new file mode 100644
index 00000000..457805a1
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selectinside.png differ
diff --git a/setup/data/tools/bitmaps/selection_selectpartialtall.bmp b/setup/data/tools/bitmaps/selection_selectpartialtall.bmp
deleted file mode 100644
index d21ddc2c..00000000
Binary files a/setup/data/tools/bitmaps/selection_selectpartialtall.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selectpartialtall.png b/setup/data/tools/bitmaps/selection_selectpartialtall.png
new file mode 100644
index 00000000..e378e47e
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selectpartialtall.png differ
diff --git a/setup/data/tools/bitmaps/selection_selectpartialtall_old.bmp b/setup/data/tools/bitmaps/selection_selectpartialtall_old.bmp
deleted file mode 100644
index 77b418be..00000000
Binary files a/setup/data/tools/bitmaps/selection_selectpartialtall_old.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selectpartialtall_old.png b/setup/data/tools/bitmaps/selection_selectpartialtall_old.png
new file mode 100644
index 00000000..ab1dfc7a
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selectpartialtall_old.png differ
diff --git a/setup/data/tools/bitmaps/selection_selecttouching.bmp b/setup/data/tools/bitmaps/selection_selecttouching.bmp
deleted file mode 100644
index e6d5c4b6..00000000
Binary files a/setup/data/tools/bitmaps/selection_selecttouching.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/selection_selecttouching.png b/setup/data/tools/bitmaps/selection_selecttouching.png
new file mode 100644
index 00000000..f4cf1c01
Binary files /dev/null and b/setup/data/tools/bitmaps/selection_selecttouching.png differ
diff --git a/setup/data/tools/bitmaps/shadernotex.bmp b/setup/data/tools/bitmaps/shadernotex.bmp
deleted file mode 100644
index 6be415e7..00000000
Binary files a/setup/data/tools/bitmaps/shadernotex.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/shadernotex.png b/setup/data/tools/bitmaps/shadernotex.png
new file mode 100644
index 00000000..0eab827a
Binary files /dev/null and b/setup/data/tools/bitmaps/shadernotex.png differ
diff --git a/setup/data/tools/bitmaps/show_entities.bmp b/setup/data/tools/bitmaps/show_entities.bmp
deleted file mode 100644
index 9188bee6..00000000
Binary files a/setup/data/tools/bitmaps/show_entities.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/show_entities.png b/setup/data/tools/bitmaps/show_entities.png
new file mode 100644
index 00000000..97bc49b5
Binary files /dev/null and b/setup/data/tools/bitmaps/show_entities.png differ
diff --git a/setup/data/tools/bitmaps/splash.bmp b/setup/data/tools/bitmaps/splash.bmp
deleted file mode 100644
index a484997f..00000000
Binary files a/setup/data/tools/bitmaps/splash.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/splash.png b/setup/data/tools/bitmaps/splash.png
new file mode 100644
index 00000000..af09ccd8
Binary files /dev/null and b/setup/data/tools/bitmaps/splash.png differ
diff --git a/setup/data/tools/bitmaps/texture_browser.bmp b/setup/data/tools/bitmaps/texture_browser.bmp
deleted file mode 100644
index 22f72506..00000000
Binary files a/setup/data/tools/bitmaps/texture_browser.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/texture_browser.png b/setup/data/tools/bitmaps/texture_browser.png
new file mode 100644
index 00000000..3c145c58
Binary files /dev/null and b/setup/data/tools/bitmaps/texture_browser.png differ
diff --git a/setup/data/tools/bitmaps/texture_lock.bmp b/setup/data/tools/bitmaps/texture_lock.bmp
deleted file mode 100644
index 0a003bcf..00000000
Binary files a/setup/data/tools/bitmaps/texture_lock.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/texture_lock.png b/setup/data/tools/bitmaps/texture_lock.png
new file mode 100644
index 00000000..2a6c2718
Binary files /dev/null and b/setup/data/tools/bitmaps/texture_lock.png differ
diff --git a/setup/data/tools/bitmaps/textures_popup.bmp b/setup/data/tools/bitmaps/textures_popup.bmp
deleted file mode 100644
index 5333382f..00000000
Binary files a/setup/data/tools/bitmaps/textures_popup.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/textures_popup.png b/setup/data/tools/bitmaps/textures_popup.png
new file mode 100644
index 00000000..b238679a
Binary files /dev/null and b/setup/data/tools/bitmaps/textures_popup.png differ
diff --git a/setup/data/tools/bitmaps/undo.bmp b/setup/data/tools/bitmaps/undo.bmp
deleted file mode 100644
index fd2b8392..00000000
Binary files a/setup/data/tools/bitmaps/undo.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/undo.png b/setup/data/tools/bitmaps/undo.png
new file mode 100644
index 00000000..c0408ddd
Binary files /dev/null and b/setup/data/tools/bitmaps/undo.png differ
diff --git a/setup/data/tools/bitmaps/view_cameratoggle.bmp b/setup/data/tools/bitmaps/view_cameratoggle.bmp
deleted file mode 100644
index 4ec79ed6..00000000
Binary files a/setup/data/tools/bitmaps/view_cameratoggle.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_cameratoggle.png b/setup/data/tools/bitmaps/view_cameratoggle.png
new file mode 100644
index 00000000..375e3de7
Binary files /dev/null and b/setup/data/tools/bitmaps/view_cameratoggle.png differ
diff --git a/setup/data/tools/bitmaps/view_cameraupdate.bmp b/setup/data/tools/bitmaps/view_cameraupdate.bmp
deleted file mode 100644
index dbb11956..00000000
Binary files a/setup/data/tools/bitmaps/view_cameraupdate.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_cameraupdate.png b/setup/data/tools/bitmaps/view_cameraupdate.png
new file mode 100644
index 00000000..62aa2282
Binary files /dev/null and b/setup/data/tools/bitmaps/view_cameraupdate.png differ
diff --git a/setup/data/tools/bitmaps/view_change.bmp b/setup/data/tools/bitmaps/view_change.bmp
deleted file mode 100644
index 977ee1e7..00000000
Binary files a/setup/data/tools/bitmaps/view_change.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_change.png b/setup/data/tools/bitmaps/view_change.png
new file mode 100644
index 00000000..e72238f4
Binary files /dev/null and b/setup/data/tools/bitmaps/view_change.png differ
diff --git a/setup/data/tools/bitmaps/view_clipper.bmp b/setup/data/tools/bitmaps/view_clipper.bmp
deleted file mode 100644
index 606a2095..00000000
Binary files a/setup/data/tools/bitmaps/view_clipper.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_clipper.png b/setup/data/tools/bitmaps/view_clipper.png
new file mode 100644
index 00000000..b006c0c7
Binary files /dev/null and b/setup/data/tools/bitmaps/view_clipper.png differ
diff --git a/setup/data/tools/bitmaps/view_cubicclipping.bmp b/setup/data/tools/bitmaps/view_cubicclipping.bmp
deleted file mode 100644
index 16f7cb0e..00000000
Binary files a/setup/data/tools/bitmaps/view_cubicclipping.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_cubicclipping.png b/setup/data/tools/bitmaps/view_cubicclipping.png
new file mode 100644
index 00000000..e01508ac
Binary files /dev/null and b/setup/data/tools/bitmaps/view_cubicclipping.png differ
diff --git a/setup/data/tools/bitmaps/view_entity.bmp b/setup/data/tools/bitmaps/view_entity.bmp
deleted file mode 100644
index 851ec2c3..00000000
Binary files a/setup/data/tools/bitmaps/view_entity.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/view_entity.png b/setup/data/tools/bitmaps/view_entity.png
new file mode 100644
index 00000000..4a29d900
Binary files /dev/null and b/setup/data/tools/bitmaps/view_entity.png differ
diff --git a/setup/data/tools/bitmaps/white.bmp b/setup/data/tools/bitmaps/white.bmp
deleted file mode 100644
index cbf038f7..00000000
Binary files a/setup/data/tools/bitmaps/white.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/white.png b/setup/data/tools/bitmaps/white.png
new file mode 100644
index 00000000..4af01bde
Binary files /dev/null and b/setup/data/tools/bitmaps/white.png differ
diff --git a/setup/data/tools/bitmaps/window1.bmp b/setup/data/tools/bitmaps/window1.bmp
deleted file mode 100644
index a8913c72..00000000
Binary files a/setup/data/tools/bitmaps/window1.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/window1.png b/setup/data/tools/bitmaps/window1.png
new file mode 100644
index 00000000..c880b89d
Binary files /dev/null and b/setup/data/tools/bitmaps/window1.png differ
diff --git a/setup/data/tools/bitmaps/window2.bmp b/setup/data/tools/bitmaps/window2.bmp
deleted file mode 100644
index 6db9e565..00000000
Binary files a/setup/data/tools/bitmaps/window2.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/window2.png b/setup/data/tools/bitmaps/window2.png
new file mode 100644
index 00000000..94e936c5
Binary files /dev/null and b/setup/data/tools/bitmaps/window2.png differ
diff --git a/setup/data/tools/bitmaps/window3.bmp b/setup/data/tools/bitmaps/window3.bmp
deleted file mode 100644
index e81a299d..00000000
Binary files a/setup/data/tools/bitmaps/window3.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/window3.png b/setup/data/tools/bitmaps/window3.png
new file mode 100644
index 00000000..e739968b
Binary files /dev/null and b/setup/data/tools/bitmaps/window3.png differ
diff --git a/setup/data/tools/bitmaps/window4.bmp b/setup/data/tools/bitmaps/window4.bmp
deleted file mode 100644
index d753945f..00000000
Binary files a/setup/data/tools/bitmaps/window4.bmp and /dev/null differ
diff --git a/setup/data/tools/bitmaps/window4.png b/setup/data/tools/bitmaps/window4.png
new file mode 100644
index 00000000..891ca415
Binary files /dev/null and b/setup/data/tools/bitmaps/window4.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp
deleted file mode 100644
index 52239503..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.png b/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.png
new file mode 100644
index 00000000..0b994389
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp
deleted file mode 100644
index 8939d5d7..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.png b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.png
new file mode 100644
index 00000000..a109ec15
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup_old.png b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup_old.png
new file mode 100644
index 00000000..c4de5d15
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup_old.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp
deleted file mode 100644
index 2fcdcba3..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.png b/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.png
new file mode 100644
index 00000000..22109269
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp
deleted file mode 100644
index 2184f7a7..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_merge.png b/setup/data/tools/plugins/bitmaps/bobtoolz_merge.png
new file mode 100644
index 00000000..5d2d8b34
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_merge.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_merge_old.png b/setup/data/tools/plugins/bitmaps/bobtoolz_merge_old.png
new file mode 100644
index 00000000..e50d4b11
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_merge_old.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp
deleted file mode 100644
index e714f3b9..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_poly.png b/setup/data/tools/plugins/bitmaps/bobtoolz_poly.png
new file mode 100644
index 00000000..cfddeaa5
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_poly.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_poly_old.png b/setup/data/tools/plugins/bitmaps/bobtoolz_poly_old.png
new file mode 100644
index 00000000..897cbcbc
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_poly_old.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_split.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_split.bmp
deleted file mode 100644
index 7e1dc72f..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_split.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_split.png b/setup/data/tools/plugins/bitmaps/bobtoolz_split.png
new file mode 100644
index 00000000..67547c99
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_split.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_split_old.png b/setup/data/tools/plugins/bitmaps/bobtoolz_split_old.png
new file mode 100644
index 00000000..5387ec29
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_split_old.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.bmp
deleted file mode 100644
index 3d47fdcb..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.png b/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.png
new file mode 100644
index 00000000..271c6128
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_splitcol.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.bmp
deleted file mode 100644
index 03b1ae3a..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.png b/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.png
new file mode 100644
index 00000000..c8d2863c
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_splitrow.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp
deleted file mode 100644
index 66537dc1..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.png b/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.png
new file mode 100644
index 00000000..4a1038ac
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.bmp
deleted file mode 100644
index 5c967ab2..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.png b/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.png
new file mode 100644
index 00000000..c0d87657
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.png differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp
deleted file mode 100644
index b72cb2aa..00000000
Binary files a/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.png b/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.png
new file mode 100644
index 00000000..20cbb41d
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp b/setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp
deleted file mode 100644
index 4a2887c6..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_actorclip.png b/setup/data/tools/plugins/bitmaps/ufoai_actorclip.png
new file mode 100644
index 00000000..0412c95c
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_actorclip.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level1.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level1.bmp
deleted file mode 100644
index 80a4b299..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level1.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level1.png b/setup/data/tools/plugins/bitmaps/ufoai_level1.png
new file mode 100644
index 00000000..d5a39793
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level1.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level2.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level2.bmp
deleted file mode 100644
index e84e2544..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level2.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level2.png b/setup/data/tools/plugins/bitmaps/ufoai_level2.png
new file mode 100644
index 00000000..7f07a026
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level2.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level3.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level3.bmp
deleted file mode 100644
index 141c3245..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level3.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level3.png b/setup/data/tools/plugins/bitmaps/ufoai_level3.png
new file mode 100644
index 00000000..7b3f1e37
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level3.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level4.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level4.bmp
deleted file mode 100644
index 3783a803..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level4.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level4.png b/setup/data/tools/plugins/bitmaps/ufoai_level4.png
new file mode 100644
index 00000000..6801aae2
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level4.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level5.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level5.bmp
deleted file mode 100644
index 8f62851c..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level5.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level5.png b/setup/data/tools/plugins/bitmaps/ufoai_level5.png
new file mode 100644
index 00000000..48a9294f
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level5.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level6.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level6.bmp
deleted file mode 100644
index 418fdd28..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level6.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level6.png b/setup/data/tools/plugins/bitmaps/ufoai_level6.png
new file mode 100644
index 00000000..eab3b509
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level6.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level7.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level7.bmp
deleted file mode 100644
index d82dab61..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level7.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level7.png b/setup/data/tools/plugins/bitmaps/ufoai_level7.png
new file mode 100644
index 00000000..bfb85a72
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level7.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level8.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level8.bmp
deleted file mode 100644
index c3809538..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_level8.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level8.png b/setup/data/tools/plugins/bitmaps/ufoai_level8.png
new file mode 100644
index 00000000..686d8b11
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_level8.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_nodraw.bmp b/setup/data/tools/plugins/bitmaps/ufoai_nodraw.bmp
deleted file mode 100644
index 3eaa529c..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_nodraw.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_nodraw.png b/setup/data/tools/plugins/bitmaps/ufoai_nodraw.png
new file mode 100644
index 00000000..5dbf903c
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_nodraw.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp b/setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp
deleted file mode 100644
index b73896fb..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_stepon.png b/setup/data/tools/plugins/bitmaps/ufoai_stepon.png
new file mode 100644
index 00000000..7ad5d5bf
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_stepon.png differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.bmp b/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.bmp
deleted file mode 100644
index 799468ba..00000000
Binary files a/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.bmp and /dev/null differ
diff --git a/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.png b/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.png
new file mode 100644
index 00000000..d1fea27e
Binary files /dev/null and b/setup/data/tools/plugins/bitmaps/ufoai_weaponclip.png differ