+ case "${usergroup_phase}" in + local run_cmd + run_cmd=run_su + shift + run_su /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/bsnes-115nb22/work.log + su pbulk -c '"$@"' make /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/bsnes-115nb22/work.log => Bootstrap dependency digest>=20211023: found digest-20220214 ===> Building for bsnes-115nb22 Compiling ../hiro/hiro.cpp ... In file included from ../hiro/core/core.cpp:1, from ../hiro/hiro.cpp:5: ../nall/intrinsics.hpp:109:4: warning: #warning "unable to detect platform" [-Wcpp] 109 | #warning "unable to detect platform" | ^~~~~~~ In file included from ../nall/arithmetic.hpp:37, from ../nall/hash/hash.hpp:3, from ../nall/hash/sha256.hpp:3, from ../nall/file-buffer.hpp:12, from ../nall/file.hpp:3, from ../nall/directory.hpp:3, from ../hiro/core/core.hpp:4, from ../hiro/core/core.cpp:13: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint256_t&, const uint256_t&, uint256_t&, uint256_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:1:1: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? +++ |+#include <stdexcept> 1 | #define ConcatenateType(Size) uint##Size##_t In file included from ../nall/arithmetic.hpp:45: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint512_t&, const uint512_t&, uint512_t&, uint512_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:239:23: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? In file included from ../nall/arithmetic.hpp:53: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint1024_t&, const uint1024_t&, uint1024_t&, uint1024_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:239:23: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? In file included from ../nall/arithmetic.hpp:61: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint2048_t&, const uint2048_t&, uint2048_t&, uint2048_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:239:23: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? In file included from ../nall/arithmetic.hpp:69: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint4096_t&, const uint4096_t&, uint4096_t&, uint4096_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:239:23: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? In file included from ../nall/arithmetic.hpp:77: ../nall/arithmetic/natural.hpp: In function 'void nall::div(const uint8192_t&, const uint8192_t&, uint8192_t&, uint8192_t&)': ../nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std' 239 | if(!rhs) throw std::runtime_error("division by zero"); | ^~~~~~~~~~~~~ ../nall/arithmetic/natural.hpp:239:23: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'? ../nall/file.hpp: In static member function 'static bool nall::file::truncate(const nall::string&, uint64_t)': ../nall/file.hpp:49:3: warning: no return statement in function returning non-void [-Wreturn-type] 49 | } | ^ ../nall/file.hpp: In static member function 'static bool nall::file::exists(const nall::string&)': ../nall/file.hpp:60:14: error: 'data' was not declared in this scope 60 | return !(data.st_mode & S_IFDIR); | ^~~~ In file included from /usr/include/fcntl.h:37, from ../nall/platform.hpp:41, from ../hiro/core/core.hpp:1: ../nall/file.hpp: In static member function 'static uint64_t nall::file::size(const nall::string&)': ../nall/file.hpp:71:20: error: 'data' was not declared in this scope 71 | return S_ISREG(data.st_mode) ? data.st_size : 0u; | ^~~~ ../nall/directory.hpp: In function 'bool nall::directoryIsFolder(DIR*, dirent*)': ../nall/directory.hpp:270:12: error: 'struct dirent' has no member named 'd_type' 270 | if(ep->d_type == DT_DIR) return true; | ^~~~~~ ../nall/directory.hpp:270:22: error: 'DT_DIR' was not declared in this scope 270 | if(ep->d_type == DT_DIR) return true; | ^~~~~~ ../nall/directory.hpp:271:12: error: 'struct dirent' has no member named 'd_type' 271 | if(ep->d_type == DT_LNK || ep->d_type == DT_UNKNOWN) { | ^~~~~~ ../nall/directory.hpp:271:22: error: 'DT_LNK' was not declared in this scope 271 | if(ep->d_type == DT_LNK || ep->d_type == DT_UNKNOWN) { | ^~~~~~ ../nall/directory.hpp:271:36: error: 'struct dirent' has no member named 'd_type' 271 | if(ep->d_type == DT_LNK || ep->d_type == DT_UNKNOWN) { | ^~~~~~ ../nall/directory.hpp:271:46: error: 'DT_UNKNOWN' was not declared in this scope; did you mean 'API_UNKNOWN'? 271 | if(ep->d_type == DT_LNK || ep->d_type == DT_UNKNOWN) { | ^~~~~~~~~~ | API_UNKNOWN In file included from ../hiro/core/../gtk/platform.hpp:8, from ../hiro/core/../gtk/platform.cpp:1, from ../hiro/core/core.cpp:21: ../hiro/core/../gtk/font.hpp: At global scope: ../hiro/core/../gtk/font.hpp:7:20: error: 'PangoFontDescription' has not been declared 7 | static auto size(PangoFontDescription* font, const string& text) -> Size; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.hpp:9:43: error: 'PangoFontDescription' does not name a type 9 | static auto create(const Font& font) -> PangoFontDescription*; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.hpp:9:43: error: expected ';' at end of member declaration 9 | static auto create(const Font& font) -> PangoFontDescription*; | ^~~~~~~~~~~~~~~~~~~~ | ; ../hiro/core/../gtk/font.hpp:9:64: error: expected unqualified-id before ';' token 9 | static auto create(const Font& font) -> PangoFontDescription*; | ^ ../hiro/core/../gtk/font.hpp:10:20: error: 'PangoFontDescription' has not been declared 10 | static auto free(PangoFontDescription* font) -> void; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.hpp:11:23: error: 'GtkWidget' has not been declared 11 | static auto setFont(GtkWidget* widget, const Font& font) -> void; | ^~~~~~~~~ ../hiro/core/../gtk/font.hpp:12:23: error: 'GtkWidget' has not been declared 12 | static auto setFont(GtkWidget* widget, gpointer font) -> void; | ^~~~~~~~~ ../hiro/core/../gtk/font.hpp:12:42: error: 'gpointer' has not been declared 12 | static auto setFont(GtkWidget* widget, gpointer font) -> void; | ^~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:20: ../hiro/core/../gtk/window.hpp:52:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 52 | GtkWidget* widget = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:53:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 53 | GtkWidget* menuContainer = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:54:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 54 | GtkWidget* formContainer = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:55:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 55 | GtkWidget* statusContainer = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:56:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 56 | GtkWidget* gtkMenu = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:57:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 57 | GtkWidget* gtkStatus = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.hpp:58:3: error: 'GtkAllocation' does not name a type 58 | GtkAllocation lastMove = {0}; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.hpp:59:3: error: 'GtkAllocation' does not name a type 59 | GtkAllocation lastSize = {0}; | ^~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:23: ../hiro/core/../gtk/popup-menu.hpp:13:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 13 | GtkWidget* gtkMenu = nullptr; | ^~~~~~~~~ | wWidget In file included from ../hiro/core/../gtk/platform.hpp:25: ../hiro/core/../gtk/action/action.hpp:14:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 14 | GtkWidget* widget = nullptr; | ^~~~~~~~~ | wWidget In file included from ../hiro/core/../gtk/platform.hpp:26: ../hiro/core/../gtk/action/menu.hpp:14:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 14 | GtkWidget* gtkMenu = nullptr; | ^~~~~~~~~ | wWidget In file included from ../hiro/core/../gtk/platform.hpp:30: ../hiro/core/../gtk/action/menu-radio-item.hpp:16:3: error: 'GtkCheckMenuItem' does not name a type 16 | GtkCheckMenuItem* gtkCheckMenuItem = nullptr; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.hpp:17:3: error: 'GtkRadioMenuItem' does not name a type 17 | GtkRadioMenuItem* gtkRadioMenuItem = nullptr; | ^~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:34: ../hiro/core/../gtk/widget/widget.hpp:8:46: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 8 | virtual auto container(mWidget& widget) -> GtkWidget*; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.hpp:8:46: error: expected ';' at end of member declaration 8 | virtual auto container(mWidget& widget) -> GtkWidget*; | ^~~~~~~~~ | ; ../hiro/core/../gtk/widget/widget.hpp:8:56: error: expected unqualified-id before ';' token 8 | virtual auto container(mWidget& widget) -> GtkWidget*; | ^ ../hiro/core/../gtk/widget/widget.hpp:20:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 20 | GtkWidget* gtkWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.hpp:21:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 21 | GtkWidget* gtkParent = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.hpp:22:3: error: 'GdkCursor' does not name a type 22 | GdkCursor* gdkMouseCursor = nullptr; | ^~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:35: ../hiro/core/../gtk/widget/button.hpp:16:3: error: 'GtkButton' does not name a type; did you mean 'pButton'? 16 | GtkButton* gtkButton = nullptr; | ^~~~~~~~~ | pButton In file included from ../hiro/core/../gtk/platform.hpp:36: ../hiro/core/../gtk/widget/canvas.hpp:18:16: error: 'cairo_t' has not been declared 18 | auto _onDraw(cairo_t* context) -> void; | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.hpp:19:18: error: 'GdkEventExpose' has not been declared 19 | auto _onExpose(GdkEventExpose* event) -> void; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.hpp:24:3: error: 'GdkPixbuf' does not name a type 24 | GdkPixbuf* surface = nullptr; | ^~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:39: ../hiro/core/../gtk/widget/combo-button.hpp:17:3: error: 'GtkListStore' does not name a type 17 | GtkListStore* gtkListStore = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.hpp:18:3: error: 'GtkTreeModel' does not name a type 18 | GtkTreeModel* gtkTreeModel = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.hpp:19:3: error: 'GtkComboBox' does not name a type 19 | GtkComboBox* gtkComboBox = nullptr; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.hpp:20:3: error: 'GtkCellRenderer' does not name a type 20 | GtkCellRenderer* gtkCellIcon = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.hpp:21:3: error: 'GtkCellRenderer' does not name a type 21 | GtkCellRenderer* gtkCellText = nullptr; | ^~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:40: ../hiro/core/../gtk/widget/combo-button-item.hpp:14:3: error: 'GtkTreeIter' does not name a type 14 | GtkTreeIter gtkIter; | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:41: ../hiro/core/../gtk/widget/combo-edit.hpp:20:3: error: 'GtkListStore' does not name a type 20 | GtkListStore* gtkListStore = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.hpp:21:3: error: 'GtkTreeModel' does not name a type 21 | GtkTreeModel* gtkTreeModel = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.hpp:22:3: error: 'GtkComboBox' does not name a type 22 | GtkComboBox* gtkComboBox = nullptr; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.hpp:23:3: error: 'GtkCellRenderer' does not name a type 23 | GtkCellRenderer* gtkCellIcon = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.hpp:24:3: error: 'GtkCellRenderer' does not name a type 24 | GtkCellRenderer* gtkCellText = nullptr; | ^~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:42: ../hiro/core/../gtk/widget/combo-edit-item.hpp:13:3: error: 'GtkTreeIter' does not name a type 13 | GtkTreeIter gtkIter; | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:43: ../hiro/core/../gtk/widget/console.hpp:18:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 18 | GtkWidget* subWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/console.hpp:19:3: error: 'GtkTextBuffer' does not name a type 19 | GtkTextBuffer* textBuffer = nullptr; | ^~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:44: ../hiro/core/../gtk/widget/frame.hpp:9:38: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/frame.hpp:9:38: error: expected ';' at end of member declaration 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~~ | ; ../hiro/core/../gtk/widget/frame.hpp:9:49: error: ISO C++ forbids declaration of 'override' with no type [-fpermissive] 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~ ../hiro/core/../gtk/widget/frame.hpp:19:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 19 | GtkWidget* gtkLabel = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/frame.hpp:20:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 20 | GtkWidget* gtkChild = nullptr; | ^~~~~~~~~ | pWidget In file included from ../hiro/core/../gtk/platform.hpp:45: ../hiro/core/../gtk/widget/hex-edit.hpp:26:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 26 | GtkWidget* container = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/hex-edit.hpp:27:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 27 | GtkWidget* subWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/hex-edit.hpp:28:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 28 | GtkWidget* scrollBar = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/hex-edit.hpp:29:3: error: 'GtkTextBuffer' does not name a type 29 | GtkTextBuffer* textBuffer = nullptr; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.hpp:30:3: error: 'GtkTextMark' does not name a type 30 | GtkTextMark* textCursor = nullptr; | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:48: ../hiro/core/../gtk/widget/icon-view.hpp:26:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 26 | GtkWidget* subWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/icon-view.hpp:27:3: error: 'GtkListStore' does not name a type 27 | GtkListStore* store = nullptr; | ^~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:50: ../hiro/core/../gtk/widget/label.hpp:15:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 15 | GtkWidget* subWidget = nullptr; | ^~~~~~~~~ | pWidget In file included from ../hiro/core/../gtk/platform.hpp:54: ../hiro/core/../gtk/widget/radio-label.hpp:15:3: error: 'GtkToggleButton' does not name a type 15 | GtkToggleButton* gtkToggleButton = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.hpp:16:3: error: 'GtkRadioButton' does not name a type; did you mean 'wRadioButton'? 16 | GtkRadioButton* gtkRadioButton = nullptr; | ^~~~~~~~~~~~~~ | wRadioButton In file included from ../hiro/core/../gtk/platform.hpp:55: ../hiro/core/../gtk/widget/source-edit.hpp:19:3: error: 'GtkScrolledWindow' does not name a type 19 | GtkScrolledWindow* gtkScrolledWindow = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:20:3: error: 'GtkContainer' does not name a type 20 | GtkContainer* gtkContainer = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:21:3: error: 'GtkSourceBuffer' does not name a type 21 | GtkSourceBuffer* gtkSourceBuffer = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:22:3: error: 'GtkTextBuffer' does not name a type 22 | GtkTextBuffer* gtkTextBuffer = nullptr; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:23:3: error: 'GtkSourceLanguageManager' does not name a type 23 | GtkSourceLanguageManager* gtkSourceLanguageManager = nullptr; | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:24:3: error: 'GtkSourceLanguage' does not name a type 24 | GtkSourceLanguage* gtkSourceLanguage = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:25:3: error: 'GtkSourceStyleSchemeManager' does not name a type 25 | GtkSourceStyleSchemeManager* gtkSourceStyleSchemeManager = nullptr; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:26:3: error: 'GtkSourceStyleScheme' does not name a type 26 | GtkSourceStyleScheme* gtkSourceStyleScheme = nullptr; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:27:3: error: 'GtkSourceView' does not name a type 27 | GtkSourceView* gtkSourceView = nullptr; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:28:3: error: 'GtkTextView' does not name a type 28 | GtkTextView* gtkTextView = nullptr; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.hpp:29:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 29 | GtkWidget* gtkWidgetSourceView = nullptr; | ^~~~~~~~~ | pWidget In file included from ../hiro/core/../gtk/platform.hpp:56: ../hiro/core/../gtk/widget/tab-frame.hpp:9:38: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:9:38: error: expected ';' at end of member declaration 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~~ | ; ../hiro/core/../gtk/widget/tab-frame.hpp:9:49: error: ISO C++ forbids declaration of 'override' with no type [-fpermissive] 9 | auto container(mWidget& widget) -> GtkWidget* override; | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.hpp:28:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 28 | GtkWidget* child = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:29:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 29 | GtkWidget* container = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:30:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 30 | GtkWidget* layout = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:31:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 31 | GtkWidget* image = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:32:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 32 | GtkWidget* title = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.hpp:33:5: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 33 | GtkWidget* close = nullptr; | ^~~~~~~~~ | pWidget In file included from ../hiro/core/../gtk/platform.hpp:58: ../hiro/core/../gtk/widget/table-view.hpp:28:20: error: 'GtkTreePath' has not been declared 28 | auto _doActivate(GtkTreePath* = nullptr, GtkTreeViewColumn* = nullptr) -> void; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:28:44: error: 'GtkTreeViewColumn' has not been declared 28 | auto _doActivate(GtkTreePath* = nullptr, GtkTreeViewColumn* = nullptr) -> void; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:31:20: error: 'GtkTreeViewColumn' has not been declared 31 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:31:47: error: 'GtkCellRenderer' has not been declared 31 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:31:74: error: 'GtkTreeIter' has not been declared 31 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:32:16: error: 'GtkCellRendererText' has not been declared 32 | auto _doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:33:17: error: 'GdkEventButton' has not been declared 33 | auto _doEvent(GdkEventButton* event) -> int; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:34:26: error: 'GtkTreeViewColumn' has not been declared 34 | auto _doHeaderActivate(GtkTreeViewColumn* column) -> void; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:35:20: error: 'GdkEventKey' has not been declared 35 | auto _doKeyPress(GdkEventKey* event) -> bool; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:37:18: error: 'GtkCellRendererToggle' has not been declared 37 | auto _doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void; | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:42:3: error: 'GtkScrolledWindow' does not name a type 42 | GtkScrolledWindow* gtkScrolledWindow = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:43:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 43 | GtkWidget* gtkWidgetChild = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/table-view.hpp:44:3: error: 'GtkTreeView' does not name a type; did you mean 'wTreeView'? 44 | GtkTreeView* gtkTreeView = nullptr; | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.hpp:45:3: error: 'GtkTreeSelection' does not name a type 45 | GtkTreeSelection* gtkTreeSelection = nullptr; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:46:3: error: 'GtkListStore' does not name a type 46 | GtkListStore* gtkListStore = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:47:3: error: 'GtkTreeModel' does not name a type 47 | GtkTreeModel* gtkTreeModel = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.hpp:48:3: error: 'GtkEntry' does not name a type 48 | GtkEntry* gtkEntry = nullptr; | ^~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:59: ../hiro/core/../gtk/widget/table-view-column.hpp:26:3: error: 'GtkTreeViewColumn' does not name a type 26 | GtkTreeViewColumn* gtkColumn = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.hpp:27:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 27 | GtkWidget* gtkHeader = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/table-view-column.hpp:28:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 28 | GtkWidget* gtkHeaderIcon = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/table-view-column.hpp:29:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 29 | GtkWidget* gtkHeaderText = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/table-view-column.hpp:30:3: error: 'GtkWidget' does not name a type; did you mean 'wWidget'? 30 | GtkWidget* gtkHeaderSort = nullptr; | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/table-view-column.hpp:31:3: error: 'GtkCellRenderer' does not name a type 31 | GtkCellRenderer* gtkCellToggle = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.hpp:32:3: error: 'GtkCellRenderer' does not name a type 32 | GtkCellRenderer* gtkCellIcon = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.hpp:33:3: error: 'GtkCellRenderer' does not name a type 33 | GtkCellRenderer* gtkCellText = nullptr; | ^~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:60: ../hiro/core/../gtk/widget/table-view-item.hpp:19:3: error: 'GtkTreeIter' does not name a type 19 | GtkTreeIter gtkIter; | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:62: ../hiro/core/../gtk/widget/text-edit.hpp:19:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 19 | GtkWidget* subWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/text-edit.hpp:20:3: error: 'GtkTextBuffer' does not name a type 20 | GtkTextBuffer* textBuffer = nullptr; | ^~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:63: ../hiro/core/../gtk/widget/tree-view.hpp:16:22: error: 'GtkTreePath' has not been declared 16 | auto _activatePath(GtkTreePath* gtkPath) -> void; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:17:21: error: 'GdkEventButton' has not been declared 17 | auto _buttonEvent(GdkEventButton* gdkEvent) -> signed; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:18:20: error: 'GtkTreeViewColumn' has not been declared 18 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:18:47: error: 'GtkCellRenderer' has not been declared 18 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:18:74: error: 'GtkTreeIter' has not been declared 18 | auto _doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:25:3: error: 'GtkScrolledWindow' does not name a type 25 | GtkScrolledWindow* gtkScrolledWindow = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:26:3: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 26 | GtkWidget* gtkWidgetChild = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tree-view.hpp:27:3: error: 'GtkTreeStore' does not name a type 27 | GtkTreeStore* gtkTreeStore = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:28:3: error: 'GtkTreeModel' does not name a type 28 | GtkTreeModel* gtkTreeModel = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:29:3: error: 'GtkTreeSelection' does not name a type 29 | GtkTreeSelection* gtkTreeSelection = nullptr; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:30:3: error: 'GtkTreeView' does not name a type; did you mean 'pTreeView'? 30 | GtkTreeView* gtkTreeView = nullptr; | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view.hpp:31:3: error: 'GtkTreeViewColumn' does not name a type 31 | GtkTreeViewColumn* gtkTreeViewColumn = nullptr; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:32:3: error: 'GtkCellRenderer' does not name a type 32 | GtkCellRenderer* gtkCellToggle = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:33:3: error: 'GtkCellRenderer' does not name a type 33 | GtkCellRenderer* gtkCellPixbuf = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:34:3: error: 'GtkCellRenderer' does not name a type 34 | GtkCellRenderer* gtkCellText = nullptr; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.hpp:35:3: error: 'GtkEntry' does not name a type 35 | GtkEntry* gtkEntry = nullptr; | ^~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:64: ../hiro/core/../gtk/widget/tree-view-item.hpp:25:3: error: 'GtkTreeIter' does not name a type 25 | GtkTreeIter gtkIter; | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.hpp:67: ../hiro/core/../gtk/widget/viewport.hpp:11:16: error: 'cairo_t' has not been declared 11 | auto _onDraw(cairo_t* context) -> void; | ^~~~~~~ ../hiro/core/../gtk/widget/viewport.hpp:12:18: error: 'GdkEventExpose' has not been declared 12 | auto _onExpose(GdkEventExpose* expose) -> void; | ^~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:2: ../hiro/core/../gtk/utility.cpp:4:48: error: 'GdkColor' does not name a type; did you mean 'Color'? 4 | static auto CreateColor(const Color& color) -> GdkColor { | ^~~~~~~~ | Color ../hiro/core/../gtk/utility.cpp:14:61: error: 'GdkPixbuf' does not name a type 14 | static auto CreatePixbuf(image icon, bool scale = false) -> GdkPixbuf* { | ^~~~~~~~~ ../hiro/core/../gtk/utility.cpp:14:70: error: expected initializer before '*' token 14 | static auto CreatePixbuf(image icon, bool scale = false) -> GdkPixbuf* { | ^ ../hiro/core/../gtk/utility.cpp:32:67: error: 'GtkImage' does not name a type 32 | static auto CreateImage(const image& icon, bool scale = false) -> GtkImage* { | ^~~~~~~~ ../hiro/core/../gtk/utility.cpp:32:75: error: expected initializer before '*' token 32 | static auto CreateImage(const image& icon, bool scale = false) -> GtkImage* { | ^ ../hiro/core/../gtk/utility.cpp:39:23: error: 'GtkSelectionData' was not declared in this scope 39 | static auto DropPaths(GtkSelectionData* data) -> vector<string> { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/utility.cpp:39:41: error: 'data' was not declared in this scope 39 | static auto DropPaths(GtkSelectionData* data) -> vector<string> { | ^~~~ ../hiro/core/../gtk/utility.cpp:39:47: error: expected ',' or ';' before '->' token 39 | static auto DropPaths(GtkSelectionData* data) -> vector<string> { | ^~ In file included from ../hiro/core/../gtk/platform.cpp:4: ../hiro/core/../gtk/font.cpp: In static member function 'static hiro::Size hiro::pFont::size(const hiro::Font&, const nall::string&)': ../hiro/core/../gtk/font.cpp:6:3: error: 'PangoFontDescription' was not declared in this scope 6 | PangoFontDescription* description = create(font); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.cpp:6:25: error: 'description' was not declared in this scope 6 | PangoFontDescription* description = create(font); | ^~~~~~~~~~~ ../hiro/core/../gtk/font.cpp:6:39: error: 'create' was not declared in this scope; did you mean 'creat'? 6 | PangoFontDescription* description = create(font); | ^~~~~~ | creat ../hiro/core/../gtk/font.cpp: At global scope: ../hiro/core/../gtk/font.cpp:12:6: error: 'auto hiro::pFont::size' is not a static data member of 'struct hiro::pFont' 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^~~~~ ../hiro/core/../gtk/font.cpp:12:18: error: 'PangoFontDescription' was not declared in this scope 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.cpp:12:40: error: 'font' was not declared in this scope; did you mean 'Font'? 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^~~~ | Font ../hiro/core/../gtk/font.cpp:12:46: error: expected primary-expression before 'const' 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^~~~~ ../hiro/core/../gtk/font.cpp:12:64: error: expression list treated as compound expression in initializer [-fpermissive] 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^ ../hiro/core/../gtk/font.cpp:12:66: error: expected ',' or ';' before '->' token 12 | auto pFont::size(PangoFontDescription* font, const string& text) -> Size { | ^~ ../hiro/core/../gtk/font.cpp:40:41: error: 'PangoFontDescription' does not name a type 40 | auto pFont::create(const Font& font) -> PangoFontDescription* { | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.cpp:40:61: error: expected initializer before '*' token 40 | auto pFont::create(const Font& font) -> PangoFontDescription* { | ^ ../hiro/core/../gtk/font.cpp:49:6: error: 'auto hiro::pFont::free' is not a static data member of 'struct hiro::pFont' 49 | auto pFont::free(PangoFontDescription* font) -> void { | ^~~~~ ../hiro/core/../gtk/font.cpp:49:18: error: 'PangoFontDescription' was not declared in this scope 49 | auto pFont::free(PangoFontDescription* font) -> void { | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/font.cpp:49:40: error: 'font' was not declared in this scope; did you mean 'Font'? 49 | auto pFont::free(PangoFontDescription* font) -> void { | ^~~~ | Font ../hiro/core/../gtk/font.cpp:49:46: error: expected ',' or ';' before '->' token 49 | auto pFont::free(PangoFontDescription* font) -> void { | ^~ ../hiro/core/../gtk/font.cpp:53:6: error: 'auto hiro::pFont::setFont' is not a static data member of 'struct hiro::pFont' 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^~~~~ ../hiro/core/../gtk/font.cpp:53:21: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/font.cpp:53:32: error: 'widget' was not declared in this scope; did you mean 'Widget'? 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/font.cpp:53:40: error: expected primary-expression before 'const' 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^~~~~ ../hiro/core/../gtk/font.cpp:53:56: error: expression list treated as compound expression in initializer [-fpermissive] 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^ ../hiro/core/../gtk/font.cpp:53:58: error: expected ',' or ';' before '->' token 53 | auto pFont::setFont(GtkWidget* widget, const Font& font) -> void { | ^~ ../hiro/core/../gtk/font.cpp:59:6: error: 'auto hiro::pFont::setFont' is not a static data member of 'struct hiro::pFont' 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^~~~~ ../hiro/core/../gtk/font.cpp:59:21: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/font.cpp:59:32: error: 'widget' was not declared in this scope; did you mean 'Widget'? 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/font.cpp:59:40: error: 'gpointer' was not declared in this scope 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^~~~~~~~ ../hiro/core/../gtk/font.cpp:59:53: error: expression list treated as compound expression in initializer [-fpermissive] 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^ ../hiro/core/../gtk/font.cpp:59:55: error: expected ',' or ';' before '->' token 59 | auto pFont::setFont(GtkWidget* widget, gpointer font) -> void { | ^~ In file included from ../hiro/core/../gtk/platform.cpp:5: ../hiro/core/../gtk/desktop.cpp: In static member function 'static hiro::Size hiro::pDesktop::size()': ../hiro/core/../gtk/desktop.cpp:7:26: error: 'gdk_screen_get_default' was not declared in this scope 7 | gdk_screen_get_width(gdk_screen_get_default()), | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/desktop.cpp:7:5: error: 'gdk_screen_get_width' was not declared in this scope 7 | gdk_screen_get_width(gdk_screen_get_default()), | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/desktop.cpp:8:5: error: 'gdk_screen_get_height' was not declared in this scope 8 | gdk_screen_get_height(gdk_screen_get_default()) | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/desktop.cpp:9:3: error: could not convert '{<expression error>, <expression error>}' from '<brace-enclosed initializer list>' to 'hiro::Size' 9 | }; | ^ | | | <brace-enclosed initializer list> In file included from ../hiro/core/../gtk/platform.cpp:6: ../hiro/core/../gtk/monitor.cpp: In static member function 'static uint hiro::pMonitor::count()': ../hiro/core/../gtk/monitor.cpp:10:36: error: 'gdk_screen_get_default' was not declared in this scope 10 | return gdk_screen_get_n_monitors(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:10:10: error: 'gdk_screen_get_n_monitors' was not declared in this scope 10 | return gdk_screen_get_n_monitors(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp: In static member function 'static hiro::Position hiro::pMonitor::dpi(uint)': ../hiro/core/../gtk/monitor.cpp:19:47: error: 'gdk_screen_get_default' was not declared in this scope 19 | float dpi = round(gdk_screen_get_resolution(gdk_screen_get_default())); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:19:21: error: 'gdk_screen_get_resolution' was not declared in this scope 19 | float dpi = round(gdk_screen_get_resolution(gdk_screen_get_default())); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp: In static member function 'static hiro::Geometry hiro::pMonitor::geometry(uint)': ../hiro/core/../gtk/monitor.cpp:31:3: error: 'GdkRectangle' was not declared in this scope 31 | GdkRectangle rectangle = {}; | ^~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:33:35: error: 'gdk_screen_get_default' was not declared in this scope 33 | gdk_screen_get_monitor_geometry(gdk_screen_get_default(), monitor, &rectangle); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:33:71: error: 'rectangle' was not declared in this scope 33 | gdk_screen_get_monitor_geometry(gdk_screen_get_default(), monitor, &rectangle); | ^~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:33:3: error: 'gdk_screen_get_monitor_geometry' was not declared in this scope 33 | gdk_screen_get_monitor_geometry(gdk_screen_get_default(), monitor, &rectangle); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:38:70: error: could not convert '{<expression error>, <expression error>, <expression error>, <expression error>}' from '<brace-enclosed initializer list>' to 'hiro::Geometry' 38 | return {rectangle.x, rectangle.y, rectangle.width, rectangle.height}; | ^ | | | <brace-enclosed initializer list> ../hiro/core/../gtk/monitor.cpp: In static member function 'static uint hiro::pMonitor::primary()': ../hiro/core/../gtk/monitor.cpp:43:41: error: 'gdk_screen_get_default' was not declared in this scope 43 | return gdk_screen_get_primary_monitor(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/monitor.cpp:43:10: error: 'gdk_screen_get_primary_monitor' was not declared in this scope 43 | return gdk_screen_get_primary_monitor(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:7: ../hiro/core/../gtk/keyboard.cpp: In static member function 'static int hiro::pKeyboard::_translate(unsigned int)': ../hiro/core/../gtk/keyboard.cpp:46:8: error: 'GDK_KEY_Escape' was not declared in this scope 46 | case GDK_KEY_Escape: return 0; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:47:8: error: 'GDK_KEY_F1' was not declared in this scope 47 | case GDK_KEY_F1: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:48:8: error: 'GDK_KEY_F2' was not declared in this scope 48 | case GDK_KEY_F2: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:49:8: error: 'GDK_KEY_F3' was not declared in this scope 49 | case GDK_KEY_F3: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:50:8: error: 'GDK_KEY_F4' was not declared in this scope 50 | case GDK_KEY_F4: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:51:8: error: 'GDK_KEY_F5' was not declared in this scope 51 | case GDK_KEY_F5: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:52:8: error: 'GDK_KEY_F6' was not declared in this scope 52 | case GDK_KEY_F6: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:53:8: error: 'GDK_KEY_F7' was not declared in this scope 53 | case GDK_KEY_F7: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:54:8: error: 'GDK_KEY_F8' was not declared in this scope 54 | case GDK_KEY_F8: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:55:8: error: 'GDK_KEY_F9' was not declared in this scope 55 | case GDK_KEY_F9: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:56:8: error: 'GDK_KEY_F10' was not declared in this scope 56 | case GDK_KEY_F10: return 0; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:57:8: error: 'GDK_KEY_F11' was not declared in this scope 57 | case GDK_KEY_F11: return 0; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:58:8: error: 'GDK_KEY_F12' was not declared in this scope 58 | case GDK_KEY_F12: return 0; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:60:8: error: 'GDK_KEY_Print' was not declared in this scope 60 | case GDK_KEY_Print: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:61:8: error: 'GDK_KEY_Scroll_Lock' was not declared in this scope 61 | case GDK_KEY_Scroll_Lock: return 0; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:62:8: error: 'GDK_KEY_Pause' was not declared in this scope 62 | case GDK_KEY_Pause: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:64:8: error: 'GDK_KEY_Insert' was not declared in this scope 64 | case GDK_KEY_Insert: return 0; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:65:8: error: 'GDK_KEY_Delete' was not declared in this scope 65 | case GDK_KEY_Delete: return 0; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:66:8: error: 'GDK_KEY_Home' was not declared in this scope 66 | case GDK_KEY_Home: return 0; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:67:8: error: 'GDK_KEY_End' was not declared in this scope 67 | case GDK_KEY_End: return 0; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:68:8: error: 'GDK_KEY_Prior' was not declared in this scope 68 | case GDK_KEY_Prior: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:69:8: error: 'GDK_KEY_Next' was not declared in this scope 69 | case GDK_KEY_Next: return 0; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:71:8: error: 'GDK_KEY_Up' was not declared in this scope 71 | case GDK_KEY_Up: return 0; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:72:8: error: 'GDK_KEY_Down' was not declared in this scope 72 | case GDK_KEY_Down: return 0; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:73:8: error: 'GDK_KEY_Left' was not declared in this scope 73 | case GDK_KEY_Left: return 0; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:74:8: error: 'GDK_KEY_Right' was not declared in this scope 74 | case GDK_KEY_Right: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:76:8: error: 'GDK_KEY_grave' was not declared in this scope 76 | case GDK_KEY_grave: return '`'; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:77:8: error: 'GDK_KEY_1' was not declared in this scope 77 | case GDK_KEY_1: return '1'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:78:8: error: 'GDK_KEY_2' was not declared in this scope 78 | case GDK_KEY_2: return '2'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:79:8: error: 'GDK_KEY_3' was not declared in this scope 79 | case GDK_KEY_3: return '3'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:80:8: error: 'GDK_KEY_4' was not declared in this scope 80 | case GDK_KEY_4: return '4'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:81:8: error: 'GDK_KEY_5' was not declared in this scope 81 | case GDK_KEY_5: return '5'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:82:8: error: 'GDK_KEY_6' was not declared in this scope 82 | case GDK_KEY_6: return '6'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:83:8: error: 'GDK_KEY_7' was not declared in this scope 83 | case GDK_KEY_7: return '7'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:84:8: error: 'GDK_KEY_8' was not declared in this scope 84 | case GDK_KEY_8: return '8'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:85:8: error: 'GDK_KEY_9' was not declared in this scope 85 | case GDK_KEY_9: return '9'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:86:8: error: 'GDK_KEY_0' was not declared in this scope 86 | case GDK_KEY_0: return '0'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:87:8: error: 'GDK_KEY_minus' was not declared in this scope 87 | case GDK_KEY_minus: return '-'; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:88:8: error: 'GDK_KEY_equal' was not declared in this scope 88 | case GDK_KEY_equal: return '='; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:89:8: error: 'GDK_KEY_BackSpace' was not declared in this scope 89 | case GDK_KEY_BackSpace: return '\b'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:91:8: error: 'GDK_KEY_asciitilde' was not declared in this scope 91 | case GDK_KEY_asciitilde: return '~'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:92:8: error: 'GDK_KEY_exclam' was not declared in this scope 92 | case GDK_KEY_exclam: return '!'; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:93:8: error: 'GDK_KEY_at' was not declared in this scope 93 | case GDK_KEY_at: return '@'; | ^~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:94:8: error: 'GDK_KEY_numbersign' was not declared in this scope 94 | case GDK_KEY_numbersign: return '#'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:95:8: error: 'GDK_KEY_dollar' was not declared in this scope 95 | case GDK_KEY_dollar: return '$'; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:96:8: error: 'GDK_KEY_percent' was not declared in this scope 96 | case GDK_KEY_percent: return '%'; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:97:8: error: 'GDK_KEY_asciicircum' was not declared in this scope 97 | case GDK_KEY_asciicircum: return '^'; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:98:8: error: 'GDK_KEY_ampersand' was not declared in this scope 98 | case GDK_KEY_ampersand: return '&'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:99:8: error: 'GDK_KEY_asterisk' was not declared in this scope 99 | case GDK_KEY_asterisk: return '*'; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:100:8: error: 'GDK_KEY_parenleft' was not declared in this scope 100 | case GDK_KEY_parenleft: return '('; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:101:8: error: 'GDK_KEY_parenright' was not declared in this scope 101 | case GDK_KEY_parenright: return ')'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:102:8: error: 'GDK_KEY_underscore' was not declared in this scope 102 | case GDK_KEY_underscore: return '_'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:103:8: error: 'GDK_KEY_plus' was not declared in this scope 103 | case GDK_KEY_plus: return '+'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:105:8: error: 'GDK_KEY_Tab' was not declared in this scope 105 | case GDK_KEY_Tab: return '\t'; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:106:8: error: 'GDK_KEY_Caps_Lock' was not declared in this scope 106 | case GDK_KEY_Caps_Lock: return 0; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:107:8: error: 'GDK_KEY_Return' was not declared in this scope 107 | case GDK_KEY_Return: return '\n'; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:108:8: error: 'GDK_KEY_Shift_L' was not declared in this scope 108 | case GDK_KEY_Shift_L: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:109:8: error: 'GDK_KEY_Shift_R' was not declared in this scope 109 | case GDK_KEY_Shift_R: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:110:8: error: 'GDK_KEY_Control_L' was not declared in this scope 110 | case GDK_KEY_Control_L: return 0; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:111:8: error: 'GDK_KEY_Control_R' was not declared in this scope 111 | case GDK_KEY_Control_R: return 0; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:112:8: error: 'GDK_KEY_Alt_L' was not declared in this scope 112 | case GDK_KEY_Alt_L: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:113:8: error: 'GDK_KEY_Alt_R' was not declared in this scope 113 | case GDK_KEY_Alt_R: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:114:8: error: 'GDK_KEY_Super_L' was not declared in this scope 114 | case GDK_KEY_Super_L: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:115:8: error: 'GDK_KEY_Super_R' was not declared in this scope 115 | case GDK_KEY_Super_R: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:116:8: error: 'GDK_KEY_Menu' was not declared in this scope 116 | case GDK_KEY_Menu: return 0; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:117:8: error: 'GDK_KEY_space' was not declared in this scope 117 | case GDK_KEY_space: return ' '; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:119:8: error: 'GDK_KEY_bracketleft' was not declared in this scope 119 | case GDK_KEY_bracketleft: return '['; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:120:8: error: 'GDK_KEY_bracketright' was not declared in this scope 120 | case GDK_KEY_bracketright: return ']'; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:121:8: error: 'GDK_KEY_backslash' was not declared in this scope 121 | case GDK_KEY_backslash: return '\\'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:122:8: error: 'GDK_KEY_semicolon' was not declared in this scope 122 | case GDK_KEY_semicolon: return ';'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:123:8: error: 'GDK_KEY_apostrophe' was not declared in this scope 123 | case GDK_KEY_apostrophe: return '\''; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:124:8: error: 'GDK_KEY_comma' was not declared in this scope 124 | case GDK_KEY_comma: return ','; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:125:8: error: 'GDK_KEY_period' was not declared in this scope 125 | case GDK_KEY_period: return '.'; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:126:8: error: 'GDK_KEY_slash' was not declared in this scope 126 | case GDK_KEY_slash: return '/'; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:128:8: error: 'GDK_KEY_braceleft' was not declared in this scope 128 | case GDK_KEY_braceleft: return '{'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:129:8: error: 'GDK_KEY_braceright' was not declared in this scope 129 | case GDK_KEY_braceright: return '}'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:130:8: error: 'GDK_KEY_bar' was not declared in this scope 130 | case GDK_KEY_bar: return '|'; | ^~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:131:8: error: 'GDK_KEY_colon' was not declared in this scope 131 | case GDK_KEY_colon: return ':'; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:132:8: error: 'GDK_KEY_quotedbl' was not declared in this scope 132 | case GDK_KEY_quotedbl: return '\"'; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:133:8: error: 'GDK_KEY_less' was not declared in this scope 133 | case GDK_KEY_less: return '<'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:134:8: error: 'GDK_KEY_greater' was not declared in this scope 134 | case GDK_KEY_greater: return '>'; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:135:8: error: 'GDK_KEY_question' was not declared in this scope 135 | case GDK_KEY_question: return '?'; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:137:8: error: 'GDK_KEY_A' was not declared in this scope 137 | case GDK_KEY_A: return 'A'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:138:8: error: 'GDK_KEY_B' was not declared in this scope 138 | case GDK_KEY_B: return 'B'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:139:8: error: 'GDK_KEY_C' was not declared in this scope 139 | case GDK_KEY_C: return 'C'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:140:8: error: 'GDK_KEY_D' was not declared in this scope 140 | case GDK_KEY_D: return 'D'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:141:8: error: 'GDK_KEY_E' was not declared in this scope 141 | case GDK_KEY_E: return 'E'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:142:8: error: 'GDK_KEY_F' was not declared in this scope 142 | case GDK_KEY_F: return 'F'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:143:8: error: 'GDK_KEY_G' was not declared in this scope 143 | case GDK_KEY_G: return 'G'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:144:8: error: 'GDK_KEY_H' was not declared in this scope 144 | case GDK_KEY_H: return 'H'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:145:8: error: 'GDK_KEY_I' was not declared in this scope 145 | case GDK_KEY_I: return 'I'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:146:8: error: 'GDK_KEY_J' was not declared in this scope 146 | case GDK_KEY_J: return 'J'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:147:8: error: 'GDK_KEY_K' was not declared in this scope 147 | case GDK_KEY_K: return 'K'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:148:8: error: 'GDK_KEY_L' was not declared in this scope 148 | case GDK_KEY_L: return 'L'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:149:8: error: 'GDK_KEY_M' was not declared in this scope 149 | case GDK_KEY_M: return 'M'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:150:8: error: 'GDK_KEY_N' was not declared in this scope 150 | case GDK_KEY_N: return 'N'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:151:8: error: 'GDK_KEY_O' was not declared in this scope 151 | case GDK_KEY_O: return 'O'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:152:8: error: 'GDK_KEY_P' was not declared in this scope 152 | case GDK_KEY_P: return 'P'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:153:8: error: 'GDK_KEY_Q' was not declared in this scope 153 | case GDK_KEY_Q: return 'Q'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:154:8: error: 'GDK_KEY_R' was not declared in this scope 154 | case GDK_KEY_R: return 'R'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:155:8: error: 'GDK_KEY_S' was not declared in this scope 155 | case GDK_KEY_S: return 'S'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:156:8: error: 'GDK_KEY_T' was not declared in this scope 156 | case GDK_KEY_T: return 'T'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:157:8: error: 'GDK_KEY_U' was not declared in this scope 157 | case GDK_KEY_U: return 'U'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:158:8: error: 'GDK_KEY_V' was not declared in this scope 158 | case GDK_KEY_V: return 'V'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:159:8: error: 'GDK_KEY_W' was not declared in this scope 159 | case GDK_KEY_W: return 'W'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:160:8: error: 'GDK_KEY_X' was not declared in this scope 160 | case GDK_KEY_X: return 'X'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:161:8: error: 'GDK_KEY_Y' was not declared in this scope 161 | case GDK_KEY_Y: return 'Y'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:162:8: error: 'GDK_KEY_Z' was not declared in this scope 162 | case GDK_KEY_Z: return 'Z'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:164:8: error: 'GDK_KEY_a' was not declared in this scope 164 | case GDK_KEY_a: return 'a'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:165:8: error: 'GDK_KEY_b' was not declared in this scope 165 | case GDK_KEY_b: return 'b'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:166:8: error: 'GDK_KEY_c' was not declared in this scope 166 | case GDK_KEY_c: return 'c'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:167:8: error: 'GDK_KEY_d' was not declared in this scope 167 | case GDK_KEY_d: return 'd'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:168:8: error: 'GDK_KEY_e' was not declared in this scope 168 | case GDK_KEY_e: return 'e'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:169:8: error: 'GDK_KEY_f' was not declared in this scope 169 | case GDK_KEY_f: return 'f'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:170:8: error: 'GDK_KEY_g' was not declared in this scope 170 | case GDK_KEY_g: return 'g'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:171:8: error: 'GDK_KEY_h' was not declared in this scope 171 | case GDK_KEY_h: return 'h'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:172:8: error: 'GDK_KEY_i' was not declared in this scope 172 | case GDK_KEY_i: return 'i'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:173:8: error: 'GDK_KEY_j' was not declared in this scope 173 | case GDK_KEY_j: return 'j'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:174:8: error: 'GDK_KEY_k' was not declared in this scope 174 | case GDK_KEY_k: return 'k'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:175:8: error: 'GDK_KEY_l' was not declared in this scope 175 | case GDK_KEY_l: return 'l'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:176:8: error: 'GDK_KEY_m' was not declared in this scope 176 | case GDK_KEY_m: return 'm'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:177:8: error: 'GDK_KEY_n' was not declared in this scope 177 | case GDK_KEY_n: return 'n'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:178:8: error: 'GDK_KEY_o' was not declared in this scope 178 | case GDK_KEY_o: return 'o'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:179:8: error: 'GDK_KEY_p' was not declared in this scope 179 | case GDK_KEY_p: return 'p'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:180:8: error: 'GDK_KEY_q' was not declared in this scope 180 | case GDK_KEY_q: return 'q'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:181:8: error: 'GDK_KEY_r' was not declared in this scope 181 | case GDK_KEY_r: return 'r'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:182:8: error: 'GDK_KEY_s' was not declared in this scope 182 | case GDK_KEY_s: return 's'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:183:8: error: 'GDK_KEY_t' was not declared in this scope 183 | case GDK_KEY_t: return 't'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:184:8: error: 'GDK_KEY_u' was not declared in this scope 184 | case GDK_KEY_u: return 'u'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:185:8: error: 'GDK_KEY_v' was not declared in this scope 185 | case GDK_KEY_v: return 'v'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:186:8: error: 'GDK_KEY_w' was not declared in this scope 186 | case GDK_KEY_w: return 'w'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:187:8: error: 'GDK_KEY_x' was not declared in this scope 187 | case GDK_KEY_x: return 'x'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:188:8: error: 'GDK_KEY_y' was not declared in this scope 188 | case GDK_KEY_y: return 'y'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:189:8: error: 'GDK_KEY_z' was not declared in this scope 189 | case GDK_KEY_z: return 'z'; | ^~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:191:8: error: 'GDK_KEY_Num_Lock' was not declared in this scope 191 | case GDK_KEY_Num_Lock: return 0; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:192:8: error: 'GDK_KEY_KP_Divide' was not declared in this scope 192 | case GDK_KEY_KP_Divide: return '/'; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:193:8: error: 'GDK_KEY_KP_Multiply' was not declared in this scope 193 | case GDK_KEY_KP_Multiply: return '*'; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:194:8: error: 'GDK_KEY_KP_Subtract' was not declared in this scope 194 | case GDK_KEY_KP_Subtract: return '-'; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:195:8: error: 'GDK_KEY_KP_Add' was not declared in this scope 195 | case GDK_KEY_KP_Add: return '+'; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:196:8: error: 'GDK_KEY_KP_Enter' was not declared in this scope 196 | case GDK_KEY_KP_Enter: return '\n'; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:197:8: error: 'GDK_KEY_KP_Decimal' was not declared in this scope 197 | case GDK_KEY_KP_Decimal: return '.'; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:199:8: error: 'GDK_KEY_KP_1' was not declared in this scope 199 | case GDK_KEY_KP_1: return '1'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:200:8: error: 'GDK_KEY_KP_2' was not declared in this scope 200 | case GDK_KEY_KP_2: return '2'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:201:8: error: 'GDK_KEY_KP_3' was not declared in this scope 201 | case GDK_KEY_KP_3: return '3'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:202:8: error: 'GDK_KEY_KP_4' was not declared in this scope 202 | case GDK_KEY_KP_4: return '4'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:203:8: error: 'GDK_KEY_KP_5' was not declared in this scope 203 | case GDK_KEY_KP_5: return '5'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:204:8: error: 'GDK_KEY_KP_6' was not declared in this scope 204 | case GDK_KEY_KP_6: return '6'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:205:8: error: 'GDK_KEY_KP_7' was not declared in this scope 205 | case GDK_KEY_KP_7: return '7'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:206:8: error: 'GDK_KEY_KP_8' was not declared in this scope 206 | case GDK_KEY_KP_8: return '8'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:207:8: error: 'GDK_KEY_KP_9' was not declared in this scope 207 | case GDK_KEY_KP_9: return '9'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:208:8: error: 'GDK_KEY_KP_0' was not declared in this scope 208 | case GDK_KEY_KP_0: return '0'; | ^~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:210:8: error: 'GDK_KEY_KP_Home' was not declared in this scope 210 | case GDK_KEY_KP_Home: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:211:8: error: 'GDK_KEY_KP_End' was not declared in this scope 211 | case GDK_KEY_KP_End: return 0; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:212:8: error: 'GDK_KEY_KP_Page_Up' was not declared in this scope 212 | case GDK_KEY_KP_Page_Up: return 0; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:213:8: error: 'GDK_KEY_KP_Page_Down' was not declared in this scope 213 | case GDK_KEY_KP_Page_Down: return 0; | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:214:8: error: 'GDK_KEY_KP_Up' was not declared in this scope 214 | case GDK_KEY_KP_Up: return 0; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:215:8: error: 'GDK_KEY_KP_Down' was not declared in this scope 215 | case GDK_KEY_KP_Down: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:216:8: error: 'GDK_KEY_KP_Left' was not declared in this scope 216 | case GDK_KEY_KP_Left: return 0; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:217:8: error: 'GDK_KEY_KP_Right' was not declared in this scope 217 | case GDK_KEY_KP_Right: return 0; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:218:8: error: 'GDK_KEY_KP_Begin' was not declared in this scope 218 | case GDK_KEY_KP_Begin: return 0; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:219:8: error: 'GDK_KEY_KP_Insert' was not declared in this scope 219 | case GDK_KEY_KP_Insert: return 0; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/keyboard.cpp:220:8: error: 'GDK_KEY_KP_Delete' was not declared in this scope 220 | case GDK_KEY_KP_Delete: return 0; | ^~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:8: ../hiro/core/../gtk/mouse.cpp: In static member function 'static hiro::Position hiro::pMouse::position()': ../hiro/core/../gtk/mouse.cpp:19:1: warning: no return statement in function returning non-void [-Wreturn-type] 19 | } | ^ In file included from ../hiro/core/../gtk/platform.cpp:9: ../hiro/core/../gtk/browser-window.cpp: At global scope: ../hiro/core/../gtk/browser-window.cpp:5:38: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto BrowserWindow_addFilters(GtkWidget* dialog, vector<string> filters) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/browser-window.cpp:5:49: error: 'dialog' was not declared in this scope 5 | static auto BrowserWindow_addFilters(GtkWidget* dialog, vector<string> filters) -> void { | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:5:72: error: expected primary-expression before 'filters' 5 | static auto BrowserWindow_addFilters(GtkWidget* dialog, vector<string> filters) -> void { | ^~~~~~~ ../hiro/core/../gtk/browser-window.cpp:5:79: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto BrowserWindow_addFilters(GtkWidget* dialog, vector<string> filters) -> void { | ^ ../hiro/core/../gtk/browser-window.cpp:5:81: error: expected ',' or ';' before '->' token 5 | static auto BrowserWindow_addFilters(GtkWidget* dialog, vector<string> filters) -> void { | ^~ ../hiro/core/../gtk/browser-window.cpp: In static member function 'static nall::string hiro::pBrowserWindow::directory(hiro::BrowserWindow::State&)': ../hiro/core/../gtk/browser-window.cpp:21:3: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 21 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/browser-window.cpp:21:14: error: 'dialog' was not declared in this scope 21 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:23:77: error: 'struct hiro::pWindow' has no member named 'widget' 23 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:23:44: error: 'GTK_WINDOW' was not declared in this scope 23 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:23:88: error: 'GtkWindow' was not declared in this scope; did you mean 'wWindow'? 23 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~ | wWindow ../hiro/core/../gtk/browser-window.cpp:23:98: error: expected primary-expression before ')' token 23 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^ ../hiro/core/../gtk/browser-window.cpp:24:5: error: 'GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER' was not declared in this scope 24 | GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:25:5: error: 'GTK_STOCK_CANCEL' was not declared in this scope 25 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:25:23: error: 'GTK_RESPONSE_CANCEL' was not declared in this scope 25 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:26:5: error: 'GTK_STOCK_OPEN' was not declared in this scope 26 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:26:21: error: 'GTK_RESPONSE_ACCEPT' was not declared in this scope 26 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:27:12: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] 27 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:27:6: error: expected primary-expression before 'const' 27 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:27:6: error: expected ')' before 'const' 27 | (const gchar*)nullptr | ~^~~~~ | ) ../hiro/core/../gtk/browser-window.cpp:30:54: error: 'GTK_FILE_CHOOSER' was not declared in this scope 30 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:30:18: error: 'gtk_file_chooser_set_current_folder' was not declared in this scope 30 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:32:21: error: 'GTK_DIALOG' was not declared in this scope 32 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:32:6: error: 'gtk_dialog_run' was not declared in this scope 32 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:33:48: error: 'GTK_FILE_CHOOSER' was not declared in this scope 33 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:33:18: error: 'gtk_file_chooser_get_filename' was not declared in this scope 33 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:35:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 35 | g_free(temp); | ^~~~~~ | free ../hiro/core/../gtk/browser-window.cpp:38:3: error: 'gtk_widget_destroy' was not declared in this scope 38 | gtk_widget_destroy(dialog); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp: In static member function 'static nall::string hiro::pBrowserWindow::open(hiro::BrowserWindow::State&)': ../hiro/core/../gtk/browser-window.cpp:46:3: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 46 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/browser-window.cpp:46:14: error: 'dialog' was not declared in this scope 46 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:48:77: error: 'struct hiro::pWindow' has no member named 'widget' 48 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:48:44: error: 'GTK_WINDOW' was not declared in this scope 48 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:48:88: error: 'GtkWindow' was not declared in this scope; did you mean 'wWindow'? 48 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~ | wWindow ../hiro/core/../gtk/browser-window.cpp:48:98: error: expected primary-expression before ')' token 48 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^ ../hiro/core/../gtk/browser-window.cpp:49:5: error: 'GTK_FILE_CHOOSER_ACTION_OPEN' was not declared in this scope 49 | GTK_FILE_CHOOSER_ACTION_OPEN, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:50:5: error: 'GTK_STOCK_CANCEL' was not declared in this scope 50 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:50:23: error: 'GTK_RESPONSE_CANCEL' was not declared in this scope 50 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:51:5: error: 'GTK_STOCK_OPEN' was not declared in this scope 51 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:51:21: error: 'GTK_RESPONSE_ACCEPT' was not declared in this scope 51 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:52:12: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] 52 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:52:6: error: expected primary-expression before 'const' 52 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:52:6: error: expected ')' before 'const' 52 | (const gchar*)nullptr | ~^~~~~ | ) ../hiro/core/../gtk/browser-window.cpp:55:54: error: 'GTK_FILE_CHOOSER' was not declared in this scope 55 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:55:18: error: 'gtk_file_chooser_set_current_folder' was not declared in this scope 55 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:58:21: error: 'GTK_DIALOG' was not declared in this scope 58 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:58:6: error: 'gtk_dialog_run' was not declared in this scope 58 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:59:48: error: 'GTK_FILE_CHOOSER' was not declared in this scope 59 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:59:18: error: 'gtk_file_chooser_get_filename' was not declared in this scope 59 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:61:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 61 | g_free(temp); | ^~~~~~ | free ../hiro/core/../gtk/browser-window.cpp:64:3: error: 'gtk_widget_destroy' was not declared in this scope 64 | gtk_widget_destroy(dialog); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp: In static member function 'static nall::string hiro::pBrowserWindow::save(hiro::BrowserWindow::State&)': ../hiro/core/../gtk/browser-window.cpp:71:3: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 71 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/browser-window.cpp:71:14: error: 'dialog' was not declared in this scope 71 | GtkWidget* dialog = gtk_file_chooser_dialog_new( | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:73:77: error: 'struct hiro::pWindow' has no member named 'widget' 73 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~ ../hiro/core/../gtk/browser-window.cpp:73:44: error: 'GTK_WINDOW' was not declared in this scope 73 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:73:88: error: 'GtkWindow' was not declared in this scope; did you mean 'wWindow'? 73 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~ | wWindow ../hiro/core/../gtk/browser-window.cpp:73:98: error: expected primary-expression before ')' token 73 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^ ../hiro/core/../gtk/browser-window.cpp:74:5: error: 'GTK_FILE_CHOOSER_ACTION_SAVE' was not declared in this scope 74 | GTK_FILE_CHOOSER_ACTION_SAVE, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:75:5: error: 'GTK_STOCK_CANCEL' was not declared in this scope 75 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:75:23: error: 'GTK_RESPONSE_CANCEL' was not declared in this scope 75 | GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:76:5: error: 'GTK_STOCK_OPEN' was not declared in this scope 76 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:76:21: error: 'GTK_RESPONSE_ACCEPT' was not declared in this scope 76 | GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:77:12: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] 77 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:77:6: error: expected primary-expression before 'const' 77 | (const gchar*)nullptr | ^~~~~ ../hiro/core/../gtk/browser-window.cpp:77:6: error: expected ')' before 'const' 77 | (const gchar*)nullptr | ~^~~~~ | ) ../hiro/core/../gtk/browser-window.cpp:80:54: error: 'GTK_FILE_CHOOSER' was not declared in this scope 80 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:80:18: error: 'gtk_file_chooser_set_current_folder' was not declared in this scope 80 | if(state.path) gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), state.path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:83:21: error: 'GTK_DIALOG' was not declared in this scope 83 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:83:6: error: 'gtk_dialog_run' was not declared in this scope 83 | if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:84:48: error: 'GTK_FILE_CHOOSER' was not declared in this scope 84 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:84:18: error: 'gtk_file_chooser_get_filename' was not declared in this scope 84 | char* temp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/browser-window.cpp:86:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 86 | g_free(temp); | ^~~~~~ | free ../hiro/core/../gtk/browser-window.cpp:89:3: error: 'gtk_widget_destroy' was not declared in this scope 89 | gtk_widget_destroy(dialog); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:10: ../hiro/core/../gtk/message-window.cpp: At global scope: ../hiro/core/../gtk/message-window.cpp:5:50: error: 'GtkMessageType' has not been declared 5 | static auto Message(MessageWindow::State& state, GtkMessageType messageStyle) -> MessageWindow::Response { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp: In function 'hiro::MessageWindow::Response hiro::Message(MessageWindow::State&, int)': ../hiro/core/../gtk/message-window.cpp:6:3: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 6 | GtkWidget* dialog = gtk_message_dialog_new( | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/message-window.cpp:6:14: error: 'dialog' was not declared in this scope 6 | GtkWidget* dialog = gtk_message_dialog_new( | ^~~~~~ ../hiro/core/../gtk/message-window.cpp:7:77: error: 'struct hiro::pWindow' has no member named 'widget' 7 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~ ../hiro/core/../gtk/message-window.cpp:7:44: error: 'GTK_WINDOW' was not declared in this scope 7 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:7:88: error: 'GtkWindow' was not declared in this scope; did you mean 'wWindow'? 7 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^~~~~~~~~ | wWindow ../hiro/core/../gtk/message-window.cpp:7:98: error: expected primary-expression before ')' token 7 | state.parent && state.parent->self() ? GTK_WINDOW(state.parent->self()->widget) : (GtkWindow*)nullptr, | ^ ../hiro/core/../gtk/message-window.cpp:8:5: error: 'GTK_DIALOG_MODAL' was not declared in this scope 8 | GTK_DIALOG_MODAL, messageStyle, GTK_BUTTONS_NONE, "%s", (const char*)state.text | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:8:37: error: 'GTK_BUTTONS_NONE' was not declared in this scope 8 | GTK_DIALOG_MODAL, messageStyle, GTK_BUTTONS_NONE, "%s", (const char*)state.text | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:6:23: error: 'gtk_message_dialog_new' was not declared in this scope 6 | GtkWidget* dialog = gtk_message_dialog_new( | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:11:19: error: 'gtk_window_set_title' was not declared in this scope 11 | if(state.title) gtk_window_set_title(GTK_WINDOW(dialog), state.title); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:12:38: error: 'gtk_window_set_title' was not declared in this scope 12 | else if(Application::state().name) gtk_window_set_title(GTK_WINDOW(dialog), Application::state().name); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:16:28: error: 'GTK_DIALOG' was not declared in this scope 16 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Ok", GTK_RESPONSE_OK, nullptr); | ^~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:16:54: error: 'GTK_RESPONSE_OK' was not declared in this scope 16 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Ok", GTK_RESPONSE_OK, nullptr); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:16:5: error: 'gtk_dialog_add_buttons' was not declared in this scope 16 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Ok", GTK_RESPONSE_OK, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:19:81: error: 'GTK_RESPONSE_CANCEL' was not declared in this scope 19 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Ok", GTK_RESPONSE_OK, "Cancel", GTK_RESPONSE_CANCEL, nullptr); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:22:55: error: 'GTK_RESPONSE_YES' was not declared in this scope 22 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Yes", GTK_RESPONSE_YES, "No", GTK_RESPONSE_NO, nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:22:79: error: 'GTK_RESPONSE_NO' was not declared in this scope 22 | gtk_dialog_add_buttons(GTK_DIALOG(dialog), "Yes", GTK_RESPONSE_YES, "No", GTK_RESPONSE_NO, nullptr); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:29:34: error: 'GTK_DIALOG' was not declared in this scope 29 | auto response = gtk_dialog_run(GTK_DIALOG(dialog)); | ^~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:29:19: error: 'gtk_dialog_run' was not declared in this scope 29 | auto response = gtk_dialog_run(GTK_DIALOG(dialog)); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:30:3: error: 'gtk_widget_destroy' was not declared in this scope 30 | gtk_widget_destroy(dialog); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:32:18: error: 'GTK_RESPONSE_OK' was not declared in this scope 32 | if(response == GTK_RESPONSE_OK) return MessageWindow::Response::Ok; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:33:18: error: 'GTK_RESPONSE_CANCEL' was not declared in this scope 33 | if(response == GTK_RESPONSE_CANCEL) return MessageWindow::Response::Cancel; | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:34:18: error: 'GTK_RESPONSE_YES' was not declared in this scope 34 | if(response == GTK_RESPONSE_YES) return MessageWindow::Response::Yes; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp:35:18: error: 'GTK_RESPONSE_NO' was not declared in this scope 35 | if(response == GTK_RESPONSE_NO) return MessageWindow::Response::No; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp: In static member function 'static hiro::MessageWindow::Response hiro::pMessageWindow::error(hiro::MessageWindow::State&)': ../hiro/core/../gtk/message-window.cpp:47:25: error: 'GTK_MESSAGE_ERROR' was not declared in this scope 47 | return Message(state, GTK_MESSAGE_ERROR); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp: In static member function 'static hiro::MessageWindow::Response hiro::pMessageWindow::information(hiro::MessageWindow::State&)': ../hiro/core/../gtk/message-window.cpp:51:25: error: 'GTK_MESSAGE_INFO' was not declared in this scope 51 | return Message(state, GTK_MESSAGE_INFO); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp: In static member function 'static hiro::MessageWindow::Response hiro::pMessageWindow::question(hiro::MessageWindow::State&)': ../hiro/core/../gtk/message-window.cpp:55:25: error: 'GTK_MESSAGE_QUESTION' was not declared in this scope 55 | return Message(state, GTK_MESSAGE_QUESTION); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/message-window.cpp: In static member function 'static hiro::MessageWindow::Response hiro::pMessageWindow::warning(hiro::MessageWindow::State&)': ../hiro/core/../gtk/message-window.cpp:59:25: error: 'GTK_MESSAGE_WARNING' was not declared in this scope 59 | return Message(state, GTK_MESSAGE_WARNING); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:15: ../hiro/core/../gtk/timer.cpp: In function 'int hiro::Timer_trigger(pTimer*)': ../hiro/core/../gtk/timer.cpp:14:41: error: 'GSourceFunc' was not declared in this scope 14 | g_timeout_add(p->state().interval, (GSourceFunc)Timer_trigger, (gpointer)p); | ^~~~~~~~~~~ ../hiro/core/../gtk/timer.cpp:14:69: error: 'gpointer' was not declared in this scope 14 | g_timeout_add(p->state().interval, (GSourceFunc)Timer_trigger, (gpointer)p); | ^~~~~~~~ ../hiro/core/../gtk/timer.cpp:14:5: error: 'g_timeout_add' was not declared in this scope 14 | g_timeout_add(p->state().interval, (GSourceFunc)Timer_trigger, (gpointer)p); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/timer.cpp: In member function 'virtual void hiro::pTimer::setEnabled(bool)': ../hiro/core/../gtk/timer.cpp:29:38: error: 'GSourceFunc' was not declared in this scope 29 | g_timeout_add(state().interval, (GSourceFunc)Timer_trigger, (gpointer)this); | ^~~~~~~~~~~ ../hiro/core/../gtk/timer.cpp:29:66: error: 'gpointer' was not declared in this scope 29 | g_timeout_add(state().interval, (GSourceFunc)Timer_trigger, (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/timer.cpp:29:5: error: 'g_timeout_add' was not declared in this scope 29 | g_timeout_add(state().interval, (GSourceFunc)Timer_trigger, (gpointer)this); | ^~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:16: ../hiro/core/../gtk/window.cpp: At global scope: ../hiro/core/../gtk/window.cpp:5:26: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:5:37: error: 'widget' was not declared in this scope; did you mean 'Widget'? 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:5:45: error: 'GdkEvent' was not declared in this scope 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:5:55: error: 'event' was not declared in this scope; did you mean 'servent'? 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:5:69: error: expected primary-expression before '*' token 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:5:71: error: 'p' was not declared in this scope 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:5:72: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:5:74: error: expected ',' or ';' before '->' token 5 | static auto Window_close(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:16:25: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:16:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:16:44: error: 'cairo_t' was not declared in this scope 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^~~~~~~ ../hiro/core/../gtk/window.cpp:16:53: error: 'context' was not declared in this scope; did you mean 'ucontext'? 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^~~~~~~ | ucontext ../hiro/core/../gtk/window.cpp:16:69: error: expected primary-expression before '*' token 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:16:71: error: 'p' was not declared in this scope 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:16:72: error: expression list treated as compound expression in initializer [-fpermissive] 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:16:74: error: expected ',' or ';' before '->' token 16 | static auto Window_draw(GtkWidget* widget, cairo_t* context, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:46:27: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:46:38: error: 'widget' was not declared in this scope; did you mean 'Widget'? 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:46:46: error: 'GdkEvent' was not declared in this scope 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:46:56: error: 'event' was not declared in this scope; did you mean 'servent'? 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:46:70: error: expected primary-expression before '*' token 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:46:72: error: 'p' was not declared in this scope 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:46:73: error: expression list treated as compound expression in initializer [-fpermissive] 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:46:75: error: expected ',' or ';' before '->' token 46 | static auto Window_expose(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:53:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:53:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:53:49: error: 'GdkEvent' was not declared in this scope 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:53:59: error: 'event' was not declared in this scope; did you mean 'servent'? 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:53:73: error: expected primary-expression before '*' token 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:53:75: error: 'p' was not declared in this scope 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:53:76: error: expression list treated as compound expression in initializer [-fpermissive] 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:53:78: error: expected ',' or ';' before '->' token 53 | static auto Window_configure(GtkWidget* widget, GdkEvent* event, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:58:25: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:58:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:58:44: error: 'GdkDragContext' was not declared in this scope 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:58:60: error: 'context' was not declared in this scope; did you mean 'ucontext'? 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~~ | ucontext ../hiro/core/../gtk/window.cpp:58:69: error: expected primary-expression before 'signed' 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~ ../hiro/core/../gtk/window.cpp:58:79: error: expected primary-expression before 'signed' 58 | static auto Window_drop(GtkWidget* widget, GdkDragContext* context, signed x, signed y, | ^~~~~~ ../hiro/core/../gtk/window.cpp:59:1: error: 'GtkSelectionData' was not declared in this scope 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:59:19: error: 'data' was not declared in this scope 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^~~~ ../hiro/core/../gtk/window.cpp:59:25: error: expected primary-expression before 'unsigned' 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:59:40: error: expected primary-expression before 'unsigned' 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:59:67: error: expected primary-expression before '*' token 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:59:69: error: 'p' was not declared in this scope 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:59:70: error: expression list treated as compound expression in initializer [-fpermissive] 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:59:72: error: expected ',' or ';' before '->' token 59 | GtkSelectionData* data, unsigned type, unsigned timestamp, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp:66:38: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:66:49: error: 'widget' was not declared in this scope; did you mean 'Widget'? 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:66:57: error: expected primary-expression before 'int' 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^~~ ../hiro/core/../gtk/window.cpp:66:76: error: expected primary-expression before 'int' 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^~~ ../hiro/core/../gtk/window.cpp:66:93: error: expression list treated as compound expression in initializer [-fpermissive] 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^ ../hiro/core/../gtk/window.cpp:66:95: error: expected ',' or ';' before '->' token 66 | static auto Window_getPreferredWidth(GtkWidget* widget, int* minimalWidth, int* naturalWidth) -> void { | ^~ ../hiro/core/../gtk/window.cpp:73:39: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:73:50: error: 'widget' was not declared in this scope; did you mean 'Widget'? 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:73:58: error: expected primary-expression before 'int' 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^~~ ../hiro/core/../gtk/window.cpp:73:78: error: expected primary-expression before 'int' 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^~~ ../hiro/core/../gtk/window.cpp:73:96: error: expression list treated as compound expression in initializer [-fpermissive] 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^ ../hiro/core/../gtk/window.cpp:73:98: error: expected ',' or ';' before '->' token 73 | static auto Window_getPreferredHeight(GtkWidget* widget, int* minimalHeight, int* naturalHeight) -> void { | ^~ ../hiro/core/../gtk/window.cpp:80:29: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:80:40: error: 'widget' was not declared in this scope; did you mean 'Widget'? 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:80:48: error: 'GdkEventKey' was not declared in this scope 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:80:61: error: 'event' was not declared in this scope; did you mean 'servent'? 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:80:75: error: expected primary-expression before '*' token 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:80:77: error: 'p' was not declared in this scope 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:80:78: error: expression list treated as compound expression in initializer [-fpermissive] 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:80:80: error: expected ',' or ';' before '->' token 80 | static auto Window_keyPress(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:95:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:95:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:95:50: error: 'GdkEventKey' was not declared in this scope 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:95:63: error: 'event' was not declared in this scope; did you mean 'servent'? 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:95:77: error: expected primary-expression before '*' token 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:95:79: error: 'p' was not declared in this scope 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:95:80: error: expression list treated as compound expression in initializer [-fpermissive] 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^ ../hiro/core/../gtk/window.cpp:95:82: error: expected ',' or ';' before '->' token 95 | static auto Window_keyRelease(GtkWidget* widget, GdkEventKey* event, pWindow* p) -> signed { | ^~ ../hiro/core/../gtk/window.cpp:102:28: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:102:39: error: 'widget' was not declared in this scope; did you mean 'Widget'? 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:102:54: error: expected primary-expression before '*' token 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:102:56: error: 'p' was not declared in this scope 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:102:57: error: expression list treated as compound expression in initializer [-fpermissive] 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:102:59: error: expected ',' or ';' before '->' token 102 | static auto Window_realize(GtkWidget* widget, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp:105:33: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:105:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:105:52: error: 'GtkAllocation' was not declared in this scope 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:105:67: error: 'allocation' was not declared in this scope 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:105:86: error: expected primary-expression before '*' token 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:105:88: error: 'p' was not declared in this scope 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:105:89: error: expression list treated as compound expression in initializer [-fpermissive] 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:105:91: error: expected ',' or ';' before '->' token 105 | static auto Window_sizeAllocate(GtkWidget* widget, GtkAllocation* allocation, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp:112:32: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:112:43: error: 'widget' was not declared in this scope; did you mean 'Widget'? 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:112:51: error: 'GtkRequisition' was not declared in this scope 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:112:67: error: 'requisition' was not declared in this scope 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:112:87: error: expected primary-expression before '*' token 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:112:89: error: 'p' was not declared in this scope 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:112:90: error: expression list treated as compound expression in initializer [-fpermissive] 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:112:92: error: expected ',' or ';' before '->' token 112 | static auto Window_sizeRequest(GtkWidget* widget, GtkRequisition* requisition, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp:117:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:117:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:117:50: error: 'GdkEvent' was not declared in this scope 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:117:60: error: 'event' was not declared in this scope; did you mean 'servent'? 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^~~~~ | servent ../hiro/core/../gtk/window.cpp:117:74: error: expected primary-expression before '*' token 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:117:76: error: 'p' was not declared in this scope 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:117:77: error: expression list treated as compound expression in initializer [-fpermissive] 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:117:79: error: expected ',' or ';' before '->' token 117 | static auto Window_stateEvent(GtkWidget* widget, GdkEvent* event, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp:131:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/window.cpp:131:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:131:56: error: expected primary-expression before '*' token 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:131:58: error: 'p' was not declared in this scope 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:131:59: error: expression list treated as compound expression in initializer [-fpermissive] 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^ ../hiro/core/../gtk/window.cpp:131:61: error: expected ',' or ';' before '->' token 131 | static auto Window_unrealize(GtkWidget* widget, pWindow* p) -> void { | ^~ ../hiro/core/../gtk/window.cpp: In member function 'virtual void hiro::pWindow::construct()': ../hiro/core/../gtk/window.cpp:135:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 135 | widget = gtk_window_new(GTK_WINDOW_TOPLEVEL); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:135:27: error: 'GTK_WINDOW_TOPLEVEL' was not declared in this scope 135 | widget = gtk_window_new(GTK_WINDOW_TOPLEVEL); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:135:12: error: 'gtk_window_new' was not declared in this scope 135 | widget = gtk_window_new(GTK_WINDOW_TOPLEVEL); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:136:28: error: 'GTK_WINDOW' was not declared in this scope 136 | gtk_window_set_resizable(GTK_WINDOW(widget), true); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:136:3: error: 'gtk_window_set_resizable' was not declared in this scope 136 | gtk_window_set_resizable(GTK_WINDOW(widget), true); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:144:44: error: 'gdk_screen_get_default' was not declared in this scope 144 | auto visual = gdk_screen_get_rgba_visual(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:144:17: error: 'gdk_screen_get_rgba_visual' was not declared in this scope 144 | auto visual = gdk_screen_get_rgba_visual(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:145:24: error: 'gdk_screen_get_system_visual' was not declared in this scope 145 | if(!visual) visual = gdk_screen_get_system_visual(gdk_screen_get_default()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:146:14: error: 'gtk_widget_set_visual' was not declared in this scope 146 | if(visual) gtk_widget_set_visual(widget, visual); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:148:3: error: 'gtk_widget_set_app_paintable' was not declared in this scope 148 | gtk_widget_set_app_paintable(widget, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:149:33: error: 'GDK_CONFIGURE' was not declared in this scope 149 | gtk_widget_add_events(widget, GDK_CONFIGURE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:149:3: error: 'gtk_widget_add_events' was not declared in this scope 149 | gtk_widget_add_events(widget, GDK_CONFIGURE); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:154:3: error: 'menuContainer' was not declared in this scope 154 | menuContainer = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:154:31: error: 'GTK_ORIENTATION_VERTICAL' was not declared in this scope 154 | menuContainer = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:154:19: error: 'gtk_box_new' was not declared in this scope 154 | menuContainer = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); | ^~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:156:21: error: 'GTK_CONTAINER' was not declared in this scope 156 | gtk_container_add(GTK_CONTAINER(widget), menuContainer); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:156:3: error: 'gtk_container_add' was not declared in this scope 156 | gtk_container_add(GTK_CONTAINER(widget), menuContainer); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:157:3: error: 'gtk_widget_show' was not declared in this scope 157 | gtk_widget_show(menuContainer); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:159:3: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 159 | gtkMenu = gtk_menu_bar_new(); | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp:159:13: error: 'gtk_menu_bar_new' was not declared in this scope 159 | gtkMenu = gtk_menu_bar_new(); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:160:22: error: 'GTK_BOX' was not declared in this scope 160 | gtk_box_pack_start(GTK_BOX(menuContainer), gtkMenu, false, false, 0); | ^~~~~~~ ../hiro/core/../gtk/window.cpp:160:3: error: 'gtk_box_pack_start' was not declared in this scope 160 | gtk_box_pack_start(GTK_BOX(menuContainer), gtkMenu, false, false, 0); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:162:3: error: 'formContainer' was not declared in this scope 162 | formContainer = gtk_fixed_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:162:19: error: 'gtk_fixed_new' was not declared in this scope 162 | formContainer = gtk_fixed_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:166:3: error: 'statusContainer' was not declared in this scope 166 | statusContainer = gtk_event_box_new(); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:166:21: error: 'gtk_event_box_new' was not declared in this scope 166 | statusContainer = gtk_event_box_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:167:3: error: 'gtkStatus' was not declared in this scope 167 | gtkStatus = gtk_statusbar_new(); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:167:15: error: 'gtk_statusbar_new' was not declared in this scope 167 | gtkStatus = gtk_statusbar_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:171:3: error: 'gtk_window_set_has_resize_grip' was not declared in this scope 171 | gtk_window_set_has_resize_grip(GTK_WINDOW(widget), true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:185:20: error: 'G_OBJECT' was not declared in this scope 185 | g_signal_connect(G_OBJECT(widget), "delete-event", G_CALLBACK(Window_close), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:185:54: error: 'G_CALLBACK' was not declared in this scope 185 | g_signal_connect(G_OBJECT(widget), "delete-event", G_CALLBACK(Window_close), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:185:81: error: 'gpointer' was not declared in this scope 185 | g_signal_connect(G_OBJECT(widget), "delete-event", G_CALLBACK(Window_close), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:185:3: error: 'g_signal_connect' was not declared in this scope 185 | g_signal_connect(G_OBJECT(widget), "delete-event", G_CALLBACK(Window_close), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:189:81: error: expected ')' before 'this' 189 | g_signal_connect(G_OBJECT(widget), "draw", G_CALLBACK(Window_draw), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:191:97: error: expected ')' before 'this' 191 | g_signal_connect(G_OBJECT(widget), "configure-event", G_CALLBACK(Window_configure), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:192:95: error: expected ')' before 'this' 192 | g_signal_connect(G_OBJECT(widget), "drag-data-received", G_CALLBACK(Window_drop), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:193:96: error: expected ')' before 'this' 193 | g_signal_connect(G_OBJECT(widget), "key-press-event", G_CALLBACK(Window_keyPress), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:194:100: error: expected ')' before 'this' 194 | g_signal_connect(G_OBJECT(widget), "key-release-event", G_CALLBACK(Window_keyRelease), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:195:87: error: expected ')' before 'this' 195 | g_signal_connect(G_OBJECT(widget), "realize", G_CALLBACK(Window_realize), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:196:105: error: expected ')' before 'this' 196 | g_signal_connect(G_OBJECT(formContainer), "size-allocate", G_CALLBACK(Window_sizeAllocate), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:200:22: error: 'GTK_WIDGET_GET_CLASS' was not declared in this scope 200 | auto widgetClass = GTK_WIDGET_GET_CLASS(formContainer); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:204:91: error: expected ')' before 'this' 204 | g_signal_connect(G_OBJECT(widget), "unrealize", G_CALLBACK(Window_unrealize), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:205:101: error: expected ')' before 'this' 205 | g_signal_connect(G_OBJECT(widget), "window-state-event", G_CALLBACK(Window_stateEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:207:65: error: expected ')' before 'this' 207 | g_object_set_data(G_OBJECT(widget), "hiro::window", (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp:207:3: error: 'g_object_set_data' was not declared in this scope 207 | g_object_set_data(G_OBJECT(widget), "hiro::window", (gpointer)this); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:208:72: error: expected ')' before 'this' 208 | g_object_set_data(G_OBJECT(formContainer), "hiro::window", (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/window.cpp: In member function 'virtual void hiro::pWindow::destruct()': ../hiro/core/../gtk/window.cpp:221:22: error: 'widget' was not declared in this scope; did you mean 'Widget'? 221 | gtk_widget_destroy(widget); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:221:3: error: 'gtk_widget_destroy' was not declared in this scope 221 | gtk_widget_destroy(widget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'virtual bool hiro::pWindow::focused() const': ../hiro/core/../gtk/window.cpp:241:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 241 | return gtk_window_is_active(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:241:31: error: 'GTK_WINDOW' was not declared in this scope 241 | return gtk_window_is_active(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:241:10: error: 'gtk_window_is_active' was not declared in this scope 241 | return gtk_window_is_active(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'uint hiro::pWindow::monitor() const': ../hiro/core/../gtk/window.cpp:271:31: error: 'widget' was not declared in this scope; did you mean 'Widget'? 271 | if(!gtk_widget_get_realized(widget)) return 0; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:271:7: error: 'gtk_widget_get_realized' was not declared in this scope 271 | if(!gtk_widget_get_realized(widget)) return 0; | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:272:39: error: 'widget' was not declared in this scope; did you mean 'Widget'? 272 | auto window = gtk_widget_get_window(widget); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:272:17: error: 'gtk_widget_get_window' was not declared in this scope 272 | auto window = gtk_widget_get_window(widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:273:43: error: 'gdk_screen_get_default' was not declared in this scope 273 | return gdk_screen_get_monitor_at_window(gdk_screen_get_default(), window); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:273:10: error: 'gdk_screen_get_monitor_at_window' was not declared in this scope 273 | return gdk_screen_get_monitor_at_window(gdk_screen_get_default(), window); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/window.cpp:288:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 288 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/window.cpp:289:24: error: 'widget' was not declared in this scope; did you mean 'Widget'? 289 | gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:289:32: error: 'GTK_STATE_NORMAL' was not declared in this scope 289 | gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:289:59: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 289 | gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/window.cpp:289:3: error: 'gtk_widget_modify_bg' was not declared in this scope 289 | gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setDroppable(bool)': ../hiro/core/../gtk/window.cpp:296:21: error: 'widget' was not declared in this scope; did you mean 'Widget'? 296 | gtk_drag_dest_set(widget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:296:29: error: 'GTK_DEST_DEFAULT_ALL' was not declared in this scope 296 | gtk_drag_dest_set(widget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:296:63: error: 'GDK_ACTION_COPY' was not declared in this scope 296 | gtk_drag_dest_set(widget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:296:3: error: 'gtk_drag_dest_set' was not declared in this scope 296 | gtk_drag_dest_set(widget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:297:17: error: 'gtk_drag_dest_add_uri_targets' was not declared in this scope 297 | if(droppable) gtk_drag_dest_add_uri_targets(widget); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'virtual void hiro::pWindow::setFocused()': ../hiro/core/../gtk/window.cpp:311:33: error: 'widget' was not declared in this scope; did you mean 'Widget'? 311 | gtk_window_present(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:311:22: error: 'GTK_WINDOW' was not declared in this scope 311 | gtk_window_present(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:311:3: error: 'gtk_window_present' was not declared in this scope 311 | gtk_window_present(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setFullScreen(bool)': ../hiro/core/../gtk/window.cpp:316:38: error: 'widget' was not declared in this scope; did you mean 'Widget'? 316 | gtk_window_fullscreen(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:316:27: error: 'GTK_WINDOW' was not declared in this scope 316 | gtk_window_fullscreen(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:316:5: error: 'gtk_window_fullscreen' was not declared in this scope 316 | gtk_window_fullscreen(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:318:40: error: 'widget' was not declared in this scope; did you mean 'Widget'? 318 | gtk_window_unfullscreen(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:318:29: error: 'GTK_WINDOW' was not declared in this scope 318 | gtk_window_unfullscreen(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:318:5: error: 'gtk_window_unfullscreen' was not declared in this scope 318 | gtk_window_unfullscreen(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setGeometry(hiro::Geometry)': ../hiro/core/../gtk/window.cpp:338:30: error: 'widget' was not declared in this scope; did you mean 'Widget'? 338 | gtk_window_move(GTK_WINDOW(widget), geometry.x() - margin.x(), geometry.y() - margin.y()); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:338:19: error: 'GTK_WINDOW' was not declared in this scope 338 | gtk_window_move(GTK_WINDOW(widget), geometry.x() - margin.x(), geometry.y() - margin.y()); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:338:3: error: 'gtk_window_move' was not declared in this scope 338 | gtk_window_move(GTK_WINDOW(widget), geometry.x() - margin.x(), geometry.y() - margin.y()); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:339:3: error: 'gtk_window_resize' was not declared in this scope 339 | gtk_window_resize(GTK_WINDOW(widget), geometry.width(), geometry.height() + _menuHeight() + _statusHeight()); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setMaximized(bool)': ../hiro/core/../gtk/window.cpp:350:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 350 | gtk_window_maximize(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:350:25: error: 'GTK_WINDOW' was not declared in this scope 350 | gtk_window_maximize(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:350:5: error: 'gtk_window_maximize' was not declared in this scope 350 | gtk_window_maximize(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:352:38: error: 'widget' was not declared in this scope; did you mean 'Widget'? 352 | gtk_window_unmaximize(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:352:27: error: 'GTK_WINDOW' was not declared in this scope 352 | gtk_window_unmaximize(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:352:5: error: 'gtk_window_unmaximize' was not declared in this scope 352 | gtk_window_unmaximize(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setMaximumSize(hiro::Size)': ../hiro/core/../gtk/window.cpp:360:3: error: 'GdkGeometry' was not declared in this scope; did you mean 'setGeometry'? 360 | GdkGeometry geometry; | ^~~~~~~~~~~ | setGeometry ../hiro/core/../gtk/window.cpp:362:3: error: 'geometry' was not declared in this scope; did you mean 'Geometry'? 362 | geometry.max_width = !state().resizable ? state().geometry.width() : size.width() ? size.width() : 32767; | ^~~~~~~~ | Geometry ../hiro/core/../gtk/window.cpp:364:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 364 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MAX_SIZE); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:364:33: error: 'GTK_WINDOW' was not declared in this scope 364 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MAX_SIZE); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:364:73: error: 'GDK_HINT_MAX_SIZE' was not declared in this scope 364 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MAX_SIZE); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:364:3: error: 'gtk_window_set_geometry_hints' was not declared in this scope 364 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MAX_SIZE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setMinimized(bool)': ../hiro/core/../gtk/window.cpp:370:35: error: 'widget' was not declared in this scope; did you mean 'Widget'? 370 | gtk_window_iconify(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:370:24: error: 'GTK_WINDOW' was not declared in this scope 370 | gtk_window_iconify(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:370:5: error: 'gtk_window_iconify' was not declared in this scope 370 | gtk_window_iconify(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:372:37: error: 'widget' was not declared in this scope; did you mean 'Widget'? 372 | gtk_window_deiconify(GTK_WINDOW(widget)); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:372:26: error: 'GTK_WINDOW' was not declared in this scope 372 | gtk_window_deiconify(GTK_WINDOW(widget)); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:372:5: error: 'gtk_window_deiconify' was not declared in this scope 372 | gtk_window_deiconify(GTK_WINDOW(widget)); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setMinimumSize(hiro::Size)': ../hiro/core/../gtk/window.cpp:380:31: error: 'formContainer' was not declared in this scope 380 | gtk_widget_set_size_request(formContainer, size.width(), size.height()); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:380:3: error: 'gtk_widget_set_size_request' was not declared in this scope 380 | gtk_widget_set_size_request(formContainer, size.width(), size.height()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:383:3: error: 'GdkGeometry' was not declared in this scope; did you mean 'setGeometry'? 383 | GdkGeometry geometry; | ^~~~~~~~~~~ | setGeometry ../hiro/core/../gtk/window.cpp:385:3: error: 'geometry' was not declared in this scope; did you mean 'Geometry'? 385 | geometry.min_width = !state().resizable ? state().geometry.width() : size.width() ? size.width() : 1; | ^~~~~~~~ | Geometry ../hiro/core/../gtk/window.cpp:387:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 387 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MIN_SIZE); //for GTK2 | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:387:33: error: 'GTK_WINDOW' was not declared in this scope 387 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MIN_SIZE); //for GTK2 | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:387:73: error: 'GDK_HINT_MIN_SIZE' was not declared in this scope 387 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MIN_SIZE); //for GTK2 | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:387:3: error: 'gtk_window_set_geometry_hints' was not declared in this scope 387 | gtk_window_set_geometry_hints(GTK_WINDOW(widget), nullptr, &geometry, GDK_HINT_MIN_SIZE); //for GTK2 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setModal(bool)': ../hiro/core/../gtk/window.cpp:392:37: error: 'widget' was not declared in this scope; did you mean 'Widget'? 392 | gtk_window_set_modal(GTK_WINDOW(widget), true); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:392:26: error: 'GTK_WINDOW' was not declared in this scope 392 | gtk_window_set_modal(GTK_WINDOW(widget), true); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:392:5: error: 'gtk_window_set_modal' was not declared in this scope 392 | gtk_window_set_modal(GTK_WINDOW(widget), true); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setResizable(bool)': ../hiro/core/../gtk/window.cpp:406:39: error: 'widget' was not declared in this scope; did you mean 'Widget'? 406 | gtk_window_set_resizable(GTK_WINDOW(widget), resizable); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:406:28: error: 'GTK_WINDOW' was not declared in this scope 406 | gtk_window_set_resizable(GTK_WINDOW(widget), resizable); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:406:3: error: 'gtk_window_set_resizable' was not declared in this scope 406 | gtk_window_set_resizable(GTK_WINDOW(widget), resizable); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:412:3: error: 'gtk_window_set_has_resize_grip' was not declared in this scope 412 | gtk_window_set_has_resize_grip(GTK_WINDOW(widget), resizable && statusBarVisible); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::setTitle(const nall::string&)': ../hiro/core/../gtk/window.cpp:420:35: error: 'widget' was not declared in this scope; did you mean 'Widget'? 420 | gtk_window_set_title(GTK_WINDOW(widget), title ? title : " "); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:420:24: error: 'GTK_WINDOW' was not declared in this scope 420 | gtk_window_set_title(GTK_WINDOW(widget), title ? title : " "); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:420:3: error: 'gtk_window_set_title' was not declared in this scope 420 | gtk_window_set_title(GTK_WINDOW(widget), title ? title : " "); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'virtual void hiro::pWindow::setVisible(bool)': ../hiro/core/../gtk/window.cpp:424:26: error: 'widget' was not declared in this scope; did you mean 'Widget'? 424 | gtk_widget_set_visible(widget, visible); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:424:3: error: 'gtk_widget_set_visible' was not declared in this scope 424 | gtk_widget_set_visible(widget, visible); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_append(hiro::mWidget&)': ../hiro/core/../gtk/window.cpp:433:18: error: 'struct hiro::pWidget' has no member named 'gtkParent' 433 | pWidget->gtkParent = instance->container(widget); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:433:40: error: 'struct hiro::pWidget' has no member named 'container' 433 | pWidget->gtkParent = instance->container(widget); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:436:16: error: 'struct hiro::pWidget' has no member named 'gtkParent' 436 | pWidget->gtkParent = formContainer; | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:436:28: error: 'formContainer' was not declared in this scope 436 | pWidget->gtkParent = formContainer; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:438:17: error: 'struct hiro::pWidget' has no member named 'gtkParent' 438 | if(pWidget->gtkParent) { | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:439:40: error: 'struct hiro::pWidget' has no member named 'gtkParent' 439 | gtk_fixed_put(GTK_FIXED(pWidget->gtkParent), pWidget->gtkWidget, 0, 0); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:439:21: error: 'GTK_FIXED' was not declared in this scope; did you mean 'MAP_FIXED'? 439 | gtk_fixed_put(GTK_FIXED(pWidget->gtkParent), pWidget->gtkWidget, 0, 0); | ^~~~~~~~~ | MAP_FIXED ../hiro/core/../gtk/window.cpp:439:61: error: 'struct hiro::pWidget' has no member named 'gtkWidget'; did you mean 'pWidget'? 439 | gtk_fixed_put(GTK_FIXED(pWidget->gtkParent), pWidget->gtkWidget, 0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/window.cpp:439:7: error: 'gtk_fixed_put' was not declared in this scope 439 | gtk_fixed_put(GTK_FIXED(pWidget->gtkParent), pWidget->gtkWidget, 0, 0); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_append(hiro::mMenu&)': ../hiro/core/../gtk/window.cpp:446:42: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 446 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), pMenu->widget); | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp:446:27: error: 'GTK_MENU_SHELL' was not declared in this scope 446 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), pMenu->widget); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:446:59: error: 'struct hiro::pMenu' has no member named 'widget' 446 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), pMenu->widget); | ^~~~~~ ../hiro/core/../gtk/window.cpp:446:5: error: 'gtk_menu_shell_append' was not declared in this scope 446 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), pMenu->widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'bool hiro::pWindow::_setIcon(const nall::string&)': ../hiro/core/../gtk/window.cpp:474:46: error: 'widget' was not declared in this scope; did you mean 'Widget'? 474 | gtk_window_set_icon_from_file(GTK_WINDOW(widget), filename, nullptr); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:474:35: error: 'GTK_WINDOW' was not declared in this scope 474 | gtk_window_set_icon_from_file(GTK_WINDOW(widget), filename, nullptr); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:474:5: error: 'gtk_window_set_icon_from_file' was not declared in this scope 474 | gtk_window_set_icon_from_file(GTK_WINDOW(widget), filename, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:483:19: error: 'CreatePixbuf' was not declared in this scope 483 | auto pixbuf = CreatePixbuf(icon); | ^~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:484:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 484 | gtk_window_set_icon(GTK_WINDOW(widget), pixbuf); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:484:25: error: 'GTK_WINDOW' was not declared in this scope 484 | gtk_window_set_icon(GTK_WINDOW(widget), pixbuf); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:484:5: error: 'gtk_window_set_icon' was not declared in this scope 484 | gtk_window_set_icon(GTK_WINDOW(widget), pixbuf); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:485:20: error: 'G_OBJECT' was not declared in this scope 485 | g_object_unref(G_OBJECT(pixbuf)); | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:485:5: error: 'g_object_unref' was not declared in this scope 485 | g_object_unref(G_OBJECT(pixbuf)); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setMenuEnabled(bool)': ../hiro/core/../gtk/window.cpp:493:28: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 493 | gtk_widget_set_sensitive(gtkMenu, enabled); | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp:493:3: error: 'gtk_widget_set_sensitive' was not declared in this scope 493 | gtk_widget_set_sensitive(gtkMenu, enabled); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setMenuFont(const hiro::Font&)': ../hiro/core/../gtk/window.cpp:497:18: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 497 | pFont::setFont(gtkMenu, font); | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setMenuVisible(bool)': ../hiro/core/../gtk/window.cpp:501:26: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 501 | gtk_widget_set_visible(gtkMenu, visible); | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp:501:3: error: 'gtk_widget_set_visible' was not declared in this scope 501 | gtk_widget_set_visible(gtkMenu, visible); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setStatusEnabled(bool)': ../hiro/core/../gtk/window.cpp:505:28: error: 'gtkStatus' was not declared in this scope 505 | gtk_widget_set_sensitive(gtkStatus, enabled); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:505:3: error: 'gtk_widget_set_sensitive' was not declared in this scope 505 | gtk_widget_set_sensitive(gtkStatus, enabled); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setStatusFont(const hiro::Font&)': ../hiro/core/../gtk/window.cpp:509:18: error: 'gtkStatus' was not declared in this scope 509 | pFont::setFont(gtkStatus, font); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setStatusText(const nall::string&)': ../hiro/core/../gtk/window.cpp:513:35: error: 'gtkStatus' was not declared in this scope 513 | gtk_statusbar_pop(GTK_STATUSBAR(gtkStatus), 1); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:513:21: error: 'GTK_STATUSBAR' was not declared in this scope 513 | gtk_statusbar_pop(GTK_STATUSBAR(gtkStatus), 1); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:513:3: error: 'gtk_statusbar_pop' was not declared in this scope 513 | gtk_statusbar_pop(GTK_STATUSBAR(gtkStatus), 1); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:514:3: error: 'gtk_statusbar_push' was not declared in this scope 514 | gtk_statusbar_push(GTK_STATUSBAR(gtkStatus), 1, text); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_setStatusVisible(bool)': ../hiro/core/../gtk/window.cpp:518:26: error: 'gtkStatus' was not declared in this scope 518 | gtk_widget_set_visible(gtkStatus, visible); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:518:3: error: 'gtk_widget_set_visible' was not declared in this scope 518 | gtk_widget_set_visible(gtkStatus, visible); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_synchronizeGeometry()': ../hiro/core/../gtk/window.cpp:546:31: error: 'widget' was not declared in this scope; did you mean 'Widget'? 546 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:546:7: error: 'gtk_widget_get_realized' was not declared in this scope 546 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:547:30: error: 'widget' was not declared in this scope; did you mean 'Widget'? 547 | if(!gtk_widget_get_visible(widget)) return; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:547:7: error: 'gtk_widget_get_visible' was not declared in this scope 547 | if(!gtk_widget_get_visible(widget)) return; | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:551:3: error: 'GtkAllocation' was not declared in this scope 551 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:552:29: error: 'widget' was not declared in this scope; did you mean 'Widget'? 552 | gtk_widget_get_allocation(widget, &allocation); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:552:38: error: 'allocation' was not declared in this scope 552 | gtk_widget_get_allocation(widget, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:552:3: error: 'gtk_widget_get_allocation' was not declared in this scope 552 | gtk_widget_get_allocation(widget, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:555:26: error: 'lastSize' was not declared in this scope 555 | if(allocation.width != lastSize.width || allocation.height != lastSize.height) { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:557:29: error: no matching function for call to 'hiro::Geometry::setSize(<brace-enclosed initializer list>)' 557 | state().geometry.setSize({allocation.width, allocation.height}); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/core.hpp:271:8: note: candidate: 'hiro::Geometry::type& hiro::Geometry::setSize(hiro::Size)' 271 | auto setSize(Size size = {}) -> type&; | ^~~~~~~ ../hiro/core/core.hpp:271:21: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'hiro::Size' 271 | auto setSize(Size size = {}) -> type&; | ~~~~~^~~~~~~~~ ../hiro/core/core.hpp:272:8: note: candidate: 'hiro::Geometry::type& hiro::Geometry::setSize(float, float)' 272 | auto setSize(float width, float height) -> type&; | ^~~~~~~ ../hiro/core/core.hpp:272:8: note: candidate expects 2 arguments, 1 provided ../hiro/core/../gtk/window.cpp:566:18: error: expected ';' before 'rectangle' 566 | GtkAllocation rectangle; | ^~~~~~~~~~ | ; ../hiro/core/../gtk/window.cpp:567:40: error: 'rectangle' was not declared in this scope 567 | gtk_widget_get_allocation(widget, &rectangle); | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:568:27: error: 'G_OBJECT' was not declared in this scope 568 | g_signal_emit_by_name(G_OBJECT(widget), "size-allocate", &rectangle, (gpointer)this, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:568:75: error: 'gpointer' was not declared in this scope 568 | g_signal_emit_by_name(G_OBJECT(widget), "size-allocate", &rectangle, (gpointer)this, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:568:5: error: 'g_signal_emit_by_name' was not declared in this scope 568 | g_signal_emit_by_name(G_OBJECT(widget), "size-allocate", &rectangle, (gpointer)this, nullptr); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:570:3: error: 'lastSize' was not declared in this scope 570 | lastSize = allocation; | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:572:20: error: 'gtk_widget_get_window' was not declared in this scope 572 | auto gdkWindow = gtk_widget_get_window(widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:573:3: error: 'gdk_window_get_origin' was not declared in this scope 573 | gdk_window_get_origin(gdkWindow, &allocation.x, &allocation.y); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:575:22: error: 'lastMove' was not declared in this scope 575 | if(allocation.x != lastMove.x || allocation.y != lastMove.y) { | ^~~~~~~~ ../hiro/core/../gtk/window.cpp:576:33: error: no matching function for call to 'hiro::Geometry::setPosition(<brace-enclosed initializer list>)' 576 | state().geometry.setPosition({allocation.x, allocation.y}); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/core.hpp:269:8: note: candidate: 'hiro::Geometry::type& hiro::Geometry::setPosition(hiro::Position)' 269 | auto setPosition(Position position = {}) -> type&; | ^~~~~~~~~~~ ../hiro/core/core.hpp:269:29: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'hiro::Position' 269 | auto setPosition(Position position = {}) -> type&; | ~~~~~~~~~^~~~~~~~~~~~~ ../hiro/core/core.hpp:270:8: note: candidate: 'hiro::Geometry::type& hiro::Geometry::setPosition(float, float)' 270 | auto setPosition(float x, float y) -> type&; | ^~~~~~~~~~~ ../hiro/core/core.hpp:270:8: note: candidate expects 2 arguments, 1 provided ../hiro/core/../gtk/window.cpp:579:3: error: 'lastMove' was not declared in this scope 579 | lastMove = allocation; | ^~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_synchronizeMargin()': ../hiro/core/../gtk/window.cpp:586:31: error: 'widget' was not declared in this scope; did you mean 'Widget'? 586 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:586:7: error: 'gtk_widget_get_realized' was not declared in this scope 586 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:587:30: error: 'widget' was not declared in this scope; did you mean 'Widget'? 587 | if(!gtk_widget_get_visible(widget)) return; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:587:7: error: 'gtk_widget_get_visible' was not declared in this scope 587 | if(!gtk_widget_get_visible(widget)) return; | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:590:39: error: 'widget' was not declared in this scope; did you mean 'Widget'? 590 | auto window = gtk_widget_get_window(widget); | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:590:17: error: 'gtk_widget_get_window' was not declared in this scope 590 | auto window = gtk_widget_get_window(widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:591:3: error: 'GdkRectangle' was not declared in this scope 591 | GdkRectangle border, client; | ^~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:592:41: error: 'border' was not declared in this scope 592 | gdk_window_get_frame_extents(window, &border); | ^~~~~~ ../hiro/core/../gtk/window.cpp:592:3: error: 'gdk_window_get_frame_extents' was not declared in this scope 592 | gdk_window_get_frame_extents(window, &border); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:593:34: error: 'client' was not declared in this scope 593 | gdk_window_get_origin(window, &client.x, &client.y); | ^~~~~~ ../hiro/core/../gtk/window.cpp:593:3: error: 'gdk_window_get_origin' was not declared in this scope 593 | gdk_window_get_origin(window, &client.x, &client.y); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:597:3: error: 'gdk_window_get_geometry' was not declared in this scope 597 | gdk_window_get_geometry(window, nullptr, nullptr, &client.width, &client.height); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:605:29: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 605 | if(gtk_widget_get_visible(gtkMenu)) { | ^~~~~~~ | wMenu ../hiro/core/../gtk/window.cpp:605:6: error: 'gtk_widget_get_visible' was not declared in this scope 605 | if(gtk_widget_get_visible(gtkMenu)) { | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:606:5: error: 'GtkAllocation' was not declared in this scope 606 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:609:43: error: 'allocation' was not declared in this scope 609 | gtk_widget_get_allocation(gtkMenu, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:609:7: error: 'gtk_widget_get_allocation' was not declared in this scope 609 | gtk_widget_get_allocation(gtkMenu, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:617:29: error: 'gtkStatus' was not declared in this scope 617 | if(gtk_widget_get_visible(gtkStatus)) { | ^~~~~~~~~ ../hiro/core/../gtk/window.cpp:617:6: error: 'gtk_widget_get_visible' was not declared in this scope 617 | if(gtk_widget_get_visible(gtkStatus)) { | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:618:5: error: 'GtkAllocation' was not declared in this scope 618 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp:621:45: error: 'allocation' was not declared in this scope 621 | gtk_widget_get_allocation(gtkStatus, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/window.cpp:621:7: error: 'gtk_widget_get_allocation' was not declared in this scope 621 | gtk_widget_get_allocation(gtkStatus, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/window.cpp: In member function 'void hiro::pWindow::_synchronizeState()': ../hiro/core/../gtk/window.cpp:637:31: error: 'widget' was not declared in this scope; did you mean 'Widget'? 637 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~ | Widget ../hiro/core/../gtk/window.cpp:637:7: error: 'gtk_widget_get_realized' was not declared in this scope 637 | if(!gtk_widget_get_realized(widget)) return; | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:19: ../hiro/core/../gtk/popup-menu.cpp: In member function 'virtual void hiro::pPopupMenu::construct()': ../hiro/core/../gtk/popup-menu.cpp:6:3: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 6 | gtkMenu = gtk_menu_new(); | ^~~~~~~ | wMenu ../hiro/core/../gtk/popup-menu.cpp:6:13: error: 'gtk_menu_new' was not declared in this scope 6 | gtkMenu = gtk_menu_new(); | ^~~~~~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp: In member function 'virtual void hiro::pPopupMenu::destruct()': ../hiro/core/../gtk/popup-menu.cpp:10:22: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 10 | gtk_widget_destroy(gtkMenu); | ^~~~~~~ | wMenu ../hiro/core/../gtk/popup-menu.cpp:10:3: error: 'gtk_widget_destroy' was not declared in this scope 10 | gtk_widget_destroy(gtkMenu); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp: In member function 'void hiro::pPopupMenu::append(hiro::sAction)': ../hiro/core/../gtk/popup-menu.cpp:15:42: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 15 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~ | wMenu ../hiro/core/../gtk/popup-menu.cpp:15:27: error: 'GTK_MENU_SHELL' was not declared in this scope 15 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp:15:68: error: 'struct hiro::pAction' has no member named 'widget' 15 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~ ../hiro/core/../gtk/popup-menu.cpp:15:5: error: 'gtk_menu_shell_append' was not declared in this scope 15 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp: In member function 'virtual void hiro::pPopupMenu::setVisible(bool)': ../hiro/core/../gtk/popup-menu.cpp:31:39: error: 'gtkMenu' was not declared in this scope; did you mean 'wMenu'? 31 | if(visible) gtk_menu_popup(GTK_MENU(gtkMenu), nullptr, nullptr, nullptr, nullptr, 0, gtk_get_current_event_time()); | ^~~~~~~ | wMenu ../hiro/core/../gtk/popup-menu.cpp:31:30: error: 'GTK_MENU' was not declared in this scope 31 | if(visible) gtk_menu_popup(GTK_MENU(gtkMenu), nullptr, nullptr, nullptr, nullptr, 0, gtk_get_current_event_time()); | ^~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp:31:88: error: 'gtk_get_current_event_time' was not declared in this scope 31 | if(visible) gtk_menu_popup(GTK_MENU(gtkMenu), nullptr, nullptr, nullptr, nullptr, 0, gtk_get_current_event_time()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/popup-menu.cpp:31:15: error: 'gtk_menu_popup' was not declared in this scope 31 | if(visible) gtk_menu_popup(GTK_MENU(gtkMenu), nullptr, nullptr, nullptr, nullptr, 0, gtk_get_current_event_time()); | ^~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:21: ../hiro/core/../gtk/action/action.cpp: In member function 'virtual void hiro::pAction::setEnabled(bool)': ../hiro/core/../gtk/action/action.cpp:12:28: error: 'widget' was not declared in this scope; did you mean 'Widget'? 12 | gtk_widget_set_sensitive(widget, enabled); | ^~~~~~ | Widget ../hiro/core/../gtk/action/action.cpp:12:3: error: 'gtk_widget_set_sensitive' was not declared in this scope 12 | gtk_widget_set_sensitive(widget, enabled); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/action.cpp: In member function 'virtual void hiro::pAction::setFont(const hiro::Font&)': ../hiro/core/../gtk/action/action.cpp:16:18: error: 'widget' was not declared in this scope; did you mean 'Widget'? 16 | pFont::setFont(widget, font); | ^~~~~~ | Widget ../hiro/core/../gtk/action/action.cpp: In member function 'virtual void hiro::pAction::setVisible(bool)': ../hiro/core/../gtk/action/action.cpp:20:26: error: 'widget' was not declared in this scope; did you mean 'Widget'? 20 | gtk_widget_set_visible(widget, visible); | ^~~~~~ | Widget ../hiro/core/../gtk/action/action.cpp:20:3: error: 'gtk_widget_set_visible' was not declared in this scope 20 | gtk_widget_set_visible(widget, visible); | ^~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:22: ../hiro/core/../gtk/action/menu.cpp: In member function 'virtual void hiro::pMenu::construct()': ../hiro/core/../gtk/action/menu.cpp:6:3: error: 'gtkMenu' was not declared in this scope; did you mean 'pMenu'? 6 | gtkMenu = gtk_menu_new(); | ^~~~~~~ | pMenu ../hiro/core/../gtk/action/menu.cpp:6:13: error: 'gtk_menu_new' was not declared in this scope 6 | gtkMenu = gtk_menu_new(); | ^~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:7:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 7 | widget = gtk_image_menu_item_new_with_mnemonic(""); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu.cpp:7:12: error: 'gtk_image_menu_item_new_with_mnemonic' was not declared in this scope 7 | widget = gtk_image_menu_item_new_with_mnemonic(""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:8:29: error: 'GTK_MENU_ITEM' was not declared in this scope 8 | gtk_menu_item_set_submenu(GTK_MENU_ITEM(widget), gtkMenu); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:8:3: error: 'gtk_menu_item_set_submenu' was not declared in this scope 8 | gtk_menu_item_set_submenu(GTK_MENU_ITEM(widget), gtkMenu); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp: In member function 'virtual void hiro::pMenu::destruct()': ../hiro/core/../gtk/action/menu.cpp:16:22: error: 'gtkMenu' was not declared in this scope; did you mean 'pMenu'? 16 | gtk_widget_destroy(gtkMenu); | ^~~~~~~ | pMenu ../hiro/core/../gtk/action/menu.cpp:16:3: error: 'gtk_widget_destroy' was not declared in this scope 16 | gtk_widget_destroy(gtkMenu); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:17:22: error: 'widget' was not declared in this scope; did you mean 'Widget'? 17 | gtk_widget_destroy(widget); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu.cpp: In member function 'void hiro::pMenu::append(hiro::sAction)': ../hiro/core/../gtk/action/menu.cpp:22:42: error: 'gtkMenu' was not declared in this scope; did you mean 'pMenu'? 22 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~ | pMenu ../hiro/core/../gtk/action/menu.cpp:22:27: error: 'GTK_MENU_SHELL' was not declared in this scope 22 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:22:68: error: 'struct hiro::pAction' has no member named 'widget' 22 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~ ../hiro/core/../gtk/action/menu.cpp:22:5: error: 'gtk_menu_shell_append' was not declared in this scope 22 | gtk_menu_shell_append(GTK_MENU_SHELL(gtkMenu), action->self()->widget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp: In member function 'void hiro::pMenu::setIcon(const nall::image&)': ../hiro/core/../gtk/action/menu.cpp:41:5: error: 'GtkImage' was not declared in this scope 41 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:41:15: error: 'gtkImage' was not declared in this scope 41 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:41:26: error: 'CreateImage' was not declared in this scope 41 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:42:55: error: 'widget' was not declared in this scope; did you mean 'Widget'? 42 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu.cpp:42:35: error: 'GTK_IMAGE_MENU_ITEM' was not declared in this scope 42 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:42:65: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 42 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/action/menu.cpp:42:75: error: expected primary-expression before ')' token 42 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^ ../hiro/core/../gtk/action/menu.cpp:42:5: error: 'gtk_image_menu_item_set_image' was not declared in this scope 42 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:44:55: error: 'widget' was not declared in this scope; did you mean 'Widget'? 44 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu.cpp:44:35: error: 'GTK_IMAGE_MENU_ITEM' was not declared in this scope 44 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:44:5: error: 'gtk_image_menu_item_set_image' was not declared in this scope 44 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp: In member function 'void hiro::pMenu::setText(const nall::string&)': ../hiro/core/../gtk/action/menu.cpp:49:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 49 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu.cpp:49:27: error: 'GTK_MENU_ITEM' was not declared in this scope 49 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu.cpp:49:3: error: 'gtk_menu_item_set_label' was not declared in this scope 49 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:23: ../hiro/core/../gtk/action/menu-separator.cpp: In member function 'virtual void hiro::pMenuSeparator::construct()': ../hiro/core/../gtk/action/menu-separator.cpp:6:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 6 | widget = gtk_separator_menu_item_new(); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-separator.cpp:6:12: error: 'gtk_separator_menu_item_new' was not declared in this scope 6 | widget = gtk_separator_menu_item_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-separator.cpp: In member function 'virtual void hiro::pMenuSeparator::destruct()': ../hiro/core/../gtk/action/menu-separator.cpp:10:6: error: 'widget' was not declared in this scope; did you mean 'Widget'? 10 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-separator.cpp:10:14: error: 'gtk_widget_destroy' was not declared in this scope 10 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:24: ../hiro/core/../gtk/action/menu-item.cpp: At global scope: ../hiro/core/../gtk/action/menu-item.cpp:5:31: error: 'GtkMenuItem' was not declared in this scope; did you mean 'wMenuItem'? 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^~~~~~~~~~~ | wMenuItem ../hiro/core/../gtk/action/menu-item.cpp:5:43: error: expected primary-expression before ',' token 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-item.cpp:5:54: error: expected primary-expression before '*' token 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-item.cpp:5:56: error: 'p' was not declared in this scope 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-item.cpp:5:57: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-item.cpp:5:59: error: expected ',' or ';' before '->' token 5 | static auto MenuItem_activate(GtkMenuItem*, pMenuItem* p) -> void { | ^~ ../hiro/core/../gtk/action/menu-item.cpp: In member function 'virtual void hiro::pMenuItem::construct()': ../hiro/core/../gtk/action/menu-item.cpp:10:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 10 | widget = gtk_image_menu_item_new_with_mnemonic(""); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-item.cpp:10:12: error: 'gtk_image_menu_item_new_with_mnemonic' was not declared in this scope 10 | widget = gtk_image_menu_item_new_with_mnemonic(""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:11:20: error: 'G_OBJECT' was not declared in this scope 11 | g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK(MenuItem_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:11:50: error: 'G_CALLBACK' was not declared in this scope 11 | g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK(MenuItem_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:11:82: error: 'gpointer' was not declared in this scope 11 | g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK(MenuItem_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:11:3: error: 'g_signal_connect' was not declared in this scope 11 | g_signal_connect(G_OBJECT(widget), "activate", G_CALLBACK(MenuItem_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp: In member function 'virtual void hiro::pMenuItem::destruct()': ../hiro/core/../gtk/action/menu-item.cpp:17:6: error: 'widget' was not declared in this scope; did you mean 'Widget'? 17 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-item.cpp:17:14: error: 'gtk_widget_destroy' was not declared in this scope 17 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp: In member function 'void hiro::pMenuItem::setIcon(const nall::image&)': ../hiro/core/../gtk/action/menu-item.cpp:22:5: error: 'GtkImage' was not declared in this scope 22 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:22:15: error: 'gtkImage' was not declared in this scope 22 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:22:26: error: 'CreateImage' was not declared in this scope 22 | GtkImage* gtkImage = CreateImage(icon, true); | ^~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:23:55: error: 'widget' was not declared in this scope; did you mean 'Widget'? 23 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-item.cpp:23:35: error: 'GTK_IMAGE_MENU_ITEM' was not declared in this scope 23 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:23:65: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 23 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/action/menu-item.cpp:23:75: error: expected primary-expression before ')' token 23 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^ ../hiro/core/../gtk/action/menu-item.cpp:23:5: error: 'gtk_image_menu_item_set_image' was not declared in this scope 23 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:25:55: error: 'widget' was not declared in this scope; did you mean 'Widget'? 25 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-item.cpp:25:35: error: 'GTK_IMAGE_MENU_ITEM' was not declared in this scope 25 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:25:5: error: 'gtk_image_menu_item_set_image' was not declared in this scope 25 | gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(widget), nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp: In member function 'void hiro::pMenuItem::setText(const nall::string&)': ../hiro/core/../gtk/action/menu-item.cpp:30:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 30 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-item.cpp:30:27: error: 'GTK_MENU_ITEM' was not declared in this scope 30 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-item.cpp:30:3: error: 'gtk_menu_item_set_label' was not declared in this scope 30 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:25: ../hiro/core/../gtk/action/menu-check-item.cpp: At global scope: ../hiro/core/../gtk/action/menu-check-item.cpp:5:34: error: 'GtkCheckMenuItem' was not declared in this scope 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:5:52: error: 'gtkCheckMenuItem' was not declared in this scope 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:5:84: error: expected primary-expression before '*' token 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-check-item.cpp:5:86: error: 'p' was not declared in this scope 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-check-item.cpp:5:87: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-check-item.cpp:5:89: error: expected ',' or ';' before '->' token 5 | static auto MenuCheckItem_toggle(GtkCheckMenuItem* gtkCheckMenuItem, pMenuCheckItem* p) -> void { | ^~ ../hiro/core/../gtk/action/menu-check-item.cpp: In member function 'virtual void hiro::pMenuCheckItem::construct()': ../hiro/core/../gtk/action/menu-check-item.cpp:11:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 11 | widget = gtk_check_menu_item_new_with_mnemonic(""); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-check-item.cpp:11:12: error: 'gtk_check_menu_item_new_with_mnemonic' was not declared in this scope 11 | widget = gtk_check_menu_item_new_with_mnemonic(""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:14:20: error: 'G_OBJECT' was not declared in this scope 14 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuCheckItem_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:14:49: error: 'G_CALLBACK' was not declared in this scope 14 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuCheckItem_toggle), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:14:84: error: 'gpointer' was not declared in this scope 14 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuCheckItem_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:14:3: error: 'g_signal_connect' was not declared in this scope 14 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuCheckItem_toggle), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp: In member function 'virtual void hiro::pMenuCheckItem::destruct()': ../hiro/core/../gtk/action/menu-check-item.cpp:18:22: error: 'widget' was not declared in this scope; did you mean 'Widget'? 18 | gtk_widget_destroy(widget); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-check-item.cpp:18:3: error: 'gtk_widget_destroy' was not declared in this scope 18 | gtk_widget_destroy(widget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp: In member function 'void hiro::pMenuCheckItem::setChecked(bool)': ../hiro/core/../gtk/action/menu-check-item.cpp:28:54: error: 'widget' was not declared in this scope; did you mean 'Widget'? 28 | gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), checked); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-check-item.cpp:28:34: error: 'GTK_CHECK_MENU_ITEM' was not declared in this scope 28 | gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), checked); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:28:3: error: 'gtk_check_menu_item_set_active' was not declared in this scope 28 | gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), checked); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp: In member function 'void hiro::pMenuCheckItem::setText(const nall::string&)': ../hiro/core/../gtk/action/menu-check-item.cpp:33:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 33 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-check-item.cpp:33:27: error: 'GTK_MENU_ITEM' was not declared in this scope 33 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-check-item.cpp:33:3: error: 'gtk_menu_item_set_label' was not declared in this scope 33 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:26: ../hiro/core/../gtk/action/menu-radio-item.cpp: At global scope: ../hiro/core/../gtk/action/menu-radio-item.cpp:5:36: error: 'GtkCheckMenuItem' was not declared in this scope 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:5:54: error: 'gtkCheckMenuItem' was not declared in this scope 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:5:86: error: expected primary-expression before '*' token 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-radio-item.cpp:5:88: error: 'p' was not declared in this scope 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-radio-item.cpp:5:89: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^ ../hiro/core/../gtk/action/menu-radio-item.cpp:5:91: error: expected ',' or ';' before '->' token 5 | static auto MenuRadioItem_activate(GtkCheckMenuItem* gtkCheckMenuItem, pMenuRadioItem* p) -> void { | ^~ ../hiro/core/../gtk/action/menu-radio-item.cpp: In member function 'virtual void hiro::pMenuRadioItem::construct()': ../hiro/core/../gtk/action/menu-radio-item.cpp:10:3: error: 'widget' was not declared in this scope; did you mean 'Widget'? 10 | widget = gtk_radio_menu_item_new_with_mnemonic(0, ""); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-radio-item.cpp:10:12: error: 'gtk_radio_menu_item_new_with_mnemonic' was not declared in this scope 10 | widget = gtk_radio_menu_item_new_with_mnemonic(0, ""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:11:3: error: 'gtkCheckMenuItem' was not declared in this scope 11 | gtkCheckMenuItem = GTK_CHECK_MENU_ITEM(widget); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:11:22: error: 'GTK_CHECK_MENU_ITEM' was not declared in this scope 11 | gtkCheckMenuItem = GTK_CHECK_MENU_ITEM(widget); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:12:3: error: 'gtkRadioMenuItem' was not declared in this scope 12 | gtkRadioMenuItem = GTK_RADIO_MENU_ITEM(widget); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:12:22: error: 'GTK_RADIO_MENU_ITEM' was not declared in this scope 12 | gtkRadioMenuItem = GTK_RADIO_MENU_ITEM(widget); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:16:20: error: 'G_OBJECT' was not declared in this scope 16 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuRadioItem_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:16:49: error: 'G_CALLBACK' was not declared in this scope 16 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuRadioItem_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:16:86: error: 'gpointer' was not declared in this scope 16 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuRadioItem_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:16:3: error: 'g_signal_connect' was not declared in this scope 16 | g_signal_connect(G_OBJECT(widget), "toggled", G_CALLBACK(MenuRadioItem_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp: In member function 'virtual void hiro::pMenuRadioItem::destruct()': ../hiro/core/../gtk/action/menu-radio-item.cpp:20:6: error: 'widget' was not declared in this scope; did you mean 'Widget'? 20 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-radio-item.cpp:20:14: error: 'gtk_widget_destroy' was not declared in this scope 20 | if(widget) gtk_widget_destroy(widget), widget = nullptr; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp: In member function 'void hiro::pMenuRadioItem::setChecked()': ../hiro/core/../gtk/action/menu-radio-item.cpp:25:34: error: 'gtkCheckMenuItem' was not declared in this scope 25 | gtk_check_menu_item_set_active(gtkCheckMenuItem, true); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:25:3: error: 'gtk_check_menu_item_set_active' was not declared in this scope 25 | gtk_check_menu_item_set_active(gtkCheckMenuItem, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp: In member function 'void hiro::pMenuRadioItem::setGroup(hiro::sGroup)': ../hiro/core/../gtk/action/menu-radio-item.cpp:30:9: error: 'GtkRadioMenuItem' was not declared in this scope 30 | maybe<GtkRadioMenuItem*> gtkRadioMenuItem; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:30:26: error: template argument 1 is invalid 30 | maybe<GtkRadioMenuItem*> gtkRadioMenuItem; | ^ ../hiro/core/../gtk/action/menu-radio-item.cpp:36:47: error: 'struct hiro::pMenuRadioItem' has no member named 'gtkRadioMenuItem' 36 | gtk_radio_menu_item_set_group(self->gtkRadioMenuItem, nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:36:11: error: 'gtk_radio_menu_item_set_group' was not declared in this scope 36 | gtk_radio_menu_item_set_group(self->gtkRadioMenuItem, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:38:38: error: 'struct hiro::pMenuRadioItem' has no member named 'gtkRadioMenuItem' 38 | gtkRadioMenuItem = self->gtkRadioMenuItem; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:39:50: error: 'struct hiro::pMenuRadioItem' has no member named 'gtkCheckMenuItem' 39 | gtk_check_menu_item_set_active(self->gtkCheckMenuItem, menuRadioItem->state.checked = true); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:39:13: error: 'gtk_check_menu_item_set_active' was not declared in this scope 39 | gtk_check_menu_item_set_active(self->gtkCheckMenuItem, menuRadioItem->state.checked = true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:41:49: error: 'struct hiro::pMenuRadioItem' has no member named 'gtkRadioMenuItem' 41 | gtk_radio_menu_item_set_group(self->gtkRadioMenuItem, gtk_radio_menu_item_get_group(*gtkRadioMenuItem)); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:41:97: error: invalid type argument of unary '*' (have 'int') 41 | gtk_radio_menu_item_set_group(self->gtkRadioMenuItem, gtk_radio_menu_item_get_group(*gtkRadioMenuItem)); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:41:67: error: 'gtk_radio_menu_item_get_group' was not declared in this scope 41 | gtk_radio_menu_item_set_group(self->gtkRadioMenuItem, gtk_radio_menu_item_get_group(*gtkRadioMenuItem)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:42:50: error: 'struct hiro::pMenuRadioItem' has no member named 'gtkCheckMenuItem' 42 | gtk_check_menu_item_set_active(self->gtkCheckMenuItem, menuRadioItem->state.checked = false); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:42:13: error: 'gtk_check_menu_item_set_active' was not declared in this scope 42 | gtk_check_menu_item_set_active(self->gtkCheckMenuItem, menuRadioItem->state.checked = false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp: In member function 'void hiro::pMenuRadioItem::setText(const nall::string&)': ../hiro/core/../gtk/action/menu-radio-item.cpp:52:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 52 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~ | Widget ../hiro/core/../gtk/action/menu-radio-item.cpp:52:27: error: 'GTK_MENU_ITEM' was not declared in this scope 52 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/action/menu-radio-item.cpp:52:3: error: 'gtk_menu_item_set_label' was not declared in this scope 52 | gtk_menu_item_set_label(GTK_MENU_ITEM(widget), _mnemonic(text)); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:30: ../hiro/core/../gtk/widget/widget.cpp: At global scope: ../hiro/core/../gtk/widget/widget.cpp:5:25: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:5:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:5:44: error: 'GdkDragContext' was not declared in this scope 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:5:60: error: 'context' was not declared in this scope; did you mean 'ucontext'? 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/widget.cpp:5:69: error: expected primary-expression before 'int' 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~ ../hiro/core/../gtk/widget/widget.cpp:5:76: error: expected primary-expression before 'int' 5 | static auto Widget_drop(GtkWidget* widget, GdkDragContext* context, int x, int y, | ^~~ ../hiro/core/../gtk/widget/widget.cpp:6:1: error: 'GtkSelectionData' was not declared in this scope 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:6:19: error: 'data' was not declared in this scope 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^~~~ ../hiro/core/../gtk/widget/widget.cpp:6:30: error: expected primary-expression before 'type' 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^~~~ ../hiro/core/../gtk/widget/widget.cpp:6:41: error: expected primary-expression before 'timestamp' 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:6:59: error: expected primary-expression before '*' token 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^ ../hiro/core/../gtk/widget/widget.cpp:6:61: error: 'p' was not declared in this scope 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^ ../hiro/core/../gtk/widget/widget.cpp:6:62: error: expression list treated as compound expression in initializer [-fpermissive] 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^ ../hiro/core/../gtk/widget/widget.cpp:6:64: error: expected ',' or ';' before '->' token 6 | GtkSelectionData* data, uint type, uint timestamp, pWidget* p) -> void { | ^~ ../hiro/core/../gtk/widget/widget.cpp:13:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:13:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:13:50: error: 'GdkEventButton' was not declared in this scope 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:13:66: error: 'event' was not declared in this scope; did you mean 'servent'? 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~ | servent ../hiro/core/../gtk/widget/widget.cpp:13:80: error: expected primary-expression before '*' token 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:13:82: error: 'p' was not declared in this scope 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:13:83: error: expression list treated as compound expression in initializer [-fpermissive] 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:13:85: error: expected ',' or ';' before '->' token 13 | static auto Widget_mouseEnter(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~ ../hiro/core/../gtk/widget/widget.cpp:23:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:23:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:23:50: error: 'GdkEventButton' was not declared in this scope 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:23:66: error: 'event' was not declared in this scope; did you mean 'servent'? 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~~~~ | servent ../hiro/core/../gtk/widget/widget.cpp:23:80: error: expected primary-expression before '*' token 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:23:82: error: 'p' was not declared in this scope 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:23:83: error: expression list treated as compound expression in initializer [-fpermissive] 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^ ../hiro/core/../gtk/widget/widget.cpp:23:85: error: expected ',' or ';' before '->' token 23 | static auto Widget_mouseLeave(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> int { | ^~ ../hiro/core/../gtk/widget/widget.cpp:33:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:33:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:33:49: error: 'GdkEventButton' was not declared in this scope 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:33:65: error: 'event' was not declared in this scope; did you mean 'servent'? 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/widget.cpp:33:79: error: expected primary-expression before '*' token 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:33:81: error: 'p' was not declared in this scope 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:33:82: error: expression list treated as compound expression in initializer [-fpermissive] 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:33:84: error: expected ',' or ';' before '->' token 33 | static auto Widget_mouseMove(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~ ../hiro/core/../gtk/widget/widget.cpp:38:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:38:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:38:50: error: 'GdkEventButton' was not declared in this scope 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:38:66: error: 'event' was not declared in this scope; did you mean 'servent'? 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/widget.cpp:38:80: error: expected primary-expression before '*' token 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:38:82: error: 'p' was not declared in this scope 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:38:83: error: expression list treated as compound expression in initializer [-fpermissive] 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:38:85: error: expected ',' or ';' before '->' token 38 | static auto Widget_mousePress(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~ ../hiro/core/../gtk/widget/widget.cpp:47:33: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/widget.cpp:47:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/widget.cpp:47:52: error: 'GdkEventButton' was not declared in this scope 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:47:68: error: 'event' was not declared in this scope; did you mean 'servent'? 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/widget.cpp:47:82: error: expected primary-expression before '*' token 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:47:84: error: 'p' was not declared in this scope 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:47:85: error: expression list treated as compound expression in initializer [-fpermissive] 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^ ../hiro/core/../gtk/widget/widget.cpp:47:87: error: expected ',' or ';' before '->' token 47 | static auto Widget_mouseRelease(GtkWidget* widget, GdkEventButton* event, pWidget* p) -> signed { | ^~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::construct()': ../hiro/core/../gtk/widget/widget.cpp:57:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 57 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp: At global scope: ../hiro/core/../gtk/widget/widget.cpp:73:45: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 73 | auto pWidget::container(mWidget& widget) -> GtkWidget* { | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:73:54: error: expected initializer before '*' token 73 | auto pWidget::container(mWidget& widget) -> GtkWidget* { | ^ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual bool hiro::pWidget::focused() const': ../hiro/core/../gtk/widget/widget.cpp:78:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 78 | if(!gtkWidget) return false; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:79:31: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 79 | return gtk_widget_has_focus(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:79:10: error: 'gtk_widget_has_focus' was not declared in this scope 79 | return gtk_widget_has_focus(gtkWidget); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'void hiro::pWidget::setDroppable(bool)': ../hiro/core/../gtk/widget/widget.cpp:83:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 83 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:85:23: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 85 | gtk_drag_dest_set(gtkWidget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:85:34: error: 'GTK_DEST_DEFAULT_ALL' was not declared in this scope 85 | gtk_drag_dest_set(gtkWidget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:85:68: error: 'GDK_ACTION_COPY' was not declared in this scope 85 | gtk_drag_dest_set(gtkWidget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:85:5: error: 'gtk_drag_dest_set' was not declared in this scope 85 | gtk_drag_dest_set(gtkWidget, GTK_DEST_DEFAULT_ALL, nullptr, 0, GDK_ACTION_COPY); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:86:5: error: 'gtk_drag_dest_add_uri_targets' was not declared in this scope 86 | gtk_drag_dest_add_uri_targets(gtkWidget); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::setEnabled(bool)': ../hiro/core/../gtk/widget/widget.cpp:91:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 91 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:92:28: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 92 | gtk_widget_set_sensitive(gtkWidget, enabled); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:92:3: error: 'gtk_widget_set_sensitive' was not declared in this scope 92 | gtk_widget_set_sensitive(gtkWidget, enabled); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::setFocused()': ../hiro/core/../gtk/widget/widget.cpp:100:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 100 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:101:25: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 101 | gtk_widget_grab_focus(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:101:3: error: 'gtk_widget_grab_focus' was not declared in this scope 101 | gtk_widget_grab_focus(gtkWidget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::setFont(const hiro::Font&)': ../hiro/core/../gtk/widget/widget.cpp:105:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 105 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:106:25: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 106 | return pFont::setFont(gtkWidget, font); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::setGeometry(hiro::Geometry)': ../hiro/core/../gtk/widget/widget.cpp:110:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 110 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:111:6: error: 'gtkParent' was not declared in this scope 111 | if(gtkParent) gtk_fixed_move(GTK_FIXED(gtkParent), gtkWidget, geometry.x(), geometry.y()); | ^~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:111:32: error: 'GTK_FIXED' was not declared in this scope; did you mean 'MAP_FIXED'? 111 | if(gtkParent) gtk_fixed_move(GTK_FIXED(gtkParent), gtkWidget, geometry.x(), geometry.y()); | ^~~~~~~~~ | MAP_FIXED ../hiro/core/../gtk/widget/widget.cpp:111:54: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 111 | if(gtkParent) gtk_fixed_move(GTK_FIXED(gtkParent), gtkWidget, geometry.x(), geometry.y()); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:111:17: error: 'gtk_fixed_move' was not declared in this scope 111 | if(gtkParent) gtk_fixed_move(GTK_FIXED(gtkParent), gtkWidget, geometry.x(), geometry.y()); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:114:31: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 114 | gtk_widget_set_size_request(gtkWidget, geometry.width(), geometry.height()); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:114:3: error: 'gtk_widget_set_size_request' was not declared in this scope 114 | gtk_widget_set_size_request(gtkWidget, geometry.width(), geometry.height()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:115:11: error: 'gtk_widget_get_realized' was not declared in this scope 115 | if(0 && gtk_widget_get_realized(gtkWidget)) { | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:121:9: error: 'GtkAllocation' was not declared in this scope 121 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:122:47: error: 'allocation' was not declared in this scope 122 | gtk_widget_get_allocation(gtkWidget, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:122:9: error: 'gtk_widget_get_allocation' was not declared in this scope 122 | gtk_widget_get_allocation(gtkWidget, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:124:9: error: 'gtk_main_iteration_do' was not declared in this scope 124 | gtk_main_iteration_do(false); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:131:3: error: 'gtk_widget_queue_draw' was not declared in this scope 131 | gtk_widget_queue_draw(gtkWidget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'void hiro::pWidget::setMouseCursor(const hiro::MouseCursor&)': ../hiro/core/../gtk/widget/widget.cpp:147:7: error: 'gdkMouseCursor' was not declared in this scope; did you mean 'setMouseCursor'? 147 | gdkMouseCursor = gdk_cursor_new_from_name(gdk_display_get_default(), name); | ^~~~~~~~~~~~~~ | setMouseCursor ../hiro/core/../gtk/widget/widget.cpp:147:49: error: 'gdk_display_get_default' was not declared in this scope 147 | gdkMouseCursor = gdk_cursor_new_from_name(gdk_display_get_default(), name); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp:147:24: error: 'gdk_cursor_new_from_name' was not declared in this scope 147 | gdkMouseCursor = gdk_cursor_new_from_name(gdk_display_get_default(), name); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'void hiro::pWidget::setToolTip(const nall::string&)': ../hiro/core/../gtk/widget/widget.cpp:153:31: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 153 | gtk_widget_set_tooltip_text(gtkWidget, toolTip); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:153:3: error: 'gtk_widget_set_tooltip_text' was not declared in this scope 153 | gtk_widget_set_tooltip_text(gtkWidget, toolTip); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/widget.cpp: In member function 'virtual void hiro::pWidget::setVisible(bool)': ../hiro/core/../gtk/widget/widget.cpp:157:7: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 157 | if(!gtkWidget) return; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:158:26: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 158 | gtk_widget_set_visible(gtkWidget, visible); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/widget.cpp:158:3: error: 'gtk_widget_set_visible' was not declared in this scope 158 | gtk_widget_set_visible(gtkWidget, visible); | ^~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:31: ../hiro/core/../gtk/widget/button.cpp: At global scope: ../hiro/core/../gtk/widget/button.cpp:5:29: error: 'GtkButton' was not declared in this scope; did you mean 'wButton'? 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^~~~~~~~~ | wButton ../hiro/core/../gtk/widget/button.cpp:5:40: error: 'gtkButton' was not declared in this scope; did you mean 'wButton'? 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^~~~~~~~~ | wButton ../hiro/core/../gtk/widget/button.cpp:5:58: error: expected primary-expression before '*' token 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^ ../hiro/core/../gtk/widget/button.cpp:5:60: error: 'p' was not declared in this scope 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^ ../hiro/core/../gtk/widget/button.cpp:5:61: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^ ../hiro/core/../gtk/widget/button.cpp:5:63: error: expected ',' or ';' before '->' token 5 | static auto Button_activate(GtkButton* gtkButton, pButton* p) -> void { p->_doActivate(); } | ^~ ../hiro/core/../gtk/widget/button.cpp: In member function 'virtual void hiro::pButton::construct()': ../hiro/core/../gtk/widget/button.cpp:8:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 8 | gtkWidget = gtk_button_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/button.cpp:8:15: error: 'gtk_button_new' was not declared in this scope 8 | gtkWidget = gtk_button_new(); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:9:3: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 9 | gtkButton = GTK_BUTTON(gtkWidget); | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:9:15: error: 'GTK_BUTTON' was not declared in this scope 9 | gtkButton = GTK_BUTTON(gtkWidget); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:16:20: error: 'G_OBJECT' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkButton), "clicked", G_CALLBACK(Button_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:16:52: error: 'G_CALLBACK' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkButton), "clicked", G_CALLBACK(Button_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:16:82: error: 'gpointer' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkButton), "clicked", G_CALLBACK(Button_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:16:3: error: 'g_signal_connect' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkButton), "clicked", G_CALLBACK(Button_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp: In member function 'virtual void hiro::pButton::destruct()': ../hiro/core/../gtk/widget/button.cpp:22:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 22 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/button.cpp:22:3: error: 'gtk_widget_destroy' was not declared in this scope 22 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp: In member function 'void hiro::pButton::setBordered(bool)': ../hiro/core/../gtk/widget/button.cpp:42:25: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 42 | gtk_button_set_relief(gtkButton, bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:42:47: error: 'GTK_RELIEF_NORMAL' was not declared in this scope 42 | gtk_button_set_relief(gtkButton, bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:42:67: error: 'GTK_RELIEF_NONE' was not declared in this scope 42 | gtk_button_set_relief(gtkButton, bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:42:3: error: 'gtk_button_set_relief' was not declared in this scope 42 | gtk_button_set_relief(gtkButton, bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp: In member function 'void hiro::pButton::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/button.cpp:47:21: error: 'CreateImage' was not declared in this scope 47 | auto gtkImage = CreateImage(icon); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:48:26: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 48 | gtk_button_set_image(gtkButton, (GtkWidget*)gtkImage); | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:48:38: error: 'GtkWidget' was not declared in this scope; did you mean 'pWidget'? 48 | gtk_button_set_image(gtkButton, (GtkWidget*)gtkImage); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/button.cpp:48:48: error: expected primary-expression before ')' token 48 | gtk_button_set_image(gtkButton, (GtkWidget*)gtkImage); | ^ ../hiro/core/../gtk/widget/button.cpp:48:5: error: 'gtk_button_set_image' was not declared in this scope 48 | gtk_button_set_image(gtkButton, (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:50:26: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 50 | gtk_button_set_image(gtkButton, nullptr); | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:50:5: error: 'gtk_button_set_image' was not declared in this scope 50 | gtk_button_set_image(gtkButton, nullptr); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp: In member function 'void hiro::pButton::setOrientation(hiro::Orientation)': ../hiro/core/../gtk/widget/button.cpp:56:63: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 56 | case Orientation::Horizontal: gtk_button_set_image_position(gtkButton, GTK_POS_LEFT); break; | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:56:74: error: 'GTK_POS_LEFT' was not declared in this scope 56 | case Orientation::Horizontal: gtk_button_set_image_position(gtkButton, GTK_POS_LEFT); break; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:56:33: error: 'gtk_button_set_image_position' was not declared in this scope 56 | case Orientation::Horizontal: gtk_button_set_image_position(gtkButton, GTK_POS_LEFT); break; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp:57:74: error: 'GTK_POS_TOP' was not declared in this scope 57 | case Orientation::Vertical: gtk_button_set_image_position(gtkButton, GTK_POS_TOP); break; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/button.cpp: In member function 'void hiro::pButton::setText(const nall::string&)': ../hiro/core/../gtk/widget/button.cpp:62:24: error: 'gtkButton' was not declared in this scope; did you mean 'pButton'? 62 | gtk_button_set_label(gtkButton, text); | ^~~~~~~~~ | pButton ../hiro/core/../gtk/widget/button.cpp:62:3: error: 'gtk_button_set_label' was not declared in this scope 62 | gtk_button_set_label(gtkButton, text); | ^~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:32: ../hiro/core/../gtk/widget/canvas.cpp: At global scope: ../hiro/core/../gtk/widget/canvas.cpp:6:25: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/canvas.cpp:6:36: error: 'widget' was not declared in this scope; did you mean 'Widget'? 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/canvas.cpp:6:44: error: 'cairo_t' was not declared in this scope 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:6:53: error: 'context' was not declared in this scope; did you mean 'ucontext'? 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/canvas.cpp:6:69: error: expected primary-expression before '*' token 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:6:71: error: 'p' was not declared in this scope 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:6:72: error: expression list treated as compound expression in initializer [-fpermissive] 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:6:74: error: expected ',' or ';' before '->' token 6 | static auto Canvas_draw(GtkWidget* widget, cairo_t* context, pCanvas* p) -> signed { | ^~ ../hiro/core/../gtk/widget/canvas.cpp:12:27: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/canvas.cpp:12:38: error: 'widget' was not declared in this scope; did you mean 'Widget'? 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/canvas.cpp:12:46: error: 'GdkEventExpose' was not declared in this scope 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:12:62: error: 'event' was not declared in this scope; did you mean 'servent'? 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/canvas.cpp:12:76: error: expected primary-expression before '*' token 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:12:78: error: 'p' was not declared in this scope 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:12:79: error: expression list treated as compound expression in initializer [-fpermissive] 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:12:81: error: expected ',' or ';' before '->' token 12 | static auto Canvas_expose(GtkWidget* widget, GdkEventExpose* event, pCanvas* p) -> signed { | ^~ ../hiro/core/../gtk/widget/canvas.cpp:17:29: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/canvas.cpp:17:40: error: 'widget' was not declared in this scope; did you mean 'Widget'? 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/canvas.cpp:17:48: error: 'GdkEventKey' was not declared in this scope 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:17:61: error: 'event' was not declared in this scope; did you mean 'servent'? 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/canvas.cpp:17:77: error: expected primary-expression before '*' token 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:17:79: error: 'p' was not declared in this scope 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:17:80: error: expression list treated as compound expression in initializer [-fpermissive] 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:17:82: error: expected ',' or ';' before '->' token 17 | static auto Canvas_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~ ../hiro/core/../gtk/widget/canvas.cpp:26:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/canvas.cpp:26:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/canvas.cpp:26:50: error: 'GdkEventButton' was not declared in this scope 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:26:66: error: 'event' was not declared in this scope; did you mean 'servent'? 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/canvas.cpp:26:80: error: expected primary-expression before '*' token 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:26:82: error: 'p' was not declared in this scope 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:26:83: error: expression list treated as compound expression in initializer [-fpermissive] 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/canvas.cpp:26:85: error: expected ',' or ';' before '->' token 26 | static auto Canvas_mousePress(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~ ../hiro/core/../gtk/widget/canvas.cpp: In member function 'virtual void hiro::pCanvas::construct()': ../hiro/core/../gtk/widget/canvas.cpp:35:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 35 | gtkWidget = gtk_drawing_area_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/canvas.cpp:35:15: error: 'gtk_drawing_area_new' was not declared in this scope 35 | gtkWidget = gtk_drawing_area_new(); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:5: error: 'GDK_BUTTON_PRESS_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:29: error: 'GDK_BUTTON_RELEASE_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:55: error: 'GDK_EXPOSURE_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:75: error: 'GDK_ENTER_NOTIFY_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:99: error: 'GDK_LEAVE_NOTIFY_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:37:123: error: 'GDK_POINTER_MOTION_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:36:3: error: 'gtk_widget_add_events' was not declared in this scope 36 | gtk_widget_add_events(gtkWidget, | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:46:20: error: 'G_OBJECT' was not declared in this scope 46 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Canvas_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:46:63: error: 'G_CALLBACK' was not declared in this scope 46 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Canvas_mousePress), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:46:95: error: 'gpointer' was not declared in this scope 46 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Canvas_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:46:3: error: 'g_signal_connect' was not declared in this scope 46 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Canvas_mousePress), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:47:108: error: expected ')' before 'this' 47 | g_signal_connect(G_OBJECT(gtkWidget), "button-release-event", G_CALLBACK(Widget_mouseRelease), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:48:98: error: expected ')' before 'this' 48 | g_signal_connect(G_OBJECT(gtkWidget), "drag-data-received", G_CALLBACK(Widget_drop), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:52:84: error: expected ')' before 'this' 52 | g_signal_connect(G_OBJECT(gtkWidget), "draw", G_CALLBACK(Canvas_draw), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:54:99: error: expected ')' before 'this' 54 | g_signal_connect(G_OBJECT(gtkWidget), "key-press-event", G_CALLBACK(Canvas_keyPress), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:55:104: error: expected ')' before 'this' 55 | g_signal_connect(G_OBJECT(gtkWidget), "enter-notify-event", G_CALLBACK(Widget_mouseEnter), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:56:104: error: expected ')' before 'this' 56 | g_signal_connect(G_OBJECT(gtkWidget), "leave-notify-event", G_CALLBACK(Widget_mouseLeave), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp:57:104: error: expected ')' before 'this' 57 | g_signal_connect(G_OBJECT(gtkWidget), "motion-notify-event", G_CALLBACK(Widget_mouseMove), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/canvas.cpp: In member function 'virtual void hiro::pCanvas::destruct()': ../hiro/core/../gtk/widget/canvas.cpp:64:6: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 64 | if(gtkWidget) gtk_widget_destroy(gtkWidget), gtkWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/canvas.cpp:64:17: error: 'gtk_widget_destroy' was not declared in this scope 64 | if(gtkWidget) gtk_widget_destroy(gtkWidget), gtkWidget = nullptr; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:65:3: error: 'gtkParent' was not declared in this scope 65 | gtkParent = nullptr; | ^~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp: In member function 'virtual void hiro::pCanvas::setFocusable(bool)': ../hiro/core/../gtk/widget/canvas.cpp:94:28: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 94 | gtk_widget_set_can_focus(gtkWidget, focusable); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/canvas.cpp:94:3: error: 'gtk_widget_set_can_focus' was not declared in this scope 94 | gtk_widget_set_can_focus(gtkWidget, focusable); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp: At global scope: ../hiro/core/../gtk/widget/canvas.cpp:115:6: error: 'auto hiro::pCanvas::_onDraw' is not a static data member of 'struct hiro::pCanvas' 115 | auto pCanvas::_onDraw(cairo_t* context) -> void { | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:115:23: error: 'cairo_t' was not declared in this scope 115 | auto pCanvas::_onDraw(cairo_t* context) -> void { | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:115:32: error: 'context' was not declared in this scope; did you mean 'ucontext'? 115 | auto pCanvas::_onDraw(cairo_t* context) -> void { | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/canvas.cpp:115:41: error: expected ',' or ';' before '->' token 115 | auto pCanvas::_onDraw(cairo_t* context) -> void { | ^~ ../hiro/core/../gtk/widget/canvas.cpp:146:6: error: 'auto hiro::pCanvas::_onExpose' is not a static data member of 'struct hiro::pCanvas' 146 | auto pCanvas::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:146:25: error: 'GdkEventExpose' was not declared in this scope 146 | auto pCanvas::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:146:41: error: 'expose' was not declared in this scope; did you mean 'export'? 146 | auto pCanvas::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~ | export ../hiro/core/../gtk/widget/canvas.cpp:146:49: error: expected ',' or ';' before '->' token 146 | auto pCanvas::_onExpose(GdkEventExpose* expose) -> void { | ^~ ../hiro/core/../gtk/widget/canvas.cpp: In member function 'void hiro::pCanvas::_rasterize()': ../hiro/core/../gtk/widget/canvas.cpp:171:7: error: 'surface' was not declared in this scope 171 | if(!surface) surface = gdk_pixbuf_new(GDK_COLORSPACE_RGB, true, 8, width, height); | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:171:41: error: 'GDK_COLORSPACE_RGB' was not declared in this scope 171 | if(!surface) surface = gdk_pixbuf_new(GDK_COLORSPACE_RGB, true, 8, width, height); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:171:26: error: 'gdk_pixbuf_new' was not declared in this scope 171 | if(!surface) surface = gdk_pixbuf_new(GDK_COLORSPACE_RGB, true, 8, width, height); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:172:50: error: 'surface' was not declared in this scope 172 | auto buffer = (uint32_t*)gdk_pixbuf_get_pixels(surface); | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:172:28: error: 'gdk_pixbuf_get_pixels' was not declared in this scope 172 | auto buffer = (uint32_t*)gdk_pixbuf_get_pixels(surface); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp: In member function 'void hiro::pCanvas::_redraw()': ../hiro/core/../gtk/widget/canvas.cpp:196:30: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 196 | if(gtk_widget_get_realized(gtkWidget)) { | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/canvas.cpp:196:6: error: 'gtk_widget_get_realized' was not declared in this scope 196 | if(gtk_widget_get_realized(gtkWidget)) { | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:197:32: error: 'gtk_widget_get_window' was not declared in this scope 197 | gdk_window_invalidate_rect(gtk_widget_get_window(gtkWidget), nullptr, true); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:197:5: error: 'gdk_window_invalidate_rect' was not declared in this scope 197 | gdk_window_invalidate_rect(gtk_widget_get_window(gtkWidget), nullptr, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp: In member function 'void hiro::pCanvas::_release()': ../hiro/core/../gtk/widget/canvas.cpp:202:6: error: 'surface' was not declared in this scope 202 | if(surface) { | ^~~~~~~ ../hiro/core/../gtk/widget/canvas.cpp:203:5: error: 'g_object_unref' was not declared in this scope 203 | g_object_unref(surface); | ^~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:33: ../hiro/core/../gtk/widget/check-button.cpp: At global scope: ../hiro/core/../gtk/widget/check-button.cpp:5:32: error: 'GtkToggleButton' was not declared in this scope 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:5:49: error: 'toggleButton' was not declared in this scope 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:5:75: error: expected primary-expression before '*' token 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^ ../hiro/core/../gtk/widget/check-button.cpp:5:77: error: 'p' was not declared in this scope 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^ ../hiro/core/../gtk/widget/check-button.cpp:5:78: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^ ../hiro/core/../gtk/widget/check-button.cpp:5:80: error: expected ',' or ';' before '->' token 5 | static auto CheckButton_toggle(GtkToggleButton* toggleButton, pCheckButton* p) -> void { | ^~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'virtual void hiro::pCheckButton::construct()': ../hiro/core/../gtk/widget/check-button.cpp:11:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 11 | gtkWidget = gtk_toggle_button_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:11:15: error: 'gtk_toggle_button_new' was not declared in this scope 11 | gtkWidget = gtk_toggle_button_new(); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:19:20: error: 'G_OBJECT' was not declared in this scope 19 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckButton_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:19:52: error: 'G_CALLBACK' was not declared in this scope 19 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckButton_toggle), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:19:85: error: 'gpointer' was not declared in this scope 19 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckButton_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:19:3: error: 'g_signal_connect' was not declared in this scope 19 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckButton_toggle), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'virtual void hiro::pCheckButton::destruct()': ../hiro/core/../gtk/widget/check-button.cpp:25:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 25 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:25:3: error: 'gtk_widget_destroy' was not declared in this scope 25 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'void hiro::pCheckButton::setBordered(bool)': ../hiro/core/../gtk/widget/check-button.cpp:45:36: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 45 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:45:25: error: 'GTK_BUTTON' was not declared in this scope 45 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:45:59: error: 'GTK_RELIEF_NORMAL' was not declared in this scope 45 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:45:79: error: 'GTK_RELIEF_NONE' was not declared in this scope 45 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:45:3: error: 'gtk_button_set_relief' was not declared in this scope 45 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'void hiro::pCheckButton::setChecked(bool)': ../hiro/core/../gtk/widget/check-button.cpp:50:50: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 50 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:50:32: error: 'GTK_TOGGLE_BUTTON' was not declared in this scope 50 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:50:3: error: 'gtk_toggle_button_set_active' was not declared in this scope 50 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'void hiro::pCheckButton::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/check-button.cpp:56:5: error: 'GtkImage' was not declared in this scope 56 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:56:15: error: 'gtkImage' was not declared in this scope 56 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:56:26: error: 'CreateImage' was not declared in this scope 56 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:57:37: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 57 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:57:26: error: 'GTK_BUTTON' was not declared in this scope 57 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:57:50: error: 'GtkWidget' was not declared in this scope; did you mean 'pWidget'? 57 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:57:60: error: expected primary-expression before ')' token 57 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^ ../hiro/core/../gtk/widget/check-button.cpp:57:5: error: 'gtk_button_set_image' was not declared in this scope 57 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:59:37: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 59 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:59:26: error: 'GTK_BUTTON' was not declared in this scope 59 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:59:5: error: 'gtk_button_set_image' was not declared in this scope 59 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'void hiro::pCheckButton::setOrientation(hiro::Orientation)': ../hiro/core/../gtk/widget/check-button.cpp:65:74: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 65 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:65:63: error: 'GTK_BUTTON' was not declared in this scope 65 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:65:86: error: 'GTK_POS_LEFT' was not declared in this scope 65 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:65:33: error: 'gtk_button_set_image_position' was not declared in this scope 65 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:66:86: error: 'GTK_POS_TOP' was not declared in this scope 66 | case Orientation::Vertical: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_TOP); break; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp: In member function 'void hiro::pCheckButton::setText(const nall::string&)': ../hiro/core/../gtk/widget/check-button.cpp:71:35: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 71 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-button.cpp:71:24: error: 'GTK_BUTTON' was not declared in this scope 71 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-button.cpp:71:3: error: 'gtk_button_set_label' was not declared in this scope 71 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:34: ../hiro/core/../gtk/widget/check-label.cpp: At global scope: ../hiro/core/../gtk/widget/check-label.cpp:5:31: error: 'GtkToggleButton' was not declared in this scope 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:5:48: error: 'toggleButton' was not declared in this scope 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:5:73: error: expected primary-expression before '*' token 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/check-label.cpp:5:75: error: 'p' was not declared in this scope 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/check-label.cpp:5:76: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/check-label.cpp:5:78: error: expected ',' or ';' before '->' token 5 | static auto CheckLabel_toggle(GtkToggleButton* toggleButton, pCheckLabel* p) -> void { | ^~ ../hiro/core/../gtk/widget/check-label.cpp: In member function 'virtual void hiro::pCheckLabel::construct()': ../hiro/core/../gtk/widget/check-label.cpp:11:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 11 | gtkWidget = gtk_check_button_new_with_label(""); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-label.cpp:11:15: error: 'gtk_check_button_new_with_label' was not declared in this scope 11 | gtkWidget = gtk_check_button_new_with_label(""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:16:20: error: 'G_OBJECT' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckLabel_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:16:52: error: 'G_CALLBACK' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckLabel_toggle), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:16:84: error: 'gpointer' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckLabel_toggle), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:16:3: error: 'g_signal_connect' was not declared in this scope 16 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(CheckLabel_toggle), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp: In member function 'virtual void hiro::pCheckLabel::destruct()': ../hiro/core/../gtk/widget/check-label.cpp:22:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 22 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-label.cpp:22:3: error: 'gtk_widget_destroy' was not declared in this scope 22 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp: In member function 'void hiro::pCheckLabel::setChecked(bool)': ../hiro/core/../gtk/widget/check-label.cpp:32:50: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 32 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-label.cpp:32:32: error: 'GTK_TOGGLE_BUTTON' was not declared in this scope 32 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:32:3: error: 'gtk_toggle_button_set_active' was not declared in this scope 32 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkWidget), checked); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp: In member function 'void hiro::pCheckLabel::setText(const nall::string&)': ../hiro/core/../gtk/widget/check-label.cpp:37:35: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 37 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/check-label.cpp:37:24: error: 'GTK_BUTTON' was not declared in this scope 37 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/check-label.cpp:37:3: error: 'gtk_button_set_label' was not declared in this scope 37 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:35: ../hiro/core/../gtk/widget/combo-button.cpp: At global scope: ../hiro/core/../gtk/widget/combo-button.cpp:5:32: error: 'GtkComboBox' was not declared in this scope 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:5:45: error: 'comboBox' was not declared in this scope 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:5:67: error: expected primary-expression before '*' token 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/combo-button.cpp:5:69: error: 'p' was not declared in this scope 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/combo-button.cpp:5:70: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/combo-button.cpp:5:72: error: expected ',' or ';' before '->' token 5 | static auto ComboButton_change(GtkComboBox* comboBox, pComboButton* p) -> void { p->_updateSelected(); } | ^~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'virtual void hiro::pComboButton::construct()': ../hiro/core/../gtk/widget/combo-button.cpp:8:3: error: 'gtkListStore' was not declared in this scope 8 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:8:40: error: 'GDK_TYPE_PIXBUF' was not declared in this scope 8 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:8:57: error: 'G_TYPE_STRING' was not declared in this scope 8 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:8:18: error: 'gtk_list_store_new' was not declared in this scope 8 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:9:3: error: 'gtkTreeModel' was not declared in this scope 9 | gtkTreeModel = GTK_TREE_MODEL(gtkListStore); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:9:18: error: 'GTK_TREE_MODEL' was not declared in this scope 9 | gtkTreeModel = GTK_TREE_MODEL(gtkListStore); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:10:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 10 | gtkWidget = gtk_combo_box_new_with_model(gtkTreeModel); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/combo-button.cpp:10:15: error: 'gtk_combo_box_new_with_model' was not declared in this scope 10 | gtkWidget = gtk_combo_box_new_with_model(gtkTreeModel); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:11:3: error: 'gtkComboBox' was not declared in this scope 11 | gtkComboBox = GTK_COMBO_BOX(gtkWidget); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:11:17: error: 'GTK_COMBO_BOX' was not declared in this scope 11 | gtkComboBox = GTK_COMBO_BOX(gtkWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:13:3: error: 'gtkCellIcon' was not declared in this scope 13 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:13:17: error: 'gtk_cell_renderer_pixbuf_new' was not declared in this scope 13 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:14:30: error: 'GTK_CELL_LAYOUT' was not declared in this scope 14 | gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(gtkWidget), gtkCellIcon, false); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:14:3: error: 'gtk_cell_layout_pack_start' was not declared in this scope 14 | gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(gtkWidget), gtkCellIcon, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:15:3: error: 'gtk_cell_layout_set_attributes' was not declared in this scope 15 | gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(gtkWidget), gtkCellIcon, "pixbuf", 0, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:16:3: error: 'gtkCellText' was not declared in this scope 16 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:16:17: error: 'gtk_cell_renderer_text_new' was not declared in this scope 16 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:20:20: error: 'G_OBJECT' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(ComboButton_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:20:52: error: 'G_CALLBACK' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(ComboButton_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:20:85: error: 'gpointer' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(ComboButton_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:20:3: error: 'g_signal_connect' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(ComboButton_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'virtual void hiro::pComboButton::destruct()': ../hiro/core/../gtk/widget/combo-button.cpp:26:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/combo-button.cpp:26:3: error: 'gtk_widget_destroy' was not declared in this scope 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'void hiro::pComboButton::remove(hiro::sComboButtonItem)': ../hiro/core/../gtk/widget/combo-button.cpp:47:27: error: 'gtkListStore' was not declared in this scope 47 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:47:52: error: 'struct hiro::pComboButtonItem' has no member named 'gtkIter' 47 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:47:5: error: 'gtk_list_store_remove' was not declared in this scope 47 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:48:33: error: 'gtkComboBox' was not declared in this scope 48 | if(gtk_combo_box_get_active(gtkComboBox) < 0) { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:48:8: error: 'gtk_combo_box_get_active' was not declared in this scope 48 | if(gtk_combo_box_get_active(gtkComboBox) < 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'virtual void hiro::pComboButton::reset()': ../hiro/core/../gtk/widget/combo-button.cpp:57:24: error: 'gtkListStore' was not declared in this scope 57 | gtk_list_store_clear(gtkListStore); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:57:3: error: 'gtk_list_store_clear' was not declared in this scope 57 | gtk_list_store_clear(gtkListStore); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'virtual void hiro::pComboButton::setFont(const hiro::Font&)': ../hiro/core/../gtk/widget/combo-button.cpp:63:33: error: 'create' is not a member of 'hiro::pFont' 63 | auto fontDescription = pFont::create(font); | ^~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:64:25: error: 'gtkCellText' was not declared in this scope 64 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:64:16: error: 'G_OBJECT' was not declared in this scope 64 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:64:3: error: 'g_object_set' was not declared in this scope 64 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'void hiro::pComboButton::_append(hiro::sComboButtonItem)': ../hiro/core/../gtk/widget/combo-button.cpp:70:27: error: 'gtkListStore' was not declared in this scope 70 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:70:48: error: 'struct hiro::pComboButtonItem' has no member named 'gtkIter' 70 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:70:5: error: 'gtk_list_store_append' was not declared in this scope 70 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:75:31: error: 'gtkComboBox' was not declared in this scope 75 | if(gtk_combo_box_get_active(gtkComboBox) < 0) item->setSelected(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:75:6: error: 'gtk_combo_box_get_active' was not declared in this scope 75 | if(gtk_combo_box_get_active(gtkComboBox) < 0) item->setSelected(); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp: In member function 'void hiro::pComboButton::_updateSelected()': ../hiro/core/../gtk/widget/combo-button.cpp:81:46: error: 'gtkComboBox' was not declared in this scope 81 | signed selected = gtk_combo_box_get_active(gtkComboBox); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button.cpp:81:21: error: 'gtk_combo_box_get_active' was not declared in this scope 81 | signed selected = gtk_combo_box_get_active(gtkComboBox); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:36: ../hiro/core/../gtk/widget/combo-button-item.cpp: In member function 'void hiro::pComboButtonItem::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/combo-button-item.cpp:14:19: error: 'CreatePixbuf' was not declared in this scope 14 | auto pixbuf = CreatePixbuf(icon, true); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:15:32: error: 'struct hiro::pComboButton' has no member named 'gtkListStore' 15 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:15:47: error: 'gtkIter' was not declared in this scope 15 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:15:5: error: 'gtk_list_store_set' was not declared in this scope 15 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp: In member function 'void hiro::pComboButtonItem::setSelected()': ../hiro/core/../gtk/widget/combo-button-item.cpp:22:38: error: 'struct hiro::pComboButton' has no member named 'gtkComboBox' 22 | gtk_combo_box_set_active(parent->gtkComboBox, self().offset()); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:22:5: error: 'gtk_combo_box_set_active' was not declared in this scope 22 | gtk_combo_box_set_active(parent->gtkComboBox, self().offset()); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp: In member function 'void hiro::pComboButtonItem::setText(const nall::string&)': ../hiro/core/../gtk/widget/combo-button-item.cpp:29:32: error: 'struct hiro::pComboButton' has no member named 'gtkListStore' 29 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:29:47: error: 'gtkIter' was not declared in this scope 29 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-button-item.cpp:29:5: error: 'gtk_list_store_set' was not declared in this scope 29 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:37: ../hiro/core/../gtk/widget/combo-edit.cpp: At global scope: ../hiro/core/../gtk/widget/combo-edit.cpp:5:32: error: 'GtkComboBox' was not declared in this scope 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:5:45: error: 'comboBox' was not declared in this scope 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:5:65: error: expected primary-expression before '*' token 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:5:67: error: 'p' was not declared in this scope 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:5:68: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:5:70: error: expected ',' or ';' before '->' token 5 | static auto ComboEdit_activate(GtkComboBox* comboBox, pComboEdit* p) -> void { p->self().doActivate(); } | ^~ ../hiro/core/../gtk/widget/combo-edit.cpp:6:30: error: 'GtkComboBox' was not declared in this scope 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:6:43: error: 'comboBox' was not declared in this scope 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:6:63: error: expected primary-expression before '*' token 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:6:65: error: 'p' was not declared in this scope 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:6:66: error: expression list treated as compound expression in initializer [-fpermissive] 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^ ../hiro/core/../gtk/widget/combo-edit.cpp:6:68: error: expected ',' or ';' before '->' token 6 | static auto ComboEdit_change(GtkComboBox* comboBox, pComboEdit* p) -> void { p->_updateText(); } | ^~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'virtual void hiro::pComboEdit::construct()': ../hiro/core/../gtk/widget/combo-edit.cpp:9:3: error: 'gtkListStore' was not declared in this scope 9 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:9:40: error: 'GDK_TYPE_PIXBUF' was not declared in this scope 9 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:9:57: error: 'G_TYPE_STRING' was not declared in this scope 9 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:9:18: error: 'gtk_list_store_new' was not declared in this scope 9 | gtkListStore = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:10:3: error: 'gtkTreeModel' was not declared in this scope 10 | gtkTreeModel = GTK_TREE_MODEL(gtkListStore); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:10:18: error: 'GTK_TREE_MODEL' was not declared in this scope 10 | gtkTreeModel = GTK_TREE_MODEL(gtkListStore); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:11:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 11 | gtkWidget = gtk_combo_box_new_with_model_and_entry(gtkTreeModel); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/combo-edit.cpp:11:15: error: 'gtk_combo_box_new_with_model_and_entry' was not declared in this scope 11 | gtkWidget = gtk_combo_box_new_with_model_and_entry(gtkTreeModel); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:12:3: error: 'gtkComboBox' was not declared in this scope 12 | gtkComboBox = GTK_COMBO_BOX(gtkWidget); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:12:17: error: 'GTK_COMBO_BOX' was not declared in this scope 12 | gtkComboBox = GTK_COMBO_BOX(gtkWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:14:25: error: 'GTK_CELL_LAYOUT' was not declared in this scope 14 | gtk_cell_layout_clear(GTK_CELL_LAYOUT(gtkWidget)); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:14:3: error: 'gtk_cell_layout_clear' was not declared in this scope 14 | gtk_cell_layout_clear(GTK_CELL_LAYOUT(gtkWidget)); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:15:3: error: 'gtkCellIcon' was not declared in this scope 15 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:15:17: error: 'gtk_cell_renderer_pixbuf_new' was not declared in this scope 15 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:16:3: error: 'gtk_cell_layout_pack_start' was not declared in this scope 16 | gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(gtkWidget), gtkCellIcon, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:17:3: error: 'gtk_cell_layout_set_attributes' was not declared in this scope 17 | gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(gtkWidget), gtkCellIcon, "pixbuf", 0, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:18:3: error: 'gtkCellText' was not declared in this scope 18 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:18:17: error: 'gtk_cell_renderer_text_new' was not declared in this scope 18 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:29:3: error: 'gtk_combo_box_set_entry_text_column' was not declared in this scope 29 | gtk_combo_box_set_entry_text_column(gtkComboBox, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:47: error: 'GTK_BIN' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:29: error: 'gtk_bin_get_child' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:20: error: 'G_OBJECT' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:83: error: 'G_CALLBACK' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:116: error: 'gpointer' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:39:3: error: 'g_signal_connect' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(gtkComboBox))), "activate", G_CALLBACK(ComboEdit_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:40:92: error: expected ')' before 'this' 40 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(ComboEdit_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'virtual void hiro::pComboEdit::destruct()': ../hiro/core/../gtk/widget/combo-edit.cpp:46:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 46 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/combo-edit.cpp:46:3: error: 'gtk_widget_destroy' was not declared in this scope 46 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::append(hiro::sComboEditItem)': ../hiro/core/../gtk/widget/combo-edit.cpp:52:27: error: 'gtkListStore' was not declared in this scope 52 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:52:48: error: 'struct hiro::pComboEditItem' has no member named 'gtkIter' 52 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:52:5: error: 'gtk_list_store_append' was not declared in this scope 52 | gtk_list_store_append(gtkListStore, &self->gtkIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::remove(hiro::sComboEditItem)': ../hiro/core/../gtk/widget/combo-edit.cpp:74:27: error: 'gtkListStore' was not declared in this scope 74 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:74:52: error: 'struct hiro::pComboEditItem' has no member named 'gtkIter' 74 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:74:5: error: 'gtk_list_store_remove' was not declared in this scope 74 | gtk_list_store_remove(gtkListStore, &delegate->gtkIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'virtual void hiro::pComboEdit::reset()': ../hiro/core/../gtk/widget/combo-edit.cpp:81:24: error: 'gtkListStore' was not declared in this scope 81 | gtk_list_store_clear(gtkListStore); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:81:3: error: 'gtk_list_store_clear' was not declared in this scope 81 | gtk_list_store_clear(gtkListStore); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/combo-edit.cpp:86:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 86 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/combo-edit.cpp:87:52: error: 'gtkComboBox' was not declared in this scope 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:87:44: error: 'GTK_BIN' was not declared in this scope 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:87:26: error: 'gtk_bin_get_child' was not declared in this scope 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:87:67: error: 'GTK_STATE_NORMAL' was not declared in this scope 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:87:94: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/combo-edit.cpp:87:3: error: 'gtk_widget_modify_base' was not declared in this scope 87 | gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::setEditable(bool)': ../hiro/core/../gtk/widget/combo-edit.cpp:91:68: error: 'gtkComboBox' was not declared in this scope 91 | gtk_editable_set_editable(GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(gtkComboBox))), editable); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:91:60: error: 'GTK_BIN' was not declared in this scope 91 | gtk_editable_set_editable(GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(gtkComboBox))), editable); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:91:42: error: 'gtk_bin_get_child' was not declared in this scope 91 | gtk_editable_set_editable(GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(gtkComboBox))), editable); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:91:29: error: 'GTK_EDITABLE' was not declared in this scope 91 | gtk_editable_set_editable(GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(gtkComboBox))), editable); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:91:3: error: 'gtk_editable_set_editable' was not declared in this scope 91 | gtk_editable_set_editable(GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(gtkComboBox))), editable); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/combo-edit.cpp:95:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 95 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/combo-edit.cpp:96:52: error: 'gtkComboBox' was not declared in this scope 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:96:44: error: 'GTK_BIN' was not declared in this scope 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:96:26: error: 'gtk_bin_get_child' was not declared in this scope 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:96:67: error: 'GTK_STATE_NORMAL' was not declared in this scope 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:96:94: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/combo-edit.cpp:96:3: error: 'gtk_widget_modify_text' was not declared in this scope 96 | gtk_widget_modify_text(gtk_bin_get_child(GTK_BIN(gtkComboBox)), GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'virtual void hiro::pComboEdit::setFont(const hiro::Font&)': ../hiro/core/../gtk/widget/combo-edit.cpp:101:33: error: 'create' is not a member of 'hiro::pFont' 101 | auto fontDescription = pFont::create(font); | ^~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:102:25: error: 'gtkCellText' was not declared in this scope 102 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:102:16: error: 'G_OBJECT' was not declared in this scope 102 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:102:3: error: 'g_object_set' was not declared in this scope 102 | g_object_set(G_OBJECT(gtkCellText), "font-desc", fontDescription, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::setText(const nall::string&)': ../hiro/core/../gtk/widget/combo-edit.cpp:107:58: error: 'gtkComboBox' was not declared in this scope 107 | gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox))), text); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:107:50: error: 'GTK_BIN' was not declared in this scope 107 | gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox))), text); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:107:32: error: 'gtk_bin_get_child' was not declared in this scope 107 | gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox))), text); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:107:22: error: 'GTK_ENTRY' was not declared in this scope; did you mean 'AT_ENTRY'? 107 | gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox))), text); | ^~~~~~~~~ | AT_ENTRY ../hiro/core/../gtk/widget/combo-edit.cpp:107:3: error: 'gtk_entry_set_text' was not declared in this scope 107 | gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox))), text); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp: In member function 'void hiro::pComboEdit::_updateText()': ../hiro/core/../gtk/widget/combo-edit.cpp:112:72: error: 'gtkComboBox' was not declared in this scope 112 | string text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox)))); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:112:64: error: 'GTK_BIN' was not declared in this scope 112 | string text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox)))); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:112:46: error: 'gtk_bin_get_child' was not declared in this scope 112 | string text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox)))); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit.cpp:112:36: error: 'GTK_ENTRY' was not declared in this scope; did you mean 'AT_ENTRY'? 112 | string text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox)))); | ^~~~~~~~~ | AT_ENTRY ../hiro/core/../gtk/widget/combo-edit.cpp:112:17: error: 'gtk_entry_get_text' was not declared in this scope 112 | string text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gtkComboBox)))); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:38: ../hiro/core/../gtk/widget/combo-edit-item.cpp: In member function 'void hiro::pComboEditItem::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/combo-edit-item.cpp:13:19: error: 'CreatePixbuf' was not declared in this scope 13 | auto pixbuf = CreatePixbuf(icon, true); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp:14:32: error: 'struct hiro::pComboEdit' has no member named 'gtkListStore' 14 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp:14:47: error: 'gtkIter' was not declared in this scope 14 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp:14:5: error: 'gtk_list_store_set' was not declared in this scope 14 | gtk_list_store_set(parent->gtkListStore, >kIter, 0, pixbuf, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp: In member function 'void hiro::pComboEditItem::setText(const nall::string&)': ../hiro/core/../gtk/widget/combo-edit-item.cpp:20:32: error: 'struct hiro::pComboEdit' has no member named 'gtkListStore' 20 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp:20:47: error: 'gtkIter' was not declared in this scope 20 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~ ../hiro/core/../gtk/widget/combo-edit-item.cpp:20:5: error: 'gtk_list_store_set' was not declared in this scope 20 | gtk_list_store_set(parent->gtkListStore, >kIter, 1, text.data(), -1); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:39: ../hiro/core/../gtk/widget/console.cpp: At global scope: ../hiro/core/../gtk/widget/console.cpp:5:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/console.cpp:5:40: error: expected primary-expression before ',' token 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^ ../hiro/core/../gtk/widget/console.cpp:5:42: error: 'GdkEventKey' was not declared in this scope 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:5:55: error: 'event' was not declared in this scope; did you mean 'servent'? 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/console.cpp:5:70: error: expected primary-expression before '*' token 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^ ../hiro/core/../gtk/widget/console.cpp:5:72: error: 'p' was not declared in this scope 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^ ../hiro/core/../gtk/widget/console.cpp:5:73: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^ ../hiro/core/../gtk/widget/console.cpp:5:75: error: expected ',' or ';' before '->' token 5 | static auto Console_keyPress(GtkWidget*, GdkEventKey* event, pConsole* p) -> signed { | ^~ ../hiro/core/../gtk/widget/console.cpp: In member function 'virtual void hiro::pConsole::construct()': ../hiro/core/../gtk/widget/console.cpp:10:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 10 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/console.cpp:10:15: error: 'gtk_scrolled_window_new' was not declared in this scope 10 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:11:34: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 11 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:11:66: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 11 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:11:88: error: 'GTK_POLICY_ALWAYS' was not declared in this scope 11 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:11:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 11 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:12:71: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 12 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:12:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 12 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:14:3: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 14 | subWidget = gtk_text_view_new(); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/console.cpp:14:15: error: 'gtk_text_view_new' was not declared in this scope 14 | subWidget = gtk_text_view_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:15:3: error: 'gtk_widget_show' was not declared in this scope 15 | gtk_widget_show(subWidget); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:16:30: error: 'GTK_TEXT_VIEW' was not declared in this scope 16 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), false); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:16:3: error: 'gtk_text_view_set_editable' was not declared in this scope 16 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:17:57: error: 'GTK_WRAP_NONE' was not declared in this scope 17 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_NONE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:17:3: error: 'gtk_text_view_set_wrap_mode' was not declared in this scope 17 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:18:21: error: 'GTK_CONTAINER' was not declared in this scope 18 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:18:3: error: 'gtk_container_add' was not declared in this scope 18 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:20:3: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 20 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:20:16: error: 'gtk_text_view_get_buffer' was not declared in this scope 20 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:25:20: error: 'G_OBJECT' was not declared in this scope 25 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(Console_keyPress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:25:60: error: 'G_CALLBACK' was not declared in this scope 25 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(Console_keyPress), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:25:91: error: 'gpointer' was not declared in this scope 25 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(Console_keyPress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:25:3: error: 'g_signal_connect' was not declared in this scope 25 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(Console_keyPress), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'virtual void hiro::pConsole::destruct()': ../hiro/core/../gtk/widget/console.cpp:31:22: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 31 | gtk_widget_destroy(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/console.cpp:31:3: error: 'gtk_widget_destroy' was not declared in this scope 31 | gtk_widget_destroy(subWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:32:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 32 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::print(const nall::string&)': ../hiro/core/../gtk/widget/console.cpp:37:3: error: 'GtkTextIter' was not declared in this scope 37 | GtkTextIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:38:43: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 38 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &iter, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:38:56: error: 'iter' was not declared in this scope 38 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &iter, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~ ../hiro/core/../gtk/widget/console.cpp:38:62: error: 'gtk_text_buffer_get_line_count' was not declared in this scope 38 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &iter, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:38:3: error: 'gtk_text_buffer_get_iter_at_line_offset' was not declared in this scope 38 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &iter, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:39:3: error: 'gtk_text_buffer_insert' was not declared in this scope 39 | gtk_text_buffer_insert(textBuffer, &iter, text, -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'virtual void hiro::pConsole::reset()': ../hiro/core/../gtk/widget/console.cpp:45:28: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 45 | gtk_text_buffer_set_text(textBuffer, state().prompt, -1); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:45:3: error: 'gtk_text_buffer_set_text' was not declared in this scope 45 | gtk_text_buffer_set_text(textBuffer, state().prompt, -1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/console.cpp:50:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 50 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/console.cpp:51:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/console.cpp:51:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:51:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/console.cpp:51:3: error: 'gtk_widget_modify_base' was not declared in this scope 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/console.cpp:55:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 55 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/console.cpp:56:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 56 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/console.cpp:56:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 56 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:56:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 56 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/console.cpp:56:3: error: 'gtk_widget_modify_text' was not declared in this scope 56 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::setPrompt(const nall::string&)': ../hiro/core/../gtk/widget/console.cpp:61:3: error: 'GtkTextIter' was not declared in this scope 61 | GtkTextIter lhs, rhs; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:62:43: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 62 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &lhs, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:62:56: error: 'lhs' was not declared in this scope 62 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &lhs, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~ ../hiro/core/../gtk/widget/console.cpp:62:61: error: 'gtk_text_buffer_get_line_count' was not declared in this scope 62 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &lhs, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:62:3: error: 'gtk_text_buffer_get_iter_at_line_offset' was not declared in this scope 62 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &lhs, gtk_text_buffer_get_line_count(textBuffer), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:63:56: error: 'rhs' was not declared in this scope 63 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &rhs, gtk_text_buffer_get_line_count(textBuffer), previousPrompt.size()); | ^~~ ../hiro/core/../gtk/widget/console.cpp:64:3: error: 'gtk_text_buffer_delete' was not declared in this scope 64 | gtk_text_buffer_delete(textBuffer, &lhs, &rhs); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:66:3: error: 'gtk_text_buffer_insert' was not declared in this scope 66 | gtk_text_buffer_insert(textBuffer, &lhs, previousPrompt = prompt, -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'bool hiro::pConsole::_keyPress(unsigned int, unsigned int)': ../hiro/core/../gtk/widget/console.cpp:71:14: error: 'GDK_CONTROL_MASK' was not declared in this scope 71 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:71:33: error: 'GDK_MOD1_MASK' was not declared in this scope 71 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:71:49: error: 'GDK_SUPER_MASK' was not declared in this scope 71 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:73:3: error: 'GtkTextMark' was not declared in this scope 73 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:73:16: error: 'mark' was not declared in this scope; did you mean 'mask'? 73 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~ | mask ../hiro/core/../gtk/widget/console.cpp:73:48: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 73 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:73:23: error: 'gtk_text_buffer_get_mark' was not declared in this scope 73 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:74:3: error: 'GtkTextIter' was not declared in this scope 74 | GtkTextIter start, cursor, end; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:75:56: error: 'start' was not declared in this scope; did you mean 'stat'? 75 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &start, gtk_text_buffer_get_line_count(textBuffer), state().prompt.size()); | ^~~~~ | stat ../hiro/core/../gtk/widget/console.cpp:75:63: error: 'gtk_text_buffer_get_line_count' was not declared in this scope 75 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &start, gtk_text_buffer_get_line_count(textBuffer), state().prompt.size()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:75:3: error: 'gtk_text_buffer_get_iter_at_line_offset' was not declared in this scope 75 | gtk_text_buffer_get_iter_at_line_offset(textBuffer, &start, gtk_text_buffer_get_line_count(textBuffer), state().prompt.size()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:76:49: error: 'cursor' was not declared in this scope 76 | gtk_text_buffer_get_iter_at_mark(textBuffer, &cursor, mark); | ^~~~~~ ../hiro/core/../gtk/widget/console.cpp:76:3: error: 'gtk_text_buffer_get_iter_at_mark' was not declared in this scope 76 | gtk_text_buffer_get_iter_at_mark(textBuffer, &cursor, mark); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:77:45: error: 'end' was not declared in this scope; did you mean 'std::end'? 77 | gtk_text_buffer_get_end_iter(textBuffer, &end); | ^~~ | std::end In file included from /opt/tools/gcc13/include/c++/13.2.0/utility:73, from ../nall/platform.hpp:29: /opt/tools/gcc13/include/c++/13.2.0/initializer_list:99:5: note: 'std::end' declared here 99 | end(initializer_list<_Tp> __ils) noexcept | ^~~ ../hiro/core/../gtk/widget/console.cpp:77:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 77 | gtk_text_buffer_get_end_iter(textBuffer, &end); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:79:18: error: 'GDK_KEY_Return' was not declared in this scope 79 | if(scancode == GDK_KEY_Return || scancode == GDK_KEY_KP_Enter) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:79:48: error: 'GDK_KEY_KP_Enter' was not declared in this scope 79 | if(scancode == GDK_KEY_Return || scancode == GDK_KEY_KP_Enter) { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:80:18: error: 'gtk_text_buffer_get_text' was not declared in this scope 80 | char* temp = gtk_text_buffer_get_text(textBuffer, &start, &end, true); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:82:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 82 | g_free(temp); | ^~~~~~ | free ../hiro/core/../gtk/widget/console.cpp:83:5: error: 'gtk_text_buffer_insert' was not declared in this scope 83 | gtk_text_buffer_insert(textBuffer, &end, string{"\n", state().prompt}, -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:92:18: error: 'GDK_KEY_Up' was not declared in this scope 92 | if(scancode == GDK_KEY_Up) { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:93:5: error: 'gtk_text_buffer_delete' was not declared in this scope 93 | gtk_text_buffer_delete(textBuffer, &start, &end); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:96:7: error: 'gtk_text_buffer_insert' was not declared in this scope 96 | gtk_text_buffer_insert(textBuffer, &end, history[historyOffset++], -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:102:18: error: 'GDK_KEY_Down' was not declared in this scope 102 | if(scancode == GDK_KEY_Down) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:103:5: error: 'gtk_text_buffer_delete' was not declared in this scope 103 | gtk_text_buffer_delete(textBuffer, &start, &end); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:106:7: error: 'gtk_text_buffer_insert' was not declared in this scope 106 | gtk_text_buffer_insert(textBuffer, &end, history[--historyOffset], -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:112:18: error: 'GDK_KEY_Left' was not declared in this scope 112 | if(scancode == GDK_KEY_Left) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:113:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 113 | if(gtk_text_iter_get_offset(&cursor) <= gtk_text_iter_get_offset(&start)) { | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:114:7: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 114 | gtk_text_buffer_place_cursor(textBuffer, &start); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:116:7: error: 'gtk_text_iter_set_offset' was not declared in this scope 116 | gtk_text_iter_set_offset(&cursor, gtk_text_iter_get_offset(&cursor) - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:117:7: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 117 | gtk_text_buffer_place_cursor(textBuffer, &cursor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:123:18: error: 'GDK_KEY_Right' was not declared in this scope 123 | if(scancode == GDK_KEY_Right) { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:124:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 124 | if(gtk_text_iter_get_offset(&cursor) < gtk_text_iter_get_offset(&start)) { | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:125:7: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 125 | gtk_text_buffer_place_cursor(textBuffer, &end); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:127:7: error: 'gtk_text_iter_set_offset' was not declared in this scope 127 | gtk_text_iter_set_offset(&cursor, gtk_text_iter_get_offset(&cursor) + 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:128:7: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 128 | gtk_text_buffer_place_cursor(textBuffer, &cursor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:134:18: error: 'GDK_KEY_Home' was not declared in this scope 134 | if(scancode == GDK_KEY_Home) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:135:5: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 135 | gtk_text_buffer_place_cursor(textBuffer, &start); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:140:18: error: 'GDK_KEY_End' was not declared in this scope 140 | if(scancode == GDK_KEY_End) { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:141:5: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 141 | gtk_text_buffer_place_cursor(textBuffer, &end); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:146:18: error: 'GDK_KEY_BackSpace' was not declared in this scope 146 | if(scancode == GDK_KEY_BackSpace) { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:147:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 147 | if(gtk_text_iter_get_offset(&cursor) <= gtk_text_iter_get_offset(&start)) return true; | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:148:16: error: expected ';' before 'lhs' 148 | GtkTextIter lhs = cursor; | ^~~~ | ; ../hiro/core/../gtk/widget/console.cpp:149:31: error: 'lhs' was not declared in this scope 149 | gtk_text_iter_set_offset(&lhs, gtk_text_iter_get_offset(&cursor) - 1); | ^~~ ../hiro/core/../gtk/widget/console.cpp:149:36: error: 'gtk_text_iter_get_offset' was not declared in this scope 149 | gtk_text_iter_set_offset(&lhs, gtk_text_iter_get_offset(&cursor) - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:149:5: error: 'gtk_text_iter_set_offset' was not declared in this scope 149 | gtk_text_iter_set_offset(&lhs, gtk_text_iter_get_offset(&cursor) - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:150:5: error: 'gtk_text_buffer_delete' was not declared in this scope 150 | gtk_text_buffer_delete(textBuffer, &lhs, &cursor); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:155:18: error: 'GDK_KEY_Delete' was not declared in this scope 155 | if(scancode == GDK_KEY_Delete) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:156:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 156 | if(gtk_text_iter_get_offset(&cursor) < gtk_text_iter_get_offset(&start)) return true; | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:157:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 157 | if(gtk_text_iter_get_offset(&cursor) == gtk_text_iter_get_offset(&end)) return true; | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:158:16: error: expected ';' before 'rhs' 158 | GtkTextIter rhs = cursor; | ^~~~ | ; ../hiro/core/../gtk/widget/console.cpp:159:31: error: 'rhs' was not declared in this scope 159 | gtk_text_iter_set_offset(&rhs, gtk_text_iter_get_offset(&cursor) + 1); | ^~~ ../hiro/core/../gtk/widget/console.cpp:159:36: error: 'gtk_text_iter_get_offset' was not declared in this scope 159 | gtk_text_iter_set_offset(&rhs, gtk_text_iter_get_offset(&cursor) + 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:159:5: error: 'gtk_text_iter_set_offset' was not declared in this scope 159 | gtk_text_iter_set_offset(&rhs, gtk_text_iter_get_offset(&cursor) + 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:160:5: error: 'gtk_text_buffer_delete' was not declared in this scope 160 | gtk_text_buffer_delete(textBuffer, &cursor, &rhs); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:166:8: error: 'gtk_text_iter_get_offset' was not declared in this scope 166 | if(gtk_text_iter_get_offset(&cursor) < gtk_text_iter_get_offset(&start)) return true; | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:167:5: error: 'gtk_text_buffer_insert' was not declared in this scope 167 | gtk_text_buffer_insert(textBuffer, &cursor, string{(char)scancode}, -1); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::_seekToEnd()': ../hiro/core/../gtk/widget/console.cpp:176:3: error: 'GtkTextIter' was not declared in this scope 176 | GtkTextIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:177:32: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 177 | gtk_text_buffer_get_end_iter(textBuffer, &iter); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:177:45: error: 'iter' was not declared in this scope 177 | gtk_text_buffer_get_end_iter(textBuffer, &iter); | ^~~~ ../hiro/core/../gtk/widget/console.cpp:177:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 177 | gtk_text_buffer_get_end_iter(textBuffer, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:178:3: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 178 | gtk_text_buffer_place_cursor(textBuffer, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp: In member function 'void hiro::pConsole::_seekToMark()': ../hiro/core/../gtk/widget/console.cpp:183:3: error: 'GtkTextMark' was not declared in this scope 183 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:183:16: error: 'mark' was not declared in this scope 183 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~ ../hiro/core/../gtk/widget/console.cpp:183:48: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 183 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/console.cpp:183:23: error: 'gtk_text_buffer_get_mark' was not declared in this scope 183 | GtkTextMark* mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:184:52: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 184 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/console.cpp:184:38: error: 'GTK_TEXT_VIEW' was not declared in this scope 184 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/console.cpp:184:3: error: 'gtk_text_view_scroll_mark_onscreen' was not declared in this scope 184 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:40: ../hiro/core/../gtk/widget/frame.cpp: In member function 'virtual void hiro::pFrame::construct()': ../hiro/core/../gtk/widget/frame.cpp:6:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 6 | gtkWidget = gtk_frame_new(nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/frame.cpp:6:15: error: 'gtk_frame_new' was not declared in this scope 6 | gtkWidget = gtk_frame_new(nullptr); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:7:3: error: 'gtkLabel' was not declared in this scope; did you mean 'wLabel'? 7 | gtkLabel = gtk_label_new(""); | ^~~~~~~~ | wLabel ../hiro/core/../gtk/widget/frame.cpp:7:14: error: 'gtk_label_new' was not declared in this scope 7 | gtkLabel = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:8:30: error: 'GTK_FRAME' was not declared in this scope 8 | gtk_frame_set_label_widget(GTK_FRAME(gtkWidget), gtkLabel); | ^~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:8:3: error: 'gtk_frame_set_label_widget' was not declared in this scope 8 | gtk_frame_set_label_widget(GTK_FRAME(gtkWidget), gtkLabel); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:9:3: error: 'gtk_widget_show' was not declared in this scope 9 | gtk_widget_show(gtkLabel); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:10:3: error: 'gtkChild' was not declared in this scope 10 | gtkChild = gtk_fixed_new(); | ^~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:10:14: error: 'gtk_fixed_new' was not declared in this scope 10 | gtkChild = gtk_fixed_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:11:21: error: 'GTK_CONTAINER' was not declared in this scope 11 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkChild); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:11:3: error: 'gtk_container_add' was not declared in this scope 11 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkChild); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp: In member function 'virtual void hiro::pFrame::destruct()': ../hiro/core/../gtk/widget/frame.cpp:20:22: error: 'gtkChild' was not declared in this scope 20 | gtk_widget_destroy(gtkChild); | ^~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:20:3: error: 'gtk_widget_destroy' was not declared in this scope 20 | gtk_widget_destroy(gtkChild); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:21:22: error: 'gtkLabel' was not declared in this scope; did you mean 'wLabel'? 21 | gtk_widget_destroy(gtkLabel); | ^~~~~~~~ | wLabel ../hiro/core/../gtk/widget/frame.cpp:22:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 22 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/frame.cpp: At global scope: ../hiro/core/../gtk/widget/frame.cpp:32:44: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 32 | auto pFrame::container(mWidget& widget) -> GtkWidget* { | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/frame.cpp:32:53: error: expected initializer before '*' token 32 | auto pFrame::container(mWidget& widget) -> GtkWidget* { | ^ ../hiro/core/../gtk/widget/frame.cpp: In member function 'virtual void hiro::pFrame::setFont(const hiro::Font&)': ../hiro/core/../gtk/widget/frame.cpp:51:18: error: 'gtkLabel' was not declared in this scope; did you mean 'wLabel'? 51 | pFont::setFont(gtkLabel, font); | ^~~~~~~~ | wLabel ../hiro/core/../gtk/widget/frame.cpp: In member function 'void hiro::pFrame::setText(const nall::string&)': ../hiro/core/../gtk/widget/frame.cpp:77:32: error: 'gtkLabel' was not declared in this scope; did you mean 'wLabel'? 77 | gtk_label_set_text(GTK_LABEL(gtkLabel), text); | ^~~~~~~~ | wLabel ../hiro/core/../gtk/widget/frame.cpp:77:22: error: 'GTK_LABEL' was not declared in this scope 77 | gtk_label_set_text(GTK_LABEL(gtkLabel), text); | ^~~~~~~~~ ../hiro/core/../gtk/widget/frame.cpp:77:3: error: 'gtk_label_set_text' was not declared in this scope 77 | gtk_label_set_text(GTK_LABEL(gtkLabel), text); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:41: ../hiro/core/../gtk/widget/hex-edit.cpp: At global scope: ../hiro/core/../gtk/widget/hex-edit.cpp:5:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/hex-edit.cpp:5:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/hex-edit.cpp:5:49: error: 'GdkEventKey' was not declared in this scope 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:5:62: error: 'event' was not declared in this scope; did you mean 'servent'? 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/hex-edit.cpp:5:77: error: expected primary-expression before '*' token 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:5:79: error: 'p' was not declared in this scope 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:5:80: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:5:82: error: expected ',' or ';' before '->' token 5 | static auto HexEdit_keyPress(GtkWidget* widget, GdkEventKey* event, pHexEdit* p) -> signed { | ^~ ../hiro/core/../gtk/widget/hex-edit.cpp:9:33: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/hex-edit.cpp:9:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/hex-edit.cpp:9:52: error: 'GdkEventScroll' was not declared in this scope 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:9:68: error: 'event' was not declared in this scope; did you mean 'servent'? 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/hex-edit.cpp:9:83: error: expected primary-expression before '*' token 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:9:85: error: 'p' was not declared in this scope 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:9:86: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:9:88: error: expected ',' or ';' before '->' token 9 | static auto HexEdit_mouseScroll(GtkWidget* widget, GdkEventScroll* event, pHexEdit* p) -> signed { | ^~ ../hiro/core/../gtk/widget/hex-edit.cpp:23:28: error: 'GtkRange' was not declared in this scope 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:23:45: error: 'GtkScrollType' was not declared in this scope 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:23:67: error: expected primary-expression before 'double' 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:23:89: error: expected primary-expression before '*' token 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:23:91: error: 'p' was not declared in this scope 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:23:92: error: expression list treated as compound expression in initializer [-fpermissive] 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^ ../hiro/core/../gtk/widget/hex-edit.cpp:23:94: error: expected ',' or ';' before '->' token 23 | static auto HexEdit_scroll(GtkRange* range, GtkScrollType scroll, double value, pHexEdit* p) -> signed { | ^~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'virtual void hiro::pHexEdit::construct()': ../hiro/core/../gtk/widget/hex-edit.cpp:32:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 32 | gtkWidget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/hex-edit.cpp:32:27: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 32 | gtkWidget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:32:15: error: 'gtk_box_new' was not declared in this scope 32 | gtkWidget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:35:3: error: 'container' was not declared in this scope 35 | container = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:35:15: error: 'gtk_scrolled_window_new' was not declared in this scope 35 | container = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:36:34: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 36 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(container), GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:36:66: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 36 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(container), GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:36:88: error: 'GTK_POLICY_NEVER' was not declared in this scope 36 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(container), GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:36:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 36 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(container), GTK_POLICY_AUTOMATIC, GTK_POLICY_NEVER); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:37:71: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 37 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(container), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:37:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 37 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(container), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:39:3: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 39 | subWidget = gtk_text_view_new(); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/hex-edit.cpp:39:15: error: 'gtk_text_view_new' was not declared in this scope 39 | subWidget = gtk_text_view_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:40:30: error: 'GTK_TEXT_VIEW' was not declared in this scope 40 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), false); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:40:3: error: 'gtk_text_view_set_editable' was not declared in this scope 40 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:41:57: error: 'GTK_WRAP_NONE' was not declared in this scope 41 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_NONE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:41:3: error: 'gtk_text_view_set_wrap_mode' was not declared in this scope 41 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:42:21: error: 'GTK_CONTAINER' was not declared in this scope 42 | gtk_container_add(GTK_CONTAINER(container), subWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:42:3: error: 'gtk_container_add' was not declared in this scope 42 | gtk_container_add(GTK_CONTAINER(container), subWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:47:3: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 47 | scrollBar = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp:47:33: error: 'GTK_ORIENTATION_VERTICAL' was not declared in this scope 47 | scrollBar = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:47:15: error: 'gtk_scrollbar_new' was not declared in this scope 47 | scrollBar = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:49:23: error: 'GTK_RANGE' was not declared in this scope 49 | gtk_range_set_range(GTK_RANGE(scrollBar), 0, 255); | ^~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:49:3: error: 'gtk_range_set_range' was not declared in this scope 49 | gtk_range_set_range(GTK_RANGE(scrollBar), 0, 255); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:50:3: error: 'gtk_range_set_increments' was not declared in this scope 50 | gtk_range_set_increments(GTK_RANGE(scrollBar), 1, 16); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:51:3: error: 'gtk_widget_set_sensitive' was not declared in this scope 51 | gtk_widget_set_sensitive(scrollBar, false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:53:22: error: 'GTK_BOX' was not declared in this scope 53 | gtk_box_pack_start(GTK_BOX(gtkWidget), container, true, true, 0); | ^~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:53:3: error: 'gtk_box_pack_start' was not declared in this scope 53 | gtk_box_pack_start(GTK_BOX(gtkWidget), container, true, true, 0); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:56:3: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 56 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/hex-edit.cpp:56:16: error: 'gtk_text_view_get_buffer' was not declared in this scope 56 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:57:3: error: 'textCursor' was not declared in this scope; did you mean 'TextCursor'? 57 | textCursor = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~ | TextCursor ../hiro/core/../gtk/widget/hex-edit.cpp:57:16: error: 'gtk_text_buffer_get_mark' was not declared in this scope 57 | textCursor = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:59:3: error: 'gtk_widget_show' was not declared in this scope 59 | gtk_widget_show(scrollBar); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:71:20: error: 'G_OBJECT' was not declared in this scope 71 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(HexEdit_keyPress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:71:60: error: 'G_CALLBACK' was not declared in this scope 71 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(HexEdit_keyPress), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:71:91: error: 'gpointer' was not declared in this scope 71 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(HexEdit_keyPress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:71:3: error: 'g_signal_connect' was not declared in this scope 71 | g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(HexEdit_keyPress), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:72:100: error: expected ')' before 'this' 72 | g_signal_connect(G_OBJECT(subWidget), "scroll-event", G_CALLBACK(HexEdit_mouseScroll), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/hex-edit.cpp:74:95: error: expected ')' before 'this' 74 | g_signal_connect(G_OBJECT(scrollBar), "change-value", G_CALLBACK(HexEdit_scroll), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/hex-edit.cpp:75:100: error: expected ')' before 'this' 75 | g_signal_connect(G_OBJECT(scrollBar), "scroll-event", G_CALLBACK(HexEdit_mouseScroll), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'virtual void hiro::pHexEdit::destruct()': ../hiro/core/../gtk/widget/hex-edit.cpp:81:22: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 81 | gtk_widget_destroy(scrollBar); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp:81:3: error: 'gtk_widget_destroy' was not declared in this scope 81 | gtk_widget_destroy(scrollBar); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:82:22: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 82 | gtk_widget_destroy(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/hex-edit.cpp:83:22: error: 'container' was not declared in this scope 83 | gtk_widget_destroy(container); | ^~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:84:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 84 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'virtual bool hiro::pHexEdit::focused() const': ../hiro/core/../gtk/widget/hex-edit.cpp:88:31: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 88 | return gtk_widget_has_focus(subWidget) || gtk_widget_has_focus(scrollBar); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/hex-edit.cpp:88:10: error: 'gtk_widget_has_focus' was not declared in this scope 88 | return gtk_widget_has_focus(subWidget) || gtk_widget_has_focus(scrollBar); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:88:66: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 88 | return gtk_widget_has_focus(subWidget) || gtk_widget_has_focus(scrollBar); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/hex-edit.cpp:98:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 98 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/hex-edit.cpp:99:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 99 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/hex-edit.cpp:99:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 99 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:99:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 99 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/hex-edit.cpp:99:3: error: 'gtk_widget_modify_base' was not declared in this scope 99 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/hex-edit.cpp:108:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 108 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/hex-edit.cpp:109:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 109 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/hex-edit.cpp:109:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 109 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:109:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 109 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/hex-edit.cpp:109:3: error: 'gtk_widget_modify_text' was not declared in this scope 109 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::update()': ../hiro/core/../gtk/widget/hex-edit.cpp:124:30: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 124 | gtk_text_buffer_set_text(textBuffer, "", -1); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/hex-edit.cpp:124:5: error: 'gtk_text_buffer_set_text' was not declared in this scope 124 | gtk_text_buffer_set_text(textBuffer, "", -1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:156:28: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 156 | gtk_text_buffer_set_text(textBuffer, output, -1); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/hex-edit.cpp:156:3: error: 'gtk_text_buffer_set_text' was not declared in this scope 156 | gtk_text_buffer_set_text(textBuffer, output, -1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'unsigned int hiro::pHexEdit::cursorPosition()': ../hiro/core/../gtk/widget/hex-edit.cpp:162:3: error: 'GtkTextIter' was not declared in this scope 162 | GtkTextIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:163:36: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 163 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/hex-edit.cpp:163:49: error: 'iter' was not declared in this scope 163 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:163:55: error: 'textCursor' was not declared in this scope; did you mean 'TextCursor'? 163 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~ | TextCursor ../hiro/core/../gtk/widget/hex-edit.cpp:163:3: error: 'gtk_text_buffer_get_iter_at_mark' was not declared in this scope 163 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:164:10: error: 'gtk_text_iter_get_offset' was not declared in this scope 164 | return gtk_text_iter_get_offset(&iter); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'bool hiro::pHexEdit::keyPress(unsigned int, unsigned int)': ../hiro/core/../gtk/widget/hex-edit.cpp:170:14: error: 'GDK_CONTROL_MASK' was not declared in this scope 170 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:170:33: error: 'GDK_MOD1_MASK' was not declared in this scope 170 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:170:49: error: 'GDK_SUPER_MASK' was not declared in this scope 170 | if(mask & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK)) return false; //allow actions such as Ctrl+C (copy) | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:177:18: error: 'GDK_KEY_Home' was not declared in this scope 177 | if(scancode == GDK_KEY_Home) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:182:18: error: 'GDK_KEY_End' was not declared in this scope 182 | if(scancode == GDK_KEY_End) { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:187:18: error: 'GDK_KEY_Up' was not declared in this scope 187 | if(scancode == GDK_KEY_Up) { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:198:18: error: 'GDK_KEY_Down' was not declared in this scope 198 | if(scancode == GDK_KEY_Down) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:210:18: error: 'GDK_KEY_Page_Up' was not declared in this scope 210 | if(scancode == GDK_KEY_Page_Up) { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:221:18: error: 'GDK_KEY_Page_Down' was not declared in this scope 221 | if(scancode == GDK_KEY_Page_Down) { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::setCursorPosition(unsigned int)': ../hiro/core/../gtk/widget/hex-edit.cpp:293:3: error: 'GtkTextIter' was not declared in this scope 293 | GtkTextIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:294:36: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 294 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/hex-edit.cpp:294:49: error: 'iter' was not declared in this scope 294 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:294:55: error: 'textCursor' was not declared in this scope; did you mean 'TextCursor'? 294 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~ | TextCursor ../hiro/core/../gtk/widget/hex-edit.cpp:294:3: error: 'gtk_text_buffer_get_iter_at_mark' was not declared in this scope 294 | gtk_text_buffer_get_iter_at_mark(textBuffer, &iter, textCursor); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:297:14: error: expected ';' before 'endIter' 297 | GtkTextIter endIter; | ^~~~~~~~ | ; ../hiro/core/../gtk/widget/hex-edit.cpp:298:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 298 | gtk_text_buffer_get_end_iter(textBuffer, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:299:26: error: 'gtk_text_iter_get_offset' was not declared in this scope 299 | unsigned endPosition = gtk_text_iter_get_offset(&iter); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:301:3: error: 'gtk_text_iter_set_offset' was not declared in this scope 301 | gtk_text_iter_set_offset(&iter, min(position, endPosition)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:302:3: error: 'gtk_text_buffer_place_cursor' was not declared in this scope 302 | gtk_text_buffer_place_cursor(textBuffer, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::setScroll()': ../hiro/core/../gtk/widget/hex-edit.cpp:307:35: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 307 | gtk_range_set_range(GTK_RANGE(scrollBar), 0, rowsScrollable()); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp:307:25: error: 'GTK_RANGE' was not declared in this scope 307 | gtk_range_set_range(GTK_RANGE(scrollBar), 0, rowsScrollable()); | ^~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:307:5: error: 'gtk_range_set_range' was not declared in this scope 307 | gtk_range_set_range(GTK_RANGE(scrollBar), 0, rowsScrollable()); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:308:5: error: 'gtk_widget_set_sensitive' was not declared in this scope 308 | gtk_widget_set_sensitive(scrollBar, true); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:310:30: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 310 | gtk_widget_set_sensitive(scrollBar, false); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp:310:5: error: 'gtk_widget_set_sensitive' was not declared in this scope 310 | gtk_widget_set_sensitive(scrollBar, false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp: In member function 'void hiro::pHexEdit::updateScroll()': ../hiro/core/../gtk/widget/hex-edit.cpp:316:33: error: 'scrollBar' was not declared in this scope; did you mean 'scroll'? 316 | gtk_range_set_value(GTK_RANGE(scrollBar), row); | ^~~~~~~~~ | scroll ../hiro/core/../gtk/widget/hex-edit.cpp:316:23: error: 'GTK_RANGE' was not declared in this scope 316 | gtk_range_set_value(GTK_RANGE(scrollBar), row); | ^~~~~~~~~ ../hiro/core/../gtk/widget/hex-edit.cpp:316:3: error: 'gtk_range_set_value' was not declared in this scope 316 | gtk_range_set_value(GTK_RANGE(scrollBar), row); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:42: ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp: At global scope: ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:40: error: 'GtkRange' was not declared in this scope 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:50: error: 'gtkRange' was not declared in this scope 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:80: error: expected primary-expression before '*' token 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:82: error: 'p' was not declared in this scope 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:83: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:5:85: error: expected ',' or ';' before '->' token 5 | static auto HorizontalScrollBar_change(GtkRange* gtkRange, pHorizontalScrollBar* p) -> void { | ^~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp: In member function 'virtual void hiro::pHorizontalScrollBar::construct()': ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:16:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_HORIZONTAL, nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:16:33: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_HORIZONTAL, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:16:15: error: 'gtk_scrollbar_new' was not declared in this scope 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_HORIZONTAL, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:22:20: error: 'G_OBJECT' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalScrollBar_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:22:58: error: 'G_CALLBACK' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalScrollBar_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:22:99: error: 'gpointer' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalScrollBar_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:22:3: error: 'g_signal_connect' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalScrollBar_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp: In member function 'virtual void hiro::pHorizontalScrollBar::destruct()': ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:28:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 28 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:28:3: error: 'gtk_widget_destroy' was not declared in this scope 28 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp: In member function 'void hiro::pHorizontalScrollBar::setLength(unsigned int)': ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:38:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:38:23: error: 'GTK_RANGE' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:38:3: error: 'gtk_range_set_range' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:39:3: error: 'gtk_range_set_increments' was not declared in this scope 39 | gtk_range_set_increments(GTK_RANGE(gtkWidget), 1, length >> 3); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp: In member function 'void hiro::pHorizontalScrollBar::setPosition(unsigned int)': ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:43:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:43:23: error: 'GTK_RANGE' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-scroll-bar.cpp:43:3: error: 'gtk_range_set_value' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:43: ../hiro/core/../gtk/widget/horizontal-slider.cpp: At global scope: ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:37: error: 'GtkRange' was not declared in this scope 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:47: error: 'gtkRange' was not declared in this scope 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:74: error: expected primary-expression before '*' token 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:76: error: 'p' was not declared in this scope 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:77: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/horizontal-slider.cpp:5:79: error: expected ',' or ';' before '->' token 5 | static auto HorizontalSlider_change(GtkRange* gtkRange, pHorizontalSlider* p) -> void { | ^~ ../hiro/core/../gtk/widget/horizontal-slider.cpp: In member function 'virtual void hiro::pHorizontalSlider::construct()': ../hiro/core/../gtk/widget/horizontal-slider.cpp:16:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 100, 1); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-slider.cpp:16:40: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 100, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:16:15: error: 'gtk_scale_new_with_range' was not declared in this scope 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 100, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:18:28: error: 'GTK_SCALE' was not declared in this scope 18 | gtk_scale_set_draw_value(GTK_SCALE(gtkWidget), false); | ^~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:18:3: error: 'gtk_scale_set_draw_value' was not declared in this scope 18 | gtk_scale_set_draw_value(GTK_SCALE(gtkWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:23:20: error: 'G_OBJECT' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalSlider_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:23:58: error: 'G_CALLBACK' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalSlider_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:23:96: error: 'gpointer' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalSlider_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:23:3: error: 'g_signal_connect' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(HorizontalSlider_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp: In member function 'virtual void hiro::pHorizontalSlider::destruct()': ../hiro/core/../gtk/widget/horizontal-slider.cpp:29:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-slider.cpp:29:3: error: 'gtk_widget_destroy' was not declared in this scope 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp: In member function 'void hiro::pHorizontalSlider::setLength(unsigned int)': ../hiro/core/../gtk/widget/horizontal-slider.cpp:38:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-slider.cpp:38:23: error: 'GTK_RANGE' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:38:3: error: 'gtk_range_set_range' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:39:3: error: 'gtk_range_set_increments' was not declared in this scope 39 | gtk_range_set_increments(GTK_RANGE(gtkWidget), 1, length >> 3); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp: In member function 'void hiro::pHorizontalSlider::setPosition(unsigned int)': ../hiro/core/../gtk/widget/horizontal-slider.cpp:43:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/horizontal-slider.cpp:43:23: error: 'GTK_RANGE' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ ../hiro/core/../gtk/widget/horizontal-slider.cpp:43:3: error: 'gtk_range_set_value' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:44: ../hiro/core/../gtk/widget/icon-view.cpp: At global scope: ../hiro/core/../gtk/widget/icon-view.cpp:5:31: error: 'GtkIconView' was not declared in this scope; did you mean 'wIconView'? 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^~~~~~~~~~~ | wIconView ../hiro/core/../gtk/widget/icon-view.cpp:5:44: error: 'iconView' was not declared in this scope; did you mean 'IconView'? 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^~~~~~~~ | IconView ../hiro/core/../gtk/widget/icon-view.cpp:5:54: error: 'GtkTreePath' was not declared in this scope 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:5:67: error: 'path' was not declared in this scope; did you mean 'nall::Location::path'? 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^~~~ | nall::Location::path In file included from ../nall/string/transform/cml.hpp:7, from ../nall/string.hpp:365, from ../nall/chrono.hpp:4, from ../hiro/core/core.hpp:3: ../nall/location.hpp:9:13: note: 'nall::Location::path' declared here 9 | inline auto path(string_view self) -> string { | ^~~~ ../hiro/core/../gtk/widget/icon-view.cpp:5:82: error: expected primary-expression before '*' token 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:5:84: error: 'p' was not declared in this scope 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:5:85: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:5:87: error: expected ',' or ';' before '->' token 5 | static auto IconView_activate(GtkIconView* iconView, GtkTreePath* path, pIconView* p) -> void { | ^~ ../hiro/core/../gtk/widget/icon-view.cpp:9:34: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/icon-view.cpp:9:47: error: 'treeView' was not declared in this scope; did you mean 'TreeView'? 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^~~~~~~~ | TreeView ../hiro/core/../gtk/widget/icon-view.cpp:9:57: error: 'GdkEventButton' was not declared in this scope 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:9:73: error: 'event' was not declared in this scope; did you mean 'servent'? 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/icon-view.cpp:9:89: error: expected primary-expression before '*' token 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:9:91: error: 'p' was not declared in this scope 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:9:92: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:9:94: error: expected ',' or ';' before '->' token 9 | static auto IconView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pIconView* p) -> signed { | ^~ ../hiro/core/../gtk/widget/icon-view.cpp:18:29: error: 'GtkIconView' was not declared in this scope; did you mean 'wIconView'? 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^~~~~~~~~~~ | wIconView ../hiro/core/../gtk/widget/icon-view.cpp:18:42: error: 'iconView' was not declared in this scope; did you mean 'IconView'? 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^~~~~~~~ | IconView ../hiro/core/../gtk/widget/icon-view.cpp:18:61: error: expected primary-expression before '*' token 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:18:63: error: 'p' was not declared in this scope 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:18:64: error: expression list treated as compound expression in initializer [-fpermissive] 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^ ../hiro/core/../gtk/widget/icon-view.cpp:18:66: error: expected ',' or ';' before '->' token 18 | static auto IconView_change(GtkIconView* iconView, pIconView* p) -> void { | ^~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'virtual void hiro::pIconView::construct()': ../hiro/core/../gtk/widget/icon-view.cpp:23:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 23 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/icon-view.cpp:23:15: error: 'gtk_scrolled_window_new' was not declared in this scope 23 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:24:34: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 24 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:24:66: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 24 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:24:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 24 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:25:71: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 25 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:25:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 25 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:27:3: error: 'store' was not declared in this scope 27 | store = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:27:33: error: 'GDK_TYPE_PIXBUF' was not declared in this scope 27 | store = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:27:50: error: 'G_TYPE_STRING' was not declared in this scope 27 | store = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:27:11: error: 'gtk_list_store_new' was not declared in this scope 27 | store = gtk_list_store_new(2, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:28:3: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 28 | subWidget = gtk_icon_view_new_with_model(GTK_TREE_MODEL(store)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:28:44: error: 'GTK_TREE_MODEL' was not declared in this scope 28 | subWidget = gtk_icon_view_new_with_model(GTK_TREE_MODEL(store)); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:28:15: error: 'gtk_icon_view_new_with_model' was not declared in this scope 28 | subWidget = gtk_icon_view_new_with_model(GTK_TREE_MODEL(store)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:29:35: error: 'GTK_ICON_VIEW' was not declared in this scope 29 | gtk_icon_view_set_pixbuf_column(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:29:3: error: 'gtk_icon_view_set_pixbuf_column' was not declared in this scope 29 | gtk_icon_view_set_pixbuf_column(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:30:3: error: 'gtk_icon_view_set_text_column' was not declared in this scope 30 | gtk_icon_view_set_text_column(GTK_ICON_VIEW(subWidget), 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:31:3: error: 'gtk_icon_view_set_reorderable' was not declared in this scope 31 | gtk_icon_view_set_reorderable(GTK_ICON_VIEW(subWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:32:3: error: 'gtk_icon_view_set_margin' was not declared in this scope 32 | gtk_icon_view_set_margin(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:33:3: error: 'gtk_icon_view_set_spacing' was not declared in this scope 33 | gtk_icon_view_set_spacing(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:34:3: error: 'gtk_icon_view_set_column_spacing' was not declared in this scope 34 | gtk_icon_view_set_column_spacing(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:35:3: error: 'gtk_icon_view_set_row_spacing' was not declared in this scope 35 | gtk_icon_view_set_row_spacing(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:36:3: error: 'gtk_icon_view_set_item_padding' was not declared in this scope 36 | gtk_icon_view_set_item_padding(GTK_ICON_VIEW(subWidget), 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:37:21: error: 'GTK_CONTAINER' was not declared in this scope 37 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:37:3: error: 'gtk_container_add' was not declared in this scope 37 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:39:3: error: 'gtk_widget_show' was not declared in this scope 39 | gtk_widget_show(subWidget); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:52:20: error: 'G_OBJECT' was not declared in this scope 52 | g_signal_connect(G_OBJECT(subWidget), "button-press-event", G_CALLBACK(IconView_buttonEvent), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:52:63: error: 'G_CALLBACK' was not declared in this scope 52 | g_signal_connect(G_OBJECT(subWidget), "button-press-event", G_CALLBACK(IconView_buttonEvent), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:52:98: error: 'gpointer' was not declared in this scope 52 | g_signal_connect(G_OBJECT(subWidget), "button-press-event", G_CALLBACK(IconView_buttonEvent), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:52:3: error: 'g_signal_connect' was not declared in this scope 52 | g_signal_connect(G_OBJECT(subWidget), "button-press-event", G_CALLBACK(IconView_buttonEvent), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:53:109: error: expected ')' before 'this' 53 | g_signal_connect(G_OBJECT(subWidget), "button-release-event", G_CALLBACK(IconView_buttonEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/icon-view.cpp:54:100: error: expected ')' before 'this' 54 | g_signal_connect(G_OBJECT(subWidget), "item-activated", G_CALLBACK(IconView_activate), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/icon-view.cpp:55:101: error: expected ')' before 'this' 55 | g_signal_connect(G_OBJECT(subWidget), "selection-changed", G_CALLBACK(IconView_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'virtual void hiro::pIconView::destruct()': ../hiro/core/../gtk/widget/icon-view.cpp:61:22: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 61 | gtk_widget_destroy(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:61:3: error: 'gtk_widget_destroy' was not declared in this scope 61 | gtk_widget_destroy(subWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:62:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 62 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::append(hiro::sIconViewItem)': ../hiro/core/../gtk/widget/icon-view.cpp:66:3: error: 'GtkTreeIter' was not declared in this scope 66 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:67:25: error: 'store' was not declared in this scope 67 | gtk_list_store_append(store, &iter); | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:67:33: error: 'iter' was not declared in this scope; did you mean 'item'? 67 | gtk_list_store_append(store, &iter); | ^~~~ | item ../hiro/core/../gtk/widget/icon-view.cpp:67:3: error: 'gtk_list_store_append' was not declared in this scope 67 | gtk_list_store_append(store, &iter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::remove(hiro::sIconViewItem)': ../hiro/core/../gtk/widget/icon-view.cpp:75:3: error: 'GtkTreeIter' was not declared in this scope 75 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:76:57: error: 'store' was not declared in this scope 76 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{item->offset()})) { | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:76:42: error: 'GTK_TREE_MODEL' was not declared in this scope 76 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{item->offset()})) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:76:66: error: 'iter' was not declared in this scope; did you mean 'item'? 76 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{item->offset()})) { | ^~~~ | item ../hiro/core/../gtk/widget/icon-view.cpp:76:6: error: 'gtk_tree_model_get_iter_from_string' was not declared in this scope 76 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{item->offset()})) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:77:5: error: 'gtk_list_store_remove' was not declared in this scope 77 | gtk_list_store_remove(store, &iter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'virtual void hiro::pIconView::reset()': ../hiro/core/../gtk/widget/icon-view.cpp:85:24: error: 'store' was not declared in this scope 85 | gtk_list_store_clear(store); | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:85:3: error: 'gtk_list_store_clear' was not declared in this scope 85 | gtk_list_store_clear(store); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/icon-view.cpp:91:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 91 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/icon-view.cpp:92:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 92 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:92:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 92 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:92:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 92 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/icon-view.cpp:92:3: error: 'gtk_widget_modify_base' was not declared in this scope 92 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setBatchable(bool)': ../hiro/core/../gtk/widget/icon-view.cpp:96:50: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 96 | gtk_icon_view_set_selection_mode(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:96:36: error: 'GTK_ICON_VIEW' was not declared in this scope 96 | gtk_icon_view_set_selection_mode(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:97:17: error: 'GTK_SELECTION_MULTIPLE' was not declared in this scope 97 | batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:97:42: error: 'GTK_SELECTION_SINGLE' was not declared in this scope 97 | batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:96:3: error: 'gtk_icon_view_set_selection_mode' was not declared in this scope 96 | gtk_icon_view_set_selection_mode(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setFlow(hiro::Orientation)': ../hiro/core/../gtk/widget/icon-view.cpp:104:45: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 104 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), -1); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:104:31: error: 'GTK_ICON_VIEW' was not declared in this scope 104 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), -1); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:104:5: error: 'gtk_icon_view_set_columns' was not declared in this scope 104 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), -1); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:105:5: error: 'gtk_icon_view_set_item_width' was not declared in this scope 105 | gtk_icon_view_set_item_width(GTK_ICON_VIEW(subWidget), -1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:107:45: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 107 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), 1); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:107:31: error: 'GTK_ICON_VIEW' was not declared in this scope 107 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), 1); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:107:5: error: 'gtk_icon_view_set_columns' was not declared in this scope 107 | gtk_icon_view_set_columns(GTK_ICON_VIEW(subWidget), 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:108:5: error: 'gtk_icon_view_set_item_width' was not declared in this scope 108 | gtk_icon_view_set_item_width(GTK_ICON_VIEW(subWidget), max(128, pSizable::state().geometry.width() - 64)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/icon-view.cpp:113:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 113 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/icon-view.cpp:114:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 114 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:114:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 114 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:114:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 114 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/icon-view.cpp:114:3: error: 'gtk_widget_modify_text' was not declared in this scope 114 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'virtual void hiro::pIconView::setGeometry(hiro::Geometry)': ../hiro/core/../gtk/widget/icon-view.cpp:120:48: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 120 | gtk_icon_view_set_item_width(GTK_ICON_VIEW(subWidget), max(128, pSizable::state().geometry.width() - 64)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:120:34: error: 'GTK_ICON_VIEW' was not declared in this scope 120 | gtk_icon_view_set_item_width(GTK_ICON_VIEW(subWidget), max(128, pSizable::state().geometry.width() - 64)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:120:5: error: 'gtk_icon_view_set_item_width' was not declared in this scope 120 | gtk_icon_view_set_item_width(GTK_ICON_VIEW(subWidget), max(128, pSizable::state().geometry.width() - 64)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setItemIcon(unsigned int, const nall::image&)': ../hiro/core/../gtk/widget/icon-view.cpp:126:3: error: 'GtkTreeIter' was not declared in this scope 126 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:127:57: error: 'store' was not declared in this scope 127 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:127:42: error: 'GTK_TREE_MODEL' was not declared in this scope 127 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:127:66: error: 'iter' was not declared in this scope 127 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~ ../hiro/core/../gtk/widget/icon-view.cpp:127:6: error: 'gtk_tree_model_get_iter_from_string' was not declared in this scope 127 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:129:7: error: 'GdkPixbuf' was not declared in this scope 129 | GdkPixbuf* pixbuf = CreatePixbuf(icon); | ^~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:129:18: error: 'pixbuf' was not declared in this scope 129 | GdkPixbuf* pixbuf = CreatePixbuf(icon); | ^~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:129:27: error: 'CreatePixbuf' was not declared in this scope 129 | GdkPixbuf* pixbuf = CreatePixbuf(icon); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:130:7: error: 'gtk_list_store_set' was not declared in this scope 130 | gtk_list_store_set(store, &iter, 0, pixbuf, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:132:7: error: 'gtk_list_store_set' was not declared in this scope 132 | gtk_list_store_set(store, &iter, 0, nullptr, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setItemSelected(unsigned int, bool)': ../hiro/core/../gtk/widget/icon-view.cpp:140:3: error: 'GtkTreePath' was not declared in this scope 140 | GtkTreePath* path = gtk_tree_path_new_from_string(string{position}); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:140:16: error: 'path' was not declared in this scope; did you mean 'nall::Location::path'? 140 | GtkTreePath* path = gtk_tree_path_new_from_string(string{position}); | ^~~~ | nall::Location::path ../nall/location.hpp:9:13: note: 'nall::Location::path' declared here 9 | inline auto path(string_view self) -> string { | ^~~~ ../hiro/core/../gtk/widget/icon-view.cpp:140:23: error: 'gtk_tree_path_new_from_string' was not declared in this scope 140 | GtkTreePath* path = gtk_tree_path_new_from_string(string{position}); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:142:45: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 142 | gtk_icon_view_select_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:142:31: error: 'GTK_ICON_VIEW' was not declared in this scope 142 | gtk_icon_view_select_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:142:5: error: 'gtk_icon_view_select_path' was not declared in this scope 142 | gtk_icon_view_select_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:144:47: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 144 | gtk_icon_view_unselect_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:144:33: error: 'GTK_ICON_VIEW' was not declared in this scope 144 | gtk_icon_view_unselect_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:144:5: error: 'gtk_icon_view_unselect_path' was not declared in this scope 144 | gtk_icon_view_unselect_path(GTK_ICON_VIEW(subWidget), path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:146:3: error: 'gtk_tree_path_free' was not declared in this scope 146 | gtk_tree_path_free(path); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setItemSelectedAll()': ../hiro/core/../gtk/widget/icon-view.cpp:161:42: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 161 | gtk_icon_view_select_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:161:28: error: 'GTK_ICON_VIEW' was not declared in this scope 161 | gtk_icon_view_select_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:161:3: error: 'gtk_icon_view_select_all' was not declared in this scope 161 | gtk_icon_view_select_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setItemSelectedNone()': ../hiro/core/../gtk/widget/icon-view.cpp:168:44: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 168 | gtk_icon_view_unselect_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:168:30: error: 'GTK_ICON_VIEW' was not declared in this scope 168 | gtk_icon_view_unselect_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:168:3: error: 'gtk_icon_view_unselect_all' was not declared in this scope 168 | gtk_icon_view_unselect_all(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setItemText(unsigned int, const nall::string&)': ../hiro/core/../gtk/widget/icon-view.cpp:175:3: error: 'GtkTreeIter' was not declared in this scope 175 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:176:57: error: 'store' was not declared in this scope 176 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:176:42: error: 'GTK_TREE_MODEL' was not declared in this scope 176 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:176:66: error: 'iter' was not declared in this scope 176 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~ ../hiro/core/../gtk/widget/icon-view.cpp:176:6: error: 'gtk_tree_model_get_iter_from_string' was not declared in this scope 176 | if(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(store), &iter, string{position})) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:177:5: error: 'gtk_list_store_set' was not declared in this scope 177 | gtk_list_store_set(store, &iter, 1, (const char*)text, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::setOrientation(hiro::Orientation)': ../hiro/core/../gtk/widget/icon-view.cpp:182:52: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 182 | gtk_icon_view_set_item_orientation(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:182:38: error: 'GTK_ICON_VIEW' was not declared in this scope 182 | gtk_icon_view_set_item_orientation(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:183:46: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 183 | orientation == Orientation::Horizontal ? GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:183:75: error: 'GTK_ORIENTATION_VERTICAL' was not declared in this scope 183 | orientation == Orientation::Horizontal ? GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:182:3: error: 'gtk_icon_view_set_item_orientation' was not declared in this scope 182 | gtk_icon_view_set_item_orientation(GTK_ICON_VIEW(subWidget), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp: In member function 'void hiro::pIconView::_updateSelected()': ../hiro/core/../gtk/widget/icon-view.cpp:190:3: error: 'GList' was not declared in this scope 190 | GList* list = gtk_icon_view_get_selected_items(GTK_ICON_VIEW(subWidget)); | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:190:10: error: 'list' was not declared in this scope 190 | GList* list = gtk_icon_view_get_selected_items(GTK_ICON_VIEW(subWidget)); | ^~~~ ../hiro/core/../gtk/widget/icon-view.cpp:190:64: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 190 | GList* list = gtk_icon_view_get_selected_items(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/icon-view.cpp:190:50: error: 'GTK_ICON_VIEW' was not declared in this scope 190 | GList* list = gtk_icon_view_get_selected_items(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:190:17: error: 'gtk_icon_view_get_selected_items' was not declared in this scope 190 | GList* list = gtk_icon_view_get_selected_items(GTK_ICON_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:191:10: error: 'p' was not declared in this scope 191 | GList* p = list; | ^ ../hiro/core/../gtk/widget/icon-view.cpp:194:18: error: 'GtkTreePath' was not declared in this scope 194 | auto path = (GtkTreePath*)p->data; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:194:30: error: expected primary-expression before ')' token 194 | auto path = (GtkTreePath*)p->data; | ^ ../hiro/core/../gtk/widget/icon-view.cpp:195:24: error: 'gtk_tree_path_to_string' was not declared in this scope 195 | char* pathString = gtk_tree_path_to_string(path); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:197:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 197 | g_free(pathString); | ^~~~~~ | free ../hiro/core/../gtk/widget/icon-view.cpp:202:25: error: 'GFunc' was not declared in this scope 202 | g_list_foreach(list, (GFunc)gtk_tree_path_free, nullptr); | ^~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:202:3: error: 'g_list_foreach' was not declared in this scope 202 | g_list_foreach(list, (GFunc)gtk_tree_path_free, nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/icon-view.cpp:203:3: error: 'g_list_free' was not declared in this scope 203 | g_list_free(list); | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:46: ../hiro/core/../gtk/widget/label.cpp: At global scope: ../hiro/core/../gtk/widget/label.cpp:5:24: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:5:35: error: 'widget' was not declared in this scope; did you mean 'Widget'? 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:5:43: error: 'cairo_t' was not declared in this scope 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^~~~~~~ ../hiro/core/../gtk/widget/label.cpp:5:52: error: 'context' was not declared in this scope; did you mean 'ucontext'? 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/label.cpp:5:67: error: expected primary-expression before '*' token 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:5:69: error: 'p' was not declared in this scope 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:5:70: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:5:72: error: expected ',' or ';' before '->' token 5 | static auto Label_draw(GtkWidget* widget, cairo_t* context, pLabel* p) -> int { | ^~ ../hiro/core/../gtk/widget/label.cpp:42:26: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:42:37: error: 'widget' was not declared in this scope; did you mean 'Widget'? 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:42:45: error: 'GdkEvent' was not declared in this scope 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:42:55: error: 'event' was not declared in this scope; did you mean 'servent'? 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^~~~~ | servent ../hiro/core/../gtk/widget/label.cpp:42:68: error: expected primary-expression before '*' token 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:42:70: error: 'p' was not declared in this scope 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:42:71: error: expression list treated as compound expression in initializer [-fpermissive] 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:42:73: error: expected ',' or ';' before '->' token 42 | static auto Label_expose(GtkWidget* widget, GdkEvent* event, pLabel* p) -> int { | ^~ ../hiro/core/../gtk/widget/label.cpp:49:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:49:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:49:49: error: 'GdkEventButton' was not declared in this scope 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:49:65: error: 'event' was not declared in this scope; did you mean 'servent'? 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/label.cpp:49:79: error: expected primary-expression before '*' token 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:49:81: error: 'p' was not declared in this scope 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:49:82: error: expression list treated as compound expression in initializer [-fpermissive] 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:49:84: error: expected ',' or ';' before '->' token 49 | static auto Label_mouseEnter(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~ ../hiro/core/../gtk/widget/label.cpp:54:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:54:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:54:49: error: 'GdkEventButton' was not declared in this scope 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:54:65: error: 'event' was not declared in this scope; did you mean 'servent'? 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/label.cpp:54:79: error: expected primary-expression before '*' token 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:54:81: error: 'p' was not declared in this scope 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:54:82: error: expression list treated as compound expression in initializer [-fpermissive] 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^ ../hiro/core/../gtk/widget/label.cpp:54:84: error: expected ',' or ';' before '->' token 54 | static auto Label_mouseLeave(GtkWidget* widget, GdkEventButton* event, pCanvas* p) -> signed { | ^~ ../hiro/core/../gtk/widget/label.cpp:59:30: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:59:41: error: 'widget' was not declared in this scope; did you mean 'Widget'? 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:59:49: error: 'GdkEventButton' was not declared in this scope 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:59:65: error: 'event' was not declared in this scope; did you mean 'servent'? 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~ | servent ../hiro/core/../gtk/widget/label.cpp:59:78: error: expected primary-expression before '*' token 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:59:80: error: 'p' was not declared in this scope 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:59:81: error: expression list treated as compound expression in initializer [-fpermissive] 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:59:83: error: expected ',' or ';' before '->' token 59 | static auto Label_mousePress(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~ ../hiro/core/../gtk/widget/label.cpp:68:32: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/label.cpp:68:43: error: 'widget' was not declared in this scope; did you mean 'Widget'? 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/label.cpp:68:51: error: 'GdkEventButton' was not declared in this scope 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:68:67: error: 'event' was not declared in this scope; did you mean 'servent'? 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~~~~ | servent ../hiro/core/../gtk/widget/label.cpp:68:80: error: expected primary-expression before '*' token 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:68:82: error: 'p' was not declared in this scope 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:68:83: error: expression list treated as compound expression in initializer [-fpermissive] 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^ ../hiro/core/../gtk/widget/label.cpp:68:85: error: expected ',' or ';' before '->' token 68 | static auto Label_mouseRelease(GtkWidget* widget, GdkEventButton* event, pLabel* p) -> int { | ^~ ../hiro/core/../gtk/widget/label.cpp: In member function 'virtual void hiro::pLabel::construct()': ../hiro/core/../gtk/widget/label.cpp:78:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 78 | gtkWidget = gtk_event_box_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/label.cpp:78:15: error: 'gtk_event_box_new' was not declared in this scope 78 | gtkWidget = gtk_event_box_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:79:3: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 79 | subWidget = gtk_label_new(""); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/label.cpp:79:15: error: 'gtk_label_new' was not declared in this scope 79 | subWidget = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:80:3: error: 'gtk_widget_show' was not declared in this scope 80 | gtk_widget_show(subWidget); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:81:21: error: 'GTK_CONTAINER' was not declared in this scope 81 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:81:3: error: 'gtk_container_add' was not declared in this scope 81 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:88:20: error: 'G_OBJECT' was not declared in this scope 88 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Label_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:88:63: error: 'G_CALLBACK' was not declared in this scope 88 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Label_mousePress), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:88:94: error: 'gpointer' was not declared in this scope 88 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Label_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:88:3: error: 'g_signal_connect' was not declared in this scope 88 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Label_mousePress), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:89:107: error: expected ')' before 'this' 89 | g_signal_connect(G_OBJECT(gtkWidget), "button-release-event", G_CALLBACK(Label_mouseRelease), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/label.cpp:93:83: error: expected ')' before 'this' 93 | g_signal_connect(G_OBJECT(subWidget), "draw", G_CALLBACK(Label_draw), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/label.cpp:95:103: error: expected ')' before 'this' 95 | g_signal_connect(G_OBJECT(gtkWidget), "enter-notify-event", G_CALLBACK(Label_mouseEnter), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/label.cpp:96:103: error: expected ')' before 'this' 96 | g_signal_connect(G_OBJECT(gtkWidget), "leave-notify-event", G_CALLBACK(Label_mouseLeave), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/label.cpp: In member function 'virtual void hiro::pLabel::destruct()': ../hiro/core/../gtk/widget/label.cpp:102:22: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 102 | gtk_widget_destroy(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/label.cpp:102:3: error: 'gtk_widget_destroy' was not declared in this scope 102 | gtk_widget_destroy(subWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:103:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 103 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/label.cpp: In member function 'void hiro::pLabel::setAlignment(hiro::Alignment)': ../hiro/core/../gtk/widget/label.cpp:113:35: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 113 | gtk_misc_set_alignment(GTK_MISC(subWidget), alignment.horizontal(), alignment.vertical()); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/label.cpp:113:26: error: 'GTK_MISC' was not declared in this scope 113 | gtk_misc_set_alignment(GTK_MISC(subWidget), alignment.horizontal(), alignment.vertical()); | ^~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:113:3: error: 'gtk_misc_set_alignment' was not declared in this scope 113 | gtk_misc_set_alignment(GTK_MISC(subWidget), alignment.horizontal(), alignment.vertical()); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:114:18: error: 'GTK_JUSTIFY_CENTER' was not declared in this scope 114 | auto justify = GTK_JUSTIFY_CENTER; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:115:48: error: 'GTK_JUSTIFY_LEFT' was not declared in this scope 115 | if(alignment.horizontal() < 0.333) justify = GTK_JUSTIFY_LEFT; | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:116:48: error: 'GTK_JUSTIFY_RIGHT' was not declared in this scope 116 | if(alignment.horizontal() > 0.666) justify = GTK_JUSTIFY_RIGHT; | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:117:25: error: 'GTK_LABEL' was not declared in this scope 117 | gtk_label_set_justify(GTK_LABEL(subWidget), justify); | ^~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:117:3: error: 'gtk_label_set_justify' was not declared in this scope 117 | gtk_label_set_justify(GTK_LABEL(subWidget), justify); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp: In member function 'void hiro::pLabel::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/label.cpp:127:19: error: 'CreateColor' was not declared in this scope 127 | auto gdkColor = CreateColor(color); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:128:24: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 128 | gtk_widget_modify_fg(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/label.cpp:128:35: error: 'GTK_STATE_NORMAL' was not declared in this scope 128 | gtk_widget_modify_fg(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:128:3: error: 'gtk_widget_modify_fg' was not declared in this scope 128 | gtk_widget_modify_fg(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp: In member function 'void hiro::pLabel::setText(const nall::string&)': ../hiro/core/../gtk/widget/label.cpp:132:32: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 132 | gtk_label_set_text(GTK_LABEL(subWidget), text); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/label.cpp:132:22: error: 'GTK_LABEL' was not declared in this scope 132 | gtk_label_set_text(GTK_LABEL(subWidget), text); | ^~~~~~~~~ ../hiro/core/../gtk/widget/label.cpp:132:3: error: 'gtk_label_set_text' was not declared in this scope 132 | gtk_label_set_text(GTK_LABEL(subWidget), text); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:47: ../hiro/core/../gtk/widget/line-edit.cpp: At global scope: ../hiro/core/../gtk/widget/line-edit.cpp:5:31: error: 'GtkEntry' was not declared in this scope 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:5:40: error: expected primary-expression before ',' token 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:5:51: error: expected primary-expression before '*' token 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:5:53: error: 'p' was not declared in this scope 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:5:54: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:5:56: error: expected ',' or ';' before '->' token 5 | static auto LineEdit_activate(GtkEntry*, pLineEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/line-edit.cpp:9:29: error: 'GtkEditable' was not declared in this scope 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:9:41: error: expected primary-expression before ',' token 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:9:52: error: expected primary-expression before '*' token 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:9:54: error: 'p' was not declared in this scope 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:9:55: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/line-edit.cpp:9:57: error: expected ',' or ';' before '->' token 9 | static auto LineEdit_change(GtkEditable*, pLineEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'virtual void hiro::pLineEdit::construct()': ../hiro/core/../gtk/widget/line-edit.cpp:15:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 15 | gtkWidget = gtk_entry_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:15:15: error: 'gtk_entry_new' was not declared in this scope 15 | gtkWidget = gtk_entry_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:22:20: error: 'G_OBJECT' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "activate", G_CALLBACK(LineEdit_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:22:53: error: 'G_CALLBACK' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "activate", G_CALLBACK(LineEdit_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:22:85: error: 'gpointer' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "activate", G_CALLBACK(LineEdit_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:22:3: error: 'g_signal_connect' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "activate", G_CALLBACK(LineEdit_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:23:91: error: expected ')' before 'this' 23 | g_signal_connect(G_OBJECT(gtkWidget), "changed", G_CALLBACK(LineEdit_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'virtual void hiro::pLineEdit::destruct()': ../hiro/core/../gtk/widget/line-edit.cpp:29:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:29:3: error: 'gtk_widget_destroy' was not declared in this scope 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'void hiro::pLineEdit::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/line-edit.cpp:38:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 38 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/line-edit.cpp:39:26: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 39 | gtk_widget_modify_base(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:39:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 39 | gtk_widget_modify_base(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:39:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 39 | gtk_widget_modify_base(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/line-edit.cpp:39:3: error: 'gtk_widget_modify_base' was not declared in this scope 39 | gtk_widget_modify_base(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'void hiro::pLineEdit::setEditable(bool)': ../hiro/core/../gtk/widget/line-edit.cpp:43:42: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 43 | gtk_editable_set_editable(GTK_EDITABLE(gtkWidget), editable); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:43:29: error: 'GTK_EDITABLE' was not declared in this scope 43 | gtk_editable_set_editable(GTK_EDITABLE(gtkWidget), editable); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:43:3: error: 'gtk_editable_set_editable' was not declared in this scope 43 | gtk_editable_set_editable(GTK_EDITABLE(gtkWidget), editable); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'void hiro::pLineEdit::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/line-edit.cpp:47:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 47 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/line-edit.cpp:48:26: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 48 | gtk_widget_modify_text(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:48:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 48 | gtk_widget_modify_text(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp:48:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 48 | gtk_widget_modify_text(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/line-edit.cpp:48:3: error: 'gtk_widget_modify_text' was not declared in this scope 48 | gtk_widget_modify_text(gtkWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/line-edit.cpp: In member function 'void hiro::pLineEdit::setText(const nall::string&)': ../hiro/core/../gtk/widget/line-edit.cpp:53:32: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 53 | gtk_entry_set_text(GTK_ENTRY(gtkWidget), text); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/line-edit.cpp:53:22: error: 'GTK_ENTRY' was not declared in this scope; did you mean 'AT_ENTRY'? 53 | gtk_entry_set_text(GTK_ENTRY(gtkWidget), text); | ^~~~~~~~~ | AT_ENTRY ../hiro/core/../gtk/widget/line-edit.cpp:53:3: error: 'gtk_entry_set_text' was not declared in this scope 53 | gtk_entry_set_text(GTK_ENTRY(gtkWidget), text); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:48: ../hiro/core/../gtk/widget/progress-bar.cpp: In member function 'virtual void hiro::pProgressBar::construct()': ../hiro/core/../gtk/widget/progress-bar.cpp:6:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 6 | gtkWidget = gtk_progress_bar_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/progress-bar.cpp:6:15: error: 'gtk_progress_bar_new' was not declared in this scope 6 | gtkWidget = gtk_progress_bar_new(); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/progress-bar.cpp: In member function 'virtual void hiro::pProgressBar::destruct()': ../hiro/core/../gtk/widget/progress-bar.cpp:14:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 14 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/progress-bar.cpp:14:3: error: 'gtk_widget_destroy' was not declared in this scope 14 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/progress-bar.cpp: In member function 'void hiro::pProgressBar::setPosition(unsigned int)': ../hiro/core/../gtk/widget/progress-bar.cpp:23:50: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 23 | gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(gtkWidget), (double)position / 100.0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/progress-bar.cpp:23:33: error: 'GTK_PROGRESS_BAR' was not declared in this scope 23 | gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(gtkWidget), (double)position / 100.0); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/progress-bar.cpp:23:3: error: 'gtk_progress_bar_set_fraction' was not declared in this scope 23 | gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(gtkWidget), (double)position / 100.0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:49: ../hiro/core/../gtk/widget/radio-button.cpp: At global scope: ../hiro/core/../gtk/widget/radio-button.cpp:5:34: error: 'GtkToggleButton' was not declared in this scope 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:5:50: error: expected primary-expression before ',' token 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-button.cpp:5:64: error: expected primary-expression before '*' token 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-button.cpp:5:66: error: 'p' was not declared in this scope 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-button.cpp:5:67: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-button.cpp:5:69: error: expected ',' or ';' before '->' token 5 | static auto RadioButton_activate(GtkToggleButton*, pRadioButton* p) -> void { | ^~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'virtual void hiro::pRadioButton::construct()': ../hiro/core/../gtk/widget/radio-button.cpp:13:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 13 | gtkWidget = gtk_toggle_button_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:13:15: error: 'gtk_toggle_button_new' was not declared in this scope 13 | gtkWidget = gtk_toggle_button_new(); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:20:20: error: 'G_OBJECT' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioButton_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:20:52: error: 'G_CALLBACK' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioButton_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:20:87: error: 'gpointer' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioButton_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:20:3: error: 'g_signal_connect' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioButton_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'virtual void hiro::pRadioButton::destruct()': ../hiro/core/../gtk/widget/radio-button.cpp:26:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:26:3: error: 'gtk_widget_destroy' was not declared in this scope 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setBordered(bool)': ../hiro/core/../gtk/widget/radio-button.cpp:46:36: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 46 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:46:25: error: 'GTK_BUTTON' was not declared in this scope 46 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:46:59: error: 'GTK_RELIEF_NORMAL' was not declared in this scope 46 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:46:79: error: 'GTK_RELIEF_NONE' was not declared in this scope 46 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:46:3: error: 'gtk_button_set_relief' was not declared in this scope 46 | gtk_button_set_relief(GTK_BUTTON(gtkWidget), bordered ? GTK_RELIEF_NORMAL : GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setChecked()': ../hiro/core/../gtk/widget/radio-button.cpp:55:64: error: 'struct hiro::pRadioButton' has no member named 'gtkWidget'; did you mean 'pWidget'? 55 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:55:40: error: 'GTK_TOGGLE_BUTTON' was not declared in this scope 55 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:55:11: error: 'gtk_toggle_button_set_active' was not declared in this scope 55 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setGroup(hiro::sGroup)': ../hiro/core/../gtk/widget/radio-button.cpp:70:64: error: 'struct hiro::pRadioButton' has no member named 'gtkWidget'; did you mean 'pWidget'? 70 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked = first); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:70:40: error: 'GTK_TOGGLE_BUTTON' was not declared in this scope 70 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked = first); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:70:11: error: 'gtk_toggle_button_set_active' was not declared in this scope 70 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(self->gtkWidget), radioButton->state.checked = first); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/radio-button.cpp:81:5: error: 'GtkImage' was not declared in this scope 81 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:81:15: error: 'gtkImage' was not declared in this scope 81 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:81:26: error: 'CreateImage' was not declared in this scope 81 | GtkImage* gtkImage = CreateImage(icon); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:82:37: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 82 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:82:26: error: 'GTK_BUTTON' was not declared in this scope 82 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:82:50: error: 'GtkWidget' was not declared in this scope; did you mean 'pWidget'? 82 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:82:60: error: expected primary-expression before ')' token 82 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^ ../hiro/core/../gtk/widget/radio-button.cpp:82:5: error: 'gtk_button_set_image' was not declared in this scope 82 | gtk_button_set_image(GTK_BUTTON(gtkWidget), (GtkWidget*)gtkImage); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:84:37: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 84 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:84:26: error: 'GTK_BUTTON' was not declared in this scope 84 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:84:5: error: 'gtk_button_set_image' was not declared in this scope 84 | gtk_button_set_image(GTK_BUTTON(gtkWidget), nullptr); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setOrientation(hiro::Orientation)': ../hiro/core/../gtk/widget/radio-button.cpp:90:74: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 90 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:90:63: error: 'GTK_BUTTON' was not declared in this scope 90 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:90:86: error: 'GTK_POS_LEFT' was not declared in this scope 90 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:90:33: error: 'gtk_button_set_image_position' was not declared in this scope 90 | case Orientation::Horizontal: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_LEFT); break; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:91:86: error: 'GTK_POS_TOP' was not declared in this scope 91 | case Orientation::Vertical: gtk_button_set_image_position(GTK_BUTTON(gtkWidget), GTK_POS_TOP); break; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp: In member function 'void hiro::pRadioButton::setText(const nall::string&)': ../hiro/core/../gtk/widget/radio-button.cpp:96:35: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 96 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-button.cpp:96:24: error: 'GTK_BUTTON' was not declared in this scope 96 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-button.cpp:96:3: error: 'gtk_button_set_label' was not declared in this scope 96 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:50: ../hiro/core/../gtk/widget/radio-label.cpp: At global scope: ../hiro/core/../gtk/widget/radio-label.cpp:5:33: error: 'GtkToggleButton' was not declared in this scope 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:5:49: error: expected primary-expression before ',' token 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-label.cpp:5:62: error: expected primary-expression before '*' token 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-label.cpp:5:64: error: 'p' was not declared in this scope 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-label.cpp:5:65: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^ ../hiro/core/../gtk/widget/radio-label.cpp:5:67: error: expected ',' or ';' before '->' token 5 | static auto RadioLabel_activate(GtkToggleButton*, pRadioLabel* p) -> void { | ^~ ../hiro/core/../gtk/widget/radio-label.cpp: In member function 'virtual void hiro::pRadioLabel::construct()': ../hiro/core/../gtk/widget/radio-label.cpp:13:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 13 | gtkWidget = gtk_radio_button_new_with_label(nullptr, ""); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-label.cpp:13:15: error: 'gtk_radio_button_new_with_label' was not declared in this scope 13 | gtkWidget = gtk_radio_button_new_with_label(nullptr, ""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:14:3: error: 'gtkToggleButton' was not declared in this scope 14 | gtkToggleButton = GTK_TOGGLE_BUTTON(gtkWidget); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:14:21: error: 'GTK_TOGGLE_BUTTON' was not declared in this scope 14 | gtkToggleButton = GTK_TOGGLE_BUTTON(gtkWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:15:3: error: 'gtkRadioButton' was not declared in this scope; did you mean 'wRadioButton'? 15 | gtkRadioButton = GTK_RADIO_BUTTON(gtkWidget); | ^~~~~~~~~~~~~~ | wRadioButton ../hiro/core/../gtk/widget/radio-label.cpp:15:20: error: 'GTK_RADIO_BUTTON' was not declared in this scope 15 | gtkRadioButton = GTK_RADIO_BUTTON(gtkWidget); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:20:20: error: 'G_OBJECT' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioLabel_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:20:52: error: 'G_CALLBACK' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioLabel_activate), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:20:86: error: 'gpointer' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioLabel_activate), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:20:3: error: 'g_signal_connect' was not declared in this scope 20 | g_signal_connect(G_OBJECT(gtkWidget), "toggled", G_CALLBACK(RadioLabel_activate), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp: In member function 'virtual void hiro::pRadioLabel::destruct()': ../hiro/core/../gtk/widget/radio-label.cpp:26:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-label.cpp:26:3: error: 'gtk_widget_destroy' was not declared in this scope 26 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp: In member function 'void hiro::pRadioLabel::setChecked()': ../hiro/core/../gtk/widget/radio-label.cpp:36:32: error: 'gtkToggleButton' was not declared in this scope 36 | gtk_toggle_button_set_active(gtkToggleButton, true); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:36:3: error: 'gtk_toggle_button_set_active' was not declared in this scope 36 | gtk_toggle_button_set_active(gtkToggleButton, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp: In member function 'void hiro::pRadioLabel::setGroup(hiro::sGroup)': ../hiro/core/../gtk/widget/radio-label.cpp:40:9: error: 'GtkRadioButton' was not declared in this scope; did you mean 'wRadioButton'? 40 | maybe<GtkRadioButton*> gtkRadioButton; | ^~~~~~~~~~~~~~ | wRadioButton ../hiro/core/../gtk/widget/radio-label.cpp:40:24: error: template argument 1 is invalid 40 | maybe<GtkRadioButton*> gtkRadioButton; | ^ ../hiro/core/../gtk/widget/radio-label.cpp:46:44: error: 'struct hiro::pRadioLabel' has no member named 'gtkRadioButton' 46 | gtk_radio_button_set_group(self->gtkRadioButton, nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:46:11: error: 'gtk_radio_button_set_group' was not declared in this scope 46 | gtk_radio_button_set_group(self->gtkRadioButton, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:48:36: error: 'struct hiro::pRadioLabel' has no member named 'gtkRadioButton' 48 | gtkRadioButton = self->gtkRadioButton; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:49:48: error: 'struct hiro::pRadioLabel' has no member named 'gtkToggleButton' 49 | gtk_toggle_button_set_active(self->gtkToggleButton, radioLabel->state.checked = true); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:49:13: error: 'gtk_toggle_button_set_active' was not declared in this scope 49 | gtk_toggle_button_set_active(self->gtkToggleButton, radioLabel->state.checked = true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:51:46: error: 'struct hiro::pRadioLabel' has no member named 'gtkRadioButton' 51 | gtk_radio_button_set_group(self->gtkRadioButton, gtk_radio_button_get_group(*gtkRadioButton)); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:51:89: error: invalid type argument of unary '*' (have 'int') 51 | gtk_radio_button_set_group(self->gtkRadioButton, gtk_radio_button_get_group(*gtkRadioButton)); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:51:62: error: 'gtk_radio_button_get_group' was not declared in this scope 51 | gtk_radio_button_set_group(self->gtkRadioButton, gtk_radio_button_get_group(*gtkRadioButton)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:52:48: error: 'struct hiro::pRadioLabel' has no member named 'gtkToggleButton' 52 | gtk_toggle_button_set_active(self->gtkToggleButton, radioLabel->state.checked = false); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:52:13: error: 'gtk_toggle_button_set_active' was not declared in this scope 52 | gtk_toggle_button_set_active(self->gtkToggleButton, radioLabel->state.checked = false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp: In member function 'void hiro::pRadioLabel::setText(const nall::string&)': ../hiro/core/../gtk/widget/radio-label.cpp:61:35: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 61 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/radio-label.cpp:61:24: error: 'GTK_BUTTON' was not declared in this scope 61 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/radio-label.cpp:61:3: error: 'gtk_button_set_label' was not declared in this scope 61 | gtk_button_set_label(GTK_BUTTON(gtkWidget), text); | ^~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:51: ../hiro/core/../gtk/widget/source-edit.cpp: At global scope: ../hiro/core/../gtk/widget/source-edit.cpp:5:31: error: 'GtkTextBuffer' was not declared in this scope 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:5:45: error: expected primary-expression before ',' token 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:5:58: error: expected primary-expression before '*' token 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:5:60: error: 'p' was not declared in this scope 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:5:61: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:5:63: error: expected ',' or ';' before '->' token 5 | static auto SourceEdit_change(GtkTextBuffer*, pSourceEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/source-edit.cpp:9:29: error: 'GObject' was not declared in this scope; did you mean 'wObject'? 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^~~~~~~ | wObject ../hiro/core/../gtk/widget/source-edit.cpp:9:37: error: expected primary-expression before ',' token 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:9:39: error: 'GParamSpec' was not declared in this scope 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:9:50: error: expected primary-expression before ',' token 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:9:63: error: expected primary-expression before '*' token 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:9:65: error: 'p' was not declared in this scope 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:9:66: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/source-edit.cpp:9:68: error: expected ',' or ';' before '->' token 9 | static auto SourceEdit_move(GObject*, GParamSpec*, pSourceEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'virtual void hiro::pSourceEdit::construct()': ../hiro/core/../gtk/widget/source-edit.cpp:15:3: error: 'gtkScrolledWindow' was not declared in this scope 15 | gtkScrolledWindow = (GtkScrolledWindow*)gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:15:24: error: 'GtkScrolledWindow' was not declared in this scope 15 | gtkScrolledWindow = (GtkScrolledWindow*)gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:15:42: error: expected primary-expression before ')' token 15 | gtkScrolledWindow = (GtkScrolledWindow*)gtk_scrolled_window_new(0, 0); | ^ ../hiro/core/../gtk/widget/source-edit.cpp:16:3: error: 'gtkContainer' was not declared in this scope 16 | gtkContainer = GTK_CONTAINER(gtkScrolledWindow); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:16:18: error: 'GTK_CONTAINER' was not declared in this scope 16 | gtkContainer = GTK_CONTAINER(gtkScrolledWindow); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:17:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 17 | gtkWidget = GTK_WIDGET(gtkScrolledWindow); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/source-edit.cpp:17:15: error: 'GTK_WIDGET' was not declared in this scope 17 | gtkWidget = GTK_WIDGET(gtkScrolledWindow); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:18:53: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 18 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:18:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 18 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:19:58: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 19 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:19:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 19 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:21:3: error: 'gtkSourceLanguageManager' was not declared in this scope 21 | gtkSourceLanguageManager = gtk_source_language_manager_get_default(); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:21:30: error: 'gtk_source_language_manager_get_default' was not declared in this scope 21 | gtkSourceLanguageManager = gtk_source_language_manager_get_default(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:22:3: error: 'gtkSourceLanguage' was not declared in this scope 22 | gtkSourceLanguage = gtk_source_language_manager_get_language(gtkSourceLanguageManager, ""); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:22:23: error: 'gtk_source_language_manager_get_language' was not declared in this scope 22 | gtkSourceLanguage = gtk_source_language_manager_get_language(gtkSourceLanguageManager, ""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:24:3: error: 'gtkSourceStyleSchemeManager' was not declared in this scope 24 | gtkSourceStyleSchemeManager = gtk_source_style_scheme_manager_get_default(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:24:33: error: 'gtk_source_style_scheme_manager_get_default' was not declared in this scope 24 | gtkSourceStyleSchemeManager = gtk_source_style_scheme_manager_get_default(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:25:3: error: 'gtkSourceStyleScheme' was not declared in this scope 25 | gtkSourceStyleScheme = gtk_source_style_scheme_manager_get_scheme(gtkSourceStyleSchemeManager, "classic"); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:25:26: error: 'gtk_source_style_scheme_manager_get_scheme' was not declared in this scope 25 | gtkSourceStyleScheme = gtk_source_style_scheme_manager_get_scheme(gtkSourceStyleSchemeManager, "classic"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:27:3: error: 'gtkSourceBuffer' was not declared in this scope 27 | gtkSourceBuffer = gtk_source_buffer_new(nullptr); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:27:21: error: 'gtk_source_buffer_new' was not declared in this scope 27 | gtkSourceBuffer = gtk_source_buffer_new(nullptr); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:28:3: error: 'gtkTextBuffer' was not declared in this scope 28 | gtkTextBuffer = GTK_TEXT_BUFFER(gtkSourceBuffer); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:28:19: error: 'GTK_TEXT_BUFFER' was not declared in this scope 28 | gtkTextBuffer = GTK_TEXT_BUFFER(gtkSourceBuffer); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:29:3: error: 'gtk_source_buffer_set_highlight_matching_brackets' was not declared in this scope 29 | gtk_source_buffer_set_highlight_matching_brackets(gtkSourceBuffer, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:30:3: error: 'gtk_source_buffer_set_highlight_syntax' was not declared in this scope 30 | gtk_source_buffer_set_highlight_syntax(gtkSourceBuffer, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:31:3: error: 'gtk_source_buffer_set_language' was not declared in this scope 31 | gtk_source_buffer_set_language(gtkSourceBuffer, gtkSourceLanguage); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:32:3: error: 'gtk_source_buffer_set_style_scheme' was not declared in this scope 32 | gtk_source_buffer_set_style_scheme(gtkSourceBuffer, gtkSourceStyleScheme); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:34:3: error: 'gtkSourceView' was not declared in this scope 34 | gtkSourceView = (GtkSourceView*)gtk_source_view_new_with_buffer(gtkSourceBuffer); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:34:20: error: 'GtkSourceView' was not declared in this scope 34 | gtkSourceView = (GtkSourceView*)gtk_source_view_new_with_buffer(gtkSourceBuffer); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:34:34: error: expected primary-expression before ')' token 34 | gtkSourceView = (GtkSourceView*)gtk_source_view_new_with_buffer(gtkSourceBuffer); | ^ ../hiro/core/../gtk/widget/source-edit.cpp:35:3: error: 'gtkTextView' was not declared in this scope 35 | gtkTextView = GTK_TEXT_VIEW(gtkSourceView); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:35:17: error: 'GTK_TEXT_VIEW' was not declared in this scope 35 | gtkTextView = GTK_TEXT_VIEW(gtkSourceView); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:36:3: error: 'gtkWidgetSourceView' was not declared in this scope 36 | gtkWidgetSourceView = GTK_WIDGET(gtkSourceView); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:37:3: error: 'gtk_source_view_set_auto_indent' was not declared in this scope 37 | gtk_source_view_set_auto_indent(gtkSourceView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:38:51: error: 'GtkSourceDrawSpacesFlags' was not declared in this scope 38 | gtk_source_view_set_draw_spaces(gtkSourceView, (GtkSourceDrawSpacesFlags)0); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:38:3: error: 'gtk_source_view_set_draw_spaces' was not declared in this scope 38 | gtk_source_view_set_draw_spaces(gtkSourceView, (GtkSourceDrawSpacesFlags)0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:39:3: error: 'gtk_source_view_set_highlight_current_line' was not declared in this scope 39 | gtk_source_view_set_highlight_current_line(gtkSourceView, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:40:3: error: 'gtk_source_view_set_indent_on_tab' was not declared in this scope 40 | gtk_source_view_set_indent_on_tab(gtkSourceView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:41:3: error: 'gtk_source_view_set_indent_width' was not declared in this scope 41 | gtk_source_view_set_indent_width(gtkSourceView, 4); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:42:3: error: 'gtk_source_view_set_insert_spaces_instead_of_tabs' was not declared in this scope 42 | gtk_source_view_set_insert_spaces_instead_of_tabs(gtkSourceView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:43:3: error: 'gtk_source_view_set_right_margin_position' was not declared in this scope 43 | gtk_source_view_set_right_margin_position(gtkSourceView, 80); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:44:3: error: 'gtk_source_view_set_show_line_marks' was not declared in this scope 44 | gtk_source_view_set_show_line_marks(gtkSourceView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:45:3: error: 'gtk_source_view_set_show_line_numbers' was not declared in this scope 45 | gtk_source_view_set_show_line_numbers(gtkSourceView, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:46:3: error: 'gtk_source_view_set_show_right_margin' was not declared in this scope 46 | gtk_source_view_set_show_right_margin(gtkSourceView, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:47:53: error: 'GTK_SOURCE_SMART_HOME_END_DISABLED' was not declared in this scope 47 | gtk_source_view_set_smart_home_end(gtkSourceView, GTK_SOURCE_SMART_HOME_END_DISABLED); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:47:3: error: 'gtk_source_view_set_smart_home_end' was not declared in this scope 47 | gtk_source_view_set_smart_home_end(gtkSourceView, GTK_SOURCE_SMART_HOME_END_DISABLED); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:48:3: error: 'gtk_source_view_set_tab_width' was not declared in this scope 48 | gtk_source_view_set_tab_width(gtkSourceView, 4); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:49:3: error: 'gtk_container_add' was not declared in this scope 49 | gtk_container_add(gtkContainer, gtkWidgetSourceView); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:50:3: error: 'gtk_widget_show' was not declared in this scope 50 | gtk_widget_show(gtkWidgetSourceView); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:60:20: error: 'G_OBJECT' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkSourceBuffer), "changed", G_CALLBACK(SourceEdit_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:60:58: error: 'G_CALLBACK' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkSourceBuffer), "changed", G_CALLBACK(SourceEdit_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:60:90: error: 'gpointer' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkSourceBuffer), "changed", G_CALLBACK(SourceEdit_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:60:3: error: 'g_signal_connect' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkSourceBuffer), "changed", G_CALLBACK(SourceEdit_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:61:113: error: expected ')' before 'this' 61 | g_signal_connect(G_OBJECT(gtkSourceBuffer), "notify::cursor-position", G_CALLBACK(SourceEdit_move), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'virtual void hiro::pSourceEdit::destruct()': ../hiro/core/../gtk/widget/source-edit.cpp:68:22: error: 'gtkWidgetSourceView' was not declared in this scope 68 | gtk_widget_destroy(gtkWidgetSourceView); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:68:3: error: 'gtk_widget_destroy' was not declared in this scope 68 | gtk_widget_destroy(gtkWidgetSourceView); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:69:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 69 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setEditable(bool)': ../hiro/core/../gtk/widget/source-edit.cpp:73:30: error: 'gtkTextView' was not declared in this scope 73 | gtk_text_view_set_editable(gtkTextView, editable); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:73:3: error: 'gtk_text_view_set_editable' was not declared in this scope 73 | gtk_text_view_set_editable(gtkTextView, editable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'virtual void hiro::pSourceEdit::setFocused()': ../hiro/core/../gtk/widget/source-edit.cpp:77:25: error: 'gtkWidgetSourceView' was not declared in this scope 77 | gtk_widget_grab_focus(gtkWidgetSourceView); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:77:3: error: 'gtk_widget_grab_focus' was not declared in this scope 77 | gtk_widget_grab_focus(gtkWidgetSourceView); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setLanguage(const nall::string&)': ../hiro/core/../gtk/widget/source-edit.cpp:85:3: error: 'gtkSourceLanguage' was not declared in this scope 85 | gtkSourceLanguage = gtk_source_language_manager_get_language(gtkSourceLanguageManager, name); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:85:64: error: 'gtkSourceLanguageManager' was not declared in this scope 85 | gtkSourceLanguage = gtk_source_language_manager_get_language(gtkSourceLanguageManager, name); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:85:23: error: 'gtk_source_language_manager_get_language' was not declared in this scope 85 | gtkSourceLanguage = gtk_source_language_manager_get_language(gtkSourceLanguageManager, name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:86:34: error: 'gtkSourceBuffer' was not declared in this scope 86 | gtk_source_buffer_set_language(gtkSourceBuffer, gtkSourceLanguage); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:86:3: error: 'gtk_source_buffer_set_language' was not declared in this scope 86 | gtk_source_buffer_set_language(gtkSourceBuffer, gtkSourceLanguage); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setNumbered(bool)': ../hiro/core/../gtk/widget/source-edit.cpp:90:41: error: 'gtkSourceView' was not declared in this scope 90 | gtk_source_view_set_show_line_numbers(gtkSourceView, numbered); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:90:3: error: 'gtk_source_view_set_show_line_numbers' was not declared in this scope 90 | gtk_source_view_set_show_line_numbers(gtkSourceView, numbered); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setScheme(const nall::string&)': ../hiro/core/../gtk/widget/source-edit.cpp:95:3: error: 'gtkSourceStyleScheme' was not declared in this scope 95 | gtkSourceStyleScheme = gtk_source_style_scheme_manager_get_scheme(gtkSourceStyleSchemeManager, scheme.downcase()); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:95:69: error: 'gtkSourceStyleSchemeManager' was not declared in this scope 95 | gtkSourceStyleScheme = gtk_source_style_scheme_manager_get_scheme(gtkSourceStyleSchemeManager, scheme.downcase()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:95:26: error: 'gtk_source_style_scheme_manager_get_scheme' was not declared in this scope 95 | gtkSourceStyleScheme = gtk_source_style_scheme_manager_get_scheme(gtkSourceStyleSchemeManager, scheme.downcase()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:97:38: error: 'gtkSourceBuffer' was not declared in this scope 97 | gtk_source_buffer_set_style_scheme(gtkSourceBuffer, gtkSourceStyleScheme); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:97:3: error: 'gtk_source_buffer_set_style_scheme' was not declared in this scope 97 | gtk_source_buffer_set_style_scheme(gtkSourceBuffer, gtkSourceStyleScheme); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setText(const nall::string&)': ../hiro/core/../gtk/widget/source-edit.cpp:104:47: error: 'gtkSourceBuffer' was not declared in this scope 104 | gtk_source_buffer_begin_not_undoable_action(gtkSourceBuffer); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:104:3: error: 'gtk_source_buffer_begin_not_undoable_action' was not declared in this scope 104 | gtk_source_buffer_begin_not_undoable_action(gtkSourceBuffer); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:105:28: error: 'gtkTextBuffer' was not declared in this scope 105 | gtk_text_buffer_set_text(gtkTextBuffer, text, -1); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:105:3: error: 'gtk_text_buffer_set_text' was not declared in this scope 105 | gtk_text_buffer_set_text(gtkTextBuffer, text, -1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:106:3: error: 'gtk_source_buffer_end_not_undoable_action' was not declared in this scope 106 | gtk_source_buffer_end_not_undoable_action(gtkSourceBuffer); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setTextCursor(hiro::TextCursor)': ../hiro/core/../gtk/widget/source-edit.cpp:112:3: error: 'GtkTextIter' was not declared in this scope 112 | GtkTextIter offset, length; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:113:32: error: 'gtkTextBuffer' was not declared in this scope 113 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &offset); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:113:48: error: 'offset' was not declared in this scope; did you mean 'offset_t'? 113 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &offset); | ^~~~~~ | offset_t ../hiro/core/../gtk/widget/source-edit.cpp:113:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 113 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &offset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:114:48: error: 'length' was not declared in this scope; did you mean 'len_t'? 114 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &length); | ^~~~~~ | len_t ../hiro/core/../gtk/widget/source-edit.cpp:115:16: error: 'gtk_text_iter_get_offset' was not declared in this scope 115 | signed end = gtk_text_iter_get_offset(&offset); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:116:3: error: 'gtk_text_iter_set_offset' was not declared in this scope 116 | gtk_text_iter_set_offset(&offset, max(0, min(end, cursor.offset()))); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:118:3: error: 'gtk_text_buffer_select_range' was not declared in this scope 118 | gtk_text_buffer_select_range(gtkTextBuffer, &offset, &length); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:119:15: error: 'gtk_text_buffer_get_mark' was not declared in this scope 119 | auto mark = gtk_text_buffer_get_mark(gtkTextBuffer, "insert"); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:120:38: error: 'gtkTextView' was not declared in this scope 120 | gtk_text_view_scroll_mark_onscreen(gtkTextView, mark); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:120:3: error: 'gtk_text_view_scroll_mark_onscreen' was not declared in this scope 120 | gtk_text_view_scroll_mark_onscreen(gtkTextView, mark); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'void hiro::pSourceEdit::setWordWrap(bool)': ../hiro/core/../gtk/widget/source-edit.cpp:125:31: error: 'gtkTextView' was not declared in this scope 125 | gtk_text_view_set_wrap_mode(gtkTextView, wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:125:55: error: 'GTK_WRAP_WORD_CHAR' was not declared in this scope 125 | gtk_text_view_set_wrap_mode(gtkTextView, wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:125:76: error: 'GTK_WRAP_NONE' was not declared in this scope 125 | gtk_text_view_set_wrap_mode(gtkTextView, wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:125:3: error: 'gtk_text_view_set_wrap_mode' was not declared in this scope 125 | gtk_text_view_set_wrap_mode(gtkTextView, wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:126:34: error: 'gtkScrolledWindow' was not declared in this scope 126 | gtk_scrolled_window_set_policy(gtkScrolledWindow, wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:126:64: error: 'GTK_POLICY_NEVER' was not declared in this scope 126 | gtk_scrolled_window_set_policy(gtkScrolledWindow, wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:126:83: error: 'GTK_POLICY_ALWAYS' was not declared in this scope 126 | gtk_scrolled_window_set_policy(gtkScrolledWindow, wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:126:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 126 | gtk_scrolled_window_set_policy(gtkScrolledWindow, wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'nall::string hiro::pSourceEdit::text() const': ../hiro/core/../gtk/widget/source-edit.cpp:130:3: error: 'GtkTextIter' was not declared in this scope 130 | GtkTextIter startIter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:131:34: error: 'gtkTextBuffer' was not declared in this scope 131 | gtk_text_buffer_get_start_iter(gtkTextBuffer, &startIter); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:131:50: error: 'startIter' was not declared in this scope 131 | gtk_text_buffer_get_start_iter(gtkTextBuffer, &startIter); | ^~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:131:3: error: 'gtk_text_buffer_get_start_iter' was not declared in this scope 131 | gtk_text_buffer_get_start_iter(gtkTextBuffer, &startIter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:133:14: error: expected ';' before 'endIter' 133 | GtkTextIter endIter; | ^~~~~~~~ | ; ../hiro/core/../gtk/widget/source-edit.cpp:134:48: error: 'endIter' was not declared in this scope 134 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &endIter); | ^~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:134:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 134 | gtk_text_buffer_get_end_iter(gtkTextBuffer, &endIter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:136:22: error: 'gtk_text_buffer_get_text' was not declared in this scope 136 | char* textBuffer = gtk_text_buffer_get_text(gtkTextBuffer, &startIter, &endIter, true); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:138:3: error: 'g_free' was not declared in this scope; did you mean 'free'? 138 | g_free(textBuffer); | ^~~~~~ | free ../hiro/core/../gtk/widget/source-edit.cpp: In member function 'hiro::TextCursor hiro::pSourceEdit::textCursor() const': ../hiro/core/../gtk/widget/source-edit.cpp:145:25: error: 'gtkSourceBuffer' was not declared in this scope 145 | g_object_get(G_OBJECT(gtkSourceBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:145:16: error: 'G_OBJECT' was not declared in this scope 145 | g_object_get(G_OBJECT(gtkSourceBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:145:3: error: 'g_object_get' was not declared in this scope 145 | g_object_get(G_OBJECT(gtkSourceBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:147:3: error: 'GtkTextIter' was not declared in this scope 147 | GtkTextIter start, end; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:148:43: error: 'gtkTextBuffer' was not declared in this scope 148 | if(gtk_text_buffer_get_selection_bounds(gtkTextBuffer, &start, &end)) { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:148:59: error: 'start' was not declared in this scope; did you mean 'stat'? 148 | if(gtk_text_buffer_get_selection_bounds(gtkTextBuffer, &start, &end)) { | ^~~~~ | stat ../hiro/core/../gtk/widget/source-edit.cpp:148:67: error: 'end' was not declared in this scope; did you mean 'std::end'? 148 | if(gtk_text_buffer_get_selection_bounds(gtkTextBuffer, &start, &end)) { | ^~~ | std::end /opt/tools/gcc13/include/c++/13.2.0/initializer_list:99:5: note: 'std::end' declared here 99 | end(initializer_list<_Tp> __ils) noexcept | ^~~ ../hiro/core/../gtk/widget/source-edit.cpp:148:6: error: 'gtk_text_buffer_get_selection_bounds' was not declared in this scope 148 | if(gtk_text_buffer_get_selection_bounds(gtkTextBuffer, &start, &end)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/source-edit.cpp:151:18: error: 'gtk_text_iter_get_offset' was not declared in this scope 151 | int origin = gtk_text_iter_get_offset(&start); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:52: ../hiro/core/../gtk/widget/tab-frame.cpp: At global scope: ../hiro/core/../gtk/widget/tab-frame.cpp:5:29: error: 'GtkNotebook' was not declared in this scope 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:5:42: error: 'notebook' was not declared in this scope 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:5:52: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/tab-frame.cpp:5:63: error: 'page' was not declared in this scope 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:5:69: error: expected primary-expression before 'unsigned' 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:5:97: error: expected primary-expression before '*' token 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:5:99: error: 'p' was not declared in this scope 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:5:100: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:5:102: error: expected ',' or ';' before '->' token 5 | static auto TabFrame_change(GtkNotebook* notebook, GtkWidget* page, unsigned position, pTabFrame* p) -> void { | ^~ ../hiro/core/../gtk/widget/tab-frame.cpp:13:28: error: 'GtkButton' was not declared in this scope; did you mean 'wButton'? 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^~~~~~~~~ | wButton ../hiro/core/../gtk/widget/tab-frame.cpp:13:39: error: 'button' was not declared in this scope; did you mean 'Button'? 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^~~~~~ | Button ../hiro/core/../gtk/widget/tab-frame.cpp:13:56: error: expected primary-expression before '*' token 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:13:58: error: 'p' was not declared in this scope 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:13:59: error: expression list treated as compound expression in initializer [-fpermissive] 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:13:61: error: expected ',' or ';' before '->' token 13 | static auto TabFrame_close(GtkButton* button, pTabFrame* p) -> void { | ^~ ../hiro/core/../gtk/widget/tab-frame.cpp:26:27: error: 'GtkNotebook' was not declared in this scope 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:26:40: error: 'notebook' was not declared in this scope 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:26:50: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/tab-frame.cpp:26:61: error: 'page' was not declared in this scope 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:26:67: error: expected primary-expression before 'unsigned' 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:26:93: error: expected primary-expression before '*' token 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:26:95: error: 'p' was not declared in this scope 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:26:96: error: expression list treated as compound expression in initializer [-fpermissive] 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp:26:98: error: expected ',' or ';' before '->' token 26 | static auto TabFrame_move(GtkNotebook* notebook, GtkWidget* page, unsigned moveTo, pTabFrame* p) -> void { | ^~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'virtual void hiro::pTabFrame::construct()': ../hiro/core/../gtk/widget/tab-frame.cpp:46:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 46 | gtkWidget = gtk_notebook_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:46:15: error: 'gtk_notebook_new' was not declared in this scope 46 | gtkWidget = gtk_notebook_new(); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:47:32: error: 'GTK_NOTEBOOK' was not declared in this scope 47 | gtk_notebook_set_show_border(GTK_NOTEBOOK(gtkWidget), false); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:47:3: error: 'gtk_notebook_set_show_border' was not declared in this scope 47 | gtk_notebook_set_show_border(GTK_NOTEBOOK(gtkWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:48:53: error: 'GTK_POS_TOP' was not declared in this scope 48 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), GTK_POS_TOP); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:48:3: error: 'gtk_notebook_set_tab_pos' was not declared in this scope 48 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), GTK_POS_TOP); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:54:20: error: 'G_OBJECT' was not declared in this scope 54 | g_signal_connect(G_OBJECT(gtkWidget), "page-reordered", G_CALLBACK(TabFrame_move), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:54:59: error: 'G_CALLBACK' was not declared in this scope 54 | g_signal_connect(G_OBJECT(gtkWidget), "page-reordered", G_CALLBACK(TabFrame_move), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:54:87: error: 'gpointer' was not declared in this scope 54 | g_signal_connect(G_OBJECT(gtkWidget), "page-reordered", G_CALLBACK(TabFrame_move), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:54:3: error: 'g_signal_connect' was not declared in this scope 54 | g_signal_connect(G_OBJECT(gtkWidget), "page-reordered", G_CALLBACK(TabFrame_move), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:55:95: error: expected ')' before 'this' 55 | g_signal_connect(G_OBJECT(gtkWidget), "switch-page", G_CALLBACK(TabFrame_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'virtual void hiro::pTabFrame::destruct()': ../hiro/core/../gtk/widget/tab-frame.cpp:61:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 61 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:61:3: error: 'gtk_widget_destroy' was not declared in this scope 61 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: At global scope: ../hiro/core/../gtk/widget/tab-frame.cpp:74:47: error: 'GtkWidget' does not name a type; did you mean 'pWidget'? 74 | auto pTabFrame::container(mWidget& widget) -> GtkWidget* { | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:74:56: error: expected initializer before '*' token 74 | auto pTabFrame::container(mWidget& widget) -> GtkWidget* { | ^ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::remove(hiro::sTabFrameItem)': ../hiro/core/../gtk/widget/tab-frame.cpp:98:67: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 98 | if(item->offset() == gtk_notebook_get_current_page(GTK_NOTEBOOK(gtkWidget))) { | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:98:54: error: 'GTK_NOTEBOOK' was not declared in this scope 98 | if(item->offset() == gtk_notebook_get_current_page(GTK_NOTEBOOK(gtkWidget))) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:98:24: error: 'gtk_notebook_get_current_page' was not declared in this scope 98 | if(item->offset() == gtk_notebook_get_current_page(GTK_NOTEBOOK(gtkWidget))) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:109:41: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 109 | gtk_notebook_remove_page(GTK_NOTEBOOK(gtkWidget), item->offset()); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:109:28: error: 'GTK_NOTEBOOK' was not declared in this scope 109 | gtk_notebook_remove_page(GTK_NOTEBOOK(gtkWidget), item->offset()); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:109:3: error: 'gtk_notebook_remove_page' was not declared in this scope 109 | gtk_notebook_remove_page(GTK_NOTEBOOK(gtkWidget), item->offset()); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:111:23: error: 'gtk_notebook_get_current_page' was not declared in this scope 111 | unsigned position = gtk_notebook_get_current_page(GTK_NOTEBOOK(gtkWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'virtual void hiro::pTabFrame::setFont(const hiro::Font&)': ../hiro/core/../gtk/widget/tab-frame.cpp:119:28: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 119 | pFont::setFont(tabs[n].title, font); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::setItemMovable(unsigned int, bool)': ../hiro/core/../gtk/widget/tab-frame.cpp:153:49: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 153 | gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(gtkWidget), tabs[position].child, movable); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:153:36: error: 'GTK_NOTEBOOK' was not declared in this scope 153 | gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(gtkWidget), tabs[position].child, movable); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:153:76: error: 'struct hiro::pTabFrame::Tab' has no member named 'child' 153 | gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(gtkWidget), tabs[position].child, movable); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:153:3: error: 'gtk_notebook_set_tab_reorderable' was not declared in this scope 153 | gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(gtkWidget), tabs[position].child, movable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::setItemSelected(unsigned int)': ../hiro/core/../gtk/widget/tab-frame.cpp:159:46: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 159 | gtk_notebook_set_current_page(GTK_NOTEBOOK(gtkWidget), position); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:159:33: error: 'GTK_NOTEBOOK' was not declared in this scope 159 | gtk_notebook_set_current_page(GTK_NOTEBOOK(gtkWidget), position); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:159:3: error: 'gtk_notebook_set_current_page' was not declared in this scope 159 | gtk_notebook_set_current_page(GTK_NOTEBOOK(gtkWidget), position); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::setNavigation(hiro::Navigation)': ../hiro/core/../gtk/widget/tab-frame.cpp:172:3: error: 'GtkPositionType' was not declared in this scope 172 | GtkPositionType type; | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:174:25: error: 'type' was not declared in this scope; did you mean 'wctype'? 174 | case Navigation::Top: type = GTK_POS_TOP; break; | ^~~~ | wctype ../hiro/core/../gtk/widget/tab-frame.cpp:174:32: error: 'GTK_POS_TOP' was not declared in this scope 174 | case Navigation::Top: type = GTK_POS_TOP; break; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:175:35: error: 'GTK_POS_BOTTOM' was not declared in this scope 175 | case Navigation::Bottom: type = GTK_POS_BOTTOM; break; | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:176:33: error: 'GTK_POS_LEFT' was not declared in this scope 176 | case Navigation::Left: type = GTK_POS_LEFT; break; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:177:34: error: 'GTK_POS_RIGHT' was not declared in this scope 177 | case Navigation::Right: type = GTK_POS_RIGHT; break; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:179:41: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 179 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), type); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:179:28: error: 'GTK_NOTEBOOK' was not declared in this scope 179 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), type); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:179:53: error: 'type' was not declared in this scope; did you mean 'wctype'? 179 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), type); | ^~~~ | wctype ../hiro/core/../gtk/widget/tab-frame.cpp:179:3: error: 'gtk_notebook_set_tab_pos' was not declared in this scope 179 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(gtkWidget), type); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::_append()': ../hiro/core/../gtk/widget/tab-frame.cpp:188:7: error: 'struct hiro::pTabFrame::Tab' has no member named 'child' 188 | tab.child = gtk_fixed_new(); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:188:15: error: 'gtk_fixed_new' was not declared in this scope 188 | tab.child = gtk_fixed_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:192:7: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 192 | tab.container = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:192:31: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 192 | tab.container = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:192:19: error: 'gtk_box_new' was not declared in this scope 192 | tab.container = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:194:7: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 194 | tab.image = gtk_image_new(); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:194:15: error: 'gtk_image_new' was not declared in this scope 194 | tab.image = gtk_image_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:195:7: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 195 | tab.title = gtk_label_new(""); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:195:15: error: 'gtk_label_new' was not declared in this scope 195 | tab.title = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:196:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 196 | gtk_misc_set_alignment(GTK_MISC(tab.title), 0.0, 0.5); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:196:26: error: 'GTK_MISC' was not declared in this scope 196 | gtk_misc_set_alignment(GTK_MISC(tab.title), 0.0, 0.5); | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:196:3: error: 'gtk_misc_set_alignment' was not declared in this scope 196 | gtk_misc_set_alignment(GTK_MISC(tab.title), 0.0, 0.5); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:197:7: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 197 | tab.close = gtk_button_new_with_label("\u00d7"); //Unicode multiplication sign (looks better than 'X') | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:197:15: error: 'gtk_button_new_with_label' was not declared in this scope 197 | tab.close = gtk_button_new_with_label("\u00d7"); //Unicode multiplication sign (looks better than 'X') | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:198:48: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 198 | gtk_button_set_focus_on_click(GTK_BUTTON(tab.close), false); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:198:33: error: 'GTK_BUTTON' was not declared in this scope 198 | gtk_button_set_focus_on_click(GTK_BUTTON(tab.close), false); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:198:3: error: 'gtk_button_set_focus_on_click' was not declared in this scope 198 | gtk_button_set_focus_on_click(GTK_BUTTON(tab.close), false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:199:40: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 199 | gtk_button_set_relief(GTK_BUTTON(tab.close), GTK_RELIEF_NONE); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:199:48: error: 'GTK_RELIEF_NONE' was not declared in this scope 199 | gtk_button_set_relief(GTK_BUTTON(tab.close), GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:199:3: error: 'gtk_button_set_relief' was not declared in this scope 199 | gtk_button_set_relief(GTK_BUTTON(tab.close), GTK_RELIEF_NONE); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:200:22: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 200 | pFont::setFont(tab.close, Font("sans", 9).setBold()); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:201:16: error: 'CreateColor' was not declared in this scope 201 | auto color = CreateColor({255, 0, 0}); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:202:54: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 202 | gtk_widget_modify_fg(gtk_bin_get_child(GTK_BIN(tab.close)), GTK_STATE_PRELIGHT, &color); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:202:42: error: 'GTK_BIN' was not declared in this scope 202 | gtk_widget_modify_fg(gtk_bin_get_child(GTK_BIN(tab.close)), GTK_STATE_PRELIGHT, &color); | ^~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:202:24: error: 'gtk_bin_get_child' was not declared in this scope 202 | gtk_widget_modify_fg(gtk_bin_get_child(GTK_BIN(tab.close)), GTK_STATE_PRELIGHT, &color); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:202:63: error: 'GTK_STATE_PRELIGHT' was not declared in this scope 202 | gtk_widget_modify_fg(gtk_bin_get_child(GTK_BIN(tab.close)), GTK_STATE_PRELIGHT, &color); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:202:3: error: 'gtk_widget_modify_fg' was not declared in this scope 202 | gtk_widget_modify_fg(gtk_bin_get_child(GTK_BIN(tab.close)), GTK_STATE_PRELIGHT, &color); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:205:23: error: 'struct hiro::pTabFrame::Tab' has no member named 'child' 205 | gtk_widget_show(tab.child); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:205:3: error: 'gtk_widget_show' was not declared in this scope 205 | gtk_widget_show(tab.child); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:206:23: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 206 | gtk_widget_show(tab.container); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:207:23: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 207 | gtk_widget_show(tab.image); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:208:23: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 208 | gtk_widget_show(tab.title); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:209:23: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 209 | gtk_widget_show(tab.close); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:210:34: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 210 | gtk_box_pack_start(GTK_BOX(tab.container), tab.image, false, false, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:210:22: error: 'GTK_BOX' was not declared in this scope 210 | gtk_box_pack_start(GTK_BOX(tab.container), tab.image, false, false, 0); | ^~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:210:50: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 210 | gtk_box_pack_start(GTK_BOX(tab.container), tab.image, false, false, 0); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:210:3: error: 'gtk_box_pack_start' was not declared in this scope 210 | gtk_box_pack_start(GTK_BOX(tab.container), tab.image, false, false, 0); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:211:34: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 211 | gtk_box_pack_start(GTK_BOX(tab.container), tab.title, true, true, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:211:50: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 211 | gtk_box_pack_start(GTK_BOX(tab.container), tab.title, true, true, 0); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:212:34: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 212 | gtk_box_pack_start(GTK_BOX(tab.container), tab.close, false, false, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:212:50: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 212 | gtk_box_pack_start(GTK_BOX(tab.container), tab.close, false, false, 0); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:214:33: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 214 | g_signal_connect(G_OBJECT(tab.close), "clicked", G_CALLBACK(TabFrame_close), (gpointer)this); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:214:20: error: 'G_OBJECT' was not declared in this scope 214 | g_signal_connect(G_OBJECT(tab.close), "clicked", G_CALLBACK(TabFrame_close), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:214:52: error: 'G_CALLBACK' was not declared in this scope 214 | g_signal_connect(G_OBJECT(tab.close), "clicked", G_CALLBACK(TabFrame_close), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:214:81: error: 'gpointer' was not declared in this scope 214 | g_signal_connect(G_OBJECT(tab.close), "clicked", G_CALLBACK(TabFrame_close), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:214:3: error: 'g_signal_connect' was not declared in this scope 214 | g_signal_connect(G_OBJECT(tab.close), "clicked", G_CALLBACK(TabFrame_close), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:215:41: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 215 | gtk_notebook_append_page(GTK_NOTEBOOK(gtkWidget), tab.child, tab.container); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tab-frame.cpp:215:28: error: 'GTK_NOTEBOOK' was not declared in this scope 215 | gtk_notebook_append_page(GTK_NOTEBOOK(gtkWidget), tab.child, tab.container); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:215:57: error: 'struct hiro::pTabFrame::Tab' has no member named 'child' 215 | gtk_notebook_append_page(GTK_NOTEBOOK(gtkWidget), tab.child, tab.container); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:215:68: error: 'struct hiro::pTabFrame::Tab' has no member named 'container' 215 | gtk_notebook_append_page(GTK_NOTEBOOK(gtkWidget), tab.child, tab.container); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:215:3: error: 'gtk_notebook_append_page' was not declared in this scope 215 | gtk_notebook_append_page(GTK_NOTEBOOK(gtkWidget), tab.child, tab.container); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'void hiro::pTabFrame::_synchronizeTab(unsigned int)': ../hiro/core/../gtk/widget/tab-frame.cpp:232:30: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 232 | gtk_widget_set_visible(tab.close, item->closable()); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:232:3: error: 'gtk_widget_set_visible' was not declared in this scope 232 | gtk_widget_set_visible(tab.close, item->closable()); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:235:19: error: 'CreatePixbuf' was not declared in this scope 235 | auto pixbuf = CreatePixbuf(icon, true); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:236:45: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 236 | gtk_image_set_from_pixbuf(GTK_IMAGE(tab.image), pixbuf); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:236:31: error: 'GTK_IMAGE' was not declared in this scope 236 | gtk_image_set_from_pixbuf(GTK_IMAGE(tab.image), pixbuf); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:236:5: error: 'gtk_image_set_from_pixbuf' was not declared in this scope 236 | gtk_image_set_from_pixbuf(GTK_IMAGE(tab.image), pixbuf); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:238:35: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 238 | gtk_image_clear(GTK_IMAGE(tab.image)); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:238:21: error: 'GTK_IMAGE' was not declared in this scope 238 | gtk_image_clear(GTK_IMAGE(tab.image)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:238:5: error: 'gtk_image_clear' was not declared in this scope 238 | gtk_image_clear(GTK_IMAGE(tab.image)); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:245:36: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 245 | gtk_label_set_text(GTK_LABEL(tab.title), text); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:245:22: error: 'GTK_LABEL' was not declared in this scope 245 | gtk_label_set_text(GTK_LABEL(tab.title), text); | ^~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:245:3: error: 'gtk_label_set_text' was not declared in this scope 245 | gtk_label_set_text(GTK_LABEL(tab.title), text); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'unsigned int hiro::pTabFrame::_tabHeight()': ../hiro/core/../gtk/widget/tab-frame.cpp:253:5: error: 'GtkAllocation' was not declared in this scope 253 | GtkAllocation imageAllocation, titleAllocation, closeAllocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:254:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 254 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:254:47: error: 'imageAllocation' was not declared in this scope 254 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:254:5: error: 'gtk_widget_get_allocation' was not declared in this scope 254 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:255:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 255 | gtk_widget_get_allocation(tabs[n].title, &titleAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:255:47: error: 'titleAllocation' was not declared in this scope 255 | gtk_widget_get_allocation(tabs[n].title, &titleAllocation); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:256:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 256 | gtk_widget_get_allocation(tabs[n].close, &closeAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:256:47: error: 'closeAllocation' was not declared in this scope 256 | gtk_widget_get_allocation(tabs[n].close, &closeAllocation); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp: In member function 'unsigned int hiro::pTabFrame::_tabWidth()': ../hiro/core/../gtk/widget/tab-frame.cpp:270:5: error: 'GtkAllocation' was not declared in this scope 270 | GtkAllocation imageAllocation, titleAllocation, closeAllocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:271:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'image' 271 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:271:47: error: 'imageAllocation' was not declared in this scope 271 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:271:5: error: 'gtk_widget_get_allocation' was not declared in this scope 271 | gtk_widget_get_allocation(tabs[n].image, &imageAllocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:272:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'title' 272 | gtk_widget_get_allocation(tabs[n].title, &titleAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:272:47: error: 'titleAllocation' was not declared in this scope 272 | gtk_widget_get_allocation(tabs[n].title, &titleAllocation); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:273:39: error: 'struct hiro::pTabFrame::Tab' has no member named 'close' 273 | gtk_widget_get_allocation(tabs[n].close, &closeAllocation); | ^~~~~ ../hiro/core/../gtk/widget/tab-frame.cpp:273:47: error: 'closeAllocation' was not declared in this scope 273 | gtk_widget_get_allocation(tabs[n].close, &closeAllocation); | ^~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:54: ../hiro/core/../gtk/widget/table-view.cpp: At global scope: ../hiro/core/../gtk/widget/table-view.cpp:5:32: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:5:44: error: expected primary-expression before ',' token 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:5:46: error: 'GtkTreePath' was not declared in this scope 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:5:59: error: 'gtkRow' was not declared in this scope 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:5:67: error: 'GtkTreeViewColumn' was not declared in this scope 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:5:86: error: 'gtkColumn' was not declared in this scope 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:5:107: error: expected primary-expression before '*' token 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:5:109: error: 'p' was not declared in this scope 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:5:110: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:5:112: error: expected ',' or ';' before '->' token 5 | static auto TableView_activate(GtkTreeView*, GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn, pTableView* p) -> void { return p->_doActivate(gtkRow, gtkColumn); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:6:35: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:6:48: error: 'treeView' was not declared in this scope; did you mean 'TreeView'? 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^~~~~~~~ | TreeView ../hiro/core/../gtk/widget/table-view.cpp:6:58: error: 'GdkEventButton' was not declared in this scope 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:6:74: error: 'event' was not declared in this scope; did you mean 'servent'? 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^~~~~ | servent ../hiro/core/../gtk/widget/table-view.cpp:6:91: error: expected primary-expression before '*' token 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:6:93: error: 'p' was not declared in this scope 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:6:94: error: expression list treated as compound expression in initializer [-fpermissive] 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:6:96: error: expected ',' or ';' before '->' token 6 | static auto TableView_buttonEvent(GtkTreeView* treeView, GdkEventButton* event, pTableView* p) -> signed { return p->_doEvent(event); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:7:30: error: 'GtkTreeSelection' was not declared in this scope 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:7:47: error: expected primary-expression before ',' token 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:7:59: error: expected primary-expression before '*' token 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:7:61: error: 'p' was not declared in this scope 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:7:62: error: expression list treated as compound expression in initializer [-fpermissive] 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:7:64: error: expected ',' or ';' before '->' token 7 | static auto TableView_change(GtkTreeSelection*, pTableView* p) -> void { return p->_doChange(); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:8:28: error: 'GtkCellRendererText' was not declared in this scope 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:8:49: error: 'renderer' was not declared in this scope 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:8:59: error: expected primary-expression before 'const' 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:8:77: error: expected primary-expression before 'const' 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:8:105: error: expected primary-expression before '*' token 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:8:107: error: 'p' was not declared in this scope 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:8:108: error: expression list treated as compound expression in initializer [-fpermissive] 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:8:110: error: expected ',' or ';' before '->' token 8 | static auto TableView_edit(GtkCellRendererText* renderer, const char* path, const char* text, pTableView* p) -> void { return p->_doEdit(renderer, path, text); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:9:38: error: 'GtkTreeViewColumn' was not declared in this scope 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:9:57: error: 'column' was not declared in this scope 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:9:75: error: expected primary-expression before '*' token 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:9:77: error: 'p' was not declared in this scope 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:9:78: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:9:80: error: expected ',' or ';' before '->' token 9 | static auto TableView_headerActivate(GtkTreeViewColumn* column, pTableView* p) -> void { return p->_doHeaderActivate(column); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:10:37: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:10:50: error: 'treeView' was not declared in this scope; did you mean 'TreeView'? 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^~~~~~~~ | TreeView ../hiro/core/../gtk/widget/table-view.cpp:10:60: error: 'GdkEventKey' was not declared in this scope 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:10:73: error: 'event' was not declared in this scope; did you mean 'servent'? 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^~~~~ | servent ../hiro/core/../gtk/widget/table-view.cpp:10:90: error: expected primary-expression before '*' token 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:10:92: error: 'p' was not declared in this scope 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:10:93: error: expression list treated as compound expression in initializer [-fpermissive] 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:10:95: error: expected ',' or ';' before '->' token 10 | static auto TableView_keyPressEvent(GtkTreeView* treeView, GdkEventKey* event, pTableView* p) -> bool { return p->_doKeyPress(event); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:11:38: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/table-view.cpp:11:48: error: expected primary-expression before ',' token 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:11:50: error: 'GdkEvent' was not declared in this scope 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:11:59: error: expected primary-expression before ',' token 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:11:71: error: expected primary-expression before '*' token 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:11:73: error: 'p' was not declared in this scope 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:11:74: error: expression list treated as compound expression in initializer [-fpermissive] 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:11:76: error: expected ',' or ';' before '->' token 11 | static auto TableView_mouseMoveEvent(GtkWidget*, GdkEvent*, pTableView* p) -> signed { return p->_doMouseMove(); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:12:29: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:12:41: error: expected primary-expression before ',' token 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:12:53: error: expected primary-expression before '*' token 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:12:55: error: 'p' was not declared in this scope 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:12:56: error: expression list treated as compound expression in initializer [-fpermissive] 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:12:58: error: expected ',' or ';' before '->' token 12 | static auto TableView_popup(GtkTreeView*, pTableView* p) -> void { return p->_doContext(); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:14:32: error: 'GtkTreeViewColumn' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:51: error: 'column' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:59: error: 'GtkCellRenderer' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:76: error: 'renderer' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:86: error: 'GtkTreeModel' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:100: error: 'model' was not declared in this scope; did you mean 'modfl'? 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~ | modfl ../hiro/core/../gtk/widget/table-view.cpp:14:107: error: 'GtkTreeIter' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:120: error: 'iter' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:14:136: error: expected primary-expression before '*' token 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:14:138: error: 'p' was not declared in this scope 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:14:139: error: expression list treated as compound expression in initializer [-fpermissive] 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:14:141: error: expected ',' or ';' before '->' token 14 | static auto TableView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTableView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:15:30: error: 'GtkCellRendererToggle' was not declared in this scope 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:15:53: error: 'toggle' was not declared in this scope 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:15:61: error: expected primary-expression before 'const' 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:15:89: error: expected primary-expression before '*' token 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:15:91: error: 'p' was not declared in this scope 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:15:92: error: expression list treated as compound expression in initializer [-fpermissive] 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^ ../hiro/core/../gtk/widget/table-view.cpp:15:94: error: expected ',' or ';' before '->' token 15 | static auto TableView_toggle(GtkCellRendererToggle* toggle, const char* path, pTableView* p) -> void { return p->_doToggle(toggle, path); } | ^~ ../hiro/core/../gtk/widget/table-view.cpp:17:31: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:17:43: error: expected primary-expression before ',' token 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:17:55: error: expected primary-expression before '*' token 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:17:57: error: 'p' was not declared in this scope 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:17:58: error: expression list treated as compound expression in initializer [-fpermissive] 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:17:60: error: expected ',' or ';' before '->' token 17 | static auto TableView_realize(GtkTreeView*, pTableView* p) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'virtual void hiro::pTableView::construct()': ../hiro/core/../gtk/widget/table-view.cpp:27:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 27 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/table-view.cpp:27:15: error: 'gtk_scrolled_window_new' was not declared in this scope 27 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:28:3: error: 'gtkScrolledWindow' was not declared in this scope 28 | gtkScrolledWindow = GTK_SCROLLED_WINDOW(gtkWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:28:23: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 28 | gtkScrolledWindow = GTK_SCROLLED_WINDOW(gtkWidget); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:29:53: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 29 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:29:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 29 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:30:58: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 30 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:30:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 30 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:32:3: error: 'gtkWidgetChild' was not declared in this scope 32 | gtkWidgetChild = gtk_tree_view_new(); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:32:20: error: 'gtk_tree_view_new' was not declared in this scope 32 | gtkWidgetChild = gtk_tree_view_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:33:3: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 33 | gtkTreeView = GTK_TREE_VIEW(gtkWidgetChild); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:33:17: error: 'GTK_TREE_VIEW' was not declared in this scope 33 | gtkTreeView = GTK_TREE_VIEW(gtkWidgetChild); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:34:3: error: 'gtkTreeSelection' was not declared in this scope 34 | gtkTreeSelection = gtk_tree_view_get_selection(gtkTreeView); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:34:22: error: 'gtk_tree_view_get_selection' was not declared in this scope 34 | gtkTreeSelection = gtk_tree_view_get_selection(gtkTreeView); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:35:21: error: 'GTK_CONTAINER' was not declared in this scope 35 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkWidgetChild); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:35:3: error: 'gtk_container_add' was not declared in this scope 35 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkWidgetChild); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:36:3: error: 'gtk_tree_view_set_rubber_banding' was not declared in this scope 36 | gtk_tree_view_set_rubber_banding(gtkTreeView, true); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:38:3: error: 'gtk_widget_show' was not declared in this scope 38 | gtk_widget_show(gtkWidgetChild); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:48:20: error: 'G_OBJECT' was not declared in this scope 48 | g_signal_connect(G_OBJECT(gtkTreeView), "button-press-event", G_CALLBACK(TableView_buttonEvent), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:48:65: error: 'G_CALLBACK' was not declared in this scope 48 | g_signal_connect(G_OBJECT(gtkTreeView), "button-press-event", G_CALLBACK(TableView_buttonEvent), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:48:101: error: 'gpointer' was not declared in this scope 48 | g_signal_connect(G_OBJECT(gtkTreeView), "button-press-event", G_CALLBACK(TableView_buttonEvent), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:48:3: error: 'g_signal_connect' was not declared in this scope 48 | g_signal_connect(G_OBJECT(gtkTreeView), "button-press-event", G_CALLBACK(TableView_buttonEvent), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:49:112: error: expected ')' before 'this' 49 | g_signal_connect(G_OBJECT(gtkTreeView), "button-release-event", G_CALLBACK(TableView_buttonEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:50:109: error: expected ')' before 'this' 50 | g_signal_connect(G_OBJECT(gtkTreeView), "key-press-event", G_CALLBACK(TableView_keyPressEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:51:114: error: expected ')' before 'this' 51 | g_signal_connect(G_OBJECT(gtkTreeView), "motion-notify-event", G_CALLBACK(TableView_mouseMoveEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:52:96: error: expected ')' before 'this' 52 | g_signal_connect(G_OBJECT(gtkTreeView), "popup-menu", G_CALLBACK(TableView_popup), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:53:95: error: expected ')' before 'this' 53 | g_signal_connect(G_OBJECT(gtkTreeView), "realize", G_CALLBACK(TableView_realize), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:54:102: error: expected ')' before 'this' 54 | g_signal_connect(G_OBJECT(gtkTreeView), "row-activated", G_CALLBACK(TableView_activate), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:55:99: error: expected ')' before 'this' 55 | g_signal_connect(G_OBJECT(gtkTreeSelection), "changed", G_CALLBACK(TableView_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/table-view.cpp:58:3: error: 'gtkEntry' was not declared in this scope 58 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:58:15: error: 'GtkEntry' was not declared in this scope 58 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:58:24: error: expected primary-expression before ')' token 58 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^ ../hiro/core/../gtk/widget/table-view.cpp:59:3: error: 'gtk_tree_view_set_search_entry' was not declared in this scope 59 | gtk_tree_view_set_search_entry(gtkTreeView, gtkEntry); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'virtual void hiro::pTableView::destruct()': ../hiro/core/../gtk/widget/table-view.cpp:65:33: error: 'gtkEntry' was not declared in this scope 65 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:65:22: error: 'GTK_WIDGET' was not declared in this scope 65 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:65:3: error: 'gtk_widget_destroy' was not declared in this scope 65 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:66:22: error: 'gtkWidgetChild' was not declared in this scope 66 | gtk_widget_destroy(gtkWidgetChild); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:67:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 67 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/table-view.cpp: In member function 'virtual bool hiro::pTableView::focused() const': ../hiro/core/../gtk/widget/table-view.cpp:78:42: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 78 | return gtk_widget_has_focus(GTK_WIDGET(gtkTreeView)); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:78:31: error: 'GTK_WIDGET' was not declared in this scope 78 | return gtk_widget_has_focus(GTK_WIDGET(gtkTreeView)); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:78:10: error: 'gtk_widget_has_focus' was not declared in this scope 78 | return gtk_widget_has_focus(GTK_WIDGET(gtkTreeView)); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::resizeColumns()': ../hiro/core/../gtk/widget/table-view.cpp:102:58: error: 'gtkScrolledWindow' was not declared in this scope 102 | if(auto scrollBar = gtk_scrolled_window_get_vscrollbar(gtkScrolledWindow)) { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:102:23: error: 'gtk_scrolled_window_get_vscrollbar' was not declared in this scope 102 | if(auto scrollBar = gtk_scrolled_window_get_vscrollbar(gtkScrolledWindow)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:103:5: error: 'GtkAllocation' was not declared in this scope 103 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:104:43: error: 'allocation' was not declared in this scope 104 | gtk_widget_get_allocation(scrollBar, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:104:5: error: 'gtk_widget_get_allocation' was not declared in this scope 104 | gtk_widget_get_allocation(scrollBar, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:105:8: error: 'gtk_widget_get_visible' was not declared in this scope 105 | if(gtk_widget_get_visible(scrollBar)) maximumWidth -= allocation.width; | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:117:52: error: 'struct hiro::pTableViewColumn' has no member named 'gtkColumn' 117 | gtk_tree_view_column_set_fixed_width(column->gtkColumn, width); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:117:7: error: 'gtk_tree_view_column_set_fixed_width' was not declared in this scope 117 | gtk_tree_view_column_set_fixed_width(column->gtkColumn, width); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/table-view.cpp:127:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 127 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/table-view.cpp:128:26: error: 'gtkWidgetChild' was not declared in this scope 128 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:128:42: error: 'GTK_STATE_NORMAL' was not declared in this scope 128 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:128:69: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 128 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/table-view.cpp:128:3: error: 'gtk_widget_modify_base' was not declared in this scope 128 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setBatchable(bool)': ../hiro/core/../gtk/widget/table-view.cpp:133:31: error: 'gtkTreeSelection' was not declared in this scope 133 | gtk_tree_selection_set_mode(gtkTreeSelection, batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:133:61: error: 'GTK_SELECTION_MULTIPLE' was not declared in this scope 133 | gtk_tree_selection_set_mode(gtkTreeSelection, batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:133:86: error: 'GTK_SELECTION_SINGLE' was not declared in this scope 133 | gtk_tree_selection_set_mode(gtkTreeSelection, batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:133:3: error: 'gtk_tree_selection_set_mode' was not declared in this scope 133 | gtk_tree_selection_set_mode(gtkTreeSelection, batchable ? GTK_SELECTION_MULTIPLE : GTK_SELECTION_SINGLE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setBordered(bool)': ../hiro/core/../gtk/widget/table-view.cpp:137:32: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 137 | gtk_tree_view_set_grid_lines(gtkTreeView, bordered ? GTK_TREE_VIEW_GRID_LINES_BOTH : GTK_TREE_VIEW_GRID_LINES_NONE); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:137:56: error: 'GTK_TREE_VIEW_GRID_LINES_BOTH' was not declared in this scope 137 | gtk_tree_view_set_grid_lines(gtkTreeView, bordered ? GTK_TREE_VIEW_GRID_LINES_BOTH : GTK_TREE_VIEW_GRID_LINES_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:137:88: error: 'GTK_TREE_VIEW_GRID_LINES_NONE' was not declared in this scope 137 | gtk_tree_view_set_grid_lines(gtkTreeView, bordered ? GTK_TREE_VIEW_GRID_LINES_BOTH : GTK_TREE_VIEW_GRID_LINES_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:137:3: error: 'gtk_tree_view_set_grid_lines' was not declared in this scope 137 | gtk_tree_view_set_grid_lines(gtkTreeView, bordered ? GTK_TREE_VIEW_GRID_LINES_BOTH : GTK_TREE_VIEW_GRID_LINES_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'virtual void hiro::pTableView::setFocused()': ../hiro/core/../gtk/widget/table-view.cpp:146:53: error: 'gtkTreeSelection' was not declared in this scope 146 | bool selected = gtk_tree_selection_get_selected(gtkTreeSelection, nullptr, nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:146:21: error: 'gtk_tree_selection_get_selected' was not declared in this scope 146 | bool selected = gtk_tree_selection_get_selected(gtkTreeSelection, nullptr, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:147:27: error: 'gtkWidgetChild' was not declared in this scope 147 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:147:5: error: 'gtk_widget_grab_focus' was not declared in this scope 147 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:148:19: error: 'gtk_tree_selection_unselect_all' was not declared in this scope 148 | if(!selected) gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:150:27: error: 'gtkWidgetChild' was not declared in this scope 150 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:150:5: error: 'gtk_widget_grab_focus' was not declared in this scope 150 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/table-view.cpp:159:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 159 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/table-view.cpp:160:26: error: 'gtkWidgetChild' was not declared in this scope 160 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:160:42: error: 'GTK_STATE_NORMAL' was not declared in this scope 160 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:160:69: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 160 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/table-view.cpp:160:3: error: 'gtk_widget_modify_text' was not declared in this scope 160 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setHeadered(bool)': ../hiro/core/../gtk/widget/table-view.cpp:175:37: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 175 | gtk_tree_view_set_headers_visible(gtkTreeView, headered); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:175:3: error: 'gtk_tree_view_set_headers_visible' was not declared in this scope 175 | gtk_tree_view_set_headers_visible(gtkTreeView, headered); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::setSortable(bool)': ../hiro/core/../gtk/widget/table-view.cpp:180:77: error: 'struct hiro::pTableViewColumn' has no member named 'gtkColumn' 180 | if(auto self = column->self()) gtk_tree_view_column_set_clickable(self->gtkColumn, sortable); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:180:36: error: 'gtk_tree_view_column_set_clickable' was not declared in this scope 180 | if(auto self = column->self()) gtk_tree_view_column_set_clickable(self->gtkColumn, sortable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::_createModel()': ../hiro/core/../gtk/widget/table-view.cpp:221:27: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 221 | gtk_tree_view_set_model(gtkTreeView, nullptr); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:221:3: error: 'gtk_tree_view_set_model' was not declared in this scope 221 | gtk_tree_view_set_model(gtkTreeView, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:222:3: error: 'gtkListStore' was not declared in this scope 222 | gtkListStore = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:223:3: error: 'gtkTreeModel' was not declared in this scope 223 | gtkTreeModel = nullptr; | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:225:10: error: 'GType' was not declared in this scope 225 | vector<GType> types; | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:225:15: error: template argument 1 is invalid 225 | vector<GType> types; | ^ ../hiro/core/../gtk/widget/table-view.cpp:228:17: error: 'struct hiro::pTableViewColumn' has no member named 'gtkColumn' 228 | if(!self->gtkColumn) continue; //may not have been created yet; or recently destroyed | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:229:13: error: request for member 'append' in 'types', which is of non-class type 'int' 229 | types.append(G_TYPE_BOOLEAN); | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:229:20: error: 'G_TYPE_BOOLEAN' was not declared in this scope 229 | types.append(G_TYPE_BOOLEAN); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:230:13: error: request for member 'append' in 'types', which is of non-class type 'int' 230 | types.append(GDK_TYPE_PIXBUF); | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:230:20: error: 'GDK_TYPE_PIXBUF' was not declared in this scope 230 | types.append(GDK_TYPE_PIXBUF); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:231:13: error: request for member 'append' in 'types', which is of non-class type 'int' 231 | types.append(G_TYPE_STRING); | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:231:20: error: 'G_TYPE_STRING' was not declared in this scope 231 | types.append(G_TYPE_STRING); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:236:44: error: request for member 'size' in 'types', which is of non-class type 'int' 236 | gtkListStore = gtk_list_store_newv(types.size(), types.data()); | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:236:58: error: request for member 'data' in 'types', which is of non-class type 'int' 236 | gtkListStore = gtk_list_store_newv(types.size(), types.data()); | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:236:18: error: 'gtk_list_store_newv' was not declared in this scope 236 | gtkListStore = gtk_list_store_newv(types.size(), types.data()); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:237:18: error: 'GTK_TREE_MODEL' was not declared in this scope 237 | gtkTreeModel = GTK_TREE_MODEL(gtkListStore); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: At global scope: ../hiro/core/../gtk/widget/table-view.cpp:241:6: error: 'auto hiro::pTableView::_doActivate' is not a static data member of 'struct hiro::pTableView' 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:241:30: error: 'GtkTreePath' was not declared in this scope 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:241:43: error: 'gtkRow' was not declared in this scope 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:241:51: error: 'GtkTreeViewColumn' was not declared in this scope 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:241:70: error: 'gtkColumn' was not declared in this scope 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:241:79: error: expression list treated as compound expression in initializer [-fpermissive] 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:241:81: error: expected ',' or ';' before '->' token 241 | auto pTableView::_doActivate(GtkTreePath* gtkRow, GtkTreeViewColumn* gtkColumn) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp:271:6: error: 'auto hiro::pTableView::_doDataFunc' is not a static data member of 'struct hiro::pTableView' 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:30: error: 'GtkTreeViewColumn' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:49: error: 'gtkColumn' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:60: error: 'GtkCellRenderer' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:77: error: 'renderer' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:87: error: 'GtkTreeIter' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:100: error: 'iter' was not declared in this scope 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:271:104: error: expression list treated as compound expression in initializer [-fpermissive] 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:271:106: error: expected ',' or ';' before '->' token 271 | auto pTableView::_doDataFunc(GtkTreeViewColumn* gtkColumn, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp:319:6: error: 'auto hiro::pTableView::_doEdit' is not a static data member of 'struct hiro::pTableView' 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:319:26: error: 'GtkCellRendererText' was not declared in this scope 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:319:47: error: 'gtkCellRendererText' was not declared in this scope 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:319:68: error: expected primary-expression before 'const' 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:319:86: error: expected primary-expression before 'const' 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:319:102: error: expression list treated as compound expression in initializer [-fpermissive] 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:319:104: error: expected ',' or ';' before '->' token 319 | auto pTableView::_doEdit(GtkCellRendererText* gtkCellRendererText, const char* path, const char* text) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp:338:6: error: 'auto hiro::pTableView::_doEvent' is not a static data member of 'struct hiro::pTableView' 338 | auto pTableView::_doEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:338:27: error: 'GdkEventButton' was not declared in this scope 338 | auto pTableView::_doEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:338:43: error: 'gdkEvent' was not declared in this scope; did you mean '_doEvent'? 338 | auto pTableView::_doEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~ | _doEvent ../hiro/core/../gtk/widget/table-view.cpp:338:53: error: expected ',' or ';' before '->' token 338 | auto pTableView::_doEvent(GdkEventButton* gdkEvent) -> signed { | ^~ ../hiro/core/../gtk/widget/table-view.cpp:377:6: error: 'auto hiro::pTableView::_doHeaderActivate' is not a static data member of 'struct hiro::pTableView' 377 | auto pTableView::_doHeaderActivate(GtkTreeViewColumn* gtkTreeViewColumn) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:377:36: error: 'GtkTreeViewColumn' was not declared in this scope 377 | auto pTableView::_doHeaderActivate(GtkTreeViewColumn* gtkTreeViewColumn) -> void { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:377:55: error: 'gtkTreeViewColumn' was not declared in this scope 377 | auto pTableView::_doHeaderActivate(GtkTreeViewColumn* gtkTreeViewColumn) -> void { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:377:74: error: expected ',' or ';' before '->' token 377 | auto pTableView::_doHeaderActivate(GtkTreeViewColumn* gtkTreeViewColumn) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp:388:6: error: 'auto hiro::pTableView::_doKeyPress' is not a static data member of 'struct hiro::pTableView' 388 | auto pTableView::_doKeyPress(GdkEventKey* event) -> bool { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:388:30: error: 'GdkEventKey' was not declared in this scope 388 | auto pTableView::_doKeyPress(GdkEventKey* event) -> bool { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:388:43: error: 'event' was not declared in this scope; did you mean 'servent'? 388 | auto pTableView::_doKeyPress(GdkEventKey* event) -> bool { | ^~~~~ | servent ../hiro/core/../gtk/widget/table-view.cpp:388:50: error: expected ',' or ';' before '->' token 388 | auto pTableView::_doKeyPress(GdkEventKey* event) -> bool { | ^~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'int hiro::pTableView::_doMouseMove()': ../hiro/core/../gtk/widget/table-view.cpp:413:45: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 413 | if(gtk_tree_view_is_rubber_banding_active(gtkTreeView)) { | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:413:6: error: 'gtk_tree_view_is_rubber_banding_active' was not declared in this scope 413 | if(gtk_tree_view_is_rubber_banding_active(gtkTreeView)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: At global scope: ../hiro/core/../gtk/widget/table-view.cpp:419:6: error: 'auto hiro::pTableView::_doToggle' is not a static data member of 'struct hiro::pTableView' 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:419:28: error: 'GtkCellRendererToggle' was not declared in this scope 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:419:51: error: 'gtkCellRendererToggle' was not declared in this scope 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:419:74: error: expected primary-expression before 'const' 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:419:90: error: expression list treated as compound expression in initializer [-fpermissive] 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^ ../hiro/core/../gtk/widget/table-view.cpp:419:92: error: expected ',' or ';' before '->' token 419 | auto pTableView::_doToggle(GtkCellRendererToggle* gtkCellRendererToggle, const char* path) -> void { | ^~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::_updateRulesHint()': ../hiro/core/../gtk/widget/table-view.cpp:444:32: error: 'gtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 444 | gtk_tree_view_set_rules_hint(gtkTreeView, rules); | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/table-view.cpp:444:3: error: 'gtk_tree_view_set_rules_hint' was not declared in this scope 444 | gtk_tree_view_set_rules_hint(gtkTreeView, rules); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp: In member function 'void hiro::pTableView::_updateSelected()': ../hiro/core/../gtk/widget/table-view.cpp:454:37: error: 'gtkTreeSelection' was not declared in this scope 454 | gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:454:5: error: 'gtk_tree_selection_unselect_all' was not declared in this scope 454 | gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:460:3: error: 'GList' was not declared in this scope 460 | GList* list = gtk_tree_selection_get_selected_rows(gtkTreeSelection, >kTreeModel); | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:460:10: error: 'list' was not declared in this scope 460 | GList* list = gtk_tree_selection_get_selected_rows(gtkTreeSelection, >kTreeModel); | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:460:54: error: 'gtkTreeSelection' was not declared in this scope 460 | GList* list = gtk_tree_selection_get_selected_rows(gtkTreeSelection, >kTreeModel); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:460:73: error: 'gtkTreeModel' was not declared in this scope 460 | GList* list = gtk_tree_selection_get_selected_rows(gtkTreeSelection, >kTreeModel); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:460:17: error: 'gtk_tree_selection_get_selected_rows' was not declared in this scope 460 | GList* list = gtk_tree_selection_get_selected_rows(gtkTreeSelection, >kTreeModel); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:461:10: error: 'p' was not declared in this scope 461 | GList* p = list; | ^ ../hiro/core/../gtk/widget/table-view.cpp:464:5: error: 'GtkTreeIter' was not declared in this scope 464 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:465:47: error: 'iter' was not declared in this scope 465 | if(gtk_tree_model_get_iter(gtkTreeModel, &iter, (GtkTreePath*)p->data)) { | ^~~~ ../hiro/core/../gtk/widget/table-view.cpp:465:54: error: 'GtkTreePath' was not declared in this scope 465 | if(gtk_tree_model_get_iter(gtkTreeModel, &iter, (GtkTreePath*)p->data)) { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:465:66: error: expected primary-expression before ')' token 465 | if(gtk_tree_model_get_iter(gtkTreeModel, &iter, (GtkTreePath*)p->data)) { | ^ ../hiro/core/../gtk/widget/table-view.cpp:465:8: error: 'gtk_tree_model_get_iter' was not declared in this scope 465 | if(gtk_tree_model_get_iter(gtkTreeModel, &iter, (GtkTreePath*)p->data)) { | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:466:24: error: 'gtk_tree_model_get_string_from_iter' was not declared in this scope 466 | char* pathname = gtk_tree_model_get_string_from_iter(gtkTreeModel, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:468:7: error: 'g_free' was not declared in this scope; did you mean 'free'? 468 | g_free(pathname); | ^~~~~~ | free ../hiro/core/../gtk/widget/table-view.cpp:474:25: error: 'GFunc' was not declared in this scope 474 | g_list_foreach(list, (GFunc)gtk_tree_path_free, nullptr); | ^~~~~ ../hiro/core/../gtk/widget/table-view.cpp:474:3: error: 'g_list_foreach' was not declared in this scope 474 | g_list_foreach(list, (GFunc)gtk_tree_path_free, nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view.cpp:475:3: error: 'g_list_free' was not declared in this scope 475 | g_list_free(list); | ^~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:55: ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'virtual void hiro::pTableViewColumn::construct()': ../hiro/core/../gtk/widget/table-view-column.cpp:13:5: error: 'gtkHeader' was not declared in this scope 13 | gtkHeader = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:13:29: error: 'GTK_ORIENTATION_HORIZONTAL' was not declared in this scope 13 | gtkHeader = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:13:17: error: 'gtk_box_new' was not declared in this scope 13 | gtkHeader = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:16:5: error: 'gtkHeaderIcon' was not declared in this scope 16 | gtkHeaderIcon = gtk_image_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:16:21: error: 'gtk_image_new' was not declared in this scope 16 | gtkHeaderIcon = gtk_image_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:17:24: error: 'GTK_BOX' was not declared in this scope 17 | gtk_box_pack_start(GTK_BOX(gtkHeader), gtkHeaderIcon, false, false, 0); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:17:5: error: 'gtk_box_pack_start' was not declared in this scope 17 | gtk_box_pack_start(GTK_BOX(gtkHeader), gtkHeaderIcon, false, false, 0); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:19:5: error: 'gtkHeaderText' was not declared in this scope 19 | gtkHeaderText = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:19:21: error: 'gtk_label_new' was not declared in this scope 19 | gtkHeaderText = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:22:5: error: 'gtkHeaderSort' was not declared in this scope 22 | gtkHeaderSort = gtk_label_new(""); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:25:5: error: 'gtkColumn' was not declared in this scope 25 | gtkColumn = gtk_tree_view_column_new(); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:25:17: error: 'gtk_tree_view_column_new' was not declared in this scope 25 | gtkColumn = gtk_tree_view_column_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:26:48: error: 'GTK_TREE_VIEW_COLUMN_FIXED' was not declared in this scope 26 | gtk_tree_view_column_set_sizing(gtkColumn, GTK_TREE_VIEW_COLUMN_FIXED); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:26:5: error: 'gtk_tree_view_column_set_sizing' was not declared in this scope 26 | gtk_tree_view_column_set_sizing(gtkColumn, GTK_TREE_VIEW_COLUMN_FIXED); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:27:5: error: 'gtk_tree_view_column_set_title' was not declared in this scope 27 | gtk_tree_view_column_set_title(gtkColumn, ""); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:28:5: error: 'gtk_tree_view_column_set_widget' was not declared in this scope 28 | gtk_tree_view_column_set_widget(gtkColumn, gtkHeader); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:30:5: error: 'gtkCellToggle' was not declared in this scope 30 | gtkCellToggle = gtk_cell_renderer_toggle_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:30:21: error: 'gtk_cell_renderer_toggle_new' was not declared in this scope 30 | gtkCellToggle = gtk_cell_renderer_toggle_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:31:5: error: 'gtk_tree_view_column_pack_start' was not declared in this scope 31 | gtk_tree_view_column_pack_start(gtkColumn, gtkCellToggle, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:32:5: error: 'gtk_tree_view_column_set_attributes' was not declared in this scope 32 | gtk_tree_view_column_set_attributes(gtkColumn, gtkCellToggle, "active", 3 * offset + 0, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:33:56: error: 'GTK_CELL_RENDERER' was not declared in this scope 33 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:33:91: error: 'GtkTreeCellDataFunc' was not declared in this scope 33 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:33:132: error: 'gpointer' was not declared in this scope 33 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:33:5: error: 'gtk_tree_view_column_set_cell_data_func' was not declared in this scope 33 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:35:5: error: 'gtkCellIcon' was not declared in this scope 35 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:35:19: error: 'gtk_cell_renderer_pixbuf_new' was not declared in this scope 35 | gtkCellIcon = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:38:109: error: expected ')' before 'TableView_dataFunc' 38 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellIcon), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ~ ^~~~~~~~~~~~~~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:38:139: error: expected ')' before 'handle' 38 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellIcon), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ~ ^~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:40:5: error: 'gtkCellText' was not declared in this scope 40 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:40:19: error: 'gtk_cell_renderer_text_new' was not declared in this scope 40 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:43:109: error: expected ')' before 'TableView_dataFunc' 43 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellText), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ~ ^~~~~~~~~~~~~~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:43:139: error: expected ')' before 'handle' 43 | gtk_tree_view_column_set_cell_data_func(gtkColumn, GTK_CELL_RENDERER(gtkCellText), (GtkTreeCellDataFunc)TableView_dataFunc, (gpointer)handle, nullptr); | ~ ^~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:45:22: error: 'G_OBJECT' was not declared in this scope 45 | g_signal_connect(G_OBJECT(gtkColumn), "clicked", G_CALLBACK(TableView_headerActivate), (gpointer)handle); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:45:54: error: 'G_CALLBACK' was not declared in this scope 45 | g_signal_connect(G_OBJECT(gtkColumn), "clicked", G_CALLBACK(TableView_headerActivate), (gpointer)handle); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:45:102: error: expected ')' before 'handle' 45 | g_signal_connect(G_OBJECT(gtkColumn), "clicked", G_CALLBACK(TableView_headerActivate), (gpointer)handle); | ~ ^~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:45:5: error: 'g_signal_connect' was not declared in this scope 45 | g_signal_connect(G_OBJECT(gtkColumn), "clicked", G_CALLBACK(TableView_headerActivate), (gpointer)handle); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:46:93: error: expected ')' before 'handle' 46 | g_signal_connect(G_OBJECT(gtkCellText), "edited", G_CALLBACK(TableView_edit), (gpointer)handle); | ~ ^~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:47:98: error: expected ')' before 'handle' 47 | g_signal_connect(G_OBJECT(gtkCellToggle), "toggled", G_CALLBACK(TableView_toggle), (gpointer)handle); | ~ ^~~~~~ | ) ../hiro/core/../gtk/widget/table-view-column.cpp:49:41: error: 'struct hiro::pTableView' has no member named 'gtkTreeView' 49 | gtk_tree_view_append_column(parent->gtkTreeView, gtkColumn); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:49:5: error: 'gtk_tree_view_append_column' was not declared in this scope 49 | gtk_tree_view_append_column(parent->gtkTreeView, gtkColumn); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:50:5: error: 'gtk_widget_show_all' was not declared in this scope 50 | gtk_widget_show_all(gtkHeader); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:53:5: error: 'gtk_tree_view_column_set_clickable' was not declared in this scope 53 | gtk_tree_view_column_set_clickable(gtkColumn, parent->state().sortable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'virtual void hiro::pTableViewColumn::destruct()': ../hiro/core/../gtk/widget/table-view-column.cpp:67:41: error: 'struct hiro::pTableView' has no member named 'gtkTreeView' 67 | gtk_tree_view_remove_column(parent->gtkTreeView, gtkColumn); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:67:54: error: 'gtkColumn' was not declared in this scope 67 | gtk_tree_view_remove_column(parent->gtkTreeView, gtkColumn); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:67:5: error: 'gtk_tree_view_remove_column' was not declared in this scope 67 | gtk_tree_view_remove_column(parent->gtkTreeView, gtkColumn); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setActive()': ../hiro/core/../gtk/widget/table-view-column.cpp:75:45: error: 'struct hiro::pTableView' has no member named 'gtkTreeView' 75 | gtk_tree_view_set_search_column(parent->gtkTreeView, 3 * self().offset() + 2); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:75:5: error: 'gtk_tree_view_set_search_column' was not declared in this scope 75 | gtk_tree_view_set_search_column(parent->gtkTreeView, 3 * self().offset() + 2); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setEditable(bool)': ../hiro/core/../gtk/widget/table-view-column.cpp:86:25: error: 'gtkCellText' was not declared in this scope 86 | g_object_set(G_OBJECT(gtkCellText), "editable", editable ? true : false, nullptr); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:86:16: error: 'G_OBJECT' was not declared in this scope 86 | g_object_set(G_OBJECT(gtkCellText), "editable", editable ? true : false, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:86:3: error: 'g_object_set' was not declared in this scope 86 | g_object_set(G_OBJECT(gtkCellText), "editable", editable ? true : false, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/table-view-column.cpp:103:41: error: 'gtkHeaderIcon' was not declared in this scope 103 | gtk_image_set_from_pixbuf(GTK_IMAGE(gtkHeaderIcon), CreatePixbuf(icon)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:103:31: error: 'GTK_IMAGE' was not declared in this scope 103 | gtk_image_set_from_pixbuf(GTK_IMAGE(gtkHeaderIcon), CreatePixbuf(icon)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:103:57: error: 'CreatePixbuf' was not declared in this scope 103 | gtk_image_set_from_pixbuf(GTK_IMAGE(gtkHeaderIcon), CreatePixbuf(icon)); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:103:5: error: 'gtk_image_set_from_pixbuf' was not declared in this scope 103 | gtk_image_set_from_pixbuf(GTK_IMAGE(gtkHeaderIcon), CreatePixbuf(icon)); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:105:31: error: 'gtkHeaderIcon' was not declared in this scope 105 | gtk_image_clear(GTK_IMAGE(gtkHeaderIcon)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:105:21: error: 'GTK_IMAGE' was not declared in this scope 105 | gtk_image_clear(GTK_IMAGE(gtkHeaderIcon)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:105:5: error: 'gtk_image_clear' was not declared in this scope 105 | gtk_image_clear(GTK_IMAGE(gtkHeaderIcon)); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setResizable(bool)': ../hiro/core/../gtk/widget/table-view-column.cpp:110:38: error: 'gtkColumn' was not declared in this scope 110 | gtk_tree_view_column_set_resizable(gtkColumn, resizable); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:110:3: error: 'gtk_tree_view_column_set_resizable' was not declared in this scope 110 | gtk_tree_view_column_set_resizable(gtkColumn, resizable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setSorting(hiro::Sort)': ../hiro/core/../gtk/widget/table-view-column.cpp:117:32: error: 'gtkHeaderSort' was not declared in this scope 117 | gtk_label_set_text(GTK_LABEL(gtkHeaderSort), text); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:117:22: error: 'GTK_LABEL' was not declared in this scope 117 | gtk_label_set_text(GTK_LABEL(gtkHeaderSort), text); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:117:3: error: 'gtk_label_set_text' was not declared in this scope 117 | gtk_label_set_text(GTK_LABEL(gtkHeaderSort), text); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'void hiro::pTableViewColumn::setText(const nall::string&)': ../hiro/core/../gtk/widget/table-view-column.cpp:121:32: error: 'gtkHeaderText' was not declared in this scope 121 | gtk_label_set_text(GTK_LABEL(gtkHeaderText), text); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:121:22: error: 'GTK_LABEL' was not declared in this scope 121 | gtk_label_set_text(GTK_LABEL(gtkHeaderText), text); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:121:3: error: 'gtk_label_set_text' was not declared in this scope 121 | gtk_label_set_text(GTK_LABEL(gtkHeaderText), text); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp: In member function 'virtual void hiro::pTableViewColumn::setVisible(bool)': ../hiro/core/../gtk/widget/table-view-column.cpp:125:36: error: 'gtkColumn' was not declared in this scope 125 | gtk_tree_view_column_set_visible(gtkColumn, visible); | ^~~~~~~~~ ../hiro/core/../gtk/widget/table-view-column.cpp:125:3: error: 'gtk_tree_view_column_set_visible' was not declared in this scope 125 | gtk_tree_view_column_set_visible(gtkColumn, visible); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:56: ../hiro/core/../gtk/widget/table-view-item.cpp: In member function 'virtual void hiro::pTableViewItem::construct()': ../hiro/core/../gtk/widget/table-view-item.cpp:8:35: error: 'struct hiro::pTableView' has no member named 'gtkListStore' 8 | gtk_list_store_append(parent->gtkListStore, >kIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:8:50: error: 'gtkIter' was not declared in this scope 8 | gtk_list_store_append(parent->gtkListStore, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:8:5: error: 'gtk_list_store_append' was not declared in this scope 8 | gtk_list_store_append(parent->gtkListStore, >kIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp: In member function 'virtual void hiro::pTableViewItem::destruct()': ../hiro/core/../gtk/widget/table-view-item.cpp:16:35: error: 'struct hiro::pTableView' has no member named 'gtkListStore' 16 | gtk_list_store_remove(parent->gtkListStore, >kIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:16:50: error: 'gtkIter' was not declared in this scope 16 | gtk_list_store_remove(parent->gtkListStore, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:16:5: error: 'gtk_list_store_remove' was not declared in this scope 16 | gtk_list_store_remove(parent->gtkListStore, >kIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp: In member function 'virtual void hiro::pTableViewItem::setFocused()': ../hiro/core/../gtk/widget/table-view-item.cpp:39:5: error: 'GtkTreePath' was not declared in this scope 39 | GtkTreePath* path = gtk_tree_path_new_from_string(string{self().offset()}); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:39:18: error: 'path' was not declared in this scope; did you mean 'nall::Location::path'? 39 | GtkTreePath* path = gtk_tree_path_new_from_string(string{self().offset()}); | ^~~~ | nall::Location::path ../nall/location.hpp:9:13: note: 'nall::Location::path' declared here 9 | inline auto path(string_view self) -> string { | ^~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:39:25: error: 'gtk_tree_path_new_from_string' was not declared in this scope 39 | GtkTreePath* path = gtk_tree_path_new_from_string(string{self().offset()}); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:40:38: error: 'struct hiro::pTableView' has no member named 'gtkTreeView' 40 | gtk_tree_view_set_cursor(parent->gtkTreeView, path, nullptr, false); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:40:5: error: 'gtk_tree_view_set_cursor' was not declared in this scope 40 | gtk_tree_view_set_cursor(parent->gtkTreeView, path, nullptr, false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:41:42: error: 'struct hiro::pTableView' has no member named 'gtkTreeView' 41 | gtk_tree_view_scroll_to_cell(parent->gtkTreeView, path, nullptr, true, 0.5, 0.0); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:41:5: error: 'gtk_tree_view_scroll_to_cell' was not declared in this scope 41 | gtk_tree_view_scroll_to_cell(parent->gtkTreeView, path, nullptr, true, 0.5, 0.0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:42:5: error: 'gtk_tree_path_free' was not declared in this scope 42 | gtk_tree_path_free(path); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp: In member function 'void hiro::pTableViewItem::_setState()': ../hiro/core/../gtk/widget/table-view-item.cpp:64:46: error: 'struct hiro::pTableView' has no member named 'gtkTreeSelection' 64 | gtk_tree_selection_select_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:64:65: error: 'gtkIter' was not declared in this scope 64 | gtk_tree_selection_select_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:64:7: error: 'gtk_tree_selection_select_iter' was not declared in this scope 64 | gtk_tree_selection_select_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:66:48: error: 'struct hiro::pTableView' has no member named 'gtkTreeSelection' 66 | gtk_tree_selection_unselect_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:66:67: error: 'gtkIter' was not declared in this scope 66 | gtk_tree_selection_unselect_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-item.cpp:66:7: error: 'gtk_tree_selection_unselect_iter' was not declared in this scope 66 | gtk_tree_selection_unselect_iter(parent->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:57: ../hiro/core/../gtk/widget/table-view-cell.cpp: In member function 'void hiro::pTableViewCell::_setState()': ../hiro/core/../gtk/widget/table-view-cell.cpp:53:41: error: 'struct hiro::pTableView' has no member named 'gtkListStore' 53 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 0, state().checked, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:53:64: error: 'struct hiro::pTableViewItem' has no member named 'gtkIter' 53 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 0, state().checked, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:53:9: error: 'gtk_list_store_set' was not declared in this scope 53 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 0, state().checked, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:54:41: error: 'struct hiro::pTableView' has no member named 'gtkListStore' 54 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 1, CreatePixbuf(state().icon), -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:54:64: error: 'struct hiro::pTableViewItem' has no member named 'gtkIter' 54 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 1, CreatePixbuf(state().icon), -1); | ^~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:54:98: error: 'CreatePixbuf' was not declared in this scope 54 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 1, CreatePixbuf(state().icon), -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:55:41: error: 'struct hiro::pTableView' has no member named 'gtkListStore' 55 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 2, state().text.data(), -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/table-view-cell.cpp:55:64: error: 'struct hiro::pTableViewItem' has no member named 'gtkIter' 55 | gtk_list_store_set(grandparent->gtkListStore, &parent->gtkIter, 3 * self().offset() + 2, state().text.data(), -1); | ^~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:58: ../hiro/core/../gtk/widget/text-edit.cpp: At global scope: ../hiro/core/../gtk/widget/text-edit.cpp:5:29: error: 'GtkTextBuffer' was not declared in this scope 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:5:44: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:5:65: error: expected primary-expression before '*' token 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:5:67: error: 'p' was not declared in this scope 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:5:68: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:5:70: error: expected ',' or ';' before '->' token 5 | static auto TextEdit_change(GtkTextBuffer* textBuffer, pTextEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/text-edit.cpp:9:27: error: 'GObject' was not declared in this scope; did you mean 'wObject'? 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^~~~~~~ | wObject ../hiro/core/../gtk/widget/text-edit.cpp:9:36: error: 'object' was not declared in this scope; did you mean 'Object'? 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^~~~~~ | Object ../hiro/core/../gtk/widget/text-edit.cpp:9:44: error: 'GParamSpec' was not declared in this scope 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:9:56: error: 'spec' was not declared in this scope 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^~~~ ../hiro/core/../gtk/widget/text-edit.cpp:9:71: error: expected primary-expression before '*' token 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:9:73: error: 'p' was not declared in this scope 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:9:74: error: expression list treated as compound expression in initializer [-fpermissive] 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^ ../hiro/core/../gtk/widget/text-edit.cpp:9:76: error: expected ',' or ';' before '->' token 9 | static auto TextEdit_move(GObject* object, GParamSpec* spec, pTextEdit* p) -> void { | ^~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'virtual void hiro::pTextEdit::construct()': ../hiro/core/../gtk/widget/text-edit.cpp:15:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 15 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/text-edit.cpp:15:15: error: 'gtk_scrolled_window_new' was not declared in this scope 15 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:16:34: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 16 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:16:66: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 16 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:16:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 16 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:17:71: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 17 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:17:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 17 | gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(gtkWidget), GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:19:3: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 19 | subWidget = gtk_text_view_new(); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:19:15: error: 'gtk_text_view_new' was not declared in this scope 19 | subWidget = gtk_text_view_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:20:3: error: 'gtk_widget_show' was not declared in this scope 20 | gtk_widget_show(subWidget); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:21:31: error: 'GTK_TEXT_VIEW' was not declared in this scope 21 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_WORD_CHAR); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:21:57: error: 'GTK_WRAP_WORD_CHAR' was not declared in this scope 21 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_WORD_CHAR); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:21:3: error: 'gtk_text_view_set_wrap_mode' was not declared in this scope 21 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_WORD_CHAR); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:22:21: error: 'GTK_CONTAINER' was not declared in this scope 22 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:22:3: error: 'gtk_container_add' was not declared in this scope 22 | gtk_container_add(GTK_CONTAINER(gtkWidget), subWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:24:3: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 24 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:24:16: error: 'gtk_text_view_get_buffer' was not declared in this scope 24 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:33:20: error: 'G_OBJECT' was not declared in this scope 33 | g_signal_connect(G_OBJECT(textBuffer), "changed", G_CALLBACK(TextEdit_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:33:53: error: 'G_CALLBACK' was not declared in this scope 33 | g_signal_connect(G_OBJECT(textBuffer), "changed", G_CALLBACK(TextEdit_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:33:83: error: 'gpointer' was not declared in this scope 33 | g_signal_connect(G_OBJECT(textBuffer), "changed", G_CALLBACK(TextEdit_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:33:3: error: 'g_signal_connect' was not declared in this scope 33 | g_signal_connect(G_OBJECT(textBuffer), "changed", G_CALLBACK(TextEdit_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:34:106: error: expected ')' before 'this' 34 | g_signal_connect(G_OBJECT(textBuffer), "notify::cursor-position", G_CALLBACK(TextEdit_move), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'virtual void hiro::pTextEdit::destruct()': ../hiro/core/../gtk/widget/text-edit.cpp:41:22: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 41 | gtk_widget_destroy(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:41:3: error: 'gtk_widget_destroy' was not declared in this scope 41 | gtk_widget_destroy(subWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:42:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 42 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'virtual bool hiro::pTextEdit::focused() const': ../hiro/core/../gtk/widget/text-edit.cpp:46:31: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 46 | return gtk_widget_has_focus(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:46:10: error: 'gtk_widget_has_focus' was not declared in this scope 46 | return gtk_widget_has_focus(subWidget); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/text-edit.cpp:50:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 50 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/text-edit.cpp:51:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:51:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:51:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/text-edit.cpp:51:3: error: 'gtk_widget_modify_base' was not declared in this scope 51 | gtk_widget_modify_base(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setEditable(bool)': ../hiro/core/../gtk/widget/text-edit.cpp:55:44: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 55 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), editable); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:55:30: error: 'GTK_TEXT_VIEW' was not declared in this scope 55 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), editable); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:55:3: error: 'gtk_text_view_set_editable' was not declared in this scope 55 | gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), editable); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'virtual void hiro::pTextEdit::setFocused()': ../hiro/core/../gtk/widget/text-edit.cpp:59:25: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 59 | gtk_widget_grab_focus(subWidget); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:59:3: error: 'gtk_widget_grab_focus' was not declared in this scope 59 | gtk_widget_grab_focus(subWidget); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/text-edit.cpp:63:3: error: 'GdkColor' was not declared in this scope; did you mean 'Color'? 63 | GdkColor gdkColor = CreateColor(color); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/text-edit.cpp:64:26: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 64 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:64:37: error: 'GTK_STATE_NORMAL' was not declared in this scope 64 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:64:64: error: 'gdkColor' was not declared in this scope; did you mean 'Color'? 64 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~ | Color ../hiro/core/../gtk/widget/text-edit.cpp:64:3: error: 'gtk_widget_modify_text' was not declared in this scope 64 | gtk_widget_modify_text(subWidget, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setText(const nall::string&)': ../hiro/core/../gtk/widget/text-edit.cpp:69:3: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 69 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:69:55: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 69 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:69:41: error: 'GTK_TEXT_VIEW' was not declared in this scope 69 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:69:16: error: 'gtk_text_view_get_buffer' was not declared in this scope 69 | textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:70:3: error: 'gtk_text_buffer_set_text' was not declared in this scope 70 | gtk_text_buffer_set_text(textBuffer, text, -1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setTextCursor(hiro::TextCursor)': ../hiro/core/../gtk/widget/text-edit.cpp:76:3: error: 'GtkTextIter' was not declared in this scope 76 | GtkTextIter offset, length; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:77:32: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 77 | gtk_text_buffer_get_end_iter(textBuffer, &offset); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:77:45: error: 'offset' was not declared in this scope; did you mean 'offset_t'? 77 | gtk_text_buffer_get_end_iter(textBuffer, &offset); | ^~~~~~ | offset_t ../hiro/core/../gtk/widget/text-edit.cpp:77:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 77 | gtk_text_buffer_get_end_iter(textBuffer, &offset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:78:45: error: 'length' was not declared in this scope; did you mean 'len_t'? 78 | gtk_text_buffer_get_end_iter(textBuffer, &length); | ^~~~~~ | len_t ../hiro/core/../gtk/widget/text-edit.cpp:79:16: error: 'gtk_text_iter_get_offset' was not declared in this scope 79 | signed end = gtk_text_iter_get_offset(&offset); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:80:3: error: 'gtk_text_iter_set_offset' was not declared in this scope 80 | gtk_text_iter_set_offset(&offset, max(0, min(end, cursor.offset()))); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:82:3: error: 'gtk_text_buffer_select_range' was not declared in this scope 82 | gtk_text_buffer_select_range(textBuffer, &offset, &length); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:83:15: error: 'gtk_text_buffer_get_mark' was not declared in this scope 83 | auto mark = gtk_text_buffer_get_mark(textBuffer, "insert"); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:84:52: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 84 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:84:38: error: 'GTK_TEXT_VIEW' was not declared in this scope 84 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:84:3: error: 'gtk_text_view_scroll_mark_onscreen' was not declared in this scope 84 | gtk_text_view_scroll_mark_onscreen(GTK_TEXT_VIEW(subWidget), mark); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'void hiro::pTextEdit::setWordWrap(bool)': ../hiro/core/../gtk/widget/text-edit.cpp:89:45: error: 'subWidget' was not declared in this scope; did you mean 'sWidget'? 89 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~ | sWidget ../hiro/core/../gtk/widget/text-edit.cpp:89:31: error: 'GTK_TEXT_VIEW' was not declared in this scope 89 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:89:68: error: 'GTK_WRAP_WORD_CHAR' was not declared in this scope 89 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:89:89: error: 'GTK_WRAP_NONE' was not declared in this scope 89 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:89:3: error: 'gtk_text_view_set_wrap_mode' was not declared in this scope 89 | gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), wordWrap ? GTK_WRAP_WORD_CHAR : GTK_WRAP_NONE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:90:54: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 90 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/text-edit.cpp:90:34: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 90 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:91:16: error: 'GTK_POLICY_NEVER' was not declared in this scope 91 | wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:91:35: error: 'GTK_POLICY_ALWAYS' was not declared in this scope 91 | wordWrap ? GTK_POLICY_NEVER : GTK_POLICY_ALWAYS, | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:90:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 90 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gtkWidget), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'nall::string hiro::pTextEdit::text() const': ../hiro/core/../gtk/widget/text-edit.cpp:96:3: error: 'GtkTextIter' was not declared in this scope 96 | GtkTextIter start, end; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:97:34: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 97 | gtk_text_buffer_get_start_iter(textBuffer, &start); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:97:47: error: 'start' was not declared in this scope; did you mean 'stat'? 97 | gtk_text_buffer_get_start_iter(textBuffer, &start); | ^~~~~ | stat ../hiro/core/../gtk/widget/text-edit.cpp:97:3: error: 'gtk_text_buffer_get_start_iter' was not declared in this scope 97 | gtk_text_buffer_get_start_iter(textBuffer, &start); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:98:45: error: 'end' was not declared in this scope; did you mean 'std::end'? 98 | gtk_text_buffer_get_end_iter(textBuffer, &end); | ^~~ | std::end /opt/tools/gcc13/include/c++/13.2.0/initializer_list:99:5: note: 'std::end' declared here 99 | end(initializer_list<_Tp> __ils) noexcept | ^~~ ../hiro/core/../gtk/widget/text-edit.cpp:98:3: error: 'gtk_text_buffer_get_end_iter' was not declared in this scope 98 | gtk_text_buffer_get_end_iter(textBuffer, &end); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:99:16: error: 'gtk_text_buffer_get_text' was not declared in this scope 99 | char* temp = gtk_text_buffer_get_text(textBuffer, &start, &end, true); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:101:3: error: 'g_free' was not declared in this scope; did you mean 'free'? 101 | g_free(temp); | ^~~~~~ | free ../hiro/core/../gtk/widget/text-edit.cpp: In member function 'hiro::TextCursor hiro::pTextEdit::textCursor() const': ../hiro/core/../gtk/widget/text-edit.cpp:108:25: error: 'textBuffer' was not declared in this scope; did you mean 'setbuffer'? 108 | g_object_get(G_OBJECT(textBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~~~ | setbuffer ../hiro/core/../gtk/widget/text-edit.cpp:108:16: error: 'G_OBJECT' was not declared in this scope 108 | g_object_get(G_OBJECT(textBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:108:3: error: 'g_object_get' was not declared in this scope 108 | g_object_get(G_OBJECT(textBuffer), "cursor-position", &offset, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:110:3: error: 'GtkTextIter' was not declared in this scope 110 | GtkTextIter start, end; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:111:56: error: 'start' was not declared in this scope; did you mean 'stat'? 111 | if(gtk_text_buffer_get_selection_bounds(textBuffer, &start, &end)) { | ^~~~~ | stat ../hiro/core/../gtk/widget/text-edit.cpp:111:64: error: 'end' was not declared in this scope; did you mean 'std::end'? 111 | if(gtk_text_buffer_get_selection_bounds(textBuffer, &start, &end)) { | ^~~ | std::end /opt/tools/gcc13/include/c++/13.2.0/initializer_list:99:5: note: 'std::end' declared here 99 | end(initializer_list<_Tp> __ils) noexcept | ^~~ ../hiro/core/../gtk/widget/text-edit.cpp:111:6: error: 'gtk_text_buffer_get_selection_bounds' was not declared in this scope 111 | if(gtk_text_buffer_get_selection_bounds(textBuffer, &start, &end)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/text-edit.cpp:114:18: error: 'gtk_text_iter_get_offset' was not declared in this scope 114 | int origin = gtk_text_iter_get_offset(&start); | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:59: ../hiro/core/../gtk/widget/tree-view.cpp: At global scope: ../hiro/core/../gtk/widget/tree-view.cpp:10:31: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/tree-view.cpp:10:43: error: expected primary-expression before ',' token 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:10:45: error: 'GtkTreePath' was not declared in this scope 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:10:58: error: 'gtkPath' was not declared in this scope 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:10:67: error: 'GtkTreeViewColumn' was not declared in this scope 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:10:85: error: expected primary-expression before ',' token 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:10:96: error: expected primary-expression before '*' token 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:10:98: error: 'p' was not declared in this scope 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:10:99: error: expression list treated as compound expression in initializer [-fpermissive] 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:10:101: error: expected ',' or ';' before '->' token 10 | static auto TreeView_activate(GtkTreeView*, GtkTreePath* gtkPath, GtkTreeViewColumn*, pTreeView* p) -> void { p->_activatePath(gtkPath); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:11:34: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/tree-view.cpp:11:46: error: expected primary-expression before ',' token 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:11:48: error: 'GdkEventButton' was not declared in this scope 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:11:64: error: 'gdkEvent' was not declared in this scope 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:11:83: error: expected primary-expression before '*' token 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:11:85: error: 'p' was not declared in this scope 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:11:86: error: expression list treated as compound expression in initializer [-fpermissive] 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:11:88: error: expected ',' or ';' before '->' token 11 | static auto TreeView_buttonEvent(GtkTreeView*, GdkEventButton* gdkEvent, pTreeView* p) -> signed { return p->_buttonEvent(gdkEvent); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:12:29: error: 'GtkTreeSelection' was not declared in this scope 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:12:46: error: expected primary-expression before ',' token 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:12:57: error: expected primary-expression before '*' token 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:12:59: error: 'p' was not declared in this scope 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:12:60: error: expression list treated as compound expression in initializer [-fpermissive] 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:12:62: error: expected ',' or ';' before '->' token 12 | static auto TreeView_change(GtkTreeSelection*, pTreeView* p) -> void { p->_updateSelected(); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:13:30: error: 'GtkTreeView' was not declared in this scope; did you mean 'wTreeView'? 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^~~~~~~~~~~ | wTreeView ../hiro/core/../gtk/widget/tree-view.cpp:13:42: error: expected primary-expression before ',' token 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:13:53: error: expected primary-expression before '*' token 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:13:55: error: 'p' was not declared in this scope 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:13:56: error: expression list treated as compound expression in initializer [-fpermissive] 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:13:58: error: expected ',' or ';' before '->' token 13 | static auto TreeView_context(GtkTreeView*, pTreeView* p) -> void { p->self().doContext(); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:14:31: error: 'GtkTreeViewColumn' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:50: error: 'column' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:58: error: 'GtkCellRenderer' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:75: error: 'renderer' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:85: error: 'GtkTreeModel' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:99: error: 'model' was not declared in this scope; did you mean 'modfl'? 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~ | modfl ../hiro/core/../gtk/widget/tree-view.cpp:14:106: error: 'GtkTreeIter' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:119: error: 'iter' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~~~ ../hiro/core/../gtk/widget/tree-view.cpp:14:134: error: expected primary-expression before '*' token 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:14:136: error: 'p' was not declared in this scope 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:14:137: error: expression list treated as compound expression in initializer [-fpermissive] 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:14:139: error: expected ',' or ';' before '->' token 14 | static auto TreeView_dataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeModel* model, GtkTreeIter* iter, pTreeView* p) -> void { return p->_doDataFunc(column, renderer, iter); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:15:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/tree-view.cpp:15:41: error: expected primary-expression before ',' token 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:15:43: error: 'GdkEventKey' was not declared in this scope 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:15:55: error: expected primary-expression before ',' token 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:15:66: error: expected primary-expression before '*' token 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:15:68: error: 'p' was not declared in this scope 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:15:69: error: expression list treated as compound expression in initializer [-fpermissive] 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:15:71: error: expected ',' or ';' before '->' token 15 | static auto TreeView_keyPress(GtkWidget*, GdkEventKey*, pTreeView* p) -> int { p->suppressActivate = false; return false; } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:16:29: error: 'GtkCellRendererToggle' was not declared in this scope 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:16:51: error: expected primary-expression before ',' token 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:16:53: error: expected primary-expression before 'char' 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^~~~ ../hiro/core/../gtk/widget/tree-view.cpp:16:74: error: expected primary-expression before '*' token 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:16:76: error: 'p' was not declared in this scope 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:16:77: error: expression list treated as compound expression in initializer [-fpermissive] 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^ ../hiro/core/../gtk/widget/tree-view.cpp:16:79: error: expected ',' or ';' before '->' token 16 | static auto TreeView_toggle(GtkCellRendererToggle*, char* path, pTreeView* p) -> void { p->_togglePath(path); } | ^~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'virtual void hiro::pTreeView::construct()': ../hiro/core/../gtk/widget/tree-view.cpp:19:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 19 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tree-view.cpp:19:15: error: 'gtk_scrolled_window_new' was not declared in this scope 19 | gtkWidget = gtk_scrolled_window_new(0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:20:3: error: 'gtkScrolledWindow' was not declared in this scope 20 | gtkScrolledWindow = GTK_SCROLLED_WINDOW(gtkWidget); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:20:23: error: 'GTK_SCROLLED_WINDOW' was not declared in this scope 20 | gtkScrolledWindow = GTK_SCROLLED_WINDOW(gtkWidget); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:21:53: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 21 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:21:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 21 | gtk_scrolled_window_set_policy(gtkScrolledWindow, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:22:58: error: 'GTK_SHADOW_ETCHED_IN' was not declared in this scope 22 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:22:3: error: 'gtk_scrolled_window_set_shadow_type' was not declared in this scope 22 | gtk_scrolled_window_set_shadow_type(gtkScrolledWindow, GTK_SHADOW_ETCHED_IN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:24:3: error: 'gtkTreeStore' was not declared in this scope 24 | gtkTreeStore = gtk_tree_store_new(3, G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:24:40: error: 'G_TYPE_BOOLEAN' was not declared in this scope 24 | gtkTreeStore = gtk_tree_store_new(3, G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:24:56: error: 'GDK_TYPE_PIXBUF' was not declared in this scope 24 | gtkTreeStore = gtk_tree_store_new(3, G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:24:73: error: 'G_TYPE_STRING' was not declared in this scope 24 | gtkTreeStore = gtk_tree_store_new(3, G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:24:18: error: 'gtk_tree_store_new' was not declared in this scope 24 | gtkTreeStore = gtk_tree_store_new(3, G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, G_TYPE_STRING); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:25:3: error: 'gtkTreeModel' was not declared in this scope 25 | gtkTreeModel = GTK_TREE_MODEL(gtkTreeStore); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:25:18: error: 'GTK_TREE_MODEL' was not declared in this scope 25 | gtkTreeModel = GTK_TREE_MODEL(gtkTreeStore); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:27:3: error: 'gtkWidgetChild' was not declared in this scope 27 | gtkWidgetChild = gtk_tree_view_new_with_model(gtkTreeModel); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:27:20: error: 'gtk_tree_view_new_with_model' was not declared in this scope 27 | gtkWidgetChild = gtk_tree_view_new_with_model(gtkTreeModel); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:28:3: error: 'gtkTreeView' was not declared in this scope; did you mean 'pTreeView'? 28 | gtkTreeView = GTK_TREE_VIEW(gtkWidgetChild); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view.cpp:28:17: error: 'GTK_TREE_VIEW' was not declared in this scope 28 | gtkTreeView = GTK_TREE_VIEW(gtkWidgetChild); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:29:3: error: 'gtkTreeSelection' was not declared in this scope 29 | gtkTreeSelection = gtk_tree_view_get_selection(gtkTreeView); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:29:22: error: 'gtk_tree_view_get_selection' was not declared in this scope 29 | gtkTreeSelection = gtk_tree_view_get_selection(gtkTreeView); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:30:3: error: 'gtk_tree_view_set_headers_visible' was not declared in this scope 30 | gtk_tree_view_set_headers_visible(gtkTreeView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:31:3: error: 'gtk_tree_view_set_show_expanders' was not declared in this scope 31 | gtk_tree_view_set_show_expanders(gtkTreeView, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:32:3: error: 'gtk_tree_view_set_level_indentation' was not declared in this scope 32 | gtk_tree_view_set_level_indentation(gtkTreeView, TreeViewIndentation); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:33:21: error: 'GTK_CONTAINER' was not declared in this scope 33 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkWidgetChild); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:33:3: error: 'gtk_container_add' was not declared in this scope 33 | gtk_container_add(GTK_CONTAINER(gtkWidget), gtkWidgetChild); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:34:3: error: 'gtk_widget_show' was not declared in this scope 34 | gtk_widget_show(gtkWidgetChild); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:36:3: error: 'gtkTreeViewColumn' was not declared in this scope 36 | gtkTreeViewColumn = gtk_tree_view_column_new(); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:36:23: error: 'gtk_tree_view_column_new' was not declared in this scope 36 | gtkTreeViewColumn = gtk_tree_view_column_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:38:3: error: 'gtkCellToggle' was not declared in this scope 38 | gtkCellToggle = gtk_cell_renderer_toggle_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:38:19: error: 'gtk_cell_renderer_toggle_new' was not declared in this scope 38 | gtkCellToggle = gtk_cell_renderer_toggle_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:39:3: error: 'gtk_tree_view_column_pack_start' was not declared in this scope 39 | gtk_tree_view_column_pack_start(gtkTreeViewColumn, gtkCellToggle, false); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:40:3: error: 'gtk_tree_view_column_set_attributes' was not declared in this scope 40 | gtk_tree_view_column_set_attributes(gtkTreeViewColumn, gtkCellToggle, "active", 0, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:41:62: error: 'GTK_CELL_RENDERER' was not declared in this scope 41 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:41:97: error: 'GtkTreeCellDataFunc' was not declared in this scope 41 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:41:137: error: 'gpointer' was not declared in this scope 41 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:41:3: error: 'gtk_tree_view_column_set_cell_data_func' was not declared in this scope 41 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellToggle), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:43:3: error: 'gtkCellPixbuf' was not declared in this scope 43 | gtkCellPixbuf = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:43:19: error: 'gtk_cell_renderer_pixbuf_new' was not declared in this scope 43 | gtkCellPixbuf = gtk_cell_renderer_pixbuf_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:46:117: error: expected ')' before 'TreeView_dataFunc' 46 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellPixbuf), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ~ ^~~~~~~~~~~~~~~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:46:146: error: expected ')' before 'this' 46 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellPixbuf), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:48:3: error: 'gtkCellText' was not declared in this scope 48 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:48:17: error: 'gtk_cell_renderer_text_new' was not declared in this scope 48 | gtkCellText = gtk_cell_renderer_text_new(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:51:115: error: expected ')' before 'TreeView_dataFunc' 51 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellText), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ~ ^~~~~~~~~~~~~~~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:51:144: error: expected ')' before 'this' 51 | gtk_tree_view_column_set_cell_data_func(gtkTreeViewColumn, GTK_CELL_RENDERER(gtkCellText), (GtkTreeCellDataFunc)TreeView_dataFunc, (gpointer)this, nullptr); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:53:3: error: 'gtk_tree_view_append_column' was not declared in this scope 53 | gtk_tree_view_append_column(gtkTreeView, gtkTreeViewColumn); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:54:3: error: 'gtk_tree_view_set_search_column' was not declared in this scope 54 | gtk_tree_view_set_search_column(gtkTreeView, 2); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:60:20: error: 'G_OBJECT' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkWidgetChild), "button-press-event", G_CALLBACK(TreeView_buttonEvent), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:60:68: error: 'G_CALLBACK' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkWidgetChild), "button-press-event", G_CALLBACK(TreeView_buttonEvent), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:60:112: error: expected ')' before 'this' 60 | g_signal_connect(G_OBJECT(gtkWidgetChild), "button-press-event", G_CALLBACK(TreeView_buttonEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:60:3: error: 'g_signal_connect' was not declared in this scope 60 | g_signal_connect(G_OBJECT(gtkWidgetChild), "button-press-event", G_CALLBACK(TreeView_buttonEvent), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:61:114: error: expected ')' before 'this' 61 | g_signal_connect(G_OBJECT(gtkWidgetChild), "button-release-event", G_CALLBACK(TreeView_buttonEvent), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:62:106: error: expected ')' before 'this' 62 | g_signal_connect(G_OBJECT(gtkWidgetChild), "key-press-event", G_CALLBACK(TreeView_keyPress), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:63:100: error: expected ')' before 'this' 63 | g_signal_connect(G_OBJECT(gtkWidgetChild), "popup-menu", G_CALLBACK(TreeView_context), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:64:104: error: expected ')' before 'this' 64 | g_signal_connect(G_OBJECT(gtkWidgetChild), "row-activated", G_CALLBACK(TreeView_activate), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:65:98: error: expected ')' before 'this' 65 | g_signal_connect(G_OBJECT(gtkTreeSelection), "changed", G_CALLBACK(TreeView_change), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:66:95: error: expected ')' before 'this' 66 | g_signal_connect(G_OBJECT(gtkCellToggle), "toggled", G_CALLBACK(TreeView_toggle), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/tree-view.cpp:73:3: error: 'gtkEntry' was not declared in this scope 73 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:73:15: error: 'GtkEntry' was not declared in this scope 73 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:73:24: error: expected primary-expression before ')' token 73 | gtkEntry = (GtkEntry*)gtk_entry_new(); | ^ ../hiro/core/../gtk/widget/tree-view.cpp:74:3: error: 'gtk_tree_view_set_search_entry' was not declared in this scope 74 | gtk_tree_view_set_search_entry(gtkTreeView, gtkEntry); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'virtual void hiro::pTreeView::destruct()': ../hiro/core/../gtk/widget/tree-view.cpp:80:33: error: 'gtkEntry' was not declared in this scope 80 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:80:22: error: 'GTK_WIDGET' was not declared in this scope 80 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:80:3: error: 'gtk_widget_destroy' was not declared in this scope 80 | gtk_widget_destroy(GTK_WIDGET(gtkEntry)); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:81:22: error: 'gtkWidgetChild' was not declared in this scope 81 | gtk_widget_destroy(gtkWidgetChild); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:82:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 82 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'void hiro::pTreeView::setBackgroundColor(hiro::Color)': ../hiro/core/../gtk/widget/tree-view.cpp:98:19: error: 'CreateColor' was not declared in this scope 98 | auto gdkColor = CreateColor(color); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:99:26: error: 'gtkWidgetChild' was not declared in this scope 99 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:99:42: error: 'GTK_STATE_NORMAL' was not declared in this scope 99 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:99:3: error: 'gtk_widget_modify_base' was not declared in this scope 99 | gtk_widget_modify_base(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'virtual void hiro::pTreeView::setFocused()': ../hiro/core/../gtk/widget/tree-view.cpp:106:51: error: 'gtkTreeSelection' was not declared in this scope 106 | bool selected = gtk_tree_selection_get_selected(gtkTreeSelection, nullptr, nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:106:19: error: 'gtk_tree_selection_get_selected' was not declared in this scope 106 | bool selected = gtk_tree_selection_get_selected(gtkTreeSelection, nullptr, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:107:25: error: 'gtkWidgetChild' was not declared in this scope 107 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:107:3: error: 'gtk_widget_grab_focus' was not declared in this scope 107 | gtk_widget_grab_focus(gtkWidgetChild); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:108:17: error: 'gtk_tree_selection_unselect_all' was not declared in this scope 108 | if(!selected) gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'void hiro::pTreeView::setForegroundColor(hiro::Color)': ../hiro/core/../gtk/widget/tree-view.cpp:113:19: error: 'CreateColor' was not declared in this scope 113 | auto gdkColor = CreateColor(color); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:114:26: error: 'gtkWidgetChild' was not declared in this scope 114 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:114:42: error: 'GTK_STATE_NORMAL' was not declared in this scope 114 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:114:3: error: 'gtk_widget_modify_text' was not declared in this scope 114 | gtk_widget_modify_text(gtkWidgetChild, GTK_STATE_NORMAL, color ? &gdkColor : nullptr); | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: At global scope: ../hiro/core/../gtk/widget/tree-view.cpp:124:6: error: 'auto hiro::pTreeView::_activatePath' is not a static data member of 'struct hiro::pTreeView' 124 | auto pTreeView::_activatePath(GtkTreePath* gtkPath) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:124:31: error: 'GtkTreePath' was not declared in this scope 124 | auto pTreeView::_activatePath(GtkTreePath* gtkPath) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:124:44: error: 'gtkPath' was not declared in this scope 124 | auto pTreeView::_activatePath(GtkTreePath* gtkPath) -> void { | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:124:53: error: expected ',' or ';' before '->' token 124 | auto pTreeView::_activatePath(GtkTreePath* gtkPath) -> void { | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:137:6: error: 'auto hiro::pTreeView::_buttonEvent' is not a static data member of 'struct hiro::pTreeView' 137 | auto pTreeView::_buttonEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:137:30: error: 'GdkEventButton' was not declared in this scope 137 | auto pTreeView::_buttonEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:137:46: error: 'gdkEvent' was not declared in this scope 137 | auto pTreeView::_buttonEvent(GdkEventButton* gdkEvent) -> signed { | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:137:56: error: expected ',' or ';' before '->' token 137 | auto pTreeView::_buttonEvent(GdkEventButton* gdkEvent) -> signed { | ^~ ../hiro/core/../gtk/widget/tree-view.cpp:195:6: error: 'auto hiro::pTreeView::_doDataFunc' is not a static data member of 'struct hiro::pTreeView' 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:29: error: 'GtkTreeViewColumn' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:48: error: 'column' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:56: error: 'GtkCellRenderer' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:73: error: 'renderer' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:83: error: 'GtkTreeIter' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:96: error: 'iter' was not declared in this scope 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~~~ ../hiro/core/../gtk/widget/tree-view.cpp:195:100: error: expression list treated as compound expression in initializer [-fpermissive] 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^ ../hiro/core/../gtk/widget/tree-view.cpp:195:102: error: expected ',' or ';' before '->' token 195 | auto pTreeView::_doDataFunc(GtkTreeViewColumn* column, GtkCellRenderer* renderer, GtkTreeIter* iter) -> void { | ^~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'void hiro::pTreeView::_togglePath(nall::string)': ../hiro/core/../gtk/widget/tree-view.cpp:233:24: error: 'gtkTreeStore' was not declared in this scope 233 | gtk_tree_store_set(gtkTreeStore, &item->self()->gtkIter, 0, checked, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:233:53: error: 'struct hiro::pTreeViewItem' has no member named 'gtkIter' 233 | gtk_tree_store_set(gtkTreeStore, &item->self()->gtkIter, 0, checked, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:233:5: error: 'gtk_tree_store_set' was not declared in this scope 233 | gtk_tree_store_set(gtkTreeStore, &item->self()->gtkIter, 0, checked, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'void hiro::pTreeView::_updateScrollBars()': ../hiro/core/../gtk/widget/tree-view.cpp:250:58: error: 'gtkScrolledWindow' was not declared in this scope 250 | if(auto scrollBar = gtk_scrolled_window_get_vscrollbar(gtkScrolledWindow)) { | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:250:23: error: 'gtk_scrolled_window_get_vscrollbar' was not declared in this scope 250 | if(auto scrollBar = gtk_scrolled_window_get_vscrollbar(gtkScrolledWindow)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:251:5: error: 'GtkAllocation' was not declared in this scope 251 | GtkAllocation allocation; | ^~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:252:43: error: 'allocation' was not declared in this scope 252 | gtk_widget_get_allocation(scrollBar, &allocation); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:252:5: error: 'gtk_widget_get_allocation' was not declared in this scope 252 | gtk_widget_get_allocation(scrollBar, &allocation); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:253:8: error: 'gtk_widget_get_visible' was not declared in this scope 253 | if(gtk_widget_get_visible(scrollBar)) maximumWidth -= allocation.width; | ^~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:263:34: error: 'gtkScrolledWindow' was not declared in this scope 263 | gtk_scrolled_window_set_policy(gtkScrolledWindow, | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:264:36: error: 'GTK_POLICY_ALWAYS' was not declared in this scope 264 | minimumWidth >= maximumWidth ? GTK_POLICY_ALWAYS : GTK_POLICY_NEVER, | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:264:56: error: 'GTK_POLICY_NEVER' was not declared in this scope 264 | minimumWidth >= maximumWidth ? GTK_POLICY_ALWAYS : GTK_POLICY_NEVER, | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:265:5: error: 'GTK_POLICY_AUTOMATIC' was not declared in this scope 265 | GTK_POLICY_AUTOMATIC); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:263:3: error: 'gtk_scrolled_window_set_policy' was not declared in this scope 263 | gtk_scrolled_window_set_policy(gtkScrolledWindow, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp: In member function 'void hiro::pTreeView::_updateSelected()': ../hiro/core/../gtk/widget/tree-view.cpp:271:37: error: 'gtkTreeSelection' was not declared in this scope 271 | gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:271:5: error: 'gtk_tree_selection_unselect_all' was not declared in this scope 271 | gtk_tree_selection_unselect_all(gtkTreeSelection); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:275:3: error: 'GtkTreeIter' was not declared in this scope 275 | GtkTreeIter iter; | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:276:38: error: 'gtkTreeSelection' was not declared in this scope 276 | if(gtk_tree_selection_get_selected(gtkTreeSelection, >kTreeModel, &iter)) { | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:276:57: error: 'gtkTreeModel' was not declared in this scope 276 | if(gtk_tree_selection_get_selected(gtkTreeSelection, >kTreeModel, &iter)) { | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:276:72: error: 'iter' was not declared in this scope 276 | if(gtk_tree_selection_get_selected(gtkTreeSelection, >kTreeModel, &iter)) { | ^~~~ ../hiro/core/../gtk/widget/tree-view.cpp:276:6: error: 'gtk_tree_selection_get_selected' was not declared in this scope 276 | if(gtk_tree_selection_get_selected(gtkTreeSelection, >kTreeModel, &iter)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:277:21: error: 'gtk_tree_model_get_string_from_iter' was not declared in this scope 277 | char* gtkPath = gtk_tree_model_get_string_from_iter(gtkTreeModel, &iter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view.cpp:279:5: error: 'g_free' was not declared in this scope; did you mean 'free'? 279 | g_free(gtkPath); | ^~~~~~ | free In file included from ../hiro/core/../gtk/platform.cpp:60: ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'virtual void hiro::pTreeViewItem::construct()': ../hiro/core/../gtk/widget/tree-view-item.cpp:8:43: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 8 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, &parentItem->gtkIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:8:58: error: 'gtkIter' was not declared in this scope 8 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, &parentItem->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:8:80: error: 'struct hiro::pTreeViewItem' has no member named 'gtkIter' 8 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, &parentItem->gtkIter); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:8:7: error: 'gtk_tree_store_append' was not declared in this scope 8 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, &parentItem->gtkIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:10:43: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 10 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, nullptr); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:10:58: error: 'gtkIter' was not declared in this scope 10 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, nullptr); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:10:7: error: 'gtk_tree_store_append' was not declared in this scope 10 | gtk_tree_store_append(parentWidget->gtkTreeStore, >kIter, nullptr); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'virtual void hiro::pTreeViewItem::destruct()': ../hiro/core/../gtk/widget/tree-view-item.cpp:20:35: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 20 | gtk_tree_store_remove(parent->gtkTreeStore, >kIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:20:50: error: 'gtkIter' was not declared in this scope 20 | gtk_tree_store_remove(parent->gtkTreeStore, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:20:5: error: 'gtk_tree_store_remove' was not declared in this scope 20 | gtk_tree_store_remove(parent->gtkTreeStore, >kIter); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'void hiro::pTreeViewItem::setChecked(bool)': ../hiro/core/../gtk/widget/tree-view-item.cpp:41:38: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 41 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 0, checked, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:41:53: error: 'gtkIter' was not declared in this scope 41 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 0, checked, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:41:5: error: 'gtk_tree_store_set' was not declared in this scope 41 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 0, checked, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'void hiro::pTreeViewItem::setExpanded(bool)': ../hiro/core/../gtk/widget/tree-view-item.cpp:47:55: error: 'struct hiro::pTreeView' has no member named 'gtkTreeModel' 47 | auto path = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:47:70: error: 'gtkIter' was not declared in this scope 47 | auto path = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:47:17: error: 'gtk_tree_model_get_path' was not declared in this scope 47 | auto path = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:49:46: error: 'struct hiro::pTreeView' has no member named 'gtkTreeView'; did you mean 'pTreeView'? 49 | gtk_tree_view_expand_row(parentWidget->gtkTreeView, path, false); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view-item.cpp:49:7: error: 'gtk_tree_view_expand_row' was not declared in this scope 49 | gtk_tree_view_expand_row(parentWidget->gtkTreeView, path, false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:56:48: error: 'struct hiro::pTreeView' has no member named 'gtkTreeView'; did you mean 'pTreeView'? 56 | gtk_tree_view_collapse_row(parentWidget->gtkTreeView, path); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view-item.cpp:56:7: error: 'gtk_tree_view_collapse_row' was not declared in this scope 56 | gtk_tree_view_collapse_row(parentWidget->gtkTreeView, path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:58:5: error: 'gtk_tree_path_free' was not declared in this scope 58 | gtk_tree_path_free(path); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'virtual void hiro::pTreeViewItem::setFocused()': ../hiro/core/../gtk/widget/tree-view-item.cpp:64:5: error: 'GtkTreePath' was not declared in this scope 64 | GtkTreePath* path = gtk_tree_path_new_from_string(self().path().transform("/", ":")); | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:64:18: error: 'path' was not declared in this scope; did you mean 'nall::Location::path'? 64 | GtkTreePath* path = gtk_tree_path_new_from_string(self().path().transform("/", ":")); | ^~~~ | nall::Location::path ../nall/location.hpp:9:13: note: 'nall::Location::path' declared here 9 | inline auto path(string_view self) -> string { | ^~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:64:25: error: 'gtk_tree_path_new_from_string' was not declared in this scope 64 | GtkTreePath* path = gtk_tree_path_new_from_string(self().path().transform("/", ":")); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:65:44: error: 'struct hiro::pTreeView' has no member named 'gtkTreeView'; did you mean 'pTreeView'? 65 | gtk_tree_view_set_cursor(parentWidget->gtkTreeView, path, nullptr, false); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view-item.cpp:65:5: error: 'gtk_tree_view_set_cursor' was not declared in this scope 65 | gtk_tree_view_set_cursor(parentWidget->gtkTreeView, path, nullptr, false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:66:48: error: 'struct hiro::pTreeView' has no member named 'gtkTreeView'; did you mean 'pTreeView'? 66 | gtk_tree_view_scroll_to_cell(parentWidget->gtkTreeView, path, nullptr, true, 0.5, 0.0); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view-item.cpp:66:5: error: 'gtk_tree_view_scroll_to_cell' was not declared in this scope 66 | gtk_tree_view_scroll_to_cell(parentWidget->gtkTreeView, path, nullptr, true, 0.5, 0.0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:67:5: error: 'gtk_tree_path_free' was not declared in this scope 67 | gtk_tree_path_free(path); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'void hiro::pTreeViewItem::setIcon(const nall::image&)': ../hiro/core/../gtk/widget/tree-view-item.cpp:77:21: error: 'CreatePixbuf' was not declared in this scope 77 | auto pixbuf = CreatePixbuf(icon); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:78:40: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 78 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, pixbuf, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:78:55: error: 'gtkIter' was not declared in this scope 78 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, pixbuf, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:78:7: error: 'gtk_tree_store_set' was not declared in this scope 78 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, pixbuf, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:80:40: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 80 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, nullptr, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:80:55: error: 'gtkIter' was not declared in this scope 80 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, nullptr, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:80:7: error: 'gtk_tree_store_set' was not declared in this scope 80 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 1, nullptr, -1); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'void hiro::pTreeViewItem::setSelected()': ../hiro/core/../gtk/widget/tree-view-item.cpp:90:58: error: 'struct hiro::pTreeView' has no member named 'gtkTreeModel' 90 | auto gtkPath = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:90:73: error: 'gtkIter' was not declared in this scope 90 | auto gtkPath = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:90:20: error: 'gtk_tree_model_get_path' was not declared in this scope 90 | auto gtkPath = gtk_tree_model_get_path(parentWidget->gtkTreeModel, >kIter); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:91:48: error: 'struct hiro::pTreeView' has no member named 'gtkTreeView'; did you mean 'pTreeView'? 91 | gtk_tree_view_expand_to_path(parentWidget->gtkTreeView, gtkPath); | ^~~~~~~~~~~ | pTreeView ../hiro/core/../gtk/widget/tree-view-item.cpp:91:5: error: 'gtk_tree_view_expand_to_path' was not declared in this scope 91 | gtk_tree_view_expand_to_path(parentWidget->gtkTreeView, gtkPath); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:92:5: error: 'gtk_tree_path_free' was not declared in this scope 92 | gtk_tree_path_free(gtkPath); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:93:50: error: 'struct hiro::pTreeView' has no member named 'gtkTreeSelection' 93 | gtk_tree_selection_select_iter(parentWidget->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:93:5: error: 'gtk_tree_selection_select_iter' was not declared in this scope 93 | gtk_tree_selection_select_iter(parentWidget->gtkTreeSelection, >kIter); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp: In member function 'void hiro::pTreeViewItem::setText(const nall::string&)': ../hiro/core/../gtk/widget/tree-view-item.cpp:100:38: error: 'struct hiro::pTreeView' has no member named 'gtkTreeStore' 100 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 2, (const char*)text, -1); | ^~~~~~~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:100:53: error: 'gtkIter' was not declared in this scope 100 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 2, (const char*)text, -1); | ^~~~~~~ ../hiro/core/../gtk/widget/tree-view-item.cpp:100:5: error: 'gtk_tree_store_set' was not declared in this scope 100 | gtk_tree_store_set(parentWidget->gtkTreeStore, >kIter, 2, (const char*)text, -1); | ^~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:61: ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp: At global scope: ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:38: error: 'GtkRange' was not declared in this scope 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:48: error: 'gtkRange' was not declared in this scope 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:76: error: expected primary-expression before '*' token 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:78: error: 'p' was not declared in this scope 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:79: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:5:81: error: expected ',' or ';' before '->' token 5 | static auto VerticalScrollBar_change(GtkRange* gtkRange, pVerticalScrollBar* p) -> void { | ^~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp: In member function 'virtual void hiro::pVerticalScrollBar::construct()': ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:16:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:16:33: error: 'GTK_ORIENTATION_VERTICAL' was not declared in this scope 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:16:15: error: 'gtk_scrollbar_new' was not declared in this scope 16 | gtkWidget = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:22:20: error: 'G_OBJECT' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalScrollBar_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:22:58: error: 'G_CALLBACK' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalScrollBar_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:22:97: error: 'gpointer' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalScrollBar_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:22:3: error: 'g_signal_connect' was not declared in this scope 22 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalScrollBar_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp: In member function 'virtual void hiro::pVerticalScrollBar::destruct()': ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:28:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 28 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:28:3: error: 'gtk_widget_destroy' was not declared in this scope 28 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp: In member function 'void hiro::pVerticalScrollBar::setLength(unsigned int)': ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:38:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:38:23: error: 'GTK_RANGE' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:38:3: error: 'gtk_range_set_range' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:39:3: error: 'gtk_range_set_increments' was not declared in this scope 39 | gtk_range_set_increments(GTK_RANGE(gtkWidget), 1, length >> 3); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp: In member function 'void hiro::pVerticalScrollBar::setPosition(unsigned int)': ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:43:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:43:23: error: 'GTK_RANGE' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ ../hiro/core/../gtk/widget/vertical-scroll-bar.cpp:43:3: error: 'gtk_range_set_value' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:62: ../hiro/core/../gtk/widget/vertical-slider.cpp: At global scope: ../hiro/core/../gtk/widget/vertical-slider.cpp:5:35: error: 'GtkRange' was not declared in this scope 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:5:45: error: 'gtkRange' was not declared in this scope 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:5:70: error: expected primary-expression before '*' token 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-slider.cpp:5:72: error: 'p' was not declared in this scope 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-slider.cpp:5:73: error: expression list treated as compound expression in initializer [-fpermissive] 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^ ../hiro/core/../gtk/widget/vertical-slider.cpp:5:75: error: expected ',' or ';' before '->' token 5 | static auto VerticalSlider_change(GtkRange* gtkRange, pVerticalSlider* p) -> void { | ^~ ../hiro/core/../gtk/widget/vertical-slider.cpp: In member function 'virtual void hiro::pVerticalSlider::construct()': ../hiro/core/../gtk/widget/vertical-slider.cpp:16:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_VERTICAL, 0, 100, 1); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-slider.cpp:16:40: error: 'GTK_ORIENTATION_VERTICAL' was not declared in this scope 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_VERTICAL, 0, 100, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:16:15: error: 'gtk_scale_new_with_range' was not declared in this scope 16 | gtkWidget = gtk_scale_new_with_range(GTK_ORIENTATION_VERTICAL, 0, 100, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:18:28: error: 'GTK_SCALE' was not declared in this scope 18 | gtk_scale_set_draw_value(GTK_SCALE(gtkWidget), false); | ^~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:18:3: error: 'gtk_scale_set_draw_value' was not declared in this scope 18 | gtk_scale_set_draw_value(GTK_SCALE(gtkWidget), false); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:23:20: error: 'G_OBJECT' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalSlider_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:23:58: error: 'G_CALLBACK' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalSlider_change), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:23:94: error: 'gpointer' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalSlider_change), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:23:3: error: 'g_signal_connect' was not declared in this scope 23 | g_signal_connect(G_OBJECT(gtkWidget), "value-changed", G_CALLBACK(VerticalSlider_change), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp: In member function 'virtual void hiro::pVerticalSlider::destruct()': ../hiro/core/../gtk/widget/vertical-slider.cpp:29:22: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-slider.cpp:29:3: error: 'gtk_widget_destroy' was not declared in this scope 29 | gtk_widget_destroy(gtkWidget); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp: In member function 'void hiro::pVerticalSlider::setLength(unsigned int)': ../hiro/core/../gtk/widget/vertical-slider.cpp:38:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-slider.cpp:38:23: error: 'GTK_RANGE' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:38:3: error: 'gtk_range_set_range' was not declared in this scope 38 | gtk_range_set_range(GTK_RANGE(gtkWidget), 0, max(1u, length - 1)); | ^~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:39:3: error: 'gtk_range_set_increments' was not declared in this scope 39 | gtk_range_set_increments(GTK_RANGE(gtkWidget), 1, length >> 3); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp: In member function 'void hiro::pVerticalSlider::setPosition(unsigned int)': ../hiro/core/../gtk/widget/vertical-slider.cpp:43:33: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/vertical-slider.cpp:43:23: error: 'GTK_RANGE' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~ ../hiro/core/../gtk/widget/vertical-slider.cpp:43:3: error: 'gtk_range_set_value' was not declared in this scope 43 | gtk_range_set_value(GTK_RANGE(gtkWidget), position); | ^~~~~~~~~~~~~~~~~~~ In file included from ../hiro/core/../gtk/platform.cpp:63: ../hiro/core/../gtk/widget/viewport.cpp: At global scope: ../hiro/core/../gtk/widget/viewport.cpp:6:27: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/viewport.cpp:6:38: error: 'widget' was not declared in this scope; did you mean 'Widget'? 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/viewport.cpp:6:46: error: 'cairo_t' was not declared in this scope 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:6:55: error: 'context' was not declared in this scope; did you mean 'ucontext'? 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/viewport.cpp:6:73: error: expected primary-expression before '*' token 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:6:75: error: 'p' was not declared in this scope 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:6:76: error: expression list treated as compound expression in initializer [-fpermissive] 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:6:78: error: expected ',' or ';' before '->' token 6 | static auto Viewport_draw(GtkWidget* widget, cairo_t* context, pViewport* p) -> signed { | ^~ ../hiro/core/../gtk/widget/viewport.cpp:12:29: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/viewport.cpp:12:40: error: 'widget' was not declared in this scope; did you mean 'Widget'? 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/viewport.cpp:12:48: error: 'GdkEventExpose' was not declared in this scope 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:12:64: error: 'event' was not declared in this scope; did you mean 'servent'? 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/viewport.cpp:12:80: error: expected primary-expression before '*' token 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:12:82: error: 'p' was not declared in this scope 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:12:83: error: expression list treated as compound expression in initializer [-fpermissive] 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:12:85: error: expected ',' or ';' before '->' token 12 | static auto Viewport_expose(GtkWidget* widget, GdkEventExpose* event, pViewport* p) -> signed { | ^~ ../hiro/core/../gtk/widget/viewport.cpp:17:31: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/viewport.cpp:17:42: error: 'widget' was not declared in this scope; did you mean 'Widget'? 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/viewport.cpp:17:50: error: 'GdkEventKey' was not declared in this scope 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:17:63: error: 'event' was not declared in this scope; did you mean 'servent'? 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/viewport.cpp:17:79: error: expected primary-expression before '*' token 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:17:81: error: 'p' was not declared in this scope 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:17:82: error: expression list treated as compound expression in initializer [-fpermissive] 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:17:84: error: expected ',' or ';' before '->' token 17 | static auto Viewport_keyPress(GtkWidget* widget, GdkEventKey* event, pViewport* p) -> signed { | ^~ ../hiro/core/../gtk/widget/viewport.cpp:26:33: error: 'GtkWidget' was not declared in this scope; did you mean 'wWidget'? 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^~~~~~~~~ | wWidget ../hiro/core/../gtk/widget/viewport.cpp:26:44: error: 'widget' was not declared in this scope; did you mean 'Widget'? 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^~~~~~ | Widget ../hiro/core/../gtk/widget/viewport.cpp:26:52: error: 'GdkEventButton' was not declared in this scope 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:26:68: error: 'event' was not declared in this scope; did you mean 'servent'? 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^~~~~ | servent ../hiro/core/../gtk/widget/viewport.cpp:26:84: error: expected primary-expression before '*' token 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:26:86: error: 'p' was not declared in this scope 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:26:87: error: expression list treated as compound expression in initializer [-fpermissive] 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^ ../hiro/core/../gtk/widget/viewport.cpp:26:89: error: expected ',' or ';' before '->' token 26 | static auto Viewport_mousePress(GtkWidget* widget, GdkEventButton* event, pViewport* p) -> signed { | ^~ ../hiro/core/../gtk/widget/viewport.cpp: In member function 'virtual void hiro::pViewport::construct()': ../hiro/core/../gtk/widget/viewport.cpp:35:3: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 35 | gtkWidget = gtk_drawing_area_new(); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/viewport.cpp:35:15: error: 'gtk_drawing_area_new' was not declared in this scope 35 | gtkWidget = gtk_drawing_area_new(); | ^~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:5: error: 'GDK_BUTTON_PRESS_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:29: error: 'GDK_BUTTON_RELEASE_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:55: error: 'GDK_EXPOSURE_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:75: error: 'GDK_ENTER_NOTIFY_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:99: error: 'GDK_LEAVE_NOTIFY_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:37:123: error: 'GDK_POINTER_MOTION_MASK' was not declared in this scope 37 | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); | ^~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:36:3: error: 'gtk_widget_add_events' was not declared in this scope 36 | gtk_widget_add_events(gtkWidget, | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:39:20: error: 'G_OBJECT' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Viewport_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:39:63: error: 'G_CALLBACK' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Viewport_mousePress), (gpointer)this); | ^~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:39:97: error: 'gpointer' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Viewport_mousePress), (gpointer)this); | ^~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:39:3: error: 'g_signal_connect' was not declared in this scope 39 | g_signal_connect(G_OBJECT(gtkWidget), "button-press-event", G_CALLBACK(Viewport_mousePress), (gpointer)this); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:40:108: error: expected ')' before 'this' 40 | g_signal_connect(G_OBJECT(gtkWidget), "button-release-event", G_CALLBACK(Widget_mouseRelease), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:41:98: error: expected ')' before 'this' 41 | g_signal_connect(G_OBJECT(gtkWidget), "drag-data-received", G_CALLBACK(Widget_drop), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:45:86: error: expected ')' before 'this' 45 | g_signal_connect(G_OBJECT(gtkWidget), "draw", G_CALLBACK(Viewport_draw), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:47:101: error: expected ')' before 'this' 47 | g_signal_connect(G_OBJECT(gtkWidget), "key-press-event", G_CALLBACK(Viewport_keyPress), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:48:104: error: expected ')' before 'this' 48 | g_signal_connect(G_OBJECT(gtkWidget), "enter-notify-event", G_CALLBACK(Widget_mouseEnter), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:49:104: error: expected ')' before 'this' 49 | g_signal_connect(G_OBJECT(gtkWidget), "leave-notify-event", G_CALLBACK(Widget_mouseLeave), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp:50:104: error: expected ')' before 'this' 50 | g_signal_connect(G_OBJECT(gtkWidget), "motion-notify-event", G_CALLBACK(Widget_mouseMove), (gpointer)this); | ~ ^~~~ | ) ../hiro/core/../gtk/widget/viewport.cpp: In member function 'virtual void hiro::pViewport::destruct()': ../hiro/core/../gtk/widget/viewport.cpp:56:6: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 56 | if(gtkWidget) gtk_widget_destroy(gtkWidget), gtkWidget = nullptr; | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/viewport.cpp:56:17: error: 'gtk_widget_destroy' was not declared in this scope 56 | if(gtkWidget) gtk_widget_destroy(gtkWidget), gtkWidget = nullptr; | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:57:3: error: 'gtkParent' was not declared in this scope 57 | gtkParent = nullptr; | ^~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp: In member function 'virtual void hiro::pViewport::setFocusable(bool)': ../hiro/core/../gtk/widget/viewport.cpp:73:28: error: 'gtkWidget' was not declared in this scope; did you mean 'pWidget'? 73 | gtk_widget_set_can_focus(gtkWidget, focusable); | ^~~~~~~~~ | pWidget ../hiro/core/../gtk/widget/viewport.cpp:73:3: error: 'gtk_widget_set_can_focus' was not declared in this scope 73 | gtk_widget_set_can_focus(gtkWidget, focusable); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp: At global scope: ../hiro/core/../gtk/widget/viewport.cpp:76:6: error: 'auto hiro::pViewport::_onDraw' is not a static data member of 'struct hiro::pViewport' 76 | auto pViewport::_onDraw(cairo_t* context) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:76:25: error: 'cairo_t' was not declared in this scope 76 | auto pViewport::_onDraw(cairo_t* context) -> void { | ^~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:76:34: error: 'context' was not declared in this scope; did you mean 'ucontext'? 76 | auto pViewport::_onDraw(cairo_t* context) -> void { | ^~~~~~~ | ucontext ../hiro/core/../gtk/widget/viewport.cpp:76:43: error: expected ',' or ';' before '->' token 76 | auto pViewport::_onDraw(cairo_t* context) -> void { | ^~ ../hiro/core/../gtk/widget/viewport.cpp:81:6: error: 'auto hiro::pViewport::_onExpose' is not a static data member of 'struct hiro::pViewport' 81 | auto pViewport::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:81:27: error: 'GdkEventExpose' was not declared in this scope 81 | auto pViewport::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/widget/viewport.cpp:81:43: error: 'expose' was not declared in this scope; did you mean 'export'? 81 | auto pViewport::_onExpose(GdkEventExpose* expose) -> void { | ^~~~~~ | export ../hiro/core/../gtk/widget/viewport.cpp:81:51: error: expected ',' or ';' before '->' token 81 | auto pViewport::_onExpose(GdkEventExpose* expose) -> void { | ^~ In file included from ../hiro/core/../gtk/platform.cpp:65: ../hiro/core/../gtk/application.cpp:7:40: error: 'GLogLevelFlags' has not been declared 7 | auto Log_Ignore(const char* logDomain, GLogLevelFlags logLevel, const char* message, void* userData) -> void { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:10:40: error: 'GLogLevelFlags' has not been declared 10 | auto Log_Filter(const char* logDomain, GLogLevelFlags logLevel, const char* message, void* userData) -> void { | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp: In static member function 'static bool hiro::pApplication::pendingEvents()': ../hiro/core/../gtk/application.cpp:38:10: error: 'gtk_events_pending' was not declared in this scope 38 | return gtk_events_pending(); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp: In static member function 'static void hiro::pApplication::processEvents()': ../hiro/core/../gtk/application.cpp:47:5: error: 'gtk_main_iteration_do' was not declared in this scope 47 | gtk_main_iteration_do(false); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp: In static member function 'static void hiro::pApplication::quit()': ../hiro/core/../gtk/application.cpp:54:6: error: 'gtk_main_level' was not declared in this scope 54 | if(gtk_main_level()) gtk_main_quit(); | ^~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:54:24: error: 'gtk_main_quit' was not declared in this scope 54 | if(gtk_main_level()) gtk_main_quit(); | ^~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp: In static member function 'static void hiro::pApplication::initialize()': ../hiro/core/../gtk/application.cpp:109:49: error: 'G_LOG_LEVEL_MASK' was not declared in this scope 109 | g_log_set_handler("GVFS-RemoteVolumeMonitor", G_LOG_LEVEL_MASK, Log_Ignore, nullptr); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:109:3: error: 'g_log_set_handler' was not declared in this scope 109 | g_log_set_handler("GVFS-RemoteVolumeMonitor", G_LOG_LEVEL_MASK, Log_Ignore, nullptr); | ^~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:115:3: error: 'gdk_set_program_class' was not declared in this scope 115 | gdk_set_program_class(name); | ^~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:131:3: error: 'gtk_init' was not declared in this scope 131 | gtk_init(&argc, &argvp); | ^~~~~~~~ ../hiro/core/../gtk/application.cpp:132:3: error: 'GtkSettings' was not declared in this scope; did you mean 'Settings'? 132 | GtkSettings* gtkSettings = gtk_settings_get_default(); | ^~~~~~~~~~~ | Settings ../hiro/core/../gtk/application.cpp:132:16: error: 'gtkSettings' was not declared in this scope; did you mean 'Settings'? 132 | GtkSettings* gtkSettings = gtk_settings_get_default(); | ^~~~~~~~~~~ | Settings ../hiro/core/../gtk/application.cpp:132:30: error: 'gtk_settings_get_default' was not declared in this scope 132 | GtkSettings* gtkSettings = gtk_settings_get_default(); | ^~~~~~~~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:135:39: error: 'GTK_TYPE_BUTTON' was not declared in this scope 135 | g_type_class_unref(g_type_class_ref(GTK_TYPE_BUTTON)); | ^~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:135:22: error: 'g_type_class_ref' was not declared in this scope 135 | g_type_class_unref(g_type_class_ref(GTK_TYPE_BUTTON)); | ^~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:135:3: error: 'g_type_class_unref' was not declared in this scope 135 | g_type_class_unref(g_type_class_ref(GTK_TYPE_BUTTON)); | ^~~~~~~~~~~~~~~~~~ ../hiro/core/../gtk/application.cpp:136:3: error: 'g_object_set' was not declared in this scope 136 | g_object_set(gtkSettings, "gtk-button-images", true, nullptr); | ^~~~~~~~~~~~ gmake: *** [../hiro/GNUmakefile:73: obj/hiro-gtk3.o] Error 1 *** Error code 2 Stop. bmake[1]: stopped in /data/jenkins/workspace/pkgsrc-upstream-bulktest/emulators/bsnes *** Error code 1 Stop. bmake: stopped in /data/jenkins/workspace/pkgsrc-upstream-bulktest/emulators/bsnes