問題タブ [macruby]

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 に答える
362 参照

xcode - MacRuby と Interface Builder のプロパティ

MacRuby と XCode、特にさまざまなライブラリ コンポーネントのプロパティ/メソッドにアクセスできる部分を深く理解するには、助けが必要です。なんらかの参考書が必要だと思います。

これをもう少し明確にしましょう。ライブラリから Textview などのコンポーネントを Interface builder のフォームに追加すると、NSObject (コントローラーにリンクされている) を介してそれと対話できます。attr_accessor とインスタンス変数を使用すると、getter と setter を使用してデータを取得できます。

また

ただし、イメージビューのプロパティ (イメージのソースの変更など) または Webkit ビューの URL を設定できるようにしたいと考えています。MacRuby を反映したリファレンスの正しい方向を教えてもらえますか?

同様のトピックを見つけましたが、満足のいく回答ではありませんでした。主に MacRuby 本が未完成の状態であったため、私の質問に対する答えが見つかりませんでした。

あなたが私を助けてくれることを願っています!ありがとう、

0 投票する
3 に答える
3769 参照

objective-c - Grand Central Dispatch: データ構造へのアクセスを制御するためのキューとセマフォ?

私は Macruby でこれを行っていますが、ここではそれほど重要ではないと思います。

状態を辞書データ構造に格納するモデルがあります。同時操作でこのデータ構造を散発的に更新したいと考えています。GCDは、これら2つを含む、これに対するいくつかの可能な解決策を提供しているように私には思えます:

  • 何らかのシリアル キューに送信されるブロック内のデータ構造にアクセスするコードをラップする
  • 構造体にアクセスするときに必要に応じて待機/シグナル呼び出しを送信するクライアント コードで、GCD セマフォを使用する

最初のソリューションのキューが同期的に呼び出されると、セマフォ ソリューションとほとんど同じように見えます。これらのソリューションのいずれにも、私が見逃している明確な利点がありますか? 私が見逃しているより良い代替手段はありますか?

また、GCD で読み取り/書き込み (共有排他) ロックを実装するのは簡単ですか?

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

cocoa - OS X のアクセシビリティ API を使用してアプリケーションの受け入れテストを作成するにはどうすればよいですか?

Cocoa で GUI アプリケーションを作成しています。Cucumber を使用して受け入れテストを作成し、アプリケーションの機能が動作することを継続的に検証したいと考えています。私はすでに MacRuby でアプリケーションを書いています。

Accessibility API を使用してクリックしたりドラッグしたりできますか? そのようなことを行う方法についてどこで読むことができますか? 私は、Apple のサイトがこの話題について比較的無関心であることを発見した。

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

javascript - windowScriptObject と WebKit を使用して JavaScript 経由で MacRuby を呼び出す

新しい MacRuby アプリケーションがあります。アプリケーション内の webView に読み込まれた JavaScript から MacRuby メソッドを呼び出そうとしています。

Calling Objective-C Methods From JavaScriptチュートリアルは、値が Objective-C オブジェクトである webScriptObject にキーを追加する方法を示しています。したがって、JavaScript から Obj-C メソッドを呼び出すことができます。

残念ながら、これは MacRuby クラス/メソッドでは機能しません。以下は、私の WebView の loadDelegate の短縮版です。

webScriptObject が利用可能になったら、ObjCInstance と MacRubyInstance の 2 つのキーを追加します。

ObjC クラスの実装は次のとおりです。

そして、Ruby で同じことを行うと思われるものは次のとおりです。

唯一の問題は、Objective-C の実装が正常に機能することです。JS 側では、次のように呼び出すことができます。

文字列「works」を返します。

しかし、MacRuby の実装は失敗します。電話すると:

あなたは得る:

式 'window.MacRubyInstance.nameAtIndex_' [未定義] の結果は関数ではありません

webScriptNameForSelectorandisSelectorExcludedFromWebScriptメソッドが MacRuby 実装で呼び出されることはありません。それが問題だと思いますが、なぜ彼らが呼び出されないのかわかりません。

どんな助けでも大歓迎です。

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

