Skip to content

Commit

Permalink
Remove gambas3-gb-web dependency. Add JSON and JSONCollection to I-Ne…
Browse files Browse the repository at this point in the history
…x code
  • Loading branch information
eloaders committed Nov 6, 2013
1 parent bd2301c commit f7c3c6f
Show file tree
Hide file tree
Showing 11 changed files with 336 additions and 16 deletions.
1 change: 0 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,6 @@ self:
install -m 0775 usr/lib/gambas3/gb.image.so inex/usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.qt4.so inex/usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.settings.gambas inex/usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.web.gambas inex/usr/lib/gambas3/
install -m 0775 install-self inex/install-self
install -m 0775 install-self-inex inex/install-self-inex
chmod +x inex/install-self
Expand Down
12 changes: 6 additions & 6 deletions build-selfexecutable
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ GB3_RUNTIME=$(cat ./index.html | egrep gambas3-runtime_ | egrep saucy | egrep $A

GB3_GB_QT4=$(cat ./index.html | egrep gambas3-gb-qt4_ | egrep saucy | egrep $ARCHITECTURE.deb | sed -n '1p' | awk {'print $6'} | cut -d ">" -f 2 | cut -d '<' -f 1)

GB3_GB_WEB=$(cat ./index.html | egrep gambas3-gb-web_ | egrep saucy | egrep all.deb | sed -n '1p' | awk {'print $6'} | cut -d ">" -f 2 | cut -d '<' -f 1)
#GB3_GB_WEB=$(cat ./index.html | egrep gambas3-gb-web_ | egrep saucy | egrep all.deb | sed -n '1p' | awk {'print $6'} | cut -d ">" -f 2 | cut -d '<' -f 1)

wget -c "$URL_DOWN$GB3_GB_IMAGE"
wget -c "$URL_DOWN$GB3_GB_GTK"
Expand All @@ -34,7 +34,7 @@ wget -c "$URL_DOWN$GB3_GB_FORM_STOCK"
wget -c "$URL_DOWN$GB3_RUNTIME"
wget -c "$URL_DOWN$GB3_GB_GUI"
wget -c "$URL_DOWN$GB3_GB_QT4"
wget -c "$URL_DOWN$GB3_GB_WEB"
#wget -c "$URL_DOWN$GB3_GB_WEB"

echo $GB3_GB_IMAGE
echo $GB3_GB_GTK
Expand All @@ -46,7 +46,7 @@ echo $GB3_GB_FORM_STOCK
echo $GB3_RUNTIME
echo $GB3_GB_GUI
echo $GB3_GB_QT4
echo $GB3_GB_WEB
#echo $GB3_GB_WEB

ar x $GB3_GB_IMAGE
tar -zxvf data.tar.gz -C ./
Expand All @@ -72,9 +72,9 @@ rm data.tar.gz control.tar.gz debian-binary
ar x $GB3_RUNTIME
tar -zxvf data.tar.gz -C ./
rm data.tar.gz control.tar.gz debian-binary
ar x $GB3_GB_WEB
tar -zxvf data.tar.gz -C ./
rm data.tar.gz control.tar.gz debian-binary
#ar x $GB3_GB_WEB
#tar -zxvf data.tar.gz -C ./
#rm data.tar.gz control.tar.gz debian-binary
ar x $GB3_GB_QT4
tar -zxvf data.tar.gz -C ./
rm data.tar.gz control.tar.gz debian-binary
Expand Down
4 changes: 0 additions & 4 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@ Build-Depends: debhelper (>= 7),
gambas3-gb-settings (>= 3.0.90),
gambas3-gb-settings (<< 3.99.0),
gambas3-gb-form-stock (>= 3.4.0),
gambas3-gb-web (>= 3.0.90),
gambas3-gb-web (<< 3.99.0),
dpkg (>= 1.15), grep (>= 2.5),
mount (>= 2.17),
procps,
Expand Down Expand Up @@ -56,8 +54,6 @@ Depends: gambas3-runtime (>= 3.4.0),
gambas3-gb-settings (>= 3.0.90),
gambas3-gb-settings (<< 3.99.0),
gambas3-gb-form-stock (>= 3.4.0),
gambas3-gb-web (>= 3.0.90),
gambas3-gb-web (<< 3.99.0),
dpkg (>= 1.15), grep (>= 2.5),
mount (>= 2.17),
procps,
Expand Down
1 change: 0 additions & 1 deletion install-self-inex
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,3 @@ bindir="/usr/bin/"
install -m 0775 usr/lib/gambas3/gb.image.so /usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.qt4.so /usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.settings.gambas /usr/lib/gambas3/
install -m 0775 usr/lib/gambas3/gb.web.gambas /usr/lib/gambas3/
16 changes: 16 additions & 0 deletions src/i-nex/.lang/JSON.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# /home/michal/Baazar/git-i-nex/src/i-nex/.src/JSON.module
# Generated by Gambas compiler

# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n""POT-Creation-Date: 2002-11-01 04:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

16 changes: 16 additions & 0 deletions src/i-nex/.lang/JSONCollection.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# /home/michal/Baazar/git-i-nex/src/i-nex/.src/JSONCollection.class
# Generated by Gambas compiler

# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n""POT-Creation-Date: 2002-11-01 04:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

1 change: 0 additions & 1 deletion src/i-nex/.project
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ Component=gb.form
Component=gb.desktop
Component=gb.form.dialog
Component=gb.settings
Component=gb.web
Authors="eloaders"
TabSize=1
Translate=1
Expand Down
6 changes: 4 additions & 2 deletions src/i-nex/.settings
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ SearchComment=False
SearchString=True

[OpenFile]
Active=1
File[1]=".src/Finfosys.form"
File[2]=".src/Global.class:88.35"
File[3]=".src/About.form"
Expand Down Expand Up @@ -58,7 +57,10 @@ File[33]=".src/FCPU.module:8.1"
File[34]=".src/FUdisks.form"
File[35]=".src/FUdisks.class:49.51"
File[36]=".src/FCpudb.module:29.33"
Count=36
File[37]=".src/JSON.module:18.2"
Active=38
File[38]=".src/JSONCollection.class:16.48"
Count=38

[Watches]
Count=0
Expand Down
265 changes: 265 additions & 0 deletions src/i-nex/.src/JSON.module
Original file line number Diff line number Diff line change
@@ -0,0 +1,265 @@
' Gambas module file

Export

Public {Null} As Variant

Private $sStr As String
Private $iPos As Integer
Private $bUseNull As Boolean

Private Sub GetChar() As String

Dim sCar As String

If $iPos > Len($sStr) Then Return
sCar = Mid$($sStr, $iPos, 1)
Inc $iPos
Return sCar

End


Private Sub ReadChar() As String

Dim sCar As String

Do
sCar = GetChar()
If Not sCar Then Return
If sCar > " " Then Return sCar
Loop

End


Private Sub ReadToken() As String

Dim sToken As String
Dim sCar As String

sCar = ReadChar()
If Not IsLetter(sCar) Then Return sCar

sToken = sCar
Do
sCar = GetChar()
If Not sCar Then Break
If Not IsLetter(sCar) Then
Dec $iPos
Break
Endif
sToken &= sCar
Loop

Return sToken

End

Private Sub ReadString() As String

Dim sCar As String
Dim sString As String
Dim iPos As Integer

Do
sCar = GetChar()
If Not sCar Then Error.Raise("Non terminated string")
If sCar = Chr$(34) Then Return sString
If sCar = "\\" Then
sCar = GetChar()
If Not sCar Then Error.Raise("Non terminated string")
iPos = InStr("bfrtn", sCar)
If iPos Then
sCar = Mid$("\b\f\r\t\n", iPos, 1)
Else If sCar = "u" Then
Try sCar = String.Chr$(Val("&H" & Mid$($sStr, $iPos, 4)))
If Not Error Then $iPos += 4
Else
' Keep character
Endif
Endif
sString &= sCar
Loop

End

Private Sub ReadObject() As Collection

Dim sCar As String
Dim cObject As Collection
Dim sKey As String

If $bUseNull Then
cObject = New JSONCollection
Else
cObject = New Collection
Endif

Do
sCar = ReadChar()
If sCar = "}" Then Return cObject
If sCar <> Chr$(34) Then Error.Raise("String expected")
sKey = ReadString()
sCar = ReadChar()
If sCar <> ":" Then Error.Raise("Colon expected")
cObject[sKey] = ReadValue()
sCar = ReadChar()
If sCar = "}" Then Return cObject
If sCar <> "," Then Error.Raise("Comma expected")
Loop

End

Private Sub ReadArray() As Variant[]

Dim sCar As String
Dim aArray As New Variant[]

Do
sCar = ReadChar()
If sCar = "]" Then Return aArray
Dec $iPos
aArray.Add(ReadValue())
sCar = ReadChar()
If sCar = "]" Then Return aArray
If sCar <> "," Then Error.Raise("Comma expected")
Loop

End

Private Sub ReadNumber(sNumber As String) As Variant

Dim sCar As String
Dim vNumber As Variant

Do
sCar = GetChar()
If Not sCar Then Break
If InStr("-+0123456789eE.", sCar) = 0 Then
Dec $iPos
Break
Endif
sNumber &= sCar
Loop

Try vNumber = CFloat(sNumber)
If IsNull(vNumber) Then Error.Raise("Incorrect number")
Return vNumber

End

Private Sub ReadValue() As Variant

Dim sCar As String

sCar = ReadToken()

If sCar = "{" Then
Return ReadObject()
Else If sCar = "[" Then
Return ReadArray()
Else If sCar = Chr$(34) Then
Return ReadString()
Else If sCar = "-" Or If IsDigit(sCar) Then
Return ReadNumber(sCar)
Else If sCar = "null" Then
Return Null
Else If sCar = "true" Then
Return True
Else If sCar = "false" Then
Return False
Else If Not sCar Then
Return
Else
Error.Raise("Incorrect token: " & Quote(sCar))
Endif

End

Private Sub WriteValue(vVal As Variant)

Dim sStr As String
Dim iPos As Integer
Dim aArray As Array
Dim cCol As Collection

Select Case TypeOf(vVal)

Case gb.Null
$sStr &= "null"

Case gb.Boolean
If vVal Then
$sStr &= "true"
Else
$sStr &= "false"
Endif

Case gb.Byte, gb.Short, gb.Integer, gb.Long, gb.Float
$sStr &= CStr(vVal)

Case gb.Date
$sStr &= Chr$(34) & CStr(vVal) & Chr$(34)

Case gb.String
sStr = Quote(vVal)
Do
iPos = InStr(sStr, "\\", iPos + 1)
If iPos = 0 Then Break
If Mid$(sStr, iPos + 1, 1) = "x" Then
Mid$(sStr, iPos, 4) = "\\u00" & Mid$(sStr, iPos + 2, 2)
Else
Inc iPos
Endif
Loop
$sStr &= sStr

Case Else
If vVal Is Array Then
aArray = vVal
$sStr &= "["
For iPos = 0 To vVal.Max
If iPos Then $sStr &= ", "
WriteValue(vVal[iPos])
Next
$sStr &= "]"
Else If vVal Is Collection Then
cCol = vVal
$sStr &= "{"
For Each vVal In cCol
If iPos Then $sStr &= ", "
WriteValue(cCol.Key)
$sStr &= ": "
WriteValue(vVal)
Inc iPos
Next
$sStr &= "}"
Endif

End Select

End


Public Sub Decode(JSONString As String, Optional bUseNull As Boolean) As Variant

Dim vVal As Variant
$sStr = JSONString
$iPos = 1
$bUseNull = bUseNull
If bUseNull And If IsNull({Null}) Then {Null} = VarPtr({Null})
vVal = ReadValue()
$bUseNull = False
$sStr = ""
Return vVal

End

Public Sub Encode(Value As Variant) As String

$sStr = ""
WriteValue(Value)
Return $sStr

End

0 comments on commit f7c3c6f

Please sign in to comment.