Skip to content

Commit

Permalink
Linux fixes for script system.
Browse files Browse the repository at this point in the history
  • Loading branch information
aardappel committed Mar 4, 2018
1 parent 71fdf05 commit 173434f
Show file tree
Hide file tree
Showing 10 changed files with 40 additions and 14 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -10,6 +10,7 @@ osx/TreeSheets/TreeSheets.xcodeproj/project.xcworkspace/xcuserdata/
*.ilk
*.pdb
*.bak
**/*.o

TreeSheets/\.vs/treesheets/v15/

Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Expand Up @@ -26,7 +26,7 @@ cmake_minimum_required(VERSION 3.1)

project(treesheets)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD 14)

find_package(wxWidgets REQUIRED aui adv core xml net)
include(${wxWidgets_USE_FILE})
Expand Down
14 changes: 9 additions & 5 deletions lobster/src/builtins.cpp
Expand Up @@ -547,10 +547,12 @@ void AddBuiltins() {
for (auto p = s.sval()->str();;) {
auto loc = strpbrk(p, set.sval()->str());
if (loc) {
out += string_view(p, loc - p);
out += prefix.sval()->strv();
out.append(p, loc);
auto presv = prefix.sval()->strv();
out.append(presv.data(), presv.size());
out += *loc++;
out += postfix.sval()->strv();
auto postsv = postfix.sval()->strv();
out.append(postsv.data(), postsv.size());
p = loc;
} else {
out += p;
Expand All @@ -568,9 +570,11 @@ void AddBuiltins() {

STARTDECL(concatstring) (Value &v, Value &sep) {
string s;
auto sepsv = sep.sval()->strv();
for (intp i = 0; i < v.vval()->len; i++) {
if (i) s += sep.sval()->strv();
s += v.vval()->At(i).sval()->strv();
if (i) s.append(sepsv.data(), sepsv.size());
auto esv = v.vval()->At(i).sval()->strv();
s.append(esv.data(), esv.size());
}
v.DECRT();
sep.DECRT();
Expand Down
2 changes: 1 addition & 1 deletion lobster/src/lobster/geom.h
Expand Up @@ -101,7 +101,7 @@ template<typename T, int N> struct vec : basevec<T, N> {

vec<T,3> xyz() const { assert(N == 4); return vec<T,3>(c); }
vec<T,2> xy() const { assert(N == 3); return vec<T,2>(c); }
pair<T, T> pair() const { assert(N == 2); return make_pair(x, y); }
pair<T, T> to_pair() const { assert(N == 2); return make_pair(x, y); }

vec operator+(const vec &v) const { DOVECR(c[i] + v[i]); }
vec operator-(const vec &v) const { DOVECR(c[i] - v[i]); }
Expand Down
7 changes: 7 additions & 0 deletions lobster/src/lobster/stdafx.h
Expand Up @@ -56,6 +56,13 @@
#include <iostream>
#include <iomanip>

#if __has_include("string_view")
#include <string_view>
#else
#include <experimental/string_view>
namespace std { using namespace std::experimental; }
#endif

using namespace std;

typedef unsigned char uchar;
Expand Down
13 changes: 11 additions & 2 deletions src/Makefile
Expand Up @@ -6,7 +6,7 @@ WX_CXXFLAGS= `$(WX_CONFIG) --cxxflags`
WX_LIBS= `$(WX_CONFIG) --libs aui adv core xml net`
PACKAGE_VERSION?= __DATE__
CXX?= c++
CXXFLAGS+= -DPACKAGE_VERSION=$(PACKAGE_VERSION) -std=c++11 $(WX_CXXFLAGS)
CXXFLAGS+= -DPACKAGE_VERSION=$(PACKAGE_VERSION) -std=c++1y $(WX_CXXFLAGS) -I ../lobster/include -I ../lobster/src
LDFLAGS+= $(WX_LIBS)

ARCH= $(firstword $(shell uname -m))
Expand All @@ -18,7 +18,16 @@ DIST_CMD?= tar
DIST_ARGS?= -caf

APPNAME= treesheets
SRCS= main.cpp
SRCS= main.cpp \
lobster_impl.cpp \
../lobster/src/builtins.cpp \
../lobster/src/compiler.cpp \
../lobster/src/file.cpp \
../lobster/src/lobsterreader.cpp \
../lobster/src/platform.cpp \
../lobster/src/vm.cpp \
../lobster/src/vmdata.cpp \
../lobster/src/vmlog.cpp
OBJS= $(SRCS:.cpp=.o)

release: CXXFLAGS+= -O3
Expand Down
2 changes: 1 addition & 1 deletion src/TreeSheets.creator.user
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.4.1, 2015-09-01T12:48:22. -->
<!-- Written by QtCreator 3.4.1, 2018-03-04T09:59:55. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
Expand Down
4 changes: 2 additions & 2 deletions src/lobster_impl.cpp
Expand Up @@ -110,14 +110,14 @@ void AddTreeSheets() {
"completely empty, or the entire grid.");

STARTDECL(ts_set_background_color) (Value &col) {
si->SetBackgroundColor(*(uint *)quantizec(ValueDecToF<3>(col)).data());
si->SetBackgroundColor(*(uint *)quantizec(ValueDecToFLT<3>(col)).data());
return Value();
}
ENDDECL1(ts_set_background_color, "col", "F}:4", "",
"sets the background color of the current cell");

STARTDECL(ts_set_text_color) (Value &col) {
si->SetTextColor(*(uint *)quantizec(ValueDecToF<3>(col)).data());
si->SetTextColor(*(uint *)quantizec(ValueDecToFLT<3>(col)).data());
return Value();
}
ENDDECL1(ts_set_text_color, "col", "F}:4", "",
Expand Down
7 changes: 6 additions & 1 deletion src/stdafx.h
Expand Up @@ -70,7 +70,12 @@ WX_DECLARE_STRING_HASH_MAP(bool, wxHashMapBool);

#include <vector>
#include <string>
#include <string_view>
#if __has_include("string_view")
#include <string_view>
#else
#include <experimental/string_view>
namespace std { using namespace std::experimental; }
#endif

#include <utility>

Expand Down
2 changes: 1 addition & 1 deletion src/treesheets_impl.h
Expand Up @@ -13,7 +13,7 @@ struct TreeSheetsScriptImpl : public ScriptInterface {

bool dump_builtins = false;
#ifdef _DEBUG
dump_builtins = true;
//dump_builtins = true;
#endif

auto err = RunLobster(filename, nullptr, dump_builtins);
Expand Down

0 comments on commit 173434f

Please sign in to comment.