inline int TextureBrowser_fontHeight(TextureBrowser& textureBrowser)
{
- return GlobalOpenGL().m_fontHeight;
+ return GlobalOpenGL().m_font->getPixelHeight();
}
const char* TextureBrowser_GetSelectedShader(TextureBrowser& textureBrowser)
( 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
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;