update widgets

This commit is contained in:
IlyaShurupov 2024-05-06 16:33:35 +03:00 committed by Ilya Shurupov
parent 1767b65c7e
commit 35cb553ecb
24 changed files with 284 additions and 370 deletions

View file

@ -153,10 +153,10 @@ void obj::ObjectsGUI::cd(obj::Object* child, const std::string& name) {
void obj::ObjectsGUI::cdup() {
if (mViewStack.length() > 1) {
obj::objects_api::destroy(mViewStack.last()->data.obj);
obj::objects_api::destroy(mViewStack.lastNode()->data.obj);
mViewStack.popBack();
mActive = mViewStack.last()->data.obj;
mActive = mViewStack.lastNode()->data.obj;
}
}
@ -890,15 +890,15 @@ void obj::ObjectsGUI::explorer() {
ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoBackground | ImGuiWindowFlags_HorizontalScrollbar
);
tp::List<ViewStackNode*> rev_path;
for (auto childo = mViewStack.last(); childo; childo = childo->prev) {
for (auto childo = mViewStack.lastNode(); childo; childo = childo->prev) {
rev_path.pushBack(&childo->data);
}
tp::alni idx = 0;
for (auto childo = rev_path.last(); childo; childo = childo->prev) {
for (auto childo = rev_path.lastNode(); childo; childo = childo->prev) {
ImGui::PushID((int) idx);
bool go_back = false;
if (childo == rev_path.last()) {
if (childo == rev_path.lastNode()) {
go_back = ImGui::Button(childo->data->id.c_str());
ImGui::SameLine();
} else {
@ -952,7 +952,7 @@ void obj::ObjectsGUI::explorer() {
}
if (go_back) {
while (&mViewStack.last()->data != childo->data) {
while (&mViewStack.lastNode()->data != childo->data) {
cdup();
}
mActive = childo->data->obj;

View file

@ -543,9 +543,9 @@ void FunctionDefinition::generateByteCode(ByteCode& out) {
List<Instruction>::Node* FunctionDefinition::inst(Instruction inst) {
mInstructions.pushBack(inst);
auto out = &mInstructions.last()->data;
auto out = &mInstructions.lastNode()->data;
out->mInstIdx = (alni) mInstructions.length() - 1;
return mInstructions.last();
return mInstructions.lastNode();
}
void obj::initialize() {}

View file

@ -52,7 +52,7 @@ void ScopeStack::addTemp(obj::Object* tmp) {
}
void ScopeStack::popTemp() {
objects_api::destroy(mBuff[mIdx - 1].mTemps.last()->data);
objects_api::destroy(mBuff[mIdx - 1].mTemps.last());
mBuff[mIdx - 1].mTemps.popBack();
}

View file

@ -93,7 +93,7 @@ void ListObject::delNode(tp::List<Object*>::Node* node) {
}
void ListObject::popBack() {
auto obj = items.last();
auto obj = items.lastNode();
if (obj) obj::objects_api::destroy(obj->data);
items.popBack();
}