プログラミングやる前に先お風呂はいっちゃいなさい

911月/100

頭が痛い

昨日に引き続き頭が痛い。

お腹も痛い。

でも、大丈夫。

Amazonからラブプラスのねんどろいどが届いたから僕のデスクは華々しい。

ということで、僕のデスクも痛いという。

お後がよろしいようで。

- 閑話休題 -

今日は体調がすこぶる悪いということで、自主的に半休。13時出社。

なんか、こんなふうにやっていると堕落して11時出社とか12時出社が当たり前になってしまいそうだ。。

最初が肝心。最初が肝心なのだよ。

さて、今日の作業はというと、昨日の予定で行くとこんな感じ。

  • ソフトの大まかな設計とTODOのまとめ
  • ソフトのプロット
  • ひまころじーサーバプラグインの資料まと
  • ひまころじーのロードマップ作成

出来たのは、一番上だけだったね。

うん、風呂敷を広げすぎたのと、半休が大きい。

明日はというと、ソフトの開発が主な作業になってくる。

明日こそ9時出社だ!

うまいお昼ご飯を食べる為に朝は早く起きて頑張るのだ!

頑張るのだ!

頑張るのだ!

811月/100

俺の事務所がこんなに快適なわけがない

今日から心機一転。

自分の事務所で仕事をします。

といっても、まだネットも電話も開通されてないので、しばらくはEMと携帯に頼る日々。

そんな晴れ晴れしい思いで最寄り駅に行ったら、遅延で人がいっぱいで駅に入れないんです。

出端をくじかれた!しかし、僕にはこんな事もあろうかと某ラノベの最新刊がポケットにあったりする!
ということで、ロッテリアに駆け込みバーガーとラノベとティーというモーニングBLTコンボで30分くらいやり過ごす。

結局、9時を目指して家を出たのに、着いたのは10時という…。

それにしても、この事務所の快適性は異常。

1Fにセブンイレブン。そして立ち食いそば。
近所にやよい軒、ペッパーランチ、さくら水産、ヨドバシカメラ、TSUTAYA、HANDS、郵便局、ディスカウントスーパー。

枚挙にいとまがない。(僕内での使ってみたかった言葉ランキング10位)

さて、今日の僕の主な作業を書いてみる。

というのも、このブログをこれから簡易日報的な、そういう使い方をしてみようと考えたから。

  • 手続き関係の書類をやっつけてみる
  • 今まで購入した備品なんかの会計をエクセルってみる
  • 頭がめっちゃ痛い
  • 事務所の整理整頓
  • 身体の節々がめっちゃ痛い
  • なんだか熱っぽい
  • ちょっと横になる
  • なんか始終涙目

認めたくないものだな。自分が風邪を引いてるんじゃないかって事を。

めっちゃ頭痛い。

ナニコレ、いきなりそういう出端をくじくか?

とりあえず、半分は非科学的なおクスリでどうにかやり過ごす。

うー、そろそろ帰ろう。。そして、暖かくして今日は早く寝よう。

明日の予定。

  • ソフトの大まかな設計とTODOのまとめ
  • ソフトのプロット
  • ひまころじーサーバプラグインの資料まとめ
  • ひまころじーのロードマップ作成

こんな感じ?

それじゃあ、明日元気になっていることを願って今日はラノベ読みながら帰ろう。

でわでわ。

243月/090

先日のリングコマンドの不具合について

どうにも気持ち悪かったんで、先日アップしたリングコマンドの不具合について調べてました。

どうやら、僕がUIComponentにBitmapをaddChildして使う際に行った実装がまずかったみたいです。

UIDecorator.as 

  1. public class UIDecorator extends UIComponent
  2. {
  3.   public function UIDecorator(displayObject:DisplayObject)
  4.   {
  5.     super();
  6.     BindingUtils.bindSetter(bindCenter, this, "centerX");
  7.     BindingUtils.bindSetter(bindCenter, this, "centerY");
  8.     this.displayObject = displayObject;
  9.     super.addChild(this.displayObject);
  10.   }
  11.  
  12.   [Bindable] public var centerX:Number = 0;
  13.   [Bindable] public var centerY:Number = 0;
  14.  
  15.   private function bindCenter(dummy:Number):void
  16.   {
  17.     this.lx = this.lx;
  18.     this.ly = this.ly;
  19.   }
  20.  
  21.   [Bindable]
  22.   public function get lx():Number
  23.   {
  24.     return super.x + centerX;
  25.   }
  26.   public function set lx(value:Number):void
  27.   {
  28.     super.x = value - centerX;
  29.   }
  30.  
  31.   [Bindable]
  32.   public function get ly():Number
  33.   {
  34.     return super.y + centerY;
  35.   }
  36.   public function set ly(value:Number):void
  37.   {
  38.     super.y = value - centerY;
  39.   }
  40.  
  41.   public override function set width(value:Number):void
  42.   {
  43.     super.width = value;
  44.     displayObject.width = value;
  45.   }
  46.   public override function set height(value:Number):void
  47.   {
  48.     super.height = value;
  49.     displayObject.height = value;
  50.   }
  51.  
  52.   public var displayObject:DisplayObject;
  53. }

こんな感じに実装してみた。
これは正解のソースで、本当はコンストラクタの中でdisplayObjectの幅と高さをthisの幅と高さにバインドする処理が入ってました。

で、このバインドを信用していたんだけど、どうもビルドするたびに、このバインドが利いたり利かなかったり・・・。
もう、なんでこんな曖昧なんだ。。バインド。。一気に僕の信用を落としました。

さて、で、これではBitmapをまだaddChildしてないので、ちゃんとBitmapをaddChildするようにコレを継承して、こんなのを作りました。

UIBitmap.as

  1. public class UIBitmap extends UIDecorator
  2. {
  3.   private var _bitmap:Bitmap;
  4.   public function UIBitmap(bitmapData:BitmapData=null)
  5.   {
  6.     super(new Bitmap());
  7.     _bitmap = this.displayObject as Bitmap;
  8.     this.bitmapData = bitmapData;
  9.   }
  10.  
  11.   public function set bitmapData(value:BitmapData):void
  12.   {
  13.     _bitmap.bitmapData = value;
  14.     if (value == null)
  15.       return;
  16.     this.width = value.width;
  17.     this.height = value.height;
  18.   }
  19.   public function get bitmap():Bitmap
  20.   {
  21.     return _bitmap;
  22.   }
  23. }

このソースも正解のソース。
本当はbitmapDataのsetterの中でthisの幅と高さを入れる処理はしてなかった。

まあ、つまり、UIComponentに入れたBitmapのサイズがバインド処理で行うはずなのに行われてなかったというものでした。

おわり。

明日は、MXMLで書くXMLパーサを作った話を書く予定。