问题标签 [pxsourcelist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1939 浏览

cocoa - 自动选择、聚焦和突出显示一个新的 NSOutlineView 行

这可能只是缺乏经验,NSOutlineView但我看不到这样做的方法。我有一个NSOutlineView(通过出色的PXSourceList实现)带有一个添加按钮,该按钮在我正确保存/写入/插入/删除行方面完全可用。我不使用 a NSTreeController,也不使用绑定。我使用以下代码添加实体:

当按下添加按钮时,会插入一个新行,如下所示:

在此处输入图像描述

如果我点击离开,然后选择该行并按下enter以编辑它,它现在看起来像这样: 在此处输入图像描述

我的问题是:如何以编程方式第一次获得相同的状态(焦点、选定、突出显示),以使用户体验更好?

0 投票
1 回答
683 浏览

cocoa - 将 NSProgressIndicators 添加到 NSOutlineView 子类

我正在使用经过大量修改的出色PXSourceList控件来模拟其他流行的 OS X 源列表。不幸的是,我在尝试将 NSProgressIndicator 添加到所述源列表中的行时遇到了一些问题。

PXSourceList 充当标准 NSOutlineView 控件的子类,并与示例 SourceListItem 类(骨架 NSObject 子类)一起打包。PXSourceList 及其 SourceListItem 的渲染是在 PXSourceList 的drawRow:clipRect:方法中处理的,这是我的问题的根源。

我试图找到允许每个 SourceListItem 有选择地显示 NSProgressIndicator 的最佳方式。本能告诉我我应该创建一个自定义单元格,但我不确定我应该如何以最佳方式实施一个体面的解决方案。

任何和所有的帮助将不胜感激。

0 投票
0 回答
200 浏览

objective-c - NSOutlineView / PXSourceList:防止隐藏/显示文本重叠

我们用PXSourceList(NSOutlineView 的子类)做了一个侧边栏。在 Lion 上,当您将鼠标悬停在群组项目上时,会有文本“显示”或“隐藏”。但不幸的是,当侧边栏尺寸太小时,此文本与我们自己的项目标题重叠。在当前的 iTunes 实现中也出现了同样的问题。

作为示例,请参见: 自己的侧边栏

但其他 macOS 应用程序(如 Finder 或 Mail)隐藏了自己的部分文本并添加“...”以防止重叠: 查找器侧边栏

他们有什么方法可以在自己的应用程序中实现相同的结果吗?

0 投票
1 回答
975 浏览

cocoa - 为 NSOutlineView 自定义 NSTextFieldCell

我想知道如何NSTextFieldCell在 NetNewsWire 中画一个类似的。

我已经NSTextFieldCell为组单元格子类化 a 并在我的PXSourceList's dataCellForItem.

源列表是基于单元格的。

我只是不知道如何绘制单元格。

网络新闻通讯社

0 投票
1 回答
643 浏览

objective-c - 动态 NSOutlineView 数据源

所以我实现了一个PXSourceList数据源,它几乎是 AppleNSOutlineView数据源示例的副本。

事情是这样的……

神秘TSFileSystemItem来自这里:https ://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/OutlineView/Articles/UsingOutlineDataSource.html 。

所有这一切都很好,除了我想将我的源列表划分为多个部分(根单元格)。一个显示文件层次结构(检查),另一个...

那么另一个将包含一个NSMutableArray我从其他部分添加项目的内容。听起来很复杂?更好的解释。单击具有文件层次结构的部分中的项目,并将其添加到其他部分。

我试图在 Apple 文档的帮助下解决这个问题,但我仍然找不到一种简单、高效、稳定的方法来使用我上面提到的功能制作 2 个部分。如果只是像配置数据源一样简单UITableView...

任何人都可以帮助我吗?

0 投票
1 回答
337 浏览

objective-c - NSOutlineView 子类不触发数据源拖放方法

我在我的一个应用程序中使用了优秀的NSOutlineView子类PXSourceList。我正在尝试实现拖放到我的PXSourceList实例。我有:

  1. 将 IB 中的委托和数据源插座都连接到我的控制器
  2. awakeFromNib控制器中,将self设置为委托和数据源
  3. awakeFromNib控制器中,为拖拽类型注册
  4. 在控制器中,实现必要条件writeItems: validateDrop: acceptDrop:namesOfPromisedFilesDroppedAtDestination:方法,并在控制器的 .h 文件中声明它们

由于某种原因,(4)中实现的拖放方法根本没有触发。我试过了:

  • 将日志语句放在拖放数据源方法中——它们永远不会被调用。
  • 将日志语句放在记录实例的其他数据源方法之一中registeredDraggedTypes-PXSourceList它始终返回分配的正确拖动类型awakeFromNib.
  • 获取PXSourceList视图实例并将其从除 NSWindow 实例之外的所有包含视图中取消嵌入 - 那里也没有运气。
  • 将我的应用程序中的数据源代码复制粘贴到随附的示例应用程序中PXSourceList- 无需修改即可全部运行。
  • 将示例应用程序中的工作代码复制粘贴到 SK 源代码中 - 它不起作用。

所以基本上我在一个地方,除了拖放方法之外,所有数据源方法都被调用。它的行为就像我没有为拖动类型注册一样,但是 1)我知道我有 2)实例响应它已为我设置的拖动类型注册。

有任何想法吗?

0 投票
1 回答
208 浏览

objective-c - NSOutlineView 禁用“侧边栏图标大小”选项

我正在为我的 OSX 项目使用PXSourceList(NSOutlineView 子类),并希望为我的应用程序禁用“侧边栏图标大小”(系统偏好设置 -> 常规)选项。我希望我的图标总是很小。

PS PXSourceList 处于基于视图的模式。

0 投票
1 回答
1076 浏览

macos - Source List Sidebar implementation in Swift with split view

I'm having issues trying to implement a navigation sidebar for an app. Considering that source lists are so prominent in OS X apps and that Apple's Human Interface Guidelines refer to a source list as an ideal way to navigate within an app, I'm surprised that there aren't more resources available (well not that I can find anyway). Everything that relates to split views that I can find seem to refer to ios.

I have no issues with implementing the content of the source list, my issue arises when it comes to view swapping based on the selection within the source list.

Essentially I want the user to select an option in the source list on the master side of a split view, and then for the corresponding view to be loaded in the detail side of the split view. I'm not sure if there is an easy way to implement something like this using storyboards as there is for a tabview controller for example? If not, is anyone able to suggest a basic implementation in swift to help get me started? I'm not sure where to start from the view swapping side of things.

Thanks in advance.

EDIT:

Further to my previous post, I have included below a basic implementation of a view swap but when the view is replaced, the previous view remains. In addition to my questions about, how do I remove the previous view before adding a new one? My line of code removeFromSuperView() seems to be causing major problems!

class AppController: NSObject {

}

0 投票
0 回答
755 浏览

swift - CoreAnimation:警告,滚动时删除了未提交 CATransaction 的线程

我有一个带有源列表和表格视图的拆分视图。所有数据都被加载并显示在屏幕上。

我确实启用了Xcode:如何设置 CA_DEBUG_TRANSACTIONS=1?在我目前的计划中。

  1. 我启动应用程序
  2. 加载并显示所有数据
  3. 我一滚动就会崩溃

我不会在后台线程中更新任何 UI,也不会做任何花哨的事情。只是滚动会触发错误。

日志:

我不知道如何调试这个问题。