[Bf-blender-cvs] [18729171fd1] temp-asset-browser-catalogs-ui: Adapt to changes in master

Julian Eisel noreply at git.blender.org
Fri Sep 24 20:31:51 CEST 2021


Commit: 18729171fd164abf8771f6b9ec80482942653ef9
Author: Julian Eisel
Date:   Fri Sep 24 20:31:39 2021 +0200
Branches: temp-asset-browser-catalogs-ui
https://developer.blender.org/rB18729171fd164abf8771f6b9ec80482942653ef9

Adapt to changes in master

===================================================================

M	source/blender/blenkernel/intern/asset_catalog.cc
M	source/blender/editors/include/UI_tree_view.hh
M	source/blender/editors/interface/tree_view.cc
M	source/blender/editors/space_file/asset_catalog_tree_view.cc

===================================================================

diff --git a/source/blender/blenkernel/intern/asset_catalog.cc b/source/blender/blenkernel/intern/asset_catalog.cc
index 65fde665190..6f1c51e43a4 100644
--- a/source/blender/blenkernel/intern/asset_catalog.cc
+++ b/source/blender/blenkernel/intern/asset_catalog.cc
@@ -348,7 +348,7 @@ void AssetCatalogTree::insert_item(AssetCatalog &catalog)
   BLI_assert_msg(!ELEM(catalog.path[0], '/', '\\'),
                  "Malformed catalog path; should not start with a separator");
 
-  CatalogID unset_id = bke::bUUID();
+  CatalogID unset_id = blender::bUUID();
   const char *next_slash_ptr;
   /* Looks more complicated than it is, this just iterates over path components. E.g.
    * "just/some/path" iterates over "just", then "some" then "path". */
