From 5e59a7c0e04f09fc8289c551e2a9af949477a77b Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 11 Apr 2015 19:50:14 +1000
Subject: Add haiku icon and change default preferences


diff --git a/lib/arduino_icon.hvif b/lib/arduino_icon.hvif
new file mode 100644
index 0000000000000000000000000000000000000000..dff2432f4d5d10e208316d11f321c68f96067d50
GIT binary patch
literal 8224
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
Vc36Y&v+}*&?ElQl*x|*>{{Vs4$pQcX

literal 0
HcmV?d00001

diff --git a/lib/preferences.txt b/lib/preferences.txt
index f9bac32..dc5c6d5 100644
--- a/lib/preferences.txt
+++ b/lib/preferences.txt
@@ -63,7 +63,7 @@ last.sketch.count=0
 # by default, check the processing server for any updates
 # (please avoid disabling, this also helps us know basic numbers 
 # on how many people are using Processing)
-update.check = true
+update.check = false
 
 # on windows, automatically associate .pde files with processing.exe
 platform.auto_file_type_associations = true
@@ -93,7 +93,7 @@ editor.font=Monospaced,plain,12
 editor.font.macosx = Monaco,plain,10
 
 # anti-aliased text, turned off by default
-editor.antialias=false
+editor.antialias=true
 
 # color to be used for background when 'external editor' enabled
 editor.external=false
@@ -105,7 +105,7 @@ editor.caret.blink=true
 editor.invalid=false
 
 # show line numbers in editor
-editor.linenumbers = false
+editor.linenumbers = true
 
 # enable ctrl-ins, shift-ins, shift-delete for cut/copy/paste
 # on windows and linux, but disable on the mac
@@ -231,10 +231,10 @@ preproc.output_parse_tree = false
 preproc.imports.list = java.applet.*,java.awt.Dimension,java.awt.Frame,java.awt.event.MouseEvent,java.awt.event.KeyEvent,java.awt.event.FocusEvent,java.awt.Image,java.io.*,java.net.*,java.text.*,java.util.*,java.util.zip.*,java.util.regex.*
 
 # set the browser to be used on linux
-browser.linux = mozilla
+browser.linux = open
 
 # set to the program to be used for launching apps on linux
-#launcher.linux = xdg-open
+launcher.linux = open
 
 # FULL SCREEN (PRESENT MODE)
 run.present.bgcolor = #666666
@@ -262,4 +262,4 @@ serial.debug_rate=9600
 # I18 Preferences
 
 # default chosen language (none for none)
-editor.languages.current = 
\ No newline at end of file
+editor.languages.current = 
-- 
2.2.2


From 6257c16738ed12e9ce6f94c63840f6df2036bd37 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 11 Apr 2015 21:17:06 +1000
Subject: Set command for launcher and browser


diff --git a/lib/preferences.txt b/lib/preferences.txt
index dc5c6d5..43232ee 100644
--- a/lib/preferences.txt
+++ b/lib/preferences.txt
@@ -230,11 +230,11 @@ preproc.output_parse_tree = false
 # Changed after 1.0.9 to a new name, and also includes the specific entries
 preproc.imports.list = java.applet.*,java.awt.Dimension,java.awt.Frame,java.awt.event.MouseEvent,java.awt.event.KeyEvent,java.awt.event.FocusEvent,java.awt.Image,java.io.*,java.net.*,java.text.*,java.util.*,java.util.zip.*,java.util.regex.*
 
-# set the browser to be used on linux
-browser.linux = open
+# set the browser
+browser = /bin/open
 
-# set to the program to be used for launching apps on linux
-launcher.linux = open
+# set to the program to be used for launching apps
+launcher = /bin/open
 
 # FULL SCREEN (PRESENT MODE)
 run.present.bgcolor = #666666
@@ -253,7 +253,7 @@ programmer = arduino:avrispmkii
 upload.using = bootloader
 upload.verify = true
 
-serial.port=COM1
+serial.port=/dev/ports/usb0
 serial.databits=8
 serial.stopbits=1
 serial.parity=N
-- 
2.2.2


From 6f6db32b7c2febb15cde8b3b120145edef1eeab7 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 11 Apr 2015 22:01:23 +1000
Subject: Add Haiku launcher


diff --git a/haiku/MainApp.cpp b/haiku/MainApp.cpp
new file mode 100644
index 0000000..91b77c8
--- /dev/null
+++ b/haiku/MainApp.cpp
@@ -0,0 +1,197 @@
+#include <Application.h>
+#include <String.h>
+#include <Resources.h>
+#include <Roster.h>
+#include <Mime.h>
+#include <Path.h>
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <errno.h>
+#include <string.h>
+
+#include "MainApp.h"
+#define APPSIGNATURE "application/x-vnd.ArduinoIDE"
+#define TARGET "Arduino"
+
+SimpleLauncherApp::SimpleLauncherApp(int argc, char **argv) : BApplication(APPSIGNATURE)
+{	
+	InstallMimeType(APPSIGNATURE, "text/x-processing", "Proecssing source code", "pde");
+}
+
+SimpleLauncherApp::~SimpleLauncherApp()
+{
+
+}
+
+
+BPath
+SimpleLauncherApp::MyPath(const char *dir)
+{
+	app_info inf;
+   	be_app->GetAppInfo(&inf);
+   	BPath bpath = BPath(&(inf.ref));
+   	BPath par; 
+   	bpath.GetParent(&par);
+   	par.Append(dir);
+	return(par);
+}
+
+void
+SimpleLauncherApp::RefsReceived(BMessage *pmsg)
+{
+	if (pmsg->HasMessenger("TrackerViewToken")) {
+		pmsg->FindMessenger("TrackerViewToken", &fTrackerMessenger);
+	}
+
+	uint32 type;
+	int32 count;
+	status_t ret = pmsg->GetInfo("refs", &type, &count);
+	if (ret != B_OK || type != B_REF_TYPE)
+		return;
+
+	entry_ref ref;
+	for (int32 i = 0; i < count; i++) {
+   		if (pmsg->FindRef("refs", i, &ref) == B_OK)
+   		 {
+   		    BPath file=BPath(&ref);
+   		    char temp[1024];
+   		    sprintf(temp,"%s//%s \"%s\" &",MyPath("").Path(), TARGET, file.Path());
+   		    system(temp);
+   		    Quit();
+   		 }
+   	}
+}
+
+
+void
+SimpleLauncherApp::ArgvReceived(int32 argc, char **argv)
+{
+	BMessage *pmsg = NULL;
+	for (int32 i = 1; i < argc; i++) {
+		entry_ref ref;
+		status_t err = get_ref_for_path(argv[i], &ref);
+		if (err == B_OK) {
+			if (!pmsg) {
+				pmsg = new BMessage;
+				pmsg->what = B_REFS_RECEIVED;
+			}
+			pmsg->AddRef("refs", &ref);
+		}
+	}
+	if (pmsg) {
+		RefsReceived(pmsg);
+		delete pmsg;
+	}
+}
+
+void
+SimpleLauncherApp::ReadyToRun()
+{
+    char temp[1024];
+    sprintf(temp,"%s//%s &",MyPath("").Path(), TARGET);
+    system(temp);
+    Quit();
+}
+
+void
+SimpleLauncherApp::InstallMimeType(const char *app, const char *mimetxt, const char *text, const char *ext)
+{
+	// install mime type of documents
+	BMimeType mime(mimetxt);
+	status_t ret = mime.InitCheck();
+	if (ret != B_OK) {
+		fprintf(stderr, "Could not init native document mime type (%s): %s.\n",
+			mimetxt, strerror(ret));
+		return;
+	}
+
+	ret = mime.Install();
+	if (ret != B_OK && ret != B_FILE_EXISTS) {
+		fprintf(stderr, "Could not install native document mime type (%s): %s.\n",
+			mimetxt, strerror(ret));
+		return;
+	}
+	// set preferred app
+	ret = mime.SetPreferredApp(app);
+	if (ret != B_OK) {
+		fprintf(stderr, "Could not set native document preferred app: %s\n",
+			strerror(ret));
+	}
+
+	// set descriptions
+	ret = mime.SetShortDescription(text);
+	if (ret != B_OK) {
+		fprintf(stderr, "Could not set short description of mime type: %s\n",
+			strerror(ret));
+	}
+	ret = mime.SetLongDescription(text);
+	if (ret != B_OK) {
+		fprintf(stderr, "Could not set long description of mime type: %s\n",
+			strerror(ret));
+	}
+
+	// set extensions
+	BMessage message;
+	
+	char extn[128];
+	char *extptr = extn, *ptr;
+	
+	for( ptr = (char*)ext; *ptr!=0; ptr++){
+		*extptr=*ptr;
+		if(*(ptr+1)==' ' || *(ptr+1)==0) {
+			*(extptr+1)=0;
+			message.AddString("extensions", extn);
+			extptr = extn;
+			if(*(ptr+1)==' ')
+				ptr++;
+			continue;
+		}
+		extptr++;
+	}	
+	ret = mime.SetFileExtensions(&message);
+	if (ret != B_OK) {
+		fprintf(stderr, "Could not set extensions of mime type: %s\n",
+			strerror(ret));
+	}
+
+/*	// set sniffer rule
+	char snifferRule[32];
+	ret = mime.SetSnifferRule("0.50 (\"MZ\")");
+	if (ret != B_OK) {
+		BString parseError;
+		BMimeType::CheckSnifferRule(snifferRule, &parseError);
+		fprintf(stderr, "Could not set sniffer rule of mime type: %s\n",
+			parseError.String());
+	}*/
+
+	// set mime icon
+	BResources* resources = be_app->AppResources();
+		// does not need to be freed (belongs to BApplication base)
+	if (resources != NULL) {
+		size_t size;
+		BString iconame("BEOS:");
+		iconame.Append(mimetxt);
+		const void* iconData = resources->LoadResource('VICN', iconame.String(), &size);
+		if (iconData != NULL && size > 0) {
+			if (mime.SetIcon(reinterpret_cast<const uint8*>(iconData), size)
+				!= B_OK) {
+				fprintf(stderr, "Could not set vector icon of mime type.\n");
+			}
+		} else {
+			fprintf(stderr, "Could not find icon in app resources "
+				"(data: %p, size: %ld).\n", iconData, size);
+		}
+	} else
+		fprintf(stderr, "Could not find app resources.\n");
+}
+
+
+int main(int argc, char **argv)
+{
+	SimpleLauncherApp application(argc,argv);
+	application.Run();
+	return 0;
+}
+
+
diff --git a/haiku/MainApp.h b/haiku/MainApp.h
new file mode 100644
index 0000000..1199bec
--- /dev/null
+++ b/haiku/MainApp.h
@@ -0,0 +1,24 @@
+#ifndef DOSBOXLAUNCHER_H
+#define DOSBOXLAUNCHER_H
+
+#include <Application.h>
+#include <String.h>
+#include <Resources.h>
+#include <Roster.h>
+#include <Mime.h>
+#include <Path.h>
+
+class SimpleLauncherApp : public BApplication {
+	public:
+		SimpleLauncherApp(int argc, char **argv);
+		~SimpleLauncherApp();
+		void	RefsReceived(BMessage *pmsg);
+		void	ArgvReceived(int32 argc, char **argv);
+		virtual void ReadyToRun();
+		void InstallMimeType(const char *app, const char *mimetxt, const char *text, const char *ext);
+		BPath	  MyPath(const char *dir);
+		BMessenger  fTrackerMessenger;
+};
+
+
+#endif
diff --git a/haiku/Makefile b/haiku/Makefile
new file mode 100644
index 0000000..a1aa13e
--- /dev/null
+++ b/haiku/Makefile
@@ -0,0 +1,16 @@
+CFLAGS=
+LIBS=-lroot -lbe -ltranslation
+CC=g++
+OBJS = MainApp.o
+
+all: Arduino
+
+Arduino: $(OBJS)
+	$(CC) -o "Arduino IDE" $^ $(LIBS)
+	xres -o "Arduino IDE" pics.rsrc
+
+.cpp.o:
+	$(CC) $(CFLAGS) -c $^
+
+clean:
+	rm -f "Arduino IDE" $(OBJS)
diff --git a/haiku/pics.rsrc b/haiku/pics.rsrc
new file mode 100644
index 0000000000000000000000000000000000000000..c8c5e364d1c7be9920682046553d598ba639e434
GIT binary patch
literal 14297
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

literal 0
HcmV?d00001

-- 
2.2.2


From 72b78888548786e271e8d9dca526ffe9f3703eb2 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 11 Apr 2015 22:59:15 +1000
Subject: Fix haiku launcher


diff --git a/haiku/MainApp.cpp b/haiku/MainApp.cpp
index 91b77c8..4518f05 100644
--- a/haiku/MainApp.cpp
+++ b/haiku/MainApp.cpp
@@ -12,11 +12,11 @@
 
 #include "MainApp.h"
 #define APPSIGNATURE "application/x-vnd.ArduinoIDE"
-#define TARGET "Arduino"
+#define TARGET "arduino.sh"
 
 SimpleLauncherApp::SimpleLauncherApp(int argc, char **argv) : BApplication(APPSIGNATURE)
 {	
-	InstallMimeType(APPSIGNATURE, "text/x-processing", "Proecssing source code", "pde");
+//	InstallMimeType(APPSIGNATURE, "text/x-processing", "Proecssing source code", "pde");
 }
 
 SimpleLauncherApp::~SimpleLauncherApp()
diff --git a/haiku/pics.rsrc b/haiku/pics.rsrc
index c8c5e364d1c7be9920682046553d598ba639e434..3eba999c1f54146a23ea059fd33bf77b19223a5e 100644
GIT binary patch
delta 458
zcmcbazde7#0ajNt28O(eNA;Z!u`+;xral9MEQHD624u59*<L{Q3ML5WlOY4cEoKP&
zj41;{C78L{k1>gD;slA!8`yU%Zk}s!h;?$drmx0~G#QB*zA_RSYi3nRwR-`T3P~&g
zid6vlm2F-OEKNrk71qwGn*2ahqkcoZELalcf{Ch&89|aDOGVbtstQnn@Ih*B05zw|
zEe2}@X?_9Zy8-z<b*W%6MxdTwvIu?#P|arB6tEn~JP>~ckPk8!q(4JiTH>2ciXzy6
z2B6@92eJ|dK3f=LfNZEw876scVVtO_A_C%905x5-NnsSo5|sd{-~3Q3m~peQ&VOb`
z*~!KR>bf8ohyyVQ{0D-P%7WBl24NttB(<VMze2Y-zqBYhRW~_5C6!@vyjce;$XJ%i
zYt2<SgMB@HLHb!I|1eWxWScB)uENMZ*}+_mkz;bYxjZB1<aTpej!D_KdVq=;06-Rn
Ang9R*

delta 525
zcmdm<e=~o=0oG_U28ODMNA;a#86coVlYxN+%I*NNS1>_1209E3x0oSpE&~RJeyEz6
zK=vV45NER=V-nlM2@;z(u<ur!tgG*<k-_63G2^Yf#Eiwcg;LkAGB7mQN)!OaRsi{x
z*RC?KD48$@EXggLyhvZ8-r%<fSkf41)WoAgj37yn-7d>=3j>Zo_#ibLKn<z;guog>
znk9hP4ao0_^8$;3^!(b3;LiZcZ<h6h%YpbSfPApIKsLu5H;HdDo{C@tHUKSKk>e*}
z@J5-j2grtaIJa=pD`m!siYg)?{tBR`i!z>!0<Rn-K<YPdG;n2{Xu!Yuo8doZM&rp}
zP1UtQj?e{S5cm%SC6xuK#SB6~UP)?2iGGD{K~a8kYH@L9UixH1Gl|XFnuk~?dzy6!
zf)s;5u&<{tBTzZZWM*?EM%Kw{<|>SAlfBK=+}VMmTntXG{=rtB&i;O2<3T#y-Gjk8
qIDqm35P3IGAJ_Ph$N<-1xGFzq&oGcDI455-Q{k|E|34kbVE_Pt!J_2=

-- 
2.2.2


From 133604bed863e244a398cad93508a353eee42c0d Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 29 May 2015 19:44:17 +1000
Subject: Add mime for ino file to resource


diff --git a/haiku/pics.rsrc b/haiku/pics.rsrc
index 3eba999c1f54146a23ea059fd33bf77b19223a5e..e95f65a322ab81f33967581118f31c6b66bfb0f7 100644
GIT binary patch
delta 1763
zcmZvcdr(wW9LLYS`(Rm6z<6wqV2};3F&9B_z>pA-^??e5k8mbRaUdH6gUKeQTa3|`
znk-BdlR85rLs~@c!Y+I7-g95e^2o7pQYy-s#tO;?`$G{^w)4AaPBYw@GxvOd=XZYh
zp6};3$9d@J>w(232%*qzc}82HQ#YA~&__1!!6nB@5T4!X2sP_qW-p>%)Z3ba?Y#lM
z_~aye?VInHnQqpVnYzi`alf5HHAN;XiMfalBf7l)9#x)fuWkKgRRVKlVwbvTCY8?q
z{DZnklX>1sd+q+8<~8J)$cEUfM3Xm+1Ttu%PYr&l#>Oj(P5oCM>2An-r$=3bdZ0^*
zhPtqSGVVE3TT@T0THrVd_L3n+-k@NvAsfiSYM+j{LD^zggoAdGO|?xul!@D6f?WGo
z=6uR#4zb@(nbT0_)>~`h6W~Khu$4T1^3=UnQ}GH4A*!z8NZqO<D_=OgzrL#aP-{xM
ziK*UKbs&I7dd=FgnRVap!;KfRj()b;y1lSw82P8qdi?hUzyD6Nj-n|&oo!j6Rz>U1
zowMYiO=i^aw^Q#YIa;cPMv-)8X_s3{T)(I@`-7$e>CcTFR}ketqoLYPY3|R>Me6lE
zL5?82HC66$?iCMvrUzT66L&K?p1xEAos!F^aT)`imM2_icNpl50%6=!Z=f>^r5aD4
zfqrJw7Ehyr&e@_E@UJM47wmt)5XbDF`nLA>DgQXm54&9AXff7~u3^6)Z4iGO`q-x(
zc~$vl5D#aH$)jOP(8z$NeYC|{=Ib2zaU|0*<IQkHGklR<5HC1hW|LfJ`V0G)y3Fq9
z9cppT>M+4aXak$UzT}ByO9qPAdS@2@ozu$Q?7t-Z;?9??t{mCO9o&pvVldw>jSKdT
zN~+u??UKFQ<u8UZgbltaDSoJpukd!U1HM|WT&{KxVHY1POmUC%nBk5g9lL~^g27$n
z`uX4SyL>YL1fMEKy8EPMoK^a8z$9LBP4eZgNPKyq#M1(~?j&vw-n7=8j$_$Hc)8n*
zE8T1Gj5`hYvSIixH-cx_zwjLnV+ZHPaoqLw>~$QCbn<0x3WoP>?mRO%D1`V{@_Ppx
z#1rx!X_@l1WR*h1i^6;Or1+HZxtPdXAX(b(Q8&`TawCZh^9Ax7{7IR?F+`8cYw?p(
zH;ygDF;XY4B-7hc7w#>@cS**qoPlr4$Aw(^q%a{@38&>T;hM5jm{7t6=9*F_*p%IP
zRw)(ol@5H%YsNFmB%bw>V~}~AcQvk5rf{^f2gi{0IHi;yS9b9hWe?x1gz$MN5b!)i
z1kUo9I|lB8<KQ;94kUmA&;URL4lu$D;YOGNI-p5N0#JYqfB`gA2JrBHgbM5jB!C03
z04l%)xKxA$A7Fflbsp72*TGEH;6#SEfXm=KxDM_E5ugE79=Huo6UWtKlOwA~2RpzD
zVhPv;7J*e@A6N$#s<skKRcpa-usU40rg9(*2n*)43JBm3NWhIS19U(WP!gglWC9pK
z&$k=28nhg=74#HoE$BArH0U_!Lg+x~#KlGpO>2;mqNq?R>L}70X^H}gRLN+Kh(gGy
z)#|kdqbb5qMZHCG9!L~HMKyxd1P18-Th!4(!E`ngJbxW!cg$LrFD<-UZPd|=7B3tR
z30)|z*Mu#}eQd!MDtzH^!~$WvCH(-kx@d!Cr<VMYk&JMZo4>6j^Zz%ldL6@+{OrUX
H8~pmeEZROM

delta 355
zcmZpv-k#4H6wJWDAmH!9IgxWatE(9UL*B%r*-VuTo9!5j*d|Wk*}Q@MxVkn_&5Se|
zi5b2!5*ce|RY|pb0Y!u)768R6fc(lfF9w#TBa8}bXH`vJq_0uGp<Wg&DGO9KQFSpR
zNRkQ27Fj>5DnJFo2dTLM)SN1}7_1Sb`2~>g2ITkDrGmv6fqH()BKR3VHJfcyz;Yn-
zK>QUzKFC~<{tRhpiElP3ieLj8fPx1e$VwRaY+;N6vYCMzKwy&B7RHH+Dk30$1yIvP
zn-oTYEKv!N`pp{+Tp1@C@NfQR_>Y-UcJfzKbzP7n#6cQ?;6D(QR2HNbGYA8DC8-r9
g`W3px`K3k4sk+JeDX9#b-&m(Ha!ks;)dNxv02=yrv;Y7A

-- 
2.2.2

