diff --git a/assets/database.png b/assets/database.png new file mode 100644 index 0000000..3d09261 Binary files /dev/null and b/assets/database.png differ diff --git a/assets/database_add.png b/assets/database_add.png new file mode 100644 index 0000000..802bd6c Binary files /dev/null and b/assets/database_add.png differ diff --git a/assets/database_delete.png b/assets/database_delete.png new file mode 100644 index 0000000..cce652e Binary files /dev/null and b/assets/database_delete.png differ diff --git a/assets/database_save.png b/assets/database_save.png new file mode 100644 index 0000000..44c06dd Binary files /dev/null and b/assets/database_save.png differ diff --git a/assets/table.png b/assets/table.png new file mode 100644 index 0000000..abcd936 Binary files /dev/null and b/assets/table.png differ diff --git a/assets/table_add.png b/assets/table_add.png new file mode 100644 index 0000000..2a3e5c4 Binary files /dev/null and b/assets/table_add.png differ diff --git a/assets/table_delete.png b/assets/table_delete.png new file mode 100644 index 0000000..b85916d Binary files /dev/null and b/assets/table_delete.png differ diff --git a/assets/table_save.png b/assets/table_save.png new file mode 100644 index 0000000..25b74d1 Binary files /dev/null and b/assets/table_save.png differ diff --git a/images.go b/images.go new file mode 100644 index 0000000..3544abe --- /dev/null +++ b/images.go @@ -0,0 +1,50 @@ +package main + +import ( + "embed" + + "github.com/ying32/govcl/vcl" +) + +//go:embed assets/* +var assetsFs embed.FS + +const ( + imgDatabase = 0 + imgDatabaseAdd = 1 + imgDatabaseDelete = 2 + imgDatabaseSave = 3 + imgTable = 4 + imgTableAdd = 5 + imgTableDelete = 6 + imgTableSave = 7 +) + +func loadImages(owner vcl.IComponent) *vcl.TImageList { + + mustLoad := func(n string) *vcl.TBitmap { + imgData, err := assetsFs.ReadFile(n) + if err != nil { + panic(err) + } + + png := vcl.NewPngImage() + png.LoadFromBytes(imgData) + + ret := vcl.NewBitmap() + ret.Assign(png) + return ret + } + + ilist := vcl.NewImageList(owner) + ilist.Add(mustLoad("assets/database.png"), nil) + ilist.Add(mustLoad("assets/database_add.png"), nil) + ilist.Add(mustLoad("assets/database_delete.png"), nil) + ilist.Add(mustLoad("assets/database_save.png"), nil) + ilist.Add(mustLoad("assets/table.png"), nil) + ilist.Add(mustLoad("assets/table_add.png"), nil) + ilist.Add(mustLoad("assets/table_delete.png"), nil) + ilist.Add(mustLoad("assets/table_save.png"), nil) + return ilist + +} diff --git a/main.go b/main.go index 60bf217..2a56a98 100644 --- a/main.go +++ b/main.go @@ -14,6 +14,8 @@ import ( type TMainForm struct { *vcl.TForm + + ImageList *vcl.TImageList Menu *vcl.TMainMenu Buckets *vcl.TTreeView Tabs *vcl.TPageControl @@ -35,6 +37,8 @@ func (f *TMainForm) OnFormCreate(sender vcl.IObject) { const MY_SPACING = 6 const MY_WIDTH = 180 + f.ImageList = loadImages(f) + f.SetCaption("yvbolt") mnuFile := vcl.NewMenuItem(f)