お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2011-08-25 09:35:39

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

teatimeのようなインジケータ知りませんか?

昔(といってもnattyより前だから最近)のgnomeがつかえた頃、teatimeという便利なアプレットがあってカップ麺の時間を計るのに便利だったんですけど、それと同じような感覚で、1クリック程度で3分とかの決まった時間間隔をはかる便利なアプリ、インジケータ、スクリーンレットなんでもいいので、nattyでつかえる便利なやつ知りませんか?(時計があるんだからそれでいいじゃんとかの答えは勘弁してください)

オフライン

 

#2 2011-08-25 09:53:20

zagan
メンバ
登録日: 2008-08-12

Re: teatimeのようなインジケータ知りませんか?

PCでカップ麺って奴に気を引かれて調べてみました。 (笑
Timer Applet

解説したサイトにリンク貼りました。
ソフトウェアセンターで「タイマー」と検索語を指定すると、これがヒットします。

オフライン

 

#3 2011-08-25 10:12:04

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

Re: teatimeのようなインジケータ知りませんか?

zagan による投稿:

PCでカップ麺って奴に気を引かれて調べてみました。 (笑
Timer Applet

解説したサイトにリンク貼りました。
ソフトウェアセンターで「タイマー」と検索語を指定すると、これがヒットします。

これnattyで使えないような気がする。(gnomeでないから)

オフライン

 

#4 2011-08-25 10:15:39

zagan
メンバ
登録日: 2008-08-12

Re: teatimeのようなインジケータ知りませんか?

すみません。これgnomeのアプレットでした。
Unityには導入不可能でした。

gnome-appletは多くのツールがあるので、流用できる仕組みができるといいなぁと思う今日この頃。

オフライン

 

#5 2011-08-25 12:15:48

einundzwanzighundertsechs
メンバ
登録日: 2008-12-28

Re: teatimeのようなインジケータ知りませんか?

zagan さん による投稿:

すみません。これgnomeのアプレットでした。
Unityには導入不可能でした。

gnome-appletは多くのツールがあるので、流用できる仕組みができるといいなぁと思う今日この頃。

Maverick からアップグレードした Natty の Unity 環境で,Gnome パネルを端末から起動すると,
以前愛用していた Gnome アプレットが動作していることを此方では確認しています.
gnome-panel を自動起動に設定し,
Unity のランチャやメニューバーと重ならないように出現位置を調製すれば,
もう暫くは使えるのではないでしょうか?

オフライン

 

#6 2011-08-25 12:21:30

einundzwanzighundertsechs
メンバ
登録日: 2008-12-28

Re: teatimeのようなインジケータ知りませんか?

einundzwanzighundertsechs  による投稿:

Unity のランチャやメニューバーと重ならないように出現位置を調製すれば,

「調製」は「調整」の変換候補選択ミス.

オフライン

 

#7 2011-08-25 18:55:06

STGSAGWAN
ゲスト

Re: teatimeのようなインジケータ知りませんか?

いわゆる、「ラーメンタイマー」ですね。
私は、 http://d.hatena.ne.jp/kakurasan/20071201/p1 を自分でカスタマイズして使ってます。(初期値を変更したり、タイムアップ時に音鳴らしたり、通知アイコンを変えたり・・・)
bashとzenityで出来てます。
zenityを他のコマンドに置き換えれば、非GNOME環境でも使えるはずです。

 

#8 2011-08-25 22:42:53

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

Re: teatimeのようなインジケータ知りませんか?

STGSAGWANさん einundzwanzighundertsechsさん ありがとうございます。
両方動作するのを確認しました。

とりあえずSTGSAGWANさんのやり方がいい感じですが、pythonの勉強もかねて土日もっとこじゃれたものをつくろうかなと思います。

unityでzenityの代わりになるものから調べますか

オフライン

 

#9 2011-08-26 20:08:44

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

Re: teatimeのようなインジケータ知りませんか?

とりあえずできました。(実働1h)
ご指導ご鞭撻ご要望あればお受けします。

使いたい変わった人のために説明
①以下を適当なファイル名(test.py)でUTF8で保存します。
②実行権をつけます。
③実行します。$ ./test.py
④unityのインデックスのところにメッセージのアイコンが追加されます。
⑤アイコンのところで右クリックで 3分 と quit のメニューがメニューがでます
⑥3分を選ぶと3分でポップアップ quitで終了

残件
・途中経過の表示
・ポップアップのバルーン変更
・アイコン変える
・3分を可変に

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import sys
import gtk
import appindicator
import gobject

class CheckTime:
    def __init__(self):
            self.ind = appindicator.Indicator("example-simple-client", "indicator-messages", appindicator.CATEGORY_APPLICATION_STATUS)
            self.ind.set_status(appindicator.STATUS_ACTIVE)
            self.ind.set_attention_icon("indicator-messages-new")

            self.menu_setup()
            self.ind.set_menu(self.menu)
        def menu_setup(self):
            self.menu = gtk.Menu()

            self.menu = gtk.Menu()

            self.calc3m_item = gtk.MenuItem("3 分")
            self.calc3m_item.connect("activate", self.calc3m)
            self.calc3m_item.show()
            self.menu.append(self.calc3m_item)

            self.quit_item = gtk.MenuItem("Quit")
            self.quit_item.connect("activate", self.quit)
            self.quit_item.show()
            self.menu.append(self.quit_item)
        def main(self):
            gtk.main()
        def quit(self, widget):
            sys.exit(0)
    def calc3m(self, widget):
        gtk.timeout_add(3*60*1000, self.OnTime)
    def OnTime(self):
        self.dlg = gtk.MessageDialog(type=gtk.MESSAGE_INFO, buttons=gtk.BUTTONS_CLOSE, message_format="おーい!!そろそろ時間ですよ!!!!?")
        self.dlg.set_title("まじかるほーりーあっぷ")
        self.dlg.run()
        self.dlg.destroy()

if __name__ == "__main__":
    indicator = CheckTime()
    indicator.main()

オフライン

 

#10 2011-08-26 20:21:39

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

Re: teatimeのようなインジケータ知りませんか?

インデントのズレとか
self.menu = gtk.Menu()
が2回あるとか、お赦しください。
すいません。
geditでシコシコ書いたものでm(__)m

オフライン

 

#11 2011-08-28 10:19:34

kokawa2003
メンバ
From: Kepler-10c
登録日: 2009-05-03

Re: teatimeのようなインジケータ知りませんか?

書き逃げかよと言われるのが嫌なので最後にきちんと書いておきたい。
じゃ、うざがられないうちに退場します。

コード:

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import sys
import gtk
import appindicator
import gobject
import pynotify
import time


class CheckTime:
    def __init__(self):
        self.calcsec=3*60
        self.ind = appindicator.Indicator("example-simple-client", "indicator-messages", appindicator.CATEGORY_APPLICATION_STATUS)
        self.ind.set_status(appindicator.STATUS_ACTIVE)
        ##self.ind.set_attention_icon("indicator-messages-new")
        self.ind.set_attention_icon("new-messages-red")
        self.ind.set_icon("distributor-logo")
        self.menu_setup()
        self.ind.set_menu(self.menu)
        self.flg=0
    def menu_setup(self):
        self.menu = gtk.Menu()
        strData0="測定時間 %d 秒" % self.calcsec
        self.calc3m_item = gtk.MenuItem(strData0)
        self.calc3m_item.connect("activate", self.calc3m)
        self.calc3m_item.show()
        self.menu.append(self.calc3m_item)

        self.quit_item = gtk.MenuItem("Quit")
        self.quit_item.connect("activate", self.quit)
        self.quit_item.show()
        self.menu.append(self.quit_item)
    def main(self):
        gtk.main()
    def quit(self, widget):
        sys.exit(0)
    def calc3m(self, widget):
        if self.flg==1:
            end = time.time();
            span=self.calcsec-end+self.start
                strData="残り時間 %d 秒" % span
            dlg = gtk.MessageDialog(type=gtk.MESSAGE_INFO, buttons=gtk.BUTTONS_CLOSE, message_format=strData)
            dlg.set_title("まじかるほーりーあっぷ")
            dlg.run()
            dlg.destroy()            
        else:
            self.ind.set_status(appindicator.STATUS_ACTIVE)
            gtk.timeout_add(self.calcsec*1000, self.OnTime)
            ##gtk.timeout_add(5*1000, self.OnTime)
            self.flg=1
            self.start = time.time();
    def OnTime(self):
        self.ind.set_status(appindicator.STATUS_ATTENTION)
        pynotify.init( "まじかるほーりーあっぷ" )
        self.nty = pynotify.Notification("まじかるほーりーあっぷ", "おーい!!\nそろそろ時間ですよ!!!!?" , "-")
        ##icon = gtk.StatusIcon()
        ##self.nty.attach_to_status_icon(icon)
        self.nty.show()    
        ##self.dlg = gtk.MessageDialog(type=gtk.MESSAGE_INFO, buttons=gtk.BUTTONS_CLOSE, message_format="おーい!!そろそろ時間ですよ!!!!?")
        ##self.dlg.set_title("まじかるほーりーあっぷ")
        ##self.dlg.run()
        ##self.dlg.destroy()
        self.flg=0

if __name__ == "__main__":
    indicator = CheckTime()
    indicator.main()

オフライン

 

Board footer

Powered by FluxBB