CodeGear が提供している Blackfish SQL は、xcopy 配布が可能だと言っています。
が、なんかコピーしただけだとうまくいかないようです。
とりあえず、ここに書かれている通り、次のファイルをコピーしてみたのですが、うまくいきません。
- Borland.Data.Blackfish.LocalClient.dll
- RAD Studio BlackfishSQL.slip
んー、ダメですねぇ。
どうしたもんだろうか。
CodeGear が提供している Blackfish SQL は、xcopy 配布が可能だと言っています。
が、なんかコピーしただけだとうまくいかないようです。
とりあえず、ここに書かれている通り、次のファイルをコピーしてみたのですが、うまくいきません。
んー、ダメですねぇ。
どうしたもんだろうか。
JustSystems の Shuriken Pro 2008 で、メールに付いてくる PDF を開こうとすると、Adobe Reader ではなく Acrobat が開いてしまうようになってしまうことがあります。
それを解決したときのメモです。
*
エクスプローラでファイルを選択し、「プログラムから開く」で Adobe Reader を指定、「この種類のファイルを開く時は、選択したプログラムをいつも使う」を選ぶと、エクスプローラ上では期待通りの動きをします。
しかし、関連づけられたプログラムの優先順位は、エクスプローラと Shuriken Pro では違うらしく、うまく動きません。
仕方がないので、PDF を開くアプリが Adobe Reader になるよう、レジストリを変更しました。
変更したレジストリは次の2カ所です。
これらのキーの「(規定)」を、「”C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe” %1」に変更したところ、きちんと Adobe Reader が起動するようになりました。
以前紹介した Smarty の html_select_time の話の追加みたいなものです。
html_select_time のデフォルト値は、現在の日時です。
しかし、システムによっては初期値を空にしたい事があります。そんなときはこんな感じ。
{html_select_date start_year=-4 end_year=+4 year_empty='-' month_empty='-' day_empty='-' time='--'}
{html_select_time time='0:0:0'}
ポイントは、time の設定の仕方。
html_select_date は time=’–’
html_select_time は time=’0:0:0′
これで、現在の日時に関係なく、作成された SELECT タグの一番最初の OPTION が選択されることになります。
(この例では、日付の最初に「-」を指定してみました)
CSS で TABLE のデザインをする際、外枠を強い線、内枠を弱い線にする、などを考えますが、できるだけ簡単にこれを実現できないか情報を探していたところ、border-collapse をうまく使う方法がありましたので、メモしておきます。
*
Border conflict resolution に載っていました。やはり W3C を見れば確実ですね(実装はともかく)。
ここを見ると、どうやら被った場合で色が違う場合の優先順位は、th, td>row>row group>column>column group>table の様です(4番目のルールから)。
昨日の日記の様な場合は、ちゃんとこの通り動いていたので、table の枠線は td, th の枠線に上書きされていたのでした。
また、枠線の太さが太い方が優先されると言うことと、線種にも double > solid > dashed > dotted > ridge > outset > groove > inset の順番があるようです(2,3番目のルールから)。
枠線を作るときは、このルールに気をつけることで、だいぶデザインがしやすそうです。
スッキリしました。
以下、サンプル画像とソース
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="<a href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<title>CSSによるテーブル枠のテスト</title>
<style type="text/css">
<!--
table.vertical, table.horizontal{
width:200px;
margin:8px;
padding:0;
border:1px solid #6593cf;
border-collapse:collapse;
}
.vertical th, .vertical td{
border:1px dotted #6593cf;
background-color:white;
padding:2px 3px 2px 3px;
}
.vertical th {
color:black;
border-right:1px solid #6593cf;
border-bottom:1px dotted #6593cf;
background:#e3efff none repeat-x;
}
-->
</style>
</head>
<body>
<table class="vertical">
<caption>border-collapse:collapseの場合</caption>
<tbody>
<tr>
<th>th1</th>
<td>td1-1</td>
<td>td1-2</td>
</tr>
<tr>
<th>th2</th>
<td>td2-1</td>
<td>td2-2</td>
</tr>
<tr>
<th>th3</th>
<td>td3-1</td>
<td>td3-3</td>
</tr>
</tbody>
</table>
<table class="vertical" style="border-collapse:separate;">
<caption>border-collapse:separateの場合</caption>
<tbody>
<tr>
<th>th1</th>
<td>td1-1</td>
<td>td1-2</td>
</tr>
<tr>
<th>th2</th>
<td>td2-1</td>
<td>td2-2</td>
</tr>
<tr>
<th>th3</th>
<td>td3-1</td>
<td>td3-3</td>
</tr>
</tbody>
</table>
</body>
</html>
プログラムを組んでいる最中に、久しぶりに長い時間はまりました。
それは、タイトルの通り、JavaScript には終了タグが必須だと言うことを忘れ、XML 風味に略式で外部スクリプトの定義を書いてしまったことです。
画面がページによって崩れてしまい、えらいことになりました。
w3c のここにも乗っているとおり、End tag は required でした。
つまり、
<script type="text/~" src="~" mce_src="~" />
はダメで、
<scrpt type="text/~" src="~" mce_src="~">
にしなければならないと言うことです。
タグのコンテンツが無くても、記述が必須なんですね。
言いわけをすれば、今まで JavaScript は使わない主義だったので、経験が足りないと言ったところでしょうか。
ドリームハイブの提供する Tasks は、確かに ToDo 管理ツールとしての機能を増やしてきましたが、まだまだ思い描く機能はたくさんあります。
その一つにガントチャート機能があるのですが、機能として捉えてみるとなかなか奥深いものがあります。
基本的にはガントチャートの基本となる、横バーが中心となるのですが、Tasks の場合はカテゴリ機能が絡んでくるので、その表現をどうするかが問題となってきます。
Microsoft Project の様に、グルーピング機能として見せることも可能ですが、思想が違うので、そのまま導入と言う訳にはいきません。
Tasks の場合、カテゴリ内カテゴリはあえて実装せず、ビューによって複数カテゴリのとりまとめをする方針となっていますので、他のプロジェクト管理系のアプリケーションを真似ることが難しいわけです。
そうなると、単純に開始日から期限までのバーを表示する以上をどうすべきか、となり、どんどん深みにはまってしまっています・・
山本 悟
こんにちは、山本です。
昔から私は、カレンダーで仕事の進捗などを管理するのはあまり好きではありませんでした。
なぜならば、すぐでは無いけれども、いつかやらなければならない仕事などを入れるには、空きスペースなどを利用するしかないからです。
しかし、リスト化されたタスクは、期限や開始日が存在しなければ無期限のタスクになるだけですので、他の期限付きのタスクなどと一緒に表示することが出来ます。
いつ何をやるか、と言うのを表すのは、カレンダーもタスク一覧も一緒ですが、先の理由で、タイトルのように、カレンダーはタスクの表現の一つだと思うわけです。
裏側のシステムを考えても、結局レコードとしてデータを蓄積するのがまだまだ当たり前な状況ですから。
山本 悟
Recent Comments