[apps/code] VarBox contains current/buitin/imported vars and functions

This commit is contained in:
Léa Saviot
2020-03-18 10:54:08 +01:00
committed by Émilie Feral
parent 1e2492c5f4
commit 72aedaadd0
2 changed files with 164 additions and 34 deletions

View File

@@ -18,26 +18,34 @@ public:
/* ListViewDataSource */
int numberOfRows() const override;
int reusableCellCount(int type) override;
int reusableCellCount(int type) override {
assert(type == 0);
return k_maxNumberOfDisplayedRows;
}
void willDisplayCellForIndex(HighlightCell * cell, int index) override;
int typeAtLocation(int i, int j) override;
int typeAtLocation(int i, int j) override { return 0; }
/* VariableBoxController */
void loadFunctionsAndVariables();
private:
constexpr static int k_maxScriptObjectNameSize = 100;
constexpr static int k_maxNumberOfDisplayedRows = 6; //240/40
constexpr static int k_maxNumberOfDisplayedRows = 6; // 240/40
constexpr static int k_maxScriptNodesCount = 32;
constexpr static int k_builtinNodesCount = 61;
HighlightCell * leafCellAtIndex(int index) override;
HighlightCell * nodeCellAtIndex(int index) override { return nullptr; }
bool selectLeaf(int rowIndex) override;
void insertTextInCaller(const char * text);
void addFunctionAtIndex(const char * functionName, int scriptIndex);
void addVariableAtIndex(const char * variableName, int scriptIndex);
ScriptNode m_scriptNodes[k_maxScriptNodesCount];
int m_scriptNodesCount;
ScriptStore * m_scriptStore;
ScriptNode * scriptNodeAtIndex(int index);
ScriptNode m_currentScriptNodes[k_maxScriptNodesCount];
ScriptNode m_builtinNodes[k_builtinNodesCount];
ScriptNode m_importedNodes[k_maxScriptNodesCount];
ScriptNodeCell m_leafCells[k_maxNumberOfDisplayedRows];
ScriptStore * m_scriptStore;
int m_currentScriptNodesCount;
int m_importedNodesCount;
};
}