Refactor com.bartlomiejpluta.base.api.gui package

This commit is contained in:
2021-03-11 11:43:40 +01:00
parent 54d428245f
commit d3d440e588
18 changed files with 104 additions and 222 deletions

View File

@@ -1,9 +1,8 @@
package com.bartlomiejpluta.base.engine.gui.manager;
import com.bartlomiejpluta.base.api.game.gui.Font;
import com.bartlomiejpluta.base.engine.error.AppException;
import com.bartlomiejpluta.base.engine.gui.asset.FontAsset;
import com.bartlomiejpluta.base.engine.gui.model.DefaultFont;
import com.bartlomiejpluta.base.engine.gui.model.Font;
import com.bartlomiejpluta.base.engine.project.config.ProjectConfiguration;
import com.bartlomiejpluta.base.engine.util.res.ResourcesManager;
import lombok.RequiredArgsConstructor;
@@ -47,6 +46,6 @@ public class DefaultFontManager implements FontManager {
fontBuffers.put(uid, buffer);
}
return new DefaultFont(uid, buffer.duplicate());
return new Font(uid, buffer.duplicate());
}
}

View File

@@ -1,8 +1,8 @@
package com.bartlomiejpluta.base.engine.gui.manager;
import com.bartlomiejpluta.base.api.game.gui.Font;
import com.bartlomiejpluta.base.engine.common.manager.AssetManager;
import com.bartlomiejpluta.base.engine.gui.asset.FontAsset;
import com.bartlomiejpluta.base.engine.gui.model.Font;
public interface FontManager extends AssetManager<FontAsset, Font> {
}

View File

@@ -1,6 +1,5 @@
package com.bartlomiejpluta.base.engine.gui.model;
import com.bartlomiejpluta.base.api.game.gui.Font;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
@@ -8,7 +7,7 @@ import java.nio.ByteBuffer;
@Getter
@RequiredArgsConstructor
public class DefaultFont implements Font {
public class Font {
private final String name;
private final ByteBuffer byteBuffer;
}

View File

@@ -1,78 +0,0 @@
package com.bartlomiejpluta.base.engine.gui.model;
import com.bartlomiejpluta.base.api.game.gui.Color;
import com.bartlomiejpluta.base.api.internal.gc.Disposable;
import org.lwjgl.BufferUtils;
import org.lwjgl.nanovg.NVGColor;
public class NanoVGColorAdapter extends NVGColor implements Color, Disposable {
public NanoVGColorAdapter(float red, float green, float blue, float alpha) {
super(BufferUtils.createByteBuffer(SIZEOF));
r(red);
g(green);
b(blue);
a(alpha);
}
@Override
public float getRed() {
return r();
}
@Override
public float getGreen() {
return g();
}
@Override
public float getBlue() {
return b();
}
@Override
public float getAlpha() {
return a();
}
@Override
public void setRed(float value) {
r(value);
}
@Override
public void setGreen(float value) {
g(value);
}
@Override
public void setBlue(float value) {
b(value);
}
@Override
public void setAlpha(float value) {
a(value);
}
@Override
public void setColor(float red, float green, float blue) {
r(red);
g(green);
b(blue);
}
@Override
public void setColor(float red, float green, float blue, float alpha) {
r(red);
g(green);
b(blue);
a(alpha);
}
@Override
public void dispose() {
free();
}
}

View File

@@ -1,9 +1,8 @@
package com.bartlomiejpluta.base.engine.gui.render;
import com.bartlomiejpluta.base.api.game.camera.Camera;
import com.bartlomiejpluta.base.api.game.gui.Bounds;
import com.bartlomiejpluta.base.api.game.gui.GUI;
import com.bartlomiejpluta.base.api.game.gui.Widget;
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
import com.bartlomiejpluta.base.api.game.gui.base.Widget;
import com.bartlomiejpluta.base.api.game.screen.Screen;
import com.bartlomiejpluta.base.api.internal.render.ShaderManager;
import com.bartlomiejpluta.base.engine.error.AppException;
@@ -68,10 +67,9 @@ public class NanoVGGUI implements GUI {
}
@Override
public void putText(float x, float y, CharSequence text, Bounds outTextBounds) {
public void putText(float x, float y, CharSequence text, float[] outTextBounds) {
nvgText(context, x, y, text);
nvgTextBounds(context, x, y, text, boundBuffer);
outTextBounds.update(boundBuffer[0], boundBuffer[1], boundBuffer[2], boundBuffer[3]);
nvgTextBounds(context, x, y, text, outTextBounds);
}
@Override
@@ -80,10 +78,9 @@ public class NanoVGGUI implements GUI {
}
@Override
public void putTextBox(float x, float y, float lineWidth, CharSequence text, Bounds outTextBoxBounds) {
public void putTextBox(float x, float y, float lineWidth, CharSequence text, float[] outTextBounds) {
nvgTextBox(context, x, y, lineWidth, text);
nvgTextBoxBounds(context, x, y, lineWidth, text, boundBuffer);
outTextBoxBounds.update(boundBuffer[0], boundBuffer[1], boundBuffer[2], boundBuffer[3]);
nvgTextBoxBounds(context, x, y, lineWidth, text, outTextBounds);
}
@Override

View File

@@ -3,7 +3,7 @@ package com.bartlomiejpluta.base.engine.project.model;
import com.bartlomiejpluta.base.api.game.camera.Camera;
import com.bartlomiejpluta.base.api.game.context.Context;
import com.bartlomiejpluta.base.api.game.entity.Entity;
import com.bartlomiejpluta.base.api.game.gui.GUI;
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
import com.bartlomiejpluta.base.api.game.image.Image;
import com.bartlomiejpluta.base.api.game.map.handler.MapHandler;
import com.bartlomiejpluta.base.api.game.screen.Screen;