問題タブ [nsdocument]
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.
core-data - NSPersistentDocument 内に新しい NSManagedObject を作成すると、元に戻すことが可能な場合でも保存が拒否されます
私は CoreData / NSPersistentDoc アプリを持っています。それは正常に動作します。
MOM に新しいエンティティを追加し、バージョンを更新しました。
ここで、MOC 内にそのエンティティの新しいインスタンスを作成すると、アプリに既に存在する古いエンティティのインスタンスを作成するまで/作成しない限り、[保存] メニュー項目は無効のままになります。
ドキュメントが変更されたことを示すために、タイトルバーの赤いドット ボタンが正しく黒くなりますが、OS X / NSDocument はこれを認識しません。保存することはできません。
何か案は?
objective-c - 通知で特定の NSDocument インスタンスを閉じる
次の問題があります。私が構築した小さな IDE で XCode のような「新しいプロジェクト」ワークフローを再現しようとしています。このために、ユーザーが「新しいプロジェクト」を選択したときにドキュメントウィンドウコントローラーによって作成されたウィンドウでモーダルを実行するシートがあります。シートは nib から開始され、いくつかのサブビューを (View Controller を介して) 段階的なアプローチでロードし、新しいプロジェクトを保存するポイントまでプロジェクト (タイプ -> パラメーターなど) を設定します。ここまでは順調ですね。
私が抱えている問題は、保存する前にプロセスをキャンセルしようとしたときです。開いている可能性のある他のドキュメント インスタンス (別名「プロジェクト」) を閉じずに、モーダル シートとドキュメント インスタンスを閉じる方法がわかりません。
私のアプリには、デリゲート、NSWindowController および他のいくつかのコントローラーとニブを介して制御される NSDocument クラスがあります。今のところ、アプリケーション デリゲートに通知ベースのアプローチを実装することを考えていますが、把握できません。
正しい方向に向けていただければ幸いです。
からだに気をつけてね、
トム
objective-c - NSDocumentクラスの外部からココアドキュメントを保存する
私のアプリワークフロー中に、新しいモーダルNSWindowがペン先から初期化される瞬間があります。このウィンドウには、[ドキュメントの保存]ボタンがあります。推奨されるアプローチは次のとおりです。
- 新しいNSSavePanelを介して、新しくインスタンス化されたモーダルウィンドウに移動し、ここで保存フロー全体をカスタマイズしますか?
- 上記のウィンドウのボタンから保存メッセージを受信するメインNSDocumentクラスを使用しますか?もしそうなら、どのようにドキュメントを保存しますか?
- 他のシナリオはありますか?
cocoa - sqliteデータベースを読み取り/書き込みするNSDocumentベースのアプリケーション
SQLiteデータベースに簡単にアクセスできるようにMacOSX用のアプリケーションを実装しています。ユーザーは同時により多くのファイルで作業できるようになるため、ドキュメントベースのアプリケーションを選択しました。
ほとんどの本とチュートリアルでは、を使用してファイルからそのようなコンテキストでデータを作成および読み取る方法を説明していますNSData
。代わりに、私のアプリはその目的のためにSQLiteライブラリに依存する必要があります。これを行うためにオーバーライドする必要があるメソッドは何ですか?
objective-c - NSDocument ベースのアプリケーションにおける「グローバル」モデル
NSDocument
ユーザーがログインした後にメッセージを送信できるベースのアプリケーションがあります。
これらはユーザーの手順である必要があります。
- ユーザーがアプリを起動してログインします (資格情報はユーザー モデルに保存されます)。
- ユーザー user が最初のメッセージを送信します
CMD + N
ユーザーは別のメッセージをヒットして送信します (再度ログインする必要はありません)。
メッセージ モデルは に配置されますMyDocument.xib
。ただし、ユーザー モデルはグローバルな場所に配置する必要があります (MainMenu.xib と言います)。
私の質問は今です:
- モデルを MainMenu.xib に配置することは理にかなっており、どのようにアクセスできますか
MyDocument.m
- シングルトンクラスを作成することなく、これを適切に行うためのより良い方法はありますか?
objective-c - 特定の開いている NSDocument にデータを渡しますか?
私はこれに多くの問題を抱えてきました。特定のドキュメントに整数を渡すNSViewController
必要があります。NSView
キーウィンドウで表されるドキュメントにデータを渡すことを本当に望んでいますが(それが理にかなっていることを願っています)、私がやっている方法では、開いているすべてのドキュメントにデータを渡します。
Xcode テンプレート (「ドキュメント ベースのアプリケーション」ボックスがチェックされた Cocoa アプリケーション) からドキュメント ベースのアプリケーションを使用しています。これを行う方法はありますか?
本当に恥ずかしいので、コードを投稿しませんでした。基本的に、私は に「getter」メソッドをNSViewController
持っていますが、データを返す良い方法はまだ考えていません。最終的に、別の「getter」メソッドを使用してドキュメントにデータを取得させるはずの数百行のコードになりましたが、何もしません。
これに関するドキュメントはありますか?
objective-c - NSDocumentのreadFromDataの適切なウィンドウを取得します:::
私はCocoaアプリにNSDocumentクラスを正常に実装しました。これは、データを適切に保存することもできます。しかし、ファイルを開くことに関しては問題があります。
これが私の基本的な設定です。
NSDocument MyFile == xib File => MyFile.xib
処理クラスとしてのNSObjectFileClass
FileClassは、ファイルを圧縮/解凍するクラスであり、MyFile.xibのウィンドウのテキストフィールドに接続されます。保存は、デフォルトのNSNotificationCenterを介して行われます。データには生のNSStringが含まれていないため、このクラスでデータを処理する必要があります。
開く必要のあるドキュメントが3つあるとしましょう。NSDocumentインスタンスが3つあり、NSNotificationsCenterを介してデータを送信しています。3つのNSDocumentがあるため、3つのウィンドウと3つのFileClassインスタンスがあります。受信したデータがこのウィンドウに提案されているかどうかをフィルタリングする可能性がないため、正しいFileClassがデータを受信できれば幸運です。ランダムなFileClassがファイルを処理し、関連するテキストビューのテキストを設定します。したがって、ウィンドウ1は、ウィンドウ3に表示されると考えられていたデータを表示できます。
データフロー:
NSDocument => readFromData =>NSNotificationCenter=>ランダムFileClass=>関連付けられたTextView。
絞り込むには:データを正しいウィンドウにルーティングするにはどうすればよいですか?また、この構成にFileClassを含めるにはどうすればよいですか?
前もって感謝します!
ポール
objective-c - NSDocument を使用してリソース フォークに書き込むことはできますか?
ドキュメントと一緒に追加情報を保存したいのですが、バンドルやパッケージを使用できず、ドキュメント自体に保存することもできません。
このアプリケーションはテキスト エディターであり、コードの折り畳みとブックマークの場所をドキュメントと共に保存したいのですが、明らかにこれをコードに直接埋め込むことはできず、見苦しいコメントでコードを変更したくありません。
NSDocument を使用してドキュメントのリソース フォークに情報を格納できますか? もしそうなら、どうすればこれを行うことができますか? 直接書き込む<filename>/..namedfork/rsrc
必要がありますか、または使用可能な API はありますか?
objective-c - NSDocumentベースのアプリケーションの[保存]パネルで押されたボタンを特定する
NSDocumentベースのアプリケーションで保存ダイアログが閉じられたときに押されたボタン(保存、キャンセル)をどのように判断すればよいですか?保存パネルは、メニューから保存が選択されたときにNSDocumentによって提供されるデフォルトです。
-(BOOL)writeToURL:ofType:error:が呼び出される前に、いくつかの変数を変更する機会が欲しいです。
ありがとう...
macos - NSDocument ファイルのリバース エンジニアリング
OS X プログラムでサポートされていないファイル形式を使用しています。を使用していますがNSDocument
、残念ながら、ベンダーはフォーマットをサポートしていないか、エクスポートを許可していません。
では、この形式に基づくリバース エンジニアリングの最初のステップは何NSDocument
ですか? initWithContentsOfFile
このプログラムは、OS x 10.3の非推奨メソッドを引き続き使用しています。プログラム、データ、および多くのサンプル データにアクセスできます。
プログラムの逆アセンブルに関する最初の作業を行い、フォーマットを修正しました。しかし、あまり進歩していません。逆アセンブルでは何も明らかになりませんでしたが、16 進エディタでファイルを見ると、いくつかのデータ構造と最初の固定ヘッダーの概要がわかりました。