Skip to content

Commit

Permalink
(0.9.43) Исправлен баг с записью в сгф (issue #1). Реализовано открыт…
Browse files Browse the repository at this point in the history
…ие gib и ngf файлов.
  • Loading branch information
IlyaKirillov committed Mar 7, 2015
1 parent 9fb7679 commit d3f9bc5
Show file tree
Hide file tree
Showing 8 changed files with 626 additions and 17 deletions.
8 changes: 4 additions & 4 deletions WebBuilds/BuildLog/out.map

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions WebBuilds/goboardmin.js

Large diffs are not rendered by default.

9 changes: 5 additions & 4 deletions WebSDK/Drawing/Board.js
Expand Up @@ -224,10 +224,11 @@ function CDrawingBoard(oDrawing)
if (e.dataTransfer.files.length > 0 && FileReader)
{
var oFile = e.dataTransfer.files[0];
var sExt = oFile.name.split('.').pop().toLowerCase();
var oReader = new FileReader();
oReader.onload = function(event)
{
oThis.m_oGameTree.Load_Sgf(event.target.result);
oThis.m_oGameTree.Load_Sgf(event.target.result, null, null, sExt);
};

oReader.readAsText(oFile);
Expand Down Expand Up @@ -2845,7 +2846,7 @@ CDrawingBoard.prototype.private_HandleKeyDown = function(Event)

oInput.type = "file";
oInput.multiple = false;
oInput.accept = ".sgf";
oInput.accept = ".sgf,.gib,.ngf";
oInput.style.display = "none";

oInput.onchange = function(oEvent)
Expand All @@ -2855,11 +2856,11 @@ CDrawingBoard.prototype.private_HandleKeyDown = function(Event)
if (aFiles.length > 0)
{
var oFile = aFiles[0];

var sExt = oFile.name.split('.').pop().toLowerCase();
var oReader = new FileReader();
oReader.onload = function(oEvent2)
{
oThis.m_oGameTree.Load_Sgf(oEvent2.target.result);
oThis.m_oGameTree.Load_Sgf(oEvent2.target.result, null, null, sExt);
oThis.Focus();
};

Expand Down
15 changes: 12 additions & 3 deletions WebSDK/GameTree.js
Expand Up @@ -310,16 +310,25 @@ CGameTree.prototype.Focus = function()
if (this.m_oDrawingBoard)
this.m_oDrawingBoard.Focus();
};
CGameTree.prototype.Load_Sgf = function(sFile, oViewPort, sMoveReference)
CGameTree.prototype.Load_Sgf = function(sFile, oViewPort, sMoveReference, sExt)
{
if (!(this.m_nEditingFlags & EDITINGFLAGS_LOADFILE))
return;

g_oIdCounter.Reset();

var oReader = new CSgfReader(this);
var nEditingFlags = this.m_nEditingFlags;
this.Reset_EditingFlags();

// Сначала определим тип файла
var oReader = null;
if ("gib" === sExt)
oReader = new CGibReader(this);
else if ("ngf" === sExt)
oReader = new CNgfReader(this);
else
oReader = new CSgfReader(this);

oReader.Load(sFile);

if (this.m_bTutorModeAuto)
Expand Down Expand Up @@ -1443,7 +1452,7 @@ CGameTree.prototype.Get_WhiteTeam = function()
CGameTree.prototype.Set_BoardSize = function(W, H)
{
// TODO: Пока мы работаем только с квадратными досками размера >= 2 (доска размером 1х1 бессмысленна)
var W = Math.max(W, H, 2);
var W = Math.min(50, Math.max(W, H, 2));
var H = W;

var OldSize = this.m_oBoard.Get_Size();
Expand Down
7 changes: 7 additions & 0 deletions WebSDK/Memory.js
Expand Up @@ -113,6 +113,13 @@ function CStreamReader(data, size)
this.m_nSize = size;
this.m_nPos = 0;
}
CStreamReader.prototype.Is_EOF = function()
{
if (this.m_nPos < this.m_nSize)
return false;

return true;
};
CStreamReader.prototype.Get_Byte = function()
{
if (this.m_nPos >= this.m_nSize)
Expand Down

0 comments on commit d3f9bc5

Please sign in to comment.