gtkdialog の扱い

パピーを名犬にするための技、テクニック

モデレータ: 暇人, YoN, nyu

返信する
アバター
サボり魔
記事: 294
登録日時: 07/12/06(木) 12:28
お住まい: 関東

gtkdialog の扱い

投稿記事 by サボり魔 »

こんにちは、いつでもサボってます。サボり魔です。
Win版のXamppに付いてくるコントロールパネルが羨ましいので試してました。

コード: 全て選択

#! /bin/bash

export MAIN_DIALOG='
<vbox>
    <frame Operate My Selections>

        <hbox>
            <text>
                <label>Apache2 start</label>
            </text>
            <button>
                <label>start</label>
                <action>/opt/lampp/lampp startapache</action>
            </button>
        </hbox>

        <hbox>
            <text>
                <label>Apache2 stop</label>
            </text>
            <button>
                <label>stop</label>
                <action>/opt/lampp/lampp stopapache</action>
            </button>
        </hbox>

        <hbox>
            <text>
                <label>Opera</label>
            </text>
            <button>
                <label>start</label>
                <action>"/root/my-applications/opera/opera.sh"</action>
            </button>
        </hbox>

    </frame>
    <hbox>
        <button cancel></button>
    </hbox>
</vbox>
'

gtkdialog3 --program=MAIN_DIALOG
これで動くんですけど(パスは適宜ね)、最後にオマケで入れたブラウザ起動が問題でして。
ラッパーで起動しやがれとシェルに言われたので、試しに書いた別のファイル(opera.sh)から exec して opera を起動(eval でもいけるね)。
ブラウザを閉じるまでは gtkdialog がアクティブに戻らずに停止したままです。
このソフトに限らず、おそらくは画面が開くアプリケーションはどれもこの状態になるのではないかと。 :(

元からある opera ファイル(本来これをクリックして起動するやつです)の初めのほうに

コード: 全て選択

kill $(ps | grep 'opera.sh' | sed 's/^\s*//' | cut -d ' ' -f 1)
なんぞと入れて Kill しちゃえば戻って来てくれて解決なのですが、それも野暮ったい。

何か gtkdialog の仕組みでフォーカスを戻してきてくれる構文なんてないものでしょうか。
ざざーっと「/usr/share/doc/gtkdialog3/gtkdialog.txt」を見てもイマイチわかりません。
ご存知のかた、教えて頂けませんか? 全然急いでおりませんので。わかった時にでも。

こんなことせずに素直にショートカット作っとけって? 多分それが正しいと思います。 :wink:
サボり魔
Precise-550JP & Precise-571JP & Tahr-Puppy
frugal install (USB)
8GB ASUS H97I-PLUS Core-i5 4690S
8GB ASRock Z68M-ITX/HT Core-i7 2600k with Win7
16GB ASROCK H170M-ITX/ac Core-i5 6600
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: gtkdialog の扱い

投稿記事 by シノバー »

サボり魔 さんが書きました: ブラウザを閉じるまでは gtkdialog がアクティブに戻らずに停止したままです。
<action>"/root/my-applications/opera/opera.sh" &</action>
では?
The bar master, Shino's Bar
http://shinobar.net/
アバター
サボり魔
記事: 294
登録日時: 07/12/06(木) 12:28
お住まい: 関東

Re: gtkdialog の扱い

投稿記事 by サボり魔 »

シノバーさん、さっそくありがとうございます。
<action>"/root/my-applications/opera/opera.sh &"</action>
でうまくいきました! :D

クォーテーションの位置によってはそもそもダイアログが出なかったり、ややこしいですね。
一発解決。どうもありがとうございます。
サボり魔
Precise-550JP & Precise-571JP & Tahr-Puppy
frugal install (USB)
8GB ASUS H97I-PLUS Core-i5 4690S
8GB ASRock Z68M-ITX/HT Core-i7 2600k with Win7
16GB ASROCK H170M-ITX/ac Core-i5 6600
返信する