mirror of
https://github.com/griffi-gh/kubi.git
synced 2024-11-25 08:18:43 -06:00
restructure stuff
This commit is contained in:
parent
4e47901117
commit
0f4264292c
|
@ -48,8 +48,9 @@ impl BufferPair {
|
|||
}
|
||||
|
||||
pub fn ensure_buffer_size(&mut self, need_vtx: usize, need_idx: usize) {
|
||||
let current_vtx_size = self.vertex_buffer.get_size();
|
||||
let current_idx_size = self.index_buffer.get_size();
|
||||
let current_vtx_size = self.vertex_buffer.get_size() / std::mem::size_of::<Vertex>();
|
||||
let current_idx_size = self.index_buffer.get_size() / std::mem::size_of::<u32>();
|
||||
//log::debug!("current vtx size: {}, current idx size: {}", current_vtx_size, current_idx_size);
|
||||
if current_vtx_size >= need_vtx && current_idx_size >= need_idx {
|
||||
return
|
||||
}
|
||||
|
@ -84,9 +85,10 @@ impl BufferPair {
|
|||
return
|
||||
}
|
||||
|
||||
self.ensure_buffer_size(vtx.len(), idx.len());
|
||||
self.vertex_buffer.slice_mut(0..vtx.len()).unwrap().write(vtx);
|
||||
self.index_buffer.slice_mut(0..idx.len()).unwrap().write(idx);
|
||||
self.ensure_buffer_size(self.vertex_count, self.index_count);
|
||||
|
||||
self.vertex_buffer.slice_mut(0..self.vertex_count).unwrap().write(vtx);
|
||||
self.index_buffer.slice_mut(0..self.index_count).unwrap().write(idx);
|
||||
}
|
||||
|
||||
pub fn is_empty(&self) -> bool {
|
||||
|
|
|
@ -6,10 +6,15 @@ use crate::{
|
|||
state::StateRepo
|
||||
};
|
||||
|
||||
#[cfg(feature = "builtin_elements")] pub mod rect;
|
||||
#[cfg(feature = "builtin_elements")] pub mod container;
|
||||
#[cfg(feature = "builtin_elements")] pub mod spacer;
|
||||
#[cfg(feature = "builtin_elements")] pub mod progress_bar;
|
||||
#[cfg(feature = "builtin")] mod builtin {
|
||||
pub mod rect;
|
||||
pub mod container;
|
||||
pub mod spacer;
|
||||
pub mod progress_bar;
|
||||
}
|
||||
|
||||
#[cfg(feature = "builtin")]
|
||||
pub use builtin::*;
|
||||
|
||||
pub trait UiElement {
|
||||
fn name(&self) -> &'static str { "UiElement" }
|
||||
|
|
|
@ -1,6 +1,13 @@
|
|||
use glam::{Vec2, vec2, Vec4};
|
||||
use crate::{UiDirection, LayoutInfo, draw::UiDrawCommand, measure::Response, state::StateRepo, UiSize};
|
||||
use super::UiElement;
|
||||
use crate::{
|
||||
UiDirection,
|
||||
UiSize,
|
||||
LayoutInfo,
|
||||
draw::UiDrawCommand,
|
||||
measure::Response,
|
||||
state::StateRepo,
|
||||
element::UiElement
|
||||
};
|
||||
|
||||
pub enum Alignment {
|
||||
Begin,
|
|
@ -3,9 +3,9 @@ use crate::{
|
|||
UiSize, LayoutInfo,
|
||||
draw::UiDrawCommand,
|
||||
measure::Response,
|
||||
state::StateRepo
|
||||
state::StateRepo,
|
||||
element::UiElement
|
||||
};
|
||||
use super::UiElement;
|
||||
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
pub struct ProgressBar {
|
|
@ -1,6 +1,12 @@
|
|||
use glam::{vec2, Vec4};
|
||||
use crate::{state::StateRepo, LayoutInfo, measure::Response, draw::UiDrawCommand, UiSize};
|
||||
use super::UiElement;
|
||||
use crate::{
|
||||
LayoutInfo,
|
||||
UiSize,
|
||||
element::UiElement,
|
||||
state::StateRepo,
|
||||
measure::Response,
|
||||
draw::UiDrawCommand
|
||||
};
|
||||
|
||||
pub struct Rect {
|
||||
pub size: (UiSize, UiSize),
|
|
@ -1,6 +1,12 @@
|
|||
use glam::vec2;
|
||||
use crate::{state::StateRepo, LayoutInfo, measure::Response, draw::UiDrawCommand, UiDirection};
|
||||
use super::UiElement;
|
||||
use crate::{
|
||||
LayoutInfo,
|
||||
UiDirection,
|
||||
element::UiElement,
|
||||
state::StateRepo,
|
||||
measure::Response,
|
||||
draw::UiDrawCommand
|
||||
};
|
||||
|
||||
pub struct Spacer(f32);
|
||||
|
Loading…
Reference in a new issue