diff --git a/source/blender/editors/include/UI_tree_view.hh b/source/blender/editors/include/UI_tree_view.hh
index fac880a0a67..55e0d682094 100644
--- a/source/blender/editors/include/UI_tree_view.hh
+++ b/source/blender/editors/include/UI_tree_view.hh
@@ -190,6 +190,7 @@ class AbstractTreeViewItem : public TreeViewItemContainer {
    * last redraw to this item. If sub-classes introduce more advanced state they should override
    * this and make it update their state accordingly. */
   virtual void update_from_old(const AbstractTreeViewItem &old);
+  virtual bool matches(const AbstractTreeViewItem &other) const;
 
   const AbstractTreeView &get_tree_view() const;
   int count_parents() const;
diff --git a/source/blender/editors/interface/tree_view.cc b/source/blender/editors/interface/tree_view.cc
index 01a921cb759..ae4d1b1fb8a 100644
--- a/source/blender/editors/interface/tree_view.cc
+++ b/source/blender/editors/interface/tree_view.cc
@@ -123,7 +123,7 @@ AbstractTreeViewItem *AbstractTreeView::find_matching_child(
     const AbstractTreeViewItem &lookup_item, const TreeViewItemContainer &items)
 {
   for (const auto &iter_item : items.children_) {
-    if (lookup_item.label_ == iter_item->label_) {
+    if (lookup_item.matches(*iter_item)) {
       /* We have a matching item! */
       return iter_item.get();
     }
@@ -145,6 +145,11 @@ void AbstractTreeViewItem::update_from_old(const AbstractTreeViewItem &old)
   is_active_ = old.is_active_;
 }
 
+bool AbstractTreeViewItem::matches(const AbstractTreeViewItem &other) const
+{
+  return label_ == other.label_;
+}
+
 const AbstractTreeView &AbstractTreeViewItem::get_tree_view() const
 {
   return static_cast<AbstractTreeView &>(*root_);
@@ -309,15 +314,15 @@ uiBut *BasicTreeViewItem::button()
 
 using namespace blender::ui;
 
-bool UI_tree_view_item_is_active(uiTreeViewItemHandle *item_)
+bool UI_tree_view_item_is_active(const uiTreeViewItemHandle *item_)
 {
-  AbstractTreeViewItem &item = reinterpret_cast<AbstractTreeViewItem &>(*item_);
+  const AbstractTreeViewItem &item = reinterpret_cast<const AbstractTreeViewItem &>(*item_);
   return item.is_active();
 }
 
 bool UI_tree_view_item_matches(const uiTreeViewItemHandle *a_, const uiTreeViewItemHandle *b_)
 {
-  const uiAbstractTreeViewItem &a = reinterpret_cast<const uiAbstractTreeViewItem &>(*a_);
-  const uiAbstractTreeViewItem &b = reinterpret_cast<const uiAbstractTreeViewItem &>(*b_);
+  const AbstractTreeViewItem &a = reinterpret_cast<const AbstractTreeViewItem &>(*a_);
+  const AbstractTreeViewItem &b = reinterpret_cast<const AbstractTreeViewItem &>(*b_);
   return a.matches(b);
 }
diff --git a/source/blender/editors/space_file/asset_catalog_tree_view.cc b/source/blender/editors/space_file/asset_catalog_tree_view.cc
index e3286ba531d..aa3edce7077 100644
--- a/source/blender/editors/space_file/asset_catalog_tree_view.cc
+++ b/source/blender/editors/space_file/asset_catalog_tree_view.cc
@@ -45,10 +45,9 @@
 #include "file_intern.h"
 
 using namespace blender;
-using namespace blender::ui;
 using namespace blender::bke;
 
-class AssetCatalogTreeView : public uiAbstractTreeView {
+class AssetCatalogTreeView : public ui::AbstractTreeView {
   bke::AssetLibrary *library_;
   FileAssetSelectParams *params_;
 
@@ -60,21 +59,21 @@ class AssetCatalogTreeView : public uiAbstractTreeView {
   void build_tree() override;
 
  private:
-  static uiBasicTreeViewItem &build_recursive(uiTreeViewItemContainer &view_parent_item,
-                                              AssetCatalogTreeItem &catalog);
+  static ui::BasicTreeViewItem &build_recursive(ui::TreeViewItemContainer &view_parent_item,
+                                                AssetCatalogTreeItem &catalog);
 };
 /* ---------------------------------------------------------------------- */
 
-class AssetCatalogTreeViewItem : public uiBasicTreeViewItem {
+class AssetCatalogTreeViewItem : public ui::BasicTreeViewItem {
   AssetCatalogTreeItem &catalog_;
 
  public:
   AssetCatalogTreeViewItem(AssetCatalogTreeItem &catalog)
-      : uiBasicTreeViewItem(catalog.get_name()), catalog_(catalog)
+      : BasicTreeViewItem(catalog.get_name()), catalog_(catalog)
   {
   }
 
-  void onActivate() override
+  void on_activate() override
   {
     const AssetCatalogTreeView &tree_view = static_cast<const AssetCatalogTreeView &>(
         get_tree_view());
@@ -85,7 +84,7 @@ class AssetCatalogTreeViewItem : public uiBasicTreeViewItem {
 
   void build_row(uiLayout &row) override
   {
-    uiBasicTreeViewItem::build_row(row);
+    ui::BasicTreeViewItem::build_row(row);
 
     if (!is_active()) {
       return;
@@ -119,32 +118,33 @@ void AssetCatalogTreeView::build_tree()
 {
   FileAssetSelectParams *params = params_;
 
-  add_tree_item<uiBasicTreeViewItem>(IFACE_("All"), ICON_HOME, [params](uiBasicTreeViewItem &) {
-    params->asset_catalog_visibility = FILE_SHOW_ASSETS_ALL_CATALOGS;
-    WM_main_add_notifier(NC_SPACE | ND_SPACE_ASSET_PARAMS, NULL);
-  });
+  add_tree_item<ui::BasicTreeViewItem>(
+      IFACE_("All"), ICON_HOME, [params](ui::BasicTreeViewItem &) {
+        params->asset_catalog_visibility = FILE_SHOW_ASSETS_ALL_CATALOGS;
+        WM_main_add_notifier(NC_SPACE | ND_SPACE_ASSET_PARAMS, NULL);
+      });
 
   if (AssetCatalogTree *catalog_tree = library_ ? library_->catalog_service->get_catalog_tree() :
                                                   nullptr) {
     catalog_tree->foreach_child([this](AssetCatalogTreeItem &item) {
-      uiBasicTreeViewItem &child_view_item = build_recursive(*this, item);
+      ui::BasicTreeViewItem &child_view_item = build_recursive(*this, item);
 
       /* Open root-level items by default. */
       child_view_item.set_collapsed(false);
     });
   }
 
-  add_tree_item<uiBasicTreeViewItem>(
-      IFACE_("Unassigned"), ICON_FILE_HIDDEN, [params](uiBasicTreeViewItem &) {
+  add_tree_item<ui::BasicTreeViewItem>(
+      IFACE_("Unassigned"), ICON_FILE_HIDDEN, [params](ui::BasicTreeViewItem &) {
         params->asset_catalog_visibility = FILE_SHOW_ASSETS_WITHOUT_CATALOG;
         WM_main_add_notifier(NC_SPACE | ND_SPACE_ASSET_PARAMS, NULL);
       });
 }
 
-uiBasicTreeViewItem &AssetCatalogTreeView::build_recursive(
-    uiTreeViewItemContainer &view_parent_item, AssetCatalogTreeItem &catalog)
+ui::BasicTreeViewItem &AssetCatalogTreeView::build_recursive(
+    ui::TreeViewItemContainer &view_parent_item, AssetCatalogTreeItem &catalog)
 {
-  uiBasicTreeViewItem &view_item = view_parent_item.add_tree_item<AssetCatalogTreeViewItem>(
+  ui::BasicTreeViewItem &view_item = view_parent_item.add_tree_item<AssetCatalogTreeViewItem>(
       catalog);
 
   catalog.foreach_child(
@@ -163,11 +163,11 @@ void file_create_asset_catalog_tree_view_in_layout(::AssetLibrary *asset_library
   bke::AssetLibrary *asset_library = reinterpret_cast<blender::bke::AssetLibrary *>(
       asset_library_c);
 
-  uiAbstractTreeView *tree_view = UI_block_add_view(
-      block,
+  ui::AbstractTreeView *tree_view = UI_block_add_view(
+      *block,
       "asset catalog tree view",
       std::make_unique<AssetCatalogTreeView>(asset_library, params));
 
-  uiTreeViewBuilder builder(*block);
+  ui::TreeViewBuilder builder(*block);
   builder.build_tree_view(*tree_view);
 }



More information about the Bf-blender-cvs mailing list