]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/texwindow.cpp
support for separators in build menu
[xonotic/netradiant.git] / radiant / texwindow.cpp
index 810fc195b8bbe70b0bd98bbf3d718805a418b8d7..95d490ab0725770460aa4139431a177d6bc27359 100644 (file)
@@ -370,7 +370,7 @@ const char* TextureBrowser_getComonShadersDir()
 
 inline int TextureBrowser_fontHeight(TextureBrowser& textureBrowser)
 {
-  return GlobalOpenGL().m_fontHeight;
+  return GlobalOpenGL().m_font->getPixelHeight();
 }
 
 const char* TextureBrowser_GetSelectedShader(TextureBrowser& textureBrowser)
@@ -685,17 +685,37 @@ NOTE: for texture window layout:
   ( the GL textures are not flushed though)
 ==============
 */
+
+bool endswith(const char *haystack, const char *needle)
+{
+       size_t lh = strlen(haystack);
+       size_t ln = strlen(needle);
+       if(lh < ln)
+               return false;
+       return !memcmp(haystack + (lh - ln), needle, ln);
+}
+
 bool texture_name_ignore(const char* name)
 {
   StringOutputStream strTemp(string_length(name));
   strTemp << LowerCase(name);
 
-  return strstr(strTemp.c_str(), ".specular") != 0 ||
-    strstr(strTemp.c_str(), ".glow") != 0 ||
-    strstr(strTemp.c_str(), ".bump") != 0 ||
-    strstr(strTemp.c_str(), ".diffuse") != 0 ||
-    strstr(strTemp.c_str(), ".blend") != 0 ||
-         strstr(strTemp.c_str(), ".alpha") != 0;
+  return
+         endswith(strTemp.c_str(), ".specular") ||
+         endswith(strTemp.c_str(), ".glow") ||
+         endswith(strTemp.c_str(), ".bump") ||
+         endswith(strTemp.c_str(), ".diffuse") ||
+         endswith(strTemp.c_str(), ".blend") ||
+         endswith(strTemp.c_str(), ".alpha") ||
+         endswith(strTemp.c_str(), "_norm") ||
+         endswith(strTemp.c_str(), "_bump") ||
+         endswith(strTemp.c_str(), "_glow") ||
+         endswith(strTemp.c_str(), "_gloss") ||
+         endswith(strTemp.c_str(), "_pants") ||
+         endswith(strTemp.c_str(), "_shirt") ||
+         endswith(strTemp.c_str(), "_reflect") ||
+         endswith(strTemp.c_str(), "_alpha") ||
+         0;
 }
 
 class LoadShaderVisitor : public Archive::Visitor
@@ -1917,7 +1937,7 @@ void TextureBrowser_searchTags()
     {
           size_t shaders_found = g_TextureBrowser.m_found_shaders.size();
 
-       globalOutputStream() << "Found " << shaders_found << " textures and shaders with " << tags_searched << "\n";
+       globalOutputStream() << "Found " << (unsigned int)shaders_found << " textures and shaders with " << tags_searched << "\n";
           ScopeDisableScreenUpdates disableScreenUpdates("Searching...", "Loading Textures");
 
          std::set<CopiedString>::iterator iter;
@@ -2085,7 +2105,7 @@ GtkWidget* TextureBrowser_constructWindow(GtkWindow* toplevel)
        gtk_widget_show(GTK_WIDGET(g_TextureBrowser.m_treeViewTree));
   }
   { // gl_widget scrollbar
-       GtkWidget* w = gtk_vscrollbar_new(GTK_ADJUSTMENT(gtk_adjustment_new (0,0,0,1,1,1)));
+       GtkWidget* w = gtk_vscrollbar_new(GTK_ADJUSTMENT(gtk_adjustment_new (0,0,0,1,1,0)));
        gtk_table_attach(GTK_TABLE (table), w, 2, 3, 1, 2, GTK_SHRINK, GTK_FILL, 0, 0);
        gtk_widget_show(w);
        g_TextureBrowser.m_texture_scroll = w;