ruby - Mac OS XでRubyを使用して、プログラムで画面をクリックし、マウスを移動、マウスを下に移動、マウスを上に移動するにはどうすればよいですか?

それを行うための最良の方法は何ですか?ffi、RubyCocoa、またはMacRubyで実行できますか ?

CGEventCreateMouseEventまたはCGPostMouseEvent(非推奨)を使用できるようです。

実例を挙げてください。ありがとう。

更新:この質問のタイトルが更新されました...

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

ruby - NSMenuItem オブジェクトで setTitle メソッドを呼び出すと、表示されるタイトルは変更されませんが、プロパティが変更されます

XCode で MacRuby を使用して、アプリケーションのメニュー項目のタイトルを変更できるようにしたいと考えています。

私の単純化した例では、ボタンとラベルを含むウィンドウと、メニュー項目を含むメニューがあります。

次のクラスを作成し、@my_label をラベルに、@my_menu をメニュー項目に、ボタン クリックを button_clicked メソッドにリンクしました。ボタンをクリックすると、ラベルのテキストが更新されて「誰かがボタンを押しました」と表示されますが、実際に表示されるメニューのタイトルは変わりません。

これは、title プロパティが更新されていることを示しているように見えますが、変更は表示されていません。

NSMenuItem のドキュメントを見てきましたが、間違っていることは明らかではありません。ただし、私はこれにかなり慣れていないので、単純なものが欠けていることを願っています。

違いがある場合は、XCode 4 で MacRuby 0.10 を使用しています。

ポール

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

ruby - MacRubyのパッチを実行するにはどうすればよいですか

llvmに関連するMacRubyをインストールしようとしてエラーが発生し、特定の問題のパッチが見つかりましたが、パッチの適用方法がわかりません。

エラーは

そして、私が見つけたパッチは 、r5276のLLVM2.8でコンパイルできませんでした。

パッチファイルができたので、それを適用するには何を実行しますか?

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

xcode4 - デフォルトの NSDocument ベースの MacRuby アプリケーションが XCode 4 で壊れる

デフォルトの NSDocument ベースのアプリケーションを作成した MacRuby 0.10 と XCode 4 を使用しています。ただし、アプリをビルドして実行すると、ウィンドウは表示されず、通常のメニュー コマンドはほとんど無効になります。

通常の Cocoa ベースのアプリケーションを作成すると、メインのアプリ ウィンドウは問題なく表示されます。

誰かが修正が何であるか知っていますか?

ダン;

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

debugging - XcodeでMacRubyデバッガーを使用しますか?

Xcode内でMacRubyアプリを開発するときに、MacRubyデバッガーmacrubydを使用する方法はありますか?

私の知る限り、ターミナルからでもそうすることはできません。厄介な回避策を考えましたが、いつでも燃える前に状況を再確認したいと思いました。

MacRuby0.10とXcode4を使用します。

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

macos - macrubyを使用して、Core Animationトランザクションの完了ブロックを設定するにはどうすればよいですか?

私はMacRubyを使用してCoreAnimationプログラミングを行っています。考えられることをすべて試し、検索しました(おそらく、「純粋な」macrubyでは実行できません)が、MacRubyコードのブロックを呼び出す完了ブロックとして指定する方法がわかりません。アニメーショントランザクションが終了したとき。私がやりたいことをする方法は他にもあることは知っていますが、これは私にとって最もクリーンであり、Cocoaで物事が動いている方法のようです。とにかく、これは私が持っているものです:

'setCompletionBlock'行がないと、アニメーションは正常に実行されます。このセッターメソッドのパラメーターは、(Objective-Cでは)次のように定義されています。

そして、次のように説明されています:

「このトランザクショングループのアニメーションが完了したときに呼び出されるブロックオブジェクト。ブロックオブジェクトはパラメータを受け取らず、値を返しません。」

私はさまざまなことを試しました(しかし、私はこの時点で推測しています):

私は道を離れていますか?それを行うには、ある種のObjective-Cラッパーを作成する必要がありますか?それともできませんか?

前もって感謝します