From 07dbbc6cd8f6273ff3a6daaab322d32c2a8af418 Mon Sep 17 00:00:00 2001 From: Guldoman Date: Mon, 30 Aug 2021 19:19:57 +0200 Subject: [PATCH] Remove `View:extend` override Call directly `core.register_view(name, class)` to register a `View`. The `registered_name` field will be populated automatically. --- data/core/docview.lua | 4 +++- data/core/init.lua | 1 + data/core/view.lua | 11 ----------- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/data/core/docview.lua b/data/core/docview.lua index cabf6a1f..eb5ee5cd 100644 --- a/data/core/docview.lua +++ b/data/core/docview.lua @@ -7,10 +7,12 @@ local translate = require "core.doc.translate" local View = require "core.view" -local DocView = View:extend("DocView") +local DocView = View:extend() DocView.context = "session" +core.register_view("doc", DocView) + function DocView:get_content() return { diff --git a/data/core/init.lua b/data/core/init.lua index 758fd2c3..45fe2ef6 100644 --- a/data/core/init.lua +++ b/data/core/init.lua @@ -39,6 +39,7 @@ end local registered_views = { } function core.register_view(name, class) registered_views[name] = class + class.registered_name = name end function core.get_registered_view(name) diff --git a/data/core/view.lua b/data/core/view.lua index 234ad061..c1efc2ce 100644 --- a/data/core/view.lua +++ b/data/core/view.lua @@ -8,17 +8,6 @@ local Object = require "core.object" local View = Object:extend() --- Override how objects are created. This allows for automatic Views registration -function View:extend(register_name) - local new_class = View.super.extend(self) - if register_name then - new_class.registered_name = register_name - core.register_view(register_name, new_class) - end - return new_class -end - - -- context can be "application" or "session". The instance of objects -- with context "session" will be closed when a project session is -- terminated. The context "application" is for functional UI elements.