2017-02-24 4 views
2

テキストエディタタイプのアプリケーションを作成する必要があります。複数のテキストウィンドウを開くことが同時にできます。LiveCode開発者は、標準テンプレートから複数の開いているドキュメントをシミュレートする方法を教えてください。

ウィンドウはすべて同じスタックレイアウトを使用する必要があります。

は、スタックがテンプレートまたは「文房具」であるかのように複数回開くことはできますか?

もしそうなら、openstackのテキストフィールドにemptyテキストを注入して、スタックをテンプレートとして使用して新しい空のテキストエディタ文書を作成することができます。

ユーザーは、既存のテキストファイルを開くしたい場合は、我々はput URL "file://xyz.txt" into field "Text Editor" of stack "the new text editor window"

これは概念的に不変だった「文具」のドキュメントの古いマッククラシックアイデアのようになる可能性がありますが、ユーザーがダブルクリックされたときFinder内の文書を新しいウィンドウで開き、「無題#1」と呼ぶことができます。

いくつかの同一のウィンドウを表示するためにサブスタックを「テンプレート」として保存する設定がLiveCodeにあったことを覚えているようです。

はLiveCode UIと辞書を通じてグーグルと検索した後、我々が見つけた唯一の事は、我々がtemplateStackを使用した場合、我々はLiveCodeのシンプルさを敗北され、プログラムによってスタック全体を構築する必要があります templateStack

ましたプログラミングパラダイム。

これは間違っていますか?

LiveCode開発者は、標準テンプレートから開いた複数のドキュメントをどのようにシミュレートしますか?

私たちは、テンプレートとしてsubstackを作成する隠されたテンプレートを維持し、我々は新しいテキストエディタウィンドウを必要とするときに我々が必要となることだったていただけworkaroud:全く新しいを作成します

  1. 空のスタックテンプレートスタック内の各項目については
  2. ...
    • は、新しいテキストエディタウィンドウ内の重複項目を作成します。

は、我々は間違った軌道に乗っていますか?

答えて

3

次のように「クローン」を使用できます。 (これは「シミュレーション」ではなく、テンプレートスタックを使用する1つの方法です)

local templatePath="/Users/admin/myTemplates" 

on mouseUp 
    lock screen 
    -- clone from file 
    put templatePath & "/mytemplate.livecode" into longPath 
    clone stack longPath 
    -- # or clone from an open stack: 
    -- clone stack "mytemplate" 
    put 1 into J 
    repeat while there is a stack ("copy_"&J) 
     add 1 to J 
    end repeat 
    put ("copy_"&J) into newName 
    set name of it to newName -- named but not yet saved! 
    set title of stack newName to (newName & " (not yet saved)") 
    go stack newName 
    put URL ("file:" & templatePath & "/myNew.txt") into fld "mainEdit" 
    unlock screen 
end mouseUp 
+0

ありがとうございます。私たちは 'clone'コマンドについて知らなかった。あなたのコード例はまだ実行していませんが、そのコンセプトは明らかです。 – Tacitus

+0

プロジェクトにそれを適用し、既存のサブクックを使用しようとしますが、それから 'クローン'を作成します。 誰かがより良い方法を思い出さなければ、数日後に答えをあなたの好みの解決策としてマークします。 ありがとうございました! – Tacitus

+0

フォローアップ:上記の方法は、タスクを達成する方法と思われます。それぞれのクローンスタックをクローズするときにクローンスタックをメインスタックに保存するかどうか、またメインスタックを保存すると、現在開いているサブクッククローンも保存されるかどうかをLiveCodeエディタが尋ねるときには迷惑をかけることがあります。開発中にこの種の問題に注意してください。しかし、スタンドアロンとして保存すると、その迷惑な警告は出ません。 – Tacitus

関連する問題