diff --git a/include/MwOO/Widget/ListBox.h b/include/MwOO/Widget/ListBox.h index 08ebe48..36d03ca 100644 --- a/include/MwOO/Widget/ListBox.h +++ b/include/MwOO/Widget/ListBox.h @@ -12,6 +12,10 @@ class ListBox : public MwOO::Base { void InsertMultiple(int index, int count, MwLLPixmap* pixmap, ...); void VaInsert(int index, MwLLPixmap pixmap, va_list va); void VaInsertMultiple(int index, int count, MwLLPixmap* pixmap, va_list va); + void Delete(int index); + const char* Get(int index); + void SetWidth(int index, int width); + void Reset(void); void SetLeftPadding(int value); int GetLeftPadding(void); void SetBackground(const char* value); diff --git a/include/MwOO/Widget/Menu.h b/include/MwOO/Widget/Menu.h index e8e3485..003e480 100644 --- a/include/MwOO/Widget/Menu.h +++ b/include/MwOO/Widget/Menu.h @@ -8,6 +8,7 @@ namespace MwOO { class Menu : public MwOO::Base { public: Menu(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + MwMenu Add(MwMenu menu, const char* name); void SetBackground(const char* value); const char* GetBackground(void); void SetForeground(const char* value); diff --git a/include/MwOO/Widget/OpenGL.h b/include/MwOO/Widget/OpenGL.h index 9fc32b1..72b3009 100644 --- a/include/MwOO/Widget/OpenGL.h +++ b/include/MwOO/Widget/OpenGL.h @@ -8,6 +8,9 @@ namespace MwOO { class OpenGL : public MwOO::Base { public: OpenGL(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + void MakeCurrent(void); + void* GetProcAddress(const char* name); + void SwapBuffer(void); void SetBackground(const char* value); const char* GetBackground(void); void SetForeground(const char* value); diff --git a/include/MwOO/Widget/ScrollBar.h b/include/MwOO/Widget/ScrollBar.h index 8fb81e3..da210d8 100644 --- a/include/MwOO/Widget/ScrollBar.h +++ b/include/MwOO/Widget/ScrollBar.h @@ -8,6 +8,7 @@ namespace MwOO { class ScrollBar : public MwOO::Base { public: ScrollBar(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + int GetVisibleLength(void); void SetAreaShown(int value); int GetAreaShown(void); void SetValue(int value); diff --git a/include/MwOO/Widget/SubMenu.h b/include/MwOO/Widget/SubMenu.h index b3223d0..431f9f4 100644 --- a/include/MwOO/Widget/SubMenu.h +++ b/include/MwOO/Widget/SubMenu.h @@ -8,6 +8,7 @@ namespace MwOO { class SubMenu : public MwOO::Base { public: SubMenu(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + void Appear(MwMenu menu, MwPoint* point); void SetBackground(const char* value); const char* GetBackground(void); void SetForeground(const char* value); diff --git a/include/MwOO/Widget/Viewport.h b/include/MwOO/Widget/Viewport.h index 158e3d3..ac1b482 100644 --- a/include/MwOO/Widget/Viewport.h +++ b/include/MwOO/Widget/Viewport.h @@ -8,6 +8,8 @@ namespace MwOO { class Viewport : public MwOO::Base { public: Viewport(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + MwOO::Base GetViewport(void); + void SetSize(int w, int h); void SetBackground(const char* value); const char* GetBackground(void); void SetForeground(const char* value); diff --git a/include/MwOO/Widget/Vulkan.h b/include/MwOO/Widget/Vulkan.h index 97ca137..8d3940e 100644 --- a/include/MwOO/Widget/Vulkan.h +++ b/include/MwOO/Widget/Vulkan.h @@ -11,6 +11,7 @@ class Vulkan : public MwOO::Base { void EnableExtension(void); void EnableLayer(void); void Configure(void); + void* GetField(MwVulkanField field, MwErrorEnum* out); VkBool32 Supported(void); void SetBackground(const char* value); const char* GetBackground(void); diff --git a/include/MwOO/Widget/Window.h b/include/MwOO/Widget/Window.h index 7148b4f..4135ffa 100644 --- a/include/MwOO/Widget/Window.h +++ b/include/MwOO/Widget/Window.h @@ -8,6 +8,7 @@ namespace MwOO { class Window : public MwOO::Base { public: Window(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h); + void MakeBorderless(int toggle); void SetTitle(const char* value); const char* GetTitle(void); void SetMain(int value); diff --git a/oosrc/widget/listbox.cc b/oosrc/widget/listbox.cc index df82542..f024b21 100644 --- a/oosrc/widget/listbox.cc +++ b/oosrc/widget/listbox.cc @@ -27,6 +27,24 @@ void MwOO::ListBox::VaInsertMultiple(int index, int count, MwLLPixmap* pixmap, v MwListBoxVaInsertMultiple(this->widget, index, count, pixmap, va); } +void MwOO::ListBox::Delete(int index){ + MwListBoxDelete(this->widget, index); +} + +const char* MwOO::ListBox::Get(int index){ + const char* ret; + ret = MwListBoxGet(this->widget, index); + return ret; +} + +void MwOO::ListBox::SetWidth(int index, int width){ + MwListBoxSetWidth(this->widget, index, width); +} + +void MwOO::ListBox::Reset(void){ + MwListBoxReset(this->widget); +} + void MwOO::ListBox::SetLeftPadding(int value){ MwSetInteger(this->widget, MwNleftPadding, value); } diff --git a/oosrc/widget/menu.cc b/oosrc/widget/menu.cc index 63a37c7..09ba2fc 100644 --- a/oosrc/widget/menu.cc +++ b/oosrc/widget/menu.cc @@ -5,6 +5,12 @@ MwOO::Menu::Menu(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwMenuClass, widget_name, parent, x, y, w, h){ } +MwMenu MwOO::Menu::Add(MwMenu menu, const char* name){ + MwMenu ret; + ret = MwMenuAdd(this->widget, menu, name); + return ret; +} + void MwOO::Menu::SetBackground(const char* value){ MwSetText(this->widget, MwNbackground, value); } diff --git a/oosrc/widget/opengl.cc b/oosrc/widget/opengl.cc index 19f388d..a42f3c3 100644 --- a/oosrc/widget/opengl.cc +++ b/oosrc/widget/opengl.cc @@ -5,6 +5,20 @@ MwOO::OpenGL::OpenGL(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwOpenGLClass, widget_name, parent, x, y, w, h){ } +void MwOO::OpenGL::MakeCurrent(void){ + MwOpenGLMakeCurrent(this->widget); +} + +void* MwOO::OpenGL::GetProcAddress(const char* name){ + void* ret; + ret = MwOpenGLGetProcAddress(this->widget, name); + return ret; +} + +void MwOO::OpenGL::SwapBuffer(void){ + MwOpenGLSwapBuffer(this->widget); +} + void MwOO::OpenGL::SetBackground(const char* value){ MwSetText(this->widget, MwNbackground, value); } diff --git a/oosrc/widget/scrollbar.cc b/oosrc/widget/scrollbar.cc index f6a2344..e1e29ca 100644 --- a/oosrc/widget/scrollbar.cc +++ b/oosrc/widget/scrollbar.cc @@ -5,6 +5,12 @@ MwOO::ScrollBar::ScrollBar(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwScrollBarClass, widget_name, parent, x, y, w, h){ } +int MwOO::ScrollBar::GetVisibleLength(void){ + int ret; + ret = MwScrollBarGetVisibleLength(this->widget); + return ret; +} + void MwOO::ScrollBar::SetAreaShown(int value){ MwSetInteger(this->widget, MwNareaShown, value); } diff --git a/oosrc/widget/submenu.cc b/oosrc/widget/submenu.cc index 98f8145..6a98cbe 100644 --- a/oosrc/widget/submenu.cc +++ b/oosrc/widget/submenu.cc @@ -5,6 +5,10 @@ MwOO::SubMenu::SubMenu(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwSubMenuClass, widget_name, parent, x, y, w, h){ } +void MwOO::SubMenu::Appear(MwMenu menu, MwPoint* point){ + MwSubMenuAppear(this->widget, menu, point); +} + void MwOO::SubMenu::SetBackground(const char* value){ MwSetText(this->widget, MwNbackground, value); } diff --git a/oosrc/widget/viewport.cc b/oosrc/widget/viewport.cc index c3c4190..4b5d6ef 100644 --- a/oosrc/widget/viewport.cc +++ b/oosrc/widget/viewport.cc @@ -5,6 +5,16 @@ MwOO::Viewport::Viewport(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwViewportClass, widget_name, parent, x, y, w, h){ } +MwOO::Base MwOO::Viewport::GetViewport(void){ + MwOO::Base ret; + ret = MwOO::Base(MwViewportGetViewport(this->widget)); + return ret; +} + +void MwOO::Viewport::SetSize(int w, int h){ + MwViewportSetSize(this->widget, w, h); +} + void MwOO::Viewport::SetBackground(const char* value){ MwSetText(this->widget, MwNbackground, value); } diff --git a/oosrc/widget/vulkan.cc b/oosrc/widget/vulkan.cc index 81d89f3..52afc7c 100644 --- a/oosrc/widget/vulkan.cc +++ b/oosrc/widget/vulkan.cc @@ -17,6 +17,12 @@ void MwOO::Vulkan::Configure(void){ MwVulkanConfigure(this->widget); } +void* MwOO::Vulkan::GetField(MwVulkanField field, MwErrorEnum* out){ + void* ret; + ret = MwVulkanGetField(this->widget, field, out); + return ret; +} + VkBool32 MwOO::Vulkan::Supported(void){ VkBool32 ret; ret = MwVulkanSupported(this->widget); diff --git a/oosrc/widget/window.cc b/oosrc/widget/window.cc index 0ab0398..b27df5e 100644 --- a/oosrc/widget/window.cc +++ b/oosrc/widget/window.cc @@ -5,6 +5,10 @@ MwOO::Window::Window(const char* widget_name, MwOO::Base* parent, int x, int y, int w, int h) : MwOO::Base(MwWindowClass, widget_name, parent, x, y, w, h){ } +void MwOO::Window::MakeBorderless(int toggle){ + MwWindowMakeBorderless(this->widget, toggle); +} + void MwOO::Window::SetTitle(const char* value){ MwSetText(this->widget, MwNtitle, value); } diff --git a/tools/genoo.pl b/tools/genoo.pl index 8e54426..8142f16 100755 --- a/tools/genoo.pl +++ b/tools/genoo.pl @@ -56,7 +56,7 @@ foreach my $f (@files) { @props = split(/[ \t]+/, $1); } elsif ($l =~ -/^MWDECL[ \t]+(.+)[ \t]+Mw${name}([^ \t]+)[ \t]*\([^,\)]+(?:,(.*))?\);(?: \/\*(.+))?$/ +/^(?:MWDECL|MwInline)[ \t]+(.+)[ \t]+Mw${name}([^ \t]+)[ \t]*\([^,\)]+(?:,(.*))?\)(?:;|[ \t]+\{)(?: \/\*(.+))?$/ ) { my $arg = $3; diff --git a/tools/git_merge.sh b/tools/git_merge.sh index 2450726..29b47c5 100755 --- a/tools/git_merge.sh +++ b/tools/git_merge.sh @@ -1,3 +1,6 @@ +#!/usr/bin/env bash +# $Id$ + if [[ $1 -eq "" ]]; then echo "Blank argument." exit