• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Keine Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Ruby GTK3移行後のメインリポジトリ


Commit MetaInfo

Revision5d5ee7253876b4e897caffd5080737818ea4f550 (tree)
Zeit2017-04-08 22:57:08
AutorShyouzou Sugitani <shy@user...>
CommiterShyouzou Sugitani

Log Message

update pix.py and support for windows environment

Ändern Zusammenfassung

Diff

--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
1+Sat April 8 2017 Shyouzou Sugitani <shy@users.osdn.me>
2+ * Windows環境ではInputShapeを使用しないように修正.
3+ * ワークエリアの取得方法を改善.(Gtk 3.22以降が必須となった.)
4+ * HolonとMemeクラス拡張時の変更漏れを修正.
5+
16 Sat March 25 2017 Shyouzou Sugitani <shy@users.osdn.me>
27 * Copyrightを2017年に更新した.
38 * Rubyらしいコーディングスタイルへの修正.
--- a/README
+++ b/README
@@ -18,7 +18,8 @@ UNIX系OS対応デスクトップアクセサリninixに拡張機能を追加し
1818
1919 - Ruby (http://www.ruby-lang.org/)
2020 本ソフトウェアの開発言語です。
21- バージョン 2.3.1 での動作を確認しています。
21+ バージョン 2.3.3 での動作を確認しています。
22+ * Windows環境ではRuby InstallerおよびDevkitをインストールしてください。
2223
2324 - NArray(http://masa16.github.io/narray/)
2425 大規模な多次元数値配列の計算を、簡単かつ高速に実現するRubyのクラスです。
@@ -26,27 +27,25 @@ UNIX系OS対応デスクトップアクセサリninixに拡張機能を追加し
2627
2728 - Ruby/GTK3 (http://ruby-gnome2.osdn.jp/)
2829 Gtk+3をRubyから利用するための拡張ライブラリです。
29- バージョン 3.0.9 での動作を確認しています。
30- * Windows環境ではRuby InstallerおよびDevkitをインストールしてください。
31- (ただし、多くの点で動作に問題がある模様です。)
30+ バージョン 3.1.0 での動作を確認しています。
3231
3332 - GTK+ (http://www.gtk.org/)
3433 クロスプラットフォームの GUI ライブラリです。
35- バージョン 3.20.7 での動作を確認しています。
34+ バージョン 3.22.11 での動作を確認しています。(3.22以上が必須です。)
3635 下記GStreamerを使用する場合はRuby/GStreamerもインストールが必要です。
3736
3837 - GStreamer (http://gstreamer.freedesktop.org/)
3938 このソフトウェアはninix-ayaを動作させるのに必須ではありません。
4039 音声ファイルの再生に使用しています。
41- バージョン 1.8.2 での動作を確認しています。
40+ バージョン 1.10.4 での動作を確認しています。
4241
4342 - Rubyzip(https://github.com/rubyzip/rubyzip)
4443 Rubyからzipファイルを読み書きするためのモジュールです。
45- バージョン 1.1.7 での動作を確認しています。
44+ バージョン 1.2.0 での動作を確認しています。
4645
4746 - Ruby gettext(http://ruby-gettext.github.io/)
4847 Rubyのソフトをローカライズするためのパッケージです。
49- バージョン 3.1.7 での動作を確認しています。
48+ バージョン 3.2.2 での動作を確認しています。
5049
5150 - CharlockHolmes (http://github.com/brianmario/charlock_holmes)
5251 このソフトウェアはninix-ayaを動作させるのに必須ではありません。
@@ -80,9 +79,10 @@ ninix-ayaを起動するためのスクリプトが一緒にインストール
8079 $ ninix
8180
8281 Windows環境では、アーカイブを展開して
83-lib/ninix_main.rb をRuby インタプリタで実行してください。(動作未確認)
82+lib/ninix_main.rb をRuby インタプリタで実行してください。
8483
8584 ※ gemによる必要なもののインストール手順
85+(あらかじめDevKitをインストールしておく必要があります。)
8686 gem install narray
8787 gem install gtk3
8888 gem install gstreamer
@@ -93,7 +93,7 @@ lib/ninix_main.rb をRuby インタプリタで実行してください。(動
9393 ----------
9494 Copyright (C) 2001, 2002 by Tamito KAJIYAMA <kajiyama3@geocities.co.jp>
9595 Copyright (C) 2002-2007 by MATSUMURA Namihiko <nie@counterghost.net>
96-Copyright (C) 2002-2016 by Shyouzou Sugitani <shy@users.osdn.me>
96+Copyright (C) 2002-2017 by Shyouzou Sugitani <shy@users.osdn.me>
9797 Copyright (C) 2002, 2003 by ABE Hideaki <abe-xx@eos.dricas.com>
9898 Copyright (C) 2003-2005 by Shun-ichi TAHARA <jado@flowernet.gr.jp>
9999
--- a/lib/ninix/install.rb
+++ b/lib/ninix/install.rb
@@ -14,6 +14,7 @@
1414 # PURPOSE. See the GNU General Public License for more details.
1515 #
1616
17+require "tmpdir"
1718 require "zip"
1819 require "open-uri"
1920 require "fileutils"
--- a/lib/ninix/pix.rb
+++ b/lib/ninix/pix.rb
@@ -71,10 +71,8 @@ module Pix
7171 end
7272 @supports_alpha = composited?
7373 fail "assert" unless not visual.nil?
74- left, top = 0, 0 # XXX
75- width = (screen.width - left)
76- height = (screen.height - top)
77- @workarea = [left, top, width, height]
74+ workarea = screen.display.primary_monitor.workarea # XXX
75+ @workarea = [workarea.x, workarea.y, workarea.width, workarea.height]
7876 end
7977 end
8078
@@ -112,8 +110,8 @@ module Pix
112110 def move(x, y)
113111 left, top, scrn_w, scrn_h = @workarea
114112 w, h = @darea.size_request() # XXX
115- new_x = [[left, x].max, scrn_w - w].min
116- new_y = [[top, y].max, scrn_h - h].min
113+ new_x = [[left, x].max, left + scrn_w - w].min
114+ new_y = [[top, y].max, top + scrn_h - h].min
117115 base_move(new_x, new_y)
118116 @__position = [new_x, new_y]
119117 @__surface_position = [x, y]
@@ -153,7 +151,9 @@ module Pix
153151
154152 def set_shape(cr)
155153 region = Pix.surface_to_region(cr.target.map_to_image)
156- if @supports_alpha
154+ if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
155+ shape_combine_region(nil)
156+ elsif @supports_alpha
157157 input_shape_combine_region(nil)
158158 input_shape_combine_region(region)
159159 else
--- a/lib/ninix_main.rb
+++ b/lib/ninix_main.rb
@@ -298,19 +298,6 @@ module Ninix_Main
298298
299299 class BalloonMeme < MetaMagic::Meme
300300
301- def initialize(key)
302- super(key)
303- @parent = nil
304- end
305-
306- def set_responsible(parent)
307- @parent = parent
308- end
309-
310- def handle_request(event_type, event, *arglist)
311- return @parent.handle_request(event_type, event, *arglist)
312- end
313-
314301 def create_menuitem(data)
315302 desc, balloon = data
316303 subdir = balloon['balloon_dir'][0]
@@ -330,19 +317,6 @@ module Ninix_Main
330317
331318 class Ghost < MetaMagic::Holon
332319
333- def initialize(key)
334- super(key)
335- @parent = nil
336- end
337-
338- def set_responsible(parent)
339- @parent = parent
340- end
341-
342- def handle_request(event_type, event, *arglist)
343- @parent.handle_request(event_type, event, *arglist)
344- end
345-
346320 def create_menuitem(data)
347321 @parent.handle_request('GET', 'create_menuitem', @key, data)
348322 end