問題タブ [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で実装された)があります。私は aNSTreeControllerを使用せず、バインディングも使用しません。次のコードを使用してエンティティを追加します。

追加ボタンを押すと、次のように新しい行が挿入されます。

ここに画像の説明を入力

クリックして行を選択し、 を押しenterて編集すると、次のようになります。 ここに画像の説明を入力

私の質問は、ユーザーエクスペリエンスを向上させるために、プログラムで同じ状態 (フォーカス、選択、強調表示) を初めて取得するにはどうすればよいですか?

0 投票する
1 に答える
683 参照

cocoa - NSProgressIndicatorsをNSOutlineViewサブクラスに追加する

私は他の人気のあるOSXソースリストをエミュレートするために素晴らしいPXSourceListコントロールの大幅に変更されたバージョンを使用しています。残念ながら、NSProgressIndicatorを上記のソースリスト内の行に追加しようとしたときに、いくつかの問題が発生しました。

PXSourceListは、標準のNSOutlineViewコントロールのサブクラスとして機能し、サンプルのSourceListItemクラス(骨格のNSObjectサブクラス)とともにパッケージ化されています。PXSourceListとそのSourceListItemのレンダリングは、drawRow:clipRect:私の問題の原因であるPXSourceListのメソッドで処理されます。

各SourceListItemがオプションでNSProgressIndicatorを表示できるようにする最良の方法を見つけようとしています。Instinctは、カスタムセルを作成する必要があると言っていますが、適切なソリューションを最適に実装する方法がわかりません。

ありとあらゆる助けをいただければ幸いです。

0 投票する
0 に答える
200 参照

objective-c - NSOutlineView / PXSourceList: テキストの非表示 / 表示の重複を防止

PXSourceList (NSOutlineView のサブクラス) でサイドバーを作成しました。Lion では、グループ アイテムにカーソルを合わせると、「表示」または「非表示」というテキストが表示されます。残念ながら、サイドバーのサイズが小さすぎると、このテキストがアイテムの独自のタイトルと重なってしまいます。現在の iTunes の実装でも同じ問題が見られます。

例として、次を参照してください。 自分のサイドバー

ただし、Finder やメールなどの他の macosx アプリケーションは、重複を防ぐために、独自のテキストの一部を隠し、「...」を追加します。 ファインダーサイドバー

独自のアプリケーションで同じ結果を達成する方法はありますか?

0 投票する
1 に答える
643 参照

objective-c - 動的 NSOutlineView データ ソース

そこでPXSourceList、Apple のNSOutlineViewデータ ソースの例とほぼ同じデータ ソースを実装しました。

こうやって…

TSFileSystemItemはここからです: https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/OutlineView/Articles/UsingOutlineDataSource.html .

ソース リストを複数のセクション (ルート セル) に分割したいことを除けば、これですべて問題ありません。1 つはファイル階層を表示 (チェック) し、もう 1 つは...

NSMutableArrayもう1 つのセクションには、他のセクションから項目を追加するが含まれます。複雑に聞こえますか?より良い説明。ファイル階層のあるセクションからアイテムをクリックすると、他のセクションに追加されます。

Apple のドキュメントの助けを借りてこの混乱を解決しようとしましたが、上記の関数を使用して 2 つのセクションを作成する簡単で効率的で安定した方法をまだ見つけることができません。データソースを構成するのと同じくらい簡単だったらUITableView...

誰か親切に助けてくれませんか?

0 投票する
1 に答える
337 参照

objective-c - NSOutlineView サブクラスがデータ ソースのドラッグ アンド ドロップ メソッドを起動しない

アプリケーションの 1 つで優れたNSOutlineViewサブクラスを使用しPXSourceListています。インスタンスにドラッグ アンド ドロップを実装しようとしていPXSourceListます。私は持っている:

  1. IB のデリゲート アウトレットとデータ ソース アウトレットの両方をコントローラーに接続しました
  2. コントローラーでawakeFromNib、self をデリゲートおよびデータ ソースとして設定します。
  3. コントローラーでawakeFromNib、ドラッグされた型に登録されます
  4. writeItems: validateDrop: acceptDrop:コントローラーで、必要なメソッドと メソッドを実装し、namesOfPromisedFilesDroppedAtDestination:それらをコントローラーの .h ファイルで宣言します

何らかの理由で、(4) で実装されたドラッグ アンド ドロップ メソッドがまったく起動しません。私はもう試した:

  • ドラッグ アンド ドロップ データ ソース メソッドにログ ステートメントを配置すると、呼び出されることはありません。
  • registeredDraggedTypesインスタンスのログを記録する他のデータ ソース メソッドの 1 つにログ ステートメントをPXSourceList配置すると、割り当てられた適切なドラッグ タイプが常に返されます。awakeFromNib.
  • ビュー インスタンスを取得し、 NSWindowPXSourceListインスタンスを除くすべてのビューから埋め込みを解除します。運もありません。
  • 私のアプリケーションから付属のサンプル アプリにデータ ソース コードをコピー アンド ペーストすると、PXSourceListすべて変更なしで機能します。
  • サンプル アプリケーションの作業コードを SK ソースにコピー アンド ペーストしますが、機能しません。

したがって、基本的に、ドラッグ アンド ドロップ メソッドを除くすべてのデータ ソース メソッドが呼び出される場所にいます。ドラッグされたタイプに登録していないように動作しますが、1) 持っていることを知っており、2) インスタンスは、設定したドラッグされたタイプに登録されていると応答します。

何か案は?

0 投票する
1 に答える
208 参照

objective-c - NSOutlineView の「サイドバー アイコン サイズ」オプションを無効にする

OSX プロジェクトにPXSourceList (NSOutlineView サブクラス) を使用しており、アプリの「サイドバー アイコン サイズ」(システム設定 -> 一般) オプションを無効にしたいと考えています。アイコンを常に小さくしたいのですが。

PS PXSourceList はビューベース モードです。