From b396155430cd0245b1c6ecc934495dd511eadf0c Mon Sep 17 00:00:00 2001 From: jules Date: Tue, 11 Sep 2012 09:35:26 +0100 Subject: [PATCH] Introjucer: file type fix. --- .../Application/jucer_AppearanceSettings.cpp | 4 ++-- .../Source/Code Editor/jucer_SourceCodeEditor.h | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/extras/Introjucer/Source/Application/jucer_AppearanceSettings.cpp b/extras/Introjucer/Source/Application/jucer_AppearanceSettings.cpp index 960b4d21ff..17925201f9 100644 --- a/extras/Introjucer/Source/Application/jucer_AppearanceSettings.cpp +++ b/extras/Introjucer/Source/Application/jucer_AppearanceSettings.cpp @@ -729,8 +729,8 @@ void IntrojucerLookAndFeel::drawButtonBackground (Graphics& g, const bool flatOnTop = button.isConnectedOnTop(); const bool flatOnBottom = button.isConnectedOnBottom(); - const float width = button.getWidth(); - const float height = button.getHeight(); + const float width = (float) button.getWidth(); + const float height = (float) button.getHeight(); const float x = 0.5f; const float y = 0.5f; diff --git a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h index 63c3b583fd..016cb569ea 100644 --- a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h +++ b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h @@ -101,13 +101,24 @@ public: return true; MemoryBlock mb; - if (file.loadFileAsData (mb) - && CharPointer_UTF8::isValidString (static_cast (mb.getData()), mb.getSize())) + if (file.loadFileAsData (mb) && seemsToBeText (static_cast (mb.getData()), (int) mb.getSize())) return true; return false; } + static bool seemsToBeText (const char* const chars, const int num) noexcept + { + for (int i = 0; i < num; ++i) + { + const char c = chars[i]; + if ((c < 32 && c != '\t' && c != '\r' && c != '\n') || chars[i] > 126) + return false; + } + + return true; + } + Document* openFile (Project* project, const File& file) { return new SourceCodeDocument (project, file); } };