summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Config.h16
-rw-r--r--src/Format.cpp2
-rw-r--r--src/Misc.cpp6
-rw-r--r--src/PowderToySDL.cpp4
-rw-r--r--src/cajun/elements.cpp124
-rw-r--r--src/cajun/elements.h6
-rw-r--r--src/cajun/reader.cpp54
-rw-r--r--src/cajun/writer.cpp42
-rw-r--r--src/cat/CommandInterface.cpp2
-rw-r--r--src/cat/LuaBit.cpp6
-rw-r--r--src/cat/LuaButton.cpp7
-rw-r--r--src/cat/LuaButton.h6
-rw-r--r--src/cat/LuaComponent.cpp6
-rw-r--r--src/cat/LuaComponent.h6
-rw-r--r--src/cat/LuaLabel.cpp6
-rw-r--r--src/cat/LuaLabel.h6
-rw-r--r--src/cat/LuaLuna.h4
-rw-r--r--src/cat/LuaScriptInterface.h6
-rw-r--r--src/cat/LuaTextbox.cpp7
-rw-r--r--src/cat/LuaTextbox.h6
-rw-r--r--src/cat/LuaWindow.cpp20
-rw-r--r--src/cat/LuaWindow.h6
-rw-r--r--src/game/GameView.cpp4
-rw-r--r--src/game/QuickOption.h6
-rw-r--r--src/graphics/Graphics.cpp6
-rw-r--r--src/graphics/OpenGLDrawMethods.inl2
-rw-r--r--src/graphics/RasterDrawMethods.inl2
-rw-r--r--src/graphics/Renderer.cpp2
-rw-r--r--src/interface/Button.cpp4
-rw-r--r--src/interface/Button.h4
-rw-r--r--src/interface/Keys.h2
-rw-r--r--src/interface/Slider.cpp6
-rw-r--r--src/preview/PreviewModel.cpp2
-rw-r--r--src/simulation/Simulation.cpp12
-rw-r--r--src/simulation/Simulation.h6
-rw-r--r--src/simulation/elements/GEL.cpp2
-rw-r--r--src/simulation/elements/SPRK.cpp2
-rw-r--r--src/simulation/tools/AirTool.cpp (renamed from src/simulation/tools/Air.cpp)0
-rw-r--r--src/simulation/tools/GravTool.cpp (renamed from src/simulation/tools/Grav.cpp)0
-rw-r--r--src/simulation/tools/SimTool.h2
40 files changed, 219 insertions, 193 deletions
diff --git a/src/Config.h b/src/Config.h
index 50a716a..a0e5dfe 100644
--- a/src/Config.h
+++ b/src/Config.h
@@ -181,18 +181,20 @@ extern unsigned char ZSIZE;
#ifdef WIN
#define strcasecmp stricmp
-#endif
-#if defined(WIN) && !defined(__GNUC__)
-#define fmin min
-#define fminf min
-#define fmax max
-#define fmaxf max
+#endif //_MSC_VER
+#if defined(_MSC_VER)
+#define fmin(a,b) (((a) < (b)) ? (a) : (b))
+#define fminf(a,b) (((a) < (b)) ? (a) : (b))
+#define fmax(a,b) (((a) > (b)) ? (a) : (b))
+#define fmaxf(a,b) (((a) > (b)) ? (a) : (b))
#endif
-#if defined(WIN) && !defined(__GNUC__)
+#if defined(_MSC_VER)
#define TPT_INLINE _inline
+#define TPT_NO_INLINE //Remove inlines in visual studio, but only the ones that don't work
#else
#define TPT_INLINE inline
+#define TPT_NO_INLINE inline
#endif
#define SDEUT
diff --git a/src/Format.cpp b/src/Format.cpp
index c290e71..78e4a4f 100644
--- a/src/Format.cpp
+++ b/src/Format.cpp
@@ -4,7 +4,7 @@
#include <stdexcept>
#include <iostream>
#include <iterator>
-#include <zlib.h>
+#include "zlib.h"
#include <stdio.h>
#include "Format.h"
#include "graphics/Graphics.h"
diff --git a/src/Misc.cpp b/src/Misc.cpp
index c7481ab..54ee4be 100644
--- a/src/Misc.cpp
+++ b/src/Misc.cpp
@@ -111,7 +111,7 @@ int isign(float i) //TODO: INline or macro
return 0;
}
-TPT_INLINE unsigned clamp_flt(float f, float min, float max) //TODO: Also inline/macro
+TPT_NO_INLINE unsigned clamp_flt(float f, float min, float max) //TODO: Also inline/macro
{
if (f<min)
return 0;
@@ -120,7 +120,7 @@ TPT_INLINE unsigned clamp_flt(float f, float min, float max) //TODO: Also inline
return (int)(255.0f*(f-min)/(max-min));
}
-TPT_INLINE float restrict_flt(float f, float min, float max) //TODO Inline or macro or something
+TPT_NO_INLINE float restrict_flt(float f, float min, float max) //TODO Inline or macro or something
{
if (f<min)
return min;
@@ -623,7 +623,7 @@ void HSV_to_RGB(int h,int s,int v,int *r,int *g,int *b)//convert 0-255(0-360 for
ss = s/255.0f;
vv = v/255.0f;
c = vv * ss;
- x = c * ( 1 - fabs(fmod(hh,2.0) -1) );
+ x = c * ( 1 - fabs(fmod(hh,2.0f) -1) );
if(hh<1){
*r = (int)(c*255.0);
*g = (int)(x*255.0);
diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp
index 75c1861..9e79248 100644
--- a/src/PowderToySDL.cpp
+++ b/src/PowderToySDL.cpp
@@ -3,9 +3,9 @@
#include <map>
#include <string>
#include <time.h>
-#include "SDL.h"
+#include "SDL/SDL.h"
#ifdef WIN
-#include "SDL_syswm.h"
+#include "SDL/SDL_syswm.h"
#include <direct.h>
#endif
#include <iostream>
diff --git a/src/cajun/elements.cpp b/src/cajun/elements.cpp
index a913f8a..83602f1 100644
--- a/src/cajun/elements.cpp
+++ b/src/cajun/elements.cpp
@@ -44,7 +44,7 @@ namespace json
{
-inline Exception::Exception(const std::string& sMessage) :
+TPT_NO_INLINE Exception::Exception(const std::string& sMessage) :
std::runtime_error(sMessage) {}
@@ -129,32 +129,32 @@ public:
-inline UnknownElement::UnknownElement() : m_pImp( new Imp_T<Null>( Null() ) ) {}
-inline UnknownElement::UnknownElement(const UnknownElement& unknown) : m_pImp( unknown.m_pImp->Clone()) {}
-inline UnknownElement::UnknownElement(const Object& object) : m_pImp( new Imp_T<Object>(object) ) {}
-inline UnknownElement::UnknownElement(const Array& array) : m_pImp( new Imp_T<Array>(array) ) {}
-inline UnknownElement::UnknownElement(const Number& number) : m_pImp( new Imp_T<Number>(number) ) {}
-inline UnknownElement::UnknownElement(const Boolean& boolean) : m_pImp( new Imp_T<Boolean>(boolean) ) {}
-inline UnknownElement::UnknownElement(const String& string) : m_pImp( new Imp_T<String>(string) ) {}
-inline UnknownElement::UnknownElement(const Null& null) : m_pImp( new Imp_T<Null>(null) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement() : m_pImp( new Imp_T<Null>( Null() ) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const UnknownElement& unknown) : m_pImp( unknown.m_pImp->Clone()) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const Object& object) : m_pImp( new Imp_T<Object>(object) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const Array& array) : m_pImp( new Imp_T<Array>(array) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const Number& number) : m_pImp( new Imp_T<Number>(number) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const Boolean& boolean) : m_pImp( new Imp_T<Boolean>(boolean) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const String& string) : m_pImp( new Imp_T<String>(string) ) {}
+TPT_NO_INLINE UnknownElement::UnknownElement(const Null& null) : m_pImp( new Imp_T<Null>(null) ) {}
-inline UnknownElement::~UnknownElement() { delete m_pImp; }
+TPT_NO_INLINE UnknownElement::~UnknownElement() { delete m_pImp; }
-inline UnknownElement::operator const Object& () const { return CastTo<Object>(); }
-inline UnknownElement::operator const Array& () const { return CastTo<Array>(); }
-inline UnknownElement::operator const Number& () const { return CastTo<Number>(); }
-inline UnknownElement::operator const Boolean& () const { return CastTo<Boolean>(); }
-inline UnknownElement::operator const String& () const { return CastTo<String>(); }
-inline UnknownElement::operator const Null& () const { return CastTo<Null>(); }
+TPT_NO_INLINE UnknownElement::operator const Object& () const { return CastTo<Object>(); }
+TPT_NO_INLINE UnknownElement::operator const Array& () const { return CastTo<Array>(); }
+TPT_NO_INLINE UnknownElement::operator const Number& () const { return CastTo<Number>(); }
+TPT_NO_INLINE UnknownElement::operator const Boolean& () const { return CastTo<Boolean>(); }
+TPT_NO_INLINE UnknownElement::operator const String& () const { return CastTo<String>(); }
+TPT_NO_INLINE UnknownElement::operator const Null& () const { return CastTo<Null>(); }
-inline UnknownElement::operator Object& () { return ConvertTo<Object>(); }
-inline UnknownElement::operator Array& () { return ConvertTo<Array>(); }
-inline UnknownElement::operator Number& () { return ConvertTo<Number>(); }
-inline UnknownElement::operator Boolean& () { return ConvertTo<Boolean>(); }
-inline UnknownElement::operator String& () { return ConvertTo<String>(); }
-inline UnknownElement::operator Null& () { return ConvertTo<Null>(); }
+TPT_NO_INLINE UnknownElement::operator Object& () { return ConvertTo<Object>(); }
+TPT_NO_INLINE UnknownElement::operator Array& () { return ConvertTo<Array>(); }
+TPT_NO_INLINE UnknownElement::operator Number& () { return ConvertTo<Number>(); }
+TPT_NO_INLINE UnknownElement::operator Boolean& () { return ConvertTo<Boolean>(); }
+TPT_NO_INLINE UnknownElement::operator String& () { return ConvertTo<String>(); }
+TPT_NO_INLINE UnknownElement::operator Null& () { return ConvertTo<Null>(); }
-inline UnknownElement& UnknownElement::operator = (const UnknownElement& unknown)
+TPT_NO_INLINE UnknownElement& UnknownElement::operator = (const UnknownElement& unknown)
{
// always check for this
if (&unknown != this)
@@ -170,28 +170,28 @@ inline UnknownElement& UnknownElement::operator = (const UnknownElement& unknown
return *this;
}
-inline UnknownElement& UnknownElement::operator[] (const std::string& key)
+TPT_NO_INLINE UnknownElement& UnknownElement::operator[] (const std::string& key)
{
// the people want an object. make us one if we aren't already
Object& object = ConvertTo<Object>();
return object[key];
}
-inline const UnknownElement& UnknownElement::operator[] (const std::string& key) const
+TPT_NO_INLINE const UnknownElement& UnknownElement::operator[] (const std::string& key) const
{
// throws if we aren't an object
const Object& object = CastTo<Object>();
return object[key];
}
-inline UnknownElement& UnknownElement::operator[] (size_t index)
+TPT_NO_INLINE UnknownElement& UnknownElement::operator[] (size_t index)
{
// the people want an array. make us one if we aren't already
Array& array = ConvertTo<Array>();
return array[index];
}
-inline const UnknownElement& UnknownElement::operator[] (size_t index) const
+TPT_NO_INLINE const UnknownElement& UnknownElement::operator[] (size_t index) const
{
// throws if we aren't an array
const Array& array = CastTo<Array>();
@@ -227,11 +227,11 @@ ElementTypeT& UnknownElement::ConvertTo()
}
-inline void UnknownElement::Accept(ConstVisitor& visitor) const { m_pImp->Accept(visitor); }
-inline void UnknownElement::Accept(Visitor& visitor) { m_pImp->Accept(visitor); }
+TPT_NO_INLINE void UnknownElement::Accept(ConstVisitor& visitor) const { m_pImp->Accept(visitor); }
+TPT_NO_INLINE void UnknownElement::Accept(Visitor& visitor) { m_pImp->Accept(visitor); }
-inline bool UnknownElement::operator == (const UnknownElement& element) const
+TPT_NO_INLINE bool UnknownElement::operator == (const UnknownElement& element) const
{
return m_pImp->Compare(*element.m_pImp);
}
@@ -242,10 +242,10 @@ inline bool UnknownElement::operator == (const UnknownElement& element) const
// Object members
-inline Object::Member::Member(const std::string& nameIn, const UnknownElement& elementIn) :
+TPT_NO_INLINE Object::Member::Member(const std::string& nameIn, const UnknownElement& elementIn) :
name(nameIn), element(elementIn) {}
-inline bool Object::Member::operator == (const Member& member) const
+TPT_NO_INLINE bool Object::Member::operator == (const Member& member) const
{
return name == member.name &&
element == member.element;
@@ -265,30 +265,30 @@ private:
-inline Object::iterator Object::Begin() { return m_Members.begin(); }
-inline Object::iterator Object::End() { return m_Members.end(); }
-inline Object::const_iterator Object::Begin() const { return m_Members.begin(); }
-inline Object::const_iterator Object::End() const { return m_Members.end(); }
+TPT_NO_INLINE Object::iterator Object::Begin() { return m_Members.begin(); }
+TPT_NO_INLINE Object::iterator Object::End() { return m_Members.end(); }
+TPT_NO_INLINE Object::const_iterator Object::Begin() const { return m_Members.begin(); }
+TPT_NO_INLINE Object::const_iterator Object::End() const { return m_Members.end(); }
-inline size_t Object::Size() const { return m_Members.size(); }
-inline bool Object::Empty() const { return m_Members.empty(); }
+TPT_NO_INLINE size_t Object::Size() const { return m_Members.size(); }
+TPT_NO_INLINE bool Object::Empty() const { return m_Members.empty(); }
-inline Object::iterator Object::Find(const std::string& name)
+TPT_NO_INLINE Object::iterator Object::Find(const std::string& name)
{
return std::find_if(m_Members.begin(), m_Members.end(), Finder(name));
}
-inline Object::const_iterator Object::Find(const std::string& name) const
+TPT_NO_INLINE Object::const_iterator Object::Find(const std::string& name) const
{
return std::find_if(m_Members.begin(), m_Members.end(), Finder(name));
}
-inline Object::iterator Object::Insert(const Member& member)
+TPT_NO_INLINE Object::iterator Object::Insert(const Member& member)
{
return Insert(member, End());
}
-inline Object::iterator Object::Insert(const Member& member, iterator itWhere)
+TPT_NO_INLINE Object::iterator Object::Insert(const Member& member, iterator itWhere)
{
iterator it = Find(member.name);
if (it != m_Members.end())
@@ -298,12 +298,12 @@ inline Object::iterator Object::Insert(const Member& member, iterator itWhere)
return it;
}
-inline Object::iterator Object::Erase(iterator itWhere)
+TPT_NO_INLINE Object::iterator Object::Erase(iterator itWhere)
{
return m_Members.erase(itWhere);
}
-inline UnknownElement& Object::operator [](const std::string& name)
+TPT_NO_INLINE UnknownElement& Object::operator [](const std::string& name)
{
iterator it = Find(name);
@@ -315,7 +315,7 @@ inline UnknownElement& Object::operator [](const std::string& name)
return it->element;
}
-inline const UnknownElement& Object::operator [](const std::string& name) const
+TPT_NO_INLINE const UnknownElement& Object::operator [](const std::string& name) const
{
const_iterator it = Find(name);
if (it == End())
@@ -323,12 +323,12 @@ inline const UnknownElement& Object::operator [](const std::string& name) const
return it->element;
}
-inline void Object::Clear()
+TPT_NO_INLINE void Object::Clear()
{
m_Members.clear();
}
-inline bool Object::operator == (const Object& object) const
+TPT_NO_INLINE bool Object::operator == (const Object& object) const
{
return m_Members == object.m_Members;
}
@@ -337,35 +337,35 @@ inline bool Object::operator == (const Object& object) const
/////////////////
// Array members
-inline Array::iterator Array::Begin() { return m_Elements.begin(); }
-inline Array::iterator Array::End() { return m_Elements.end(); }
-inline Array::const_iterator Array::Begin() const { return m_Elements.begin(); }
-inline Array::const_iterator Array::End() const { return m_Elements.end(); }
+TPT_NO_INLINE Array::iterator Array::Begin() { return m_Elements.begin(); }
+TPT_NO_INLINE Array::iterator Array::End() { return m_Elements.end(); }
+TPT_NO_INLINE Array::const_iterator Array::Begin() const { return m_Elements.begin(); }
+TPT_NO_INLINE Array::const_iterator Array::End() const { return m_Elements.end(); }
-inline Array::iterator Array::Insert(const UnknownElement& element, iterator itWhere)
+TPT_NO_INLINE Array::iterator Array::Insert(const UnknownElement& element, iterator itWhere)
{
return m_Elements.insert(itWhere, element);
}
-inline Array::iterator Array::Insert(const UnknownElement& element)
+TPT_NO_INLINE Array::iterator Array::Insert(const UnknownElement& element)
{
return Insert(element, End());
}
-inline Array::iterator Array::Erase(iterator itWhere)
+TPT_NO_INLINE Array::iterator Array::Erase(iterator itWhere)
{
return m_Elements.erase(itWhere);
}
-inline void Array::Resize(size_t newSize)
+TPT_NO_INLINE void Array::Resize(size_t newSize)
{
m_Elements.resize(newSize);
}
-inline size_t Array::Size() const { return m_Elements.size(); }
-inline bool Array::Empty() const { return m_Elements.empty(); }
+TPT_NO_INLINE size_t Array::Size() const { return m_Elements.size(); }
+TPT_NO_INLINE bool Array::Empty() const { return m_Elements.empty(); }
-inline UnknownElement& Array::operator[] (size_t index)
+TPT_NO_INLINE UnknownElement& Array::operator[] (size_t index)
{
size_t nMinSize = index + 1; // zero indexed
if (m_Elements.size() < nMinSize)
@@ -373,18 +373,18 @@ inline UnknownElement& Array::operator[] (size_t index)
return m_Elements[index];
}
-inline const UnknownElement& Array::operator[] (size_t index) const
+TPT_NO_INLINE const UnknownElement& Array::operator[] (size_t index) const
{
if (index >= m_Elements.size())
throw Exception("Array out of bounds");
return m_Elements[index];
}
-inline void Array::Clear() {
+TPT_NO_INLINE void Array::Clear() {
m_Elements.clear();
}
-inline bool Array::operator == (const Array& array) const
+TPT_NO_INLINE bool Array::operator == (const Array& array) const
{
return m_Elements == array.m_Elements;
}
@@ -393,7 +393,7 @@ inline bool Array::operator == (const Array& array) const
//////////////////
// Null members
-inline bool Null::operator == (const Null& trivial) const
+TPT_NO_INLINE bool Null::operator == (const Null& trivial) const
{
return true;
}
diff --git a/src/cajun/elements.h b/src/cajun/elements.h
index 3ddff30..f43b1be 100644
--- a/src/cajun/elements.h
+++ b/src/cajun/elements.h
@@ -35,6 +35,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <string>
#include <stdexcept>
+#if defined(_MSC_VER)
+#define TPT_NO_INLINE //Remove inlines in visual studio, but only the ones that don't work
+#else
+#define TPT_NO_INLINE inline
+#endif
+
/*
TODO:
diff --git a/src/cajun/reader.cpp b/src/cajun/reader.cpp
index f625367..be35ed1 100644
--- a/src/cajun/reader.cpp
+++ b/src/cajun/reader.cpp
@@ -43,12 +43,12 @@ TODO:
namespace json
{
-inline std::istream& operator >> (std::istream& istr, UnknownElement& elementRoot) {
+TPT_NO_INLINE std::istream& operator >> (std::istream& istr, UnknownElement& elementRoot) {
Reader::Read(elementRoot, istr);
return istr;
}
-inline Reader::Location::Location() :
+TPT_NO_INLINE Reader::Location::Location() :
m_nLine(0),
m_nLineOffset(0),
m_nDocOffset(0)
@@ -84,7 +84,7 @@ private:
};
-inline char Reader::InputStream::Get()
+TPT_NO_INLINE char Reader::InputStream::Get()
{
assert(m_iStr.eof() == false); // enforce reading of only valid stream data
char c = m_iStr.get();
@@ -122,12 +122,12 @@ private:
};
-inline Reader::TokenStream::TokenStream(const Tokens& tokens) :
+TPT_NO_INLINE Reader::TokenStream::TokenStream(const Tokens& tokens) :
m_Tokens(tokens),
m_itCurrent(tokens.begin())
{}
-inline const Reader::Token& Reader::TokenStream::Peek() {
+TPT_NO_INLINE const Reader::Token& Reader::TokenStream::Peek() {
if (EOS())
{
const Token& lastToken = *m_Tokens.rbegin();
@@ -137,13 +137,13 @@ inline const Reader::Token& Reader::TokenStream::Peek() {
return *(m_itCurrent);
}
-inline const Reader::Token& Reader::TokenStream::Get() {
+TPT_NO_INLINE const Reader::Token& Reader::TokenStream::Get() {
const Token& token = Peek();
++m_itCurrent;
return token;
}
-inline bool Reader::TokenStream::EOS() const {
+TPT_NO_INLINE bool Reader::TokenStream::EOS() const {
return m_itCurrent == m_Tokens.end();
}
@@ -151,13 +151,13 @@ inline bool Reader::TokenStream::EOS() const {
// Reader (finally)
-inline void Reader::Read(Object& object, std::istream& istr) { Read_i(object, istr); }
-inline void Reader::Read(Array& array, std::istream& istr) { Read_i(array, istr); }
-inline void Reader::Read(String& string, std::istream& istr) { Read_i(string, istr); }
-inline void Reader::Read(Number& number, std::istream& istr) { Read_i(number, istr); }
-inline void Reader::Read(Boolean& boolean, std::istream& istr) { Read_i(boolean, istr); }
-inline void Reader::Read(Null& null, std::istream& istr) { Read_i(null, istr); }
-inline void Reader::Read(UnknownElement& unknown, std::istream& istr) { Read_i(unknown, istr); }
+TPT_NO_INLINE void Reader::Read(Object& object, std::istream& istr) { Read_i(object, istr); }
+TPT_NO_INLINE void Reader::Read(Array& array, std::istream& istr) { Read_i(array, istr); }
+TPT_NO_INLINE void Reader::Read(String& string, std::istream& istr) { Read_i(string, istr); }
+TPT_NO_INLINE void Reader::Read(Number& number, std::istream& istr) { Read_i(number, istr); }
+TPT_NO_INLINE void Reader::Read(Boolean& boolean, std::istream& istr) { Read_i(boolean, istr); }
+TPT_NO_INLINE void Reader::Read(Null& null, std::istream& istr) { Read_i(null, istr); }
+TPT_NO_INLINE void Reader::Read(UnknownElement& unknown, std::istream& istr) { Read_i(unknown, istr); }
template <typename ElementTypeT>
@@ -181,7 +181,7 @@ void Reader::Read_i(ElementTypeT& element, std::istream& istr)
}
-inline void Reader::Scan(Tokens& tokens, InputStream& inputStream)
+TPT_NO_INLINE void Reader::Scan(Tokens& tokens, InputStream& inputStream)
{
while (EatWhiteSpace(inputStream), // ignore any leading white space...
inputStream.EOS() == false) // ...before checking for EOS
@@ -272,14 +272,14 @@ inline void Reader::Scan(Tokens& tokens, InputStream& inputStream)
}
-inline void Reader::EatWhiteSpace(InputStream& inputStream)
+TPT_NO_INLINE void Reader::EatWhiteSpace(InputStream& inputStream)
{
while (inputStream.EOS() == false &&
::isspace(inputStream.Peek()))
inputStream.Get();
}
-inline std::string Reader::MatchExpectedString(InputStream& inputStream, const std::string& sExpected)
+TPT_NO_INLINE std::string Reader::MatchExpectedString(InputStream& inputStream, const std::string& sExpected)
{
std::string::const_iterator it(sExpected.begin()),
itEnd(sExpected.end());
@@ -297,7 +297,7 @@ inline std::string Reader::MatchExpectedString(InputStream& inputStream, const s
}
-inline std::string Reader::MatchString(InputStream& inputStream)
+TPT_NO_INLINE std::string Reader::MatchString(InputStream& inputStream)
{
MatchExpectedString(inputStream, "\"");
@@ -341,7 +341,7 @@ inline std::string Reader::MatchString(InputStream& inputStream)
}
-inline std::string Reader::MatchNumber(InputStream& inputStream)
+TPT_NO_INLINE std::string Reader::MatchNumber(InputStream& inputStream)
{
const char sNumericChars[] = "0123456789.eE-+";
std::set<char> numericChars;
@@ -358,7 +358,7 @@ inline std::string Reader::MatchNumber(InputStream& inputStream)
}
-inline void Reader::Parse(UnknownElement& element, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(UnknownElement& element, Reader::TokenStream& tokenStream)
{
const Token& token = tokenStream.Peek();
switch (token.nType) {
@@ -414,7 +414,7 @@ inline void Reader::Parse(UnknownElement& element, Reader::TokenStream& tokenStr
}
-inline void Reader::Parse(Object& object, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(Object& object, Reader::TokenStream& tokenStream)
{
MatchExpectedToken(Token::TOKEN_OBJECT_BEGIN, tokenStream);
@@ -456,7 +456,7 @@ inline void Reader::Parse(Object& object, Reader::TokenStream& tokenStream)
}
-inline void Reader::Parse(Array& array, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(Array& array, Reader::TokenStream& tokenStream)
{
MatchExpectedToken(Token::TOKEN_ARRAY_BEGIN, tokenStream);
@@ -479,13 +479,13 @@ inline void Reader::Parse(Array& array, Reader::TokenStream& tokenStream)
}
-inline void Reader::Parse(String& string, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(String& string, Reader::TokenStream& tokenStream)
{
string = MatchExpectedToken(Token::TOKEN_STRING, tokenStream);
}
-inline void Reader::Parse(Number& number, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(Number& number, Reader::TokenStream& tokenStream)
{
const Token& currentToken = tokenStream.Peek(); // might need this later for throwing exception
const std::string& sValue = MatchExpectedToken(Token::TOKEN_NUMBER, tokenStream);
@@ -506,20 +506,20 @@ inline void Reader::Parse(Number& number, Reader::TokenStream& tokenStream)
}
-inline void Reader::Parse(Boolean& boolean, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(Boolean& boolean, Reader::TokenStream& tokenStream)
{
const std::string& sValue = MatchExpectedToken(Token::TOKEN_BOOLEAN, tokenStream);
boolean = (sValue == "true" ? true : false);
}
-inline void Reader::Parse(Null&, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE void Reader::Parse(Null&, Reader::TokenStream& tokenStream)
{
MatchExpectedToken(Token::TOKEN_NULL, tokenStream);
}
-inline const std::string& Reader::MatchExpectedToken(Token::Type nExpected, Reader::TokenStream& tokenStream)
+TPT_NO_INLINE const std::string& Reader::MatchExpectedToken(Token::Type nExpected, Reader::TokenStream& tokenStream)
{
const Token& token = tokenStream.Get();
if (token.nType != nExpected)
diff --git a/src/cajun/writer.cpp b/src/cajun/writer.cpp
index 446d076..a7cbfbe 100644
--- a/src/cajun/writer.cpp
+++ b/src/cajun/writer.cpp
@@ -43,16 +43,16 @@ namespace json
{
-inline void Writer::Write(const UnknownElement& elementRoot, std::ostream& ostr) { Write_i(elementRoot, ostr); }
-inline void Writer::Write(const Object& object, std::ostream& ostr) { Write_i(object, ostr); }
-inline void Writer::Write(const Array& array, std::ostream& ostr) { Write_i(array, ostr); }
-inline void Writer::Write(const Number& number, std::ostream& ostr) { Write_i(number, ostr); }
-inline void Writer::Write(const String& string, std::ostream& ostr) { Write_i(string, ostr); }
-inline void Writer::Write(const Boolean& boolean, std::ostream& ostr) { Write_i(boolean, ostr); }
-inline void Writer::Write(const Null& null, std::ostream& ostr) { Write_i(null, ostr); }
+TPT_NO_INLINE void Writer::Write(const UnknownElement& elementRoot, std::ostream& ostr) { Write_i(elementRoot, ostr); }
+TPT_NO_INLINE void Writer::Write(const Object& object, std::ostream& ostr) { Write_i(object, ostr); }
+TPT_NO_INLINE void Writer::Write(const Array& array, std::ostream& ostr) { Write_i(array, ostr); }
+TPT_NO_INLINE void Writer::Write(const Number& number, std::ostream& ostr) { Write_i(number, ostr); }
+TPT_NO_INLINE void Writer::Write(const String& string, std::ostream& ostr) { Write_i(string, ostr); }
+TPT_NO_INLINE void Writer::Write(const Boolean& boolean, std::ostream& ostr) { Write_i(boolean, ostr); }
+TPT_NO_INLINE void Writer::Write(const Null& null, std::ostream& ostr) { Write_i(null, ostr); }
-inline Writer::Writer(std::ostream& ostr) :
+TPT_NO_INLINE Writer::Writer(std::ostream& ostr) :
m_ostr(ostr),
m_nTabDepth(0)
{}
@@ -65,7 +65,7 @@ void Writer::Write_i(const ElementTypeT& element, std::ostream& ostr)
ostr.flush(); // all done
}
-inline void Writer::Write_i(const Array& array)
+TPT_NO_INLINE void Writer::Write_i(const Array& array)
{
if (array.Empty())
m_ostr << "[]";
@@ -91,7 +91,7 @@ inline void Writer::Write_i(const Array& array)
}
}
-inline void Writer::Write_i(const Object& object)
+TPT_NO_INLINE void Writer::Write_i(const Object& object)
{
if (object.Empty())
m_ostr << "{}";
@@ -120,17 +120,17 @@ inline void Writer::Write_i(const Object& object)
}
}
-inline void Writer::Write_i(const Number& numberElement)
+TPT_NO_INLINE void Writer::Write_i(const Number& numberElement)
{
m_ostr << std::setprecision(20) << numberElement.Value();
}
-inline void Writer::Write_i(const Boolean& booleanElement)
+TPT_NO_INLINE void Writer::Write_i(const Boolean& booleanElement)
{
m_ostr << (booleanElement.Value() ? "true" : "false");
}
-inline void Writer::Write_i(const String& stringElement)
+TPT_NO_INLINE void Writer::Write_i(const String& stringElement)
{
m_ostr << '"';
@@ -156,22 +156,22 @@ inline void Writer::Write_i(const String& stringElement)
m_ostr << '"';
}
-inline void Writer::Write_i(const Null& )
+TPT_NO_INLINE void Writer::Write_i(const Null& )
{
m_ostr << "null";
}
-inline void Writer::Write_i(const UnknownElement& unknown)
+TPT_NO_INLINE void Writer::Write_i(const UnknownElement& unknown)
{
unknown.Accept(*this);
}
-inline void Writer::Visit(const Array& array) { Write_i(array); }
-inline void Writer::Visit(const Object& object) { Write_i(object); }
-inline void Writer::Visit(const Number& number) { Write_i(number); }
-inline void Writer::Visit(const String& string) { Write_i(string); }
-inline void Writer::Visit(const Boolean& boolean) { Write_i(boolean); }
-inline void Writer::Visit(const Null& null) { Write_i(null); }
+TPT_NO_INLINE void Writer::Visit(const Array& array) { Write_i(array); }
+TPT_NO_INLINE void Writer::Visit(const Object& object) { Write_i(object); }
+TPT_NO_INLINE void Writer::Visit(const Number& number) { Write_i(number); }
+TPT_NO_INLINE void Writer::Visit(const String& string) { Write_i(string); }
+TPT_NO_INLINE void Writer::Visit(const Boolean& boolean) { Write_i(boolean); }
+TPT_NO_INLINE void Writer::Visit(const Null& null) { Write_i(null); }
diff --git a/src/cat/CommandInterface.cpp b/src/cat/CommandInterface.cpp
index 7c6dd83..240e7e4 100644
--- a/src/cat/CommandInterface.cpp
+++ b/src/cat/CommandInterface.cpp
@@ -8,7 +8,9 @@
#include <iostream>
#include <string>
#include <string.h>
+#if !defined(WIN) || defined(__GNUC__)
#include <strings.h>
+#endif
#include "CommandInterface.h"
#include "game/GameModel.h"
#include "game/GameController.h"
diff --git a/src/cat/LuaBit.cpp b/src/cat/LuaBit.cpp
index c55f45a..349c2e4 100644
--- a/src/cat/LuaBit.cpp
+++ b/src/cat/LuaBit.cpp
@@ -30,9 +30,9 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#ifdef _MSC_VER
diff --git a/src/cat/LuaButton.cpp b/src/cat/LuaButton.cpp
index 59890f2..a4fd1e7 100644
--- a/src/cat/LuaButton.cpp
+++ b/src/cat/LuaButton.cpp
@@ -1,8 +1,8 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include <iostream>
@@ -77,6 +77,7 @@ int LuaButton::action(lua_State * l)
{
actionFunction = 0;
}
+ return 0;
}
int LuaButton::text(lua_State * l)
diff --git a/src/cat/LuaButton.h b/src/cat/LuaButton.h
index 012779d..5d0e936 100644
--- a/src/cat/LuaButton.h
+++ b/src/cat/LuaButton.h
@@ -1,9 +1,9 @@
#pragma once
extern "C" {
- #include "lua.h"
- #include "lauxlib.h"
- #include "lualib.h"
+ #include "lua5.1/lua.h"
+ #include "lua5.1/lauxlib.h"
+ #include "lua5.1/lualib.h"
}
#include "LuaLuna.h"
diff --git a/src/cat/LuaComponent.cpp b/src/cat/LuaComponent.cpp
index 8c2d3a4..d943c1a 100644
--- a/src/cat/LuaComponent.cpp
+++ b/src/cat/LuaComponent.cpp
@@ -1,8 +1,8 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include <iostream>
diff --git a/src/cat/LuaComponent.h b/src/cat/LuaComponent.h
index 9e11b12..ff0ca2a 100644
--- a/src/cat/LuaComponent.h
+++ b/src/cat/LuaComponent.h
@@ -1,9 +1,9 @@
#pragma once
extern "C" {
- #include "lua.h"
- #include "lauxlib.h"
- #include "lualib.h"
+ #include "lua5.1/lua.h"
+ #include "lua5.1/lauxlib.h"
+ #include "lua5.1/lualib.h"
}
#include "LuaLuna.h"
diff --git a/src/cat/LuaLabel.cpp b/src/cat/LuaLabel.cpp
index e2ca56d..f37219d 100644
--- a/src/cat/LuaLabel.cpp
+++ b/src/cat/LuaLabel.cpp
@@ -1,8 +1,8 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include <iostream>
diff --git a/src/cat/LuaLabel.h b/src/cat/LuaLabel.h
index a80ea4f..74e31b8 100644
--- a/src/cat/LuaLabel.h
+++ b/src/cat/LuaLabel.h
@@ -1,9 +1,9 @@
#pragma once
extern "C" {
- #include "lua.h"
- #include "lauxlib.h"
- #include "lualib.h"
+ #include "lua5.1/lua.h"
+ #include "lua5.1/lauxlib.h"
+ #include "lua5.1/lualib.h"
}
#include "LuaLuna.h"
diff --git a/src/cat/LuaLuna.h b/src/cat/LuaLuna.h
index 1d5d937..b5bf7ac 100644
--- a/src/cat/LuaLuna.h
+++ b/src/cat/LuaLuna.h
@@ -2,8 +2,8 @@
//http://lua-users.org/wiki/SimplerCppBinding
extern "C" {
-#include "lua.h"
-#include "lauxlib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
}
template <typename T> class Luna
diff --git a/src/cat/LuaScriptInterface.h b/src/cat/LuaScriptInterface.h
index 5bee8e1..f7ebb04 100644
--- a/src/cat/LuaScriptInterface.h
+++ b/src/cat/LuaScriptInterface.h
@@ -10,9 +10,9 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include "CommandInterface.h"
diff --git a/src/cat/LuaTextbox.cpp b/src/cat/LuaTextbox.cpp
index a8abf9e..e3a20ba 100644
--- a/src/cat/LuaTextbox.cpp
+++ b/src/cat/LuaTextbox.cpp
@@ -1,8 +1,8 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include <iostream>
@@ -79,6 +79,7 @@ int LuaTextbox::onTextChanged(lua_State * l)
{
onTextChangedFunction = 0;
}
+ return 0;
}
void LuaTextbox::triggerOnTextChanged()
diff --git a/src/cat/LuaTextbox.h b/src/cat/LuaTextbox.h
index 437875f..2c6b0bd 100644
--- a/src/cat/LuaTextbox.h
+++ b/src/cat/LuaTextbox.h
@@ -1,9 +1,9 @@
#pragma once
extern "C" {
- #include "lua.h"
- #include "lauxlib.h"
- #include "lualib.h"
+ #include "lua5.1/lua.h"
+ #include "lua5.1/lauxlib.h"
+ #include "lua5.1/lualib.h"
}
#include "LuaLuna.h"
diff --git a/src/cat/LuaWindow.cpp b/src/cat/LuaWindow.cpp
index 06b29c8..c3f193b 100644
--- a/src/cat/LuaWindow.cpp
+++ b/src/cat/LuaWindow.cpp
@@ -1,8 +1,8 @@
extern "C"
{
-#include "lua.h"
-#include "lauxlib.h"
-#include "lualib.h"
+#include "lua5.1/lua.h"
+#include "lua5.1/lauxlib.h"
+#include "lua5.1/lualib.h"
}
#include <iostream>
@@ -353,6 +353,7 @@ int LuaWindow::onInitialized(lua_State * l)
{
onInitializedFunction = 0;
}
+ return 0;
}
int LuaWindow::onExit(lua_State * l)
@@ -367,6 +368,7 @@ int LuaWindow::onExit(lua_State * l)
{
onExitFunction = 0;
}
+ return 0;
}
int LuaWindow::onTick(lua_State * l)
@@ -381,6 +383,7 @@ int LuaWindow::onTick(lua_State * l)
{
onTickFunction = 0;
}
+ return 0;
}
int LuaWindow::onDraw(lua_State * l)
@@ -395,6 +398,7 @@ int LuaWindow::onDraw(lua_State * l)
{
onDrawFunction = 0;
}
+ return 0;
}
int LuaWindow::onFocus(lua_State * l)
@@ -409,6 +413,7 @@ int LuaWindow::onFocus(lua_State * l)
{
onFocusFunction = 0;
}
+ return 0;
}
int LuaWindow::onBlur(lua_State * l)
@@ -423,6 +428,7 @@ int LuaWindow::onBlur(lua_State * l)
{
onBlurFunction = 0;
}
+ return 0;
}
int LuaWindow::onTryExit(lua_State * l)
@@ -437,6 +443,7 @@ int LuaWindow::onTryExit(lua_State * l)
{
onTryExitFunction = 0;
}
+ return 0;
}
int LuaWindow::onTryOkay(lua_State * l)
@@ -451,6 +458,7 @@ int LuaWindow::onTryOkay(lua_State * l)
{
onTryOkayFunction = 0;
}
+ return 0;
}
int LuaWindow::onMouseMove(lua_State * l)
@@ -465,6 +473,7 @@ int LuaWindow::onMouseMove(lua_State * l)
{
onMouseMoveFunction = 0;
}
+ return 0;
}
int LuaWindow::onMouseDown(lua_State * l)
@@ -479,6 +488,7 @@ int LuaWindow::onMouseDown(lua_State * l)
{
onMouseDownFunction = 0;
}
+ return 0;
}
int LuaWindow::onMouseUp(lua_State * l)
@@ -493,6 +503,7 @@ int LuaWindow::onMouseUp(lua_State * l)
{
onMouseUpFunction = 0;
}
+ return 0;
}
int LuaWindow::onMouseWheel(lua_State * l)
@@ -507,6 +518,7 @@ int LuaWindow::onMouseWheel(lua_State * l)
{
onMouseWheelFunction = 0;
}
+ return 0;
}
int LuaWindow::onKeyPress(lua_State * l)
@@ -521,6 +533,7 @@ int LuaWindow::onKeyPress(lua_State * l)
{
onKeyPressFunction = 0;
}
+ return 0;
}
int LuaWindow::onKeyRelease(lua_State * l)
@@ -535,6 +548,7 @@ int LuaWindow::onKeyRelease(lua_State * l)
{
onKeyReleaseFunction = 0;
}
+ return 0;
}
diff --git a/src/cat/LuaWindow.h b/src/cat/LuaWindow.h
index be6af92..55db229 100644
--- a/src/cat/LuaWindow.h
+++ b/src/cat/LuaWindow.h
@@ -1,9 +1,9 @@
#pragma once
extern "C" {
- #include "lua.h"
- #include "lauxlib.h"
- #include "lualib.h"
+ #include "lua5.1/lua.h"
+ #include "lua5.1/lauxlib.h"
+ #include "lua5.1/lualib.h"
}
#include "LuaLuna.h"
diff --git a/src/game/GameView.cpp b/src/game/GameView.cpp
index 05ffcab..5b52424 100644
--- a/src/game/GameView.cpp
+++ b/src/game/GameView.cpp
@@ -2069,7 +2069,7 @@ void GameView::OnDraw()
ui::Point GameView::lineSnapCoords(ui::Point point1, ui::Point point2)
{
ui::Point newPoint(0, 0);
- float snapAngle = floor(atan2(point2.Y-point1.Y, point2.X-point1.X)/(M_PI*0.25)+0.5)*M_PI*0.25;
+ float snapAngle = floor(atan2((float)point2.Y-point1.Y, point2.X-point1.X)/(M_PI*0.25)+0.5)*M_PI*0.25;
float lineMag = sqrtf(pow((float)(point2.X-point1.X),2)+pow((float)(point2.Y-point1.Y),2));
newPoint.X = (int)(lineMag*cos(snapAngle)+point1.X+0.5f);
newPoint.Y = (int)(lineMag*sin(snapAngle)+point1.Y+0.5f);
@@ -2079,7 +2079,7 @@ ui::Point GameView::lineSnapCoords(ui::Point point1, ui::Point point2)
ui::Point GameView::rectSnapCoords(ui::Point point1, ui::Point point2)
{
ui::Point newPoint(0, 0);
- float snapAngle = floor((atan2(point2.Y-point1.Y, point2.X-point1.X)+M_PI*0.25)/(M_PI*0.5)+0.5)*M_PI*0.5 - M_PI*0.25;
+ float snapAngle = floor((atan2((float)point2.Y-point1.Y, point2.X-point1.X)+M_PI*0.25)/(M_PI*0.5)+0.5)*M_PI*0.5 - M_PI*0.25;
float lineMag = sqrtf(pow((float)(point2.X-point1.X),2)+pow((float)(point2.Y-point1.Y),2));
newPoint.X = (int)(lineMag*cos(snapAngle)+point1.X+0.5f);
newPoint.Y = (int)(lineMag*sin(snapAngle)+point1.Y+0.5f);
diff --git a/src/game/QuickOption.h b/src/game/QuickOption.h
index 8383029..4bf27ff 100644
--- a/src/game/QuickOption.h
+++ b/src/game/QuickOption.h
@@ -53,9 +53,9 @@ public:
Type GetType() { return type; }
- virtual bool GetToggle() {}
- virtual int GetMutli() {}
- virtual int GetMultiCount() {}
+ virtual bool GetToggle() { return true;}
+ virtual int GetMutli() { return 0;}
+ virtual int GetMultiCount() { return 0;}
std::string GetIcon() { return icon; }
void SetIcon(std::string icon) { this->icon = icon; }
diff --git a/src/graphics/Graphics.cpp b/src/graphics/Graphics.cpp
index 73a6e7b..fef4b45 100644
--- a/src/graphics/Graphics.cpp
+++ b/src/graphics/Graphics.cpp
@@ -96,7 +96,7 @@ TPT_INLINE void VideoBuffer::AddPixel(int x, int y, int r, int g, int b, int a)
Buffer[y*(Width)+x] = PIXRGB(r,g,b);
}
-TPT_INLINE int VideoBuffer::SetCharacter(int x, int y, int c, int r, int g, int b, int a)
+TPT_NO_INLINE int VideoBuffer::SetCharacter(int x, int y, int c, int r, int g, int b, int a)
{
int i, j, w, bn = 0, ba = 0;
char *rp = font_data + font_ptrs[c];
@@ -116,7 +116,7 @@ TPT_INLINE int VideoBuffer::SetCharacter(int x, int y, int c, int r, int g, int
return x + w;
}
-TPT_INLINE int VideoBuffer::BlendCharacter(int x, int y, int c, int r, int g, int b, int a)
+TPT_NO_INLINE int VideoBuffer::BlendCharacter(int x, int y, int c, int r, int g, int b, int a)
{
int i, j, w, bn = 0, ba = 0;
char *rp = font_data + font_ptrs[c];
@@ -136,7 +136,7 @@ TPT_INLINE int VideoBuffer::BlendCharacter(int x, int y, int c, int r, int g, in
return x + w;
}
-TPT_INLINE int VideoBuffer::AddCharacter(int x, int y, int c, int r, int g, int b, int a)
+TPT_NO_INLINE int VideoBuffer::AddCharacter(int x, int y, int c, int r, int g, int b, int a)
{
int i, j, w, bn = 0, ba = 0;
char *rp = font_data + font_ptrs[c];
diff --git a/src/graphics/OpenGLDrawMethods.inl b/src/graphics/OpenGLDrawMethods.inl
index 519515f..1ecd6b1 100644
--- a/src/graphics/OpenGLDrawMethods.inl
+++ b/src/graphics/OpenGLDrawMethods.inl
@@ -150,7 +150,7 @@ TPT_INLINE int PIXELMETHODS_CLASS::drawchar(int x, int y, int c, int r, int g, i
return x + w;
}
-TPT_INLINE int PIXELMETHODS_CLASS::addchar(int x, int y, int c, int r, int g, int b, int a)
+TPT_NO_INLINE int PIXELMETHODS_CLASS::addchar(int x, int y, int c, int r, int g, int b, int a)
{
int i, j, w, bn = 0, ba = 0;
char *rp = font_data + font_ptrs[c];
diff --git a/src/graphics/RasterDrawMethods.inl b/src/graphics/RasterDrawMethods.inl
index a68feb8..55a64c9 100644
--- a/src/graphics/RasterDrawMethods.inl
+++ b/src/graphics/RasterDrawMethods.inl
@@ -116,7 +116,7 @@ TPT_INLINE int PIXELMETHODS_CLASS::drawchar(int x, int y, int c, int r, int g, i
return x + w;
}
-TPT_INLINE int PIXELMETHODS_CLASS::addchar(int x, int y, int c, int r, int g, int b, int a)
+TPT_NO_INLINE int PIXELMETHODS_CLASS::addchar(int x, int y, int c, int r, int g, int b, int a)
{
int i, j, w, bn = 0, ba = 0;
char *rp = font_data + font_ptrs[c];
diff --git a/src/graphics/Renderer.cpp b/src/graphics/Renderer.cpp
index 4326149..70c82f4 100644
--- a/src/graphics/Renderer.cpp
+++ b/src/graphics/Renderer.cpp
@@ -1221,7 +1221,7 @@ void Renderer::render_parts()
{
gradv = 0.4f;
if (!(sim->parts[i].life<5))
- q = sqrt(sim->parts[i].life);
+ q = sqrt((float)sim->parts[i].life);
else
q = sim->parts[i].life;
colr = colg = colb = sin(gradv*q) * 100 + 128;
diff --git a/src/interface/Button.cpp b/src/interface/Button.cpp
index 9d7a6fc..fbf9b54 100644
--- a/src/interface/Button.cpp
+++ b/src/interface/Button.cpp
@@ -66,12 +66,12 @@ bool Button::GetTogglable()
return isTogglable;
}
-inline bool Button::GetToggleState()
+TPT_NO_INLINE bool Button::GetToggleState()
{
return toggle;
}
-inline void Button::SetToggleState(bool state)
+TPT_NO_INLINE void Button::SetToggleState(bool state)
{
toggle = state;
}
diff --git a/src/interface/Button.h b/src/interface/Button.h
index 2244a91..5bc7fc3 100644
--- a/src/interface/Button.h
+++ b/src/interface/Button.h
@@ -47,8 +47,8 @@ public:
virtual void DoAction(); //action of button what ever it may be
void SetTogglable(bool isTogglable);
bool GetTogglable();
- inline bool GetToggleState();
- inline void SetToggleState(bool state);
+ TPT_NO_INLINE bool GetToggleState();
+ TPT_NO_INLINE void SetToggleState(bool state);
void SetActionCallback(ButtonAction * action);
ButtonAction * GetActionCallback() { return actionCallback; }
void SetText(std::string buttonText);
diff --git a/src/interface/Keys.h b/src/interface/Keys.h
index 69b00fe..b9935ad 100644
--- a/src/interface/Keys.h
+++ b/src/interface/Keys.h
@@ -1,6 +1,6 @@
#if defined(USE_SDL)
-#include "SDL.h"
+#include "SDL/SDL.h"
#define KEY_UP SDLK_UP
#define KEY_DOWN SDLK_DOWN
#define KEY_RIGHT SDLK_RIGHT
diff --git a/src/interface/Slider.cpp b/src/interface/Slider.cpp
index 474343e..652ae59 100644
--- a/src/interface/Slider.cpp
+++ b/src/interface/Slider.cpp
@@ -79,13 +79,13 @@ int Slider::GetValue()
void Slider::SetColour(Colour col1, Colour col2)
{
+ pixel pix[2] = {PIXRGB(col1.Red, col1.Green, col1.Blue), PIXRGB(col2.Red, col2.Green, col2.Blue)};
+ float fl[2] = {0.0f, 1.0f};
if(bgGradient)
free(bgGradient);
this->col1 = col1;
this->col2 = col2;
- bgGradient = (unsigned char*)Graphics::GenerateGradient(
- (pixel[2]){PIXRGB(col1.Red, col1.Green, col1.Blue), PIXRGB(col2.Red, col2.Green, col2.Blue)},
- (float[2]){0.0f, 1.0f}, 2, Size.X-7);
+ bgGradient = (unsigned char*)Graphics::GenerateGradient(pix, fl, 2, Size.X-7);
}
void Slider::SetValue(int value)
diff --git a/src/preview/PreviewModel.cpp b/src/preview/PreviewModel.cpp
index 07eef2e..20f6bfd 100644
--- a/src/preview/PreviewModel.cpp
+++ b/src/preview/PreviewModel.cpp
@@ -159,7 +159,7 @@ int PreviewModel::GetCommentsPageNum()
int PreviewModel::GetCommentsPageCount()
{
- return max(1, (int)(ceil(commentsTotal/20)));
+ return max(1, (int)(ceil(commentsTotal/20.0f)));
}
bool PreviewModel::GetCommentsLoaded()
diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp
index 1c51b2a..e4aa9bd 100644
--- a/src/simulation/Simulation.cpp
+++ b/src/simulation/Simulation.cpp
@@ -1,6 +1,9 @@
//#include <cstdlib>
#include <cmath>
+#include <math.h>
+#if !defined(WIN) || defined(__GNUC__)
#include <strings.h>
+#endif
#include "Config.h"
#include "Simulation.h"
#include "Elements.h"
@@ -1093,6 +1096,7 @@ int Simulation::ToolBrush(int positionX, int positionY, int tool, Brush * cBrush
if(bitmap[(y*sizeX)+x] && (positionX+(x-radiusX) >= 0 && positionY+(y-radiusY) >= 0 && positionX+(x-radiusX) < XRES && positionY+(y-radiusY) < YRES))
Tool(positionX+(x-radiusX), positionY+(y-radiusY), tool, strength);
}
+ return 0;
}
void Simulation::ToolLine(int x1, int y1, int x2, int y2, int tool, Brush * cBrush, float strength)
@@ -1660,7 +1664,7 @@ void *Simulation::transform_save(void *odata, int *size, matrix2d transform, vec
return ndata;
}
-inline void Simulation::orbitalparts_get(int block1, int block2, int resblock1[], int resblock2[])
+TPT_NO_INLINE void Simulation::orbitalparts_get(int block1, int block2, int resblock1[], int resblock2[])
{
resblock1[0] = (block1&0x000000FF);
resblock1[1] = (block1&0x0000FF00)>>8;
@@ -1673,7 +1677,7 @@ inline void Simulation::orbitalparts_get(int block1, int block2, int resblock1[]
resblock2[3] = (block2&0xFF000000)>>24;
}
-inline void Simulation::orbitalparts_set(int *block1, int *block2, int resblock1[], int resblock2[])
+TPT_NO_INLINE void Simulation::orbitalparts_set(int *block1, int *block2, int resblock1[], int resblock2[])
{
int block1tmp = 0;
int block2tmp = 0;
@@ -3952,11 +3956,7 @@ killed:
if (!parts[i].vx&&!parts[i].vy)//if its not moving, skip to next particle, movement code it next
continue;
-#if defined(WIN) && !defined(__GNUC__)
- mv = max(fabsf(parts[i].vx), fabsf(parts[i].vy));
-#else
mv = fmaxf(fabsf(parts[i].vx), fabsf(parts[i].vy));
-#endif
if (mv < ISTP)
{
clear_x = x;
diff --git a/src/simulation/Simulation.h b/src/simulation/Simulation.h
index c2b9002..ebf590d 100644
--- a/src/simulation/Simulation.h
+++ b/src/simulation/Simulation.h
@@ -156,7 +156,7 @@ public:
inline int is_wire(int x, int y);
inline int is_wire_off(int x, int y);
inline void set_emap(int x, int y);
- inline int parts_avg(int ci, int ni, int t);
+ TPT_NO_INLINE int parts_avg(int ci, int ni, int t);
void create_arc(int sx, int sy, int dx, int dy, int midpoints, int variance, int type, int flags);
int nearest_part(int ci, int t, int max_d);
void update_particles_i(int start, int inc);
@@ -196,8 +196,8 @@ public:
int GetParticleType(std::string type);
void *transform_save(void *odata, int *size, matrix2d transform, vector2d translate);
- inline void orbitalparts_get(int block1, int block2, int resblock1[], int resblock2[]);
- inline void orbitalparts_set(int *block1, int *block2, int resblock1[], int resblock2[]);
+ TPT_NO_INLINE void orbitalparts_get(int block1, int block2, int resblock1[], int resblock2[]);
+ TPT_NO_INLINE void orbitalparts_set(int *block1, int *block2, int resblock1[], int resblock2[]);
inline int get_wavelength_bin(int *wm);
inline int get_normal(int pt, int x, int y, float dx, float dy, float *nx, float *ny);
inline int get_normal_interp(int pt, float x0, float y0, float dx, float dy, float *nx, float *ny);
diff --git a/src/simulation/elements/GEL.cpp b/src/simulation/elements/GEL.cpp
index 01fa829..5a139db 100644
--- a/src/simulation/elements/GEL.cpp
+++ b/src/simulation/elements/GEL.cpp
@@ -115,7 +115,7 @@ int Element_GEL::update(UPDATE_FUNC_ARGS)
dy = parts[i].y - parts[r>>8].y;
//Stickness
- if ((dx*dx + dy*dy)>1.5 && (gel || !sim->elements[r&0xFF].Falldown || (fabs(rx)<2 && fabs(ry)<2)))
+ if ((dx*dx + dy*dy)>1.5 && (gel || !sim->elements[r&0xFF].Falldown || (fabs((float)rx)<2 && fabs((float)ry)<2)))
{
float per, nd;
nd = dx*dx + dy*dy - 0.5;
diff --git a/src/simulation/elements/SPRK.cpp b/src/simulation/elements/SPRK.cpp
index b4db3ad..d1cbc17 100644
--- a/src/simulation/elements/SPRK.cpp
+++ b/src/simulation/elements/SPRK.cpp
@@ -121,7 +121,7 @@ int Element_SPRK::update(UPDATE_FUNC_ARGS)
parts[i].life=60;
parts[p].temp=parts[p].life*parts[i].tmp/2.5;
parts[p].tmp2=1;
- parts[p].tmp=atan2(-ry, rx)/M_PI*360;
+ parts[p].tmp=atan2(-ry, (float)rx)/M_PI*360;
parts[i].temp-=parts[i].tmp*2+parts[i].temp/5; // slight self-cooling
if (fabs(sim->pv[y/CELL][x/CELL])!=0.0f)
{
diff --git a/src/simulation/tools/Air.cpp b/src/simulation/tools/AirTool.cpp
index 9fd7f79..9fd7f79 100644
--- a/src/simulation/tools/Air.cpp
+++ b/src/simulation/tools/AirTool.cpp
diff --git a/src/simulation/tools/Grav.cpp b/src/simulation/tools/GravTool.cpp
index 630ba12..630ba12 100644
--- a/src/simulation/tools/Grav.cpp
+++ b/src/simulation/tools/GravTool.cpp
diff --git a/src/simulation/tools/SimTool.h b/src/simulation/tools/SimTool.h
index ed4cbcd..c32ba5b 100644
--- a/src/simulation/tools/SimTool.h
+++ b/src/simulation/tools/SimTool.h
@@ -17,7 +17,7 @@ public:
SimTool();
virtual ~SimTool() {}
- virtual int Perform(Simulation * sim, Particle * cpart, int x, int y, float strength) {}
+ virtual int Perform(Simulation * sim, Particle * cpart, int x, int y, float strength) { return 0; }
};
#endif \ No newline at end of file