タイニー番組ナビゲータ本体
Révision | 49685c35b9a675315211fdb23637cabc0d982a9e (tree) |
---|---|
l'heure | 2019-07-14 20:54:11 |
Auteur | Masahiko Kimura <mkimura@u01....> |
Commiter | Masahiko Kimura |
Ver.1.12.2 (2019/07/14):
@@ -2398,17 +2398,28 @@ public abstract class AbsPaperView extends JPanel implements TickTimerListener,H | ||
2398 | 2398 | node == JTreeLabel.Nodes.CS || node == JTreeLabel.Nodes.TERRA) && |
2399 | 2399 | dateNode.getChildAt(0).toString().equals(date); |
2400 | 2400 | |
2401 | - if (!now) | |
2402 | - redrawTimeline(false, false); | |
2403 | - else if (prevDT4Now != null && ! prevDT4Now.equals(curDT)) { | |
2401 | + if (prevDT4Now != null && ! prevDT4Now.equals(curDT)){ | |
2404 | 2402 | // 日付切り替え |
2405 | 2403 | StdAppendError(MSGID+"日付が変わったので番組表を切り替えます("+CommonUtils.getDateTime(0)+")"); |
2406 | - redrawByNow(cur_tuner); | |
2404 | + | |
2405 | + // 前日以前の番組情報を削除する | |
2406 | + for ( TVProgram tvp : tvprograms ) { | |
2407 | + tvp.refresh(); | |
2408 | + } | |
2409 | + | |
2410 | + if (now) | |
2411 | + redrawByNow(cur_tuner); | |
2412 | + else | |
2413 | + redrawByCurrentSelection(); | |
2407 | 2414 | } |
2408 | - else { | |
2409 | - // 現在時刻線の移動 | |
2415 | + else if (now){ | |
2416 | + // 現在時刻線に合わせたスクロール | |
2410 | 2417 | setTimelinePos(false); |
2411 | 2418 | } |
2419 | + else { | |
2420 | + // 現在時刻戦の移動 | |
2421 | + redrawTimeline(false, false); | |
2422 | + } | |
2412 | 2423 | |
2413 | 2424 | // 前回実行日 |
2414 | 2425 | prevDT4Now = curDT; |
@@ -30,7 +30,8 @@ import tainavi.TitleEditorPanel.TimeVal; | ||
30 | 30 | * @since 3.15.4β ReserveDialogからクラス名変更 |
31 | 31 | * @version 3.22.2β コンポーネントを、番組情報部・録画設定部、類似予約部の3つに分離(このまま突き進めばロジックとSwingコンポーネントを分離できるんじゃないかしら?) |
32 | 32 | */ |
33 | -abstract class AbsReserveDialog extends JEscCancelDialog implements HDDRecorderListener,RecordExecutable,RecSettingSelectable,LikeReserveSelectable { | |
33 | +abstract class AbsReserveDialog extends JEscCancelDialog implements | |
34 | +HDDRecorderListener,RecordExecutable,RecSettingSelectable,LikeReserveSelectable,TitleEditorSelectable { | |
34 | 35 | |
35 | 36 | private static final long serialVersionUID = 1L; |
36 | 37 |
@@ -272,6 +273,8 @@ abstract class AbsReserveDialog extends JEscCancelDialog implements HDDRecorderL | ||
272 | 273 | jPane_likersv.setRowSelection(LikeReserveEditorPanel.LIKERSVTABLE_NONE); |
273 | 274 | } |
274 | 275 | |
276 | + jPane_title.setSelector(this); | |
277 | + | |
275 | 278 | return true; |
276 | 279 | } |
277 | 280 |
@@ -1233,6 +1236,27 @@ abstract class AbsReserveDialog extends JEscCancelDialog implements HDDRecorderL | ||
1233 | 1236 | **************************************/ |
1234 | 1237 | |
1235 | 1238 | /** |
1239 | + * 開始時刻、終了時刻が変わったので裏番組を更新する | |
1240 | + */ | |
1241 | + public boolean notifyTimeChange(){ | |
1242 | + ReserveList myrsv = jPane_title.getSelectedValues(); | |
1243 | + | |
1244 | + HDDRecorder myrec = vals.selected_recorder; | |
1245 | + if ( myrec == null ) { | |
1246 | + return false; | |
1247 | + } | |
1248 | + | |
1249 | + // 選択 | |
1250 | + String enc = myrec.getEmptyEncorder(myrsv.getCh_name(), myrsv.getStartDateTime(), myrsv.getEndDateTime(), null, null); | |
1251 | + myrsv.setTuner(enc); | |
1252 | + jPane_recsetting.setSelectedEncoderValue(enc); | |
1253 | + | |
1254 | + showUrabanList(myrsv, myrec.getUrabanList()); | |
1255 | + | |
1256 | + return true; | |
1257 | + } | |
1258 | + | |
1259 | + /** | |
1236 | 1260 | * レコーダが選択されたのでテキトーな録画設定を選ぶ |
1237 | 1261 | */ |
1238 | 1262 | public boolean doSelectRecorder(String myself) { |
@@ -1501,7 +1525,8 @@ abstract class AbsReserveDialog extends JEscCancelDialog implements HDDRecorderL | ||
1501 | 1525 | jPane_title.setTimeValue(tVal); |
1502 | 1526 | |
1503 | 1527 | // 録画設定の選択 |
1504 | - myrec.getEmptyEncorder(tvd.center, myrsv.getStartDateTime(), myrsv.getEndDateTime(), myrsv, null); // 裏番組チェックのみ | |
1528 | +// myrec.getEmptyEncorder(tvd.center, myrsv.getStartDateTime(), myrsv.getEndDateTime(), myrsv, null); // 裏番組チェックのみ | |
1529 | + myrec.getEmptyEncorder(tvd.center, tVal.startDateTime, tVal.endDateTime, myrsv, null); // 裏番組チェックのみ | |
1505 | 1530 | setSelectedRecorder(myrec); |
1506 | 1531 | |
1507 | 1532 | ReserveList modrsv = getReserveList(myrec, tvd, tVal, myrsv.getTuner()); |
@@ -103,6 +103,7 @@ public class TitleEditorPanel extends JPanel { | ||
103 | 103 | private JButton jButton_record = null; |
104 | 104 | private JButton jButton_cancel = null; |
105 | 105 | |
106 | + private TitleEditorSelectable selectable = null; | |
106 | 107 | |
107 | 108 | /******************************************************************************* |
108 | 109 | * 部品 |
@@ -228,6 +229,11 @@ public class TitleEditorPanel extends JPanel { | ||
228 | 229 | recexec = o; |
229 | 230 | } |
230 | 231 | |
232 | + // コールバック用オブジェクトをセットする | |
233 | + public void setSelector(TitleEditorSelectable o) { | |
234 | + selectable = o; | |
235 | + } | |
236 | + | |
231 | 237 | /******************************************************************************* |
232 | 238 | * アイテムの設定 |
233 | 239 | ******************************************************************************/ |
@@ -706,6 +712,8 @@ public class TitleEditorPanel extends JPanel { | ||
706 | 712 | public void itemStateChanged(ItemEvent e) { |
707 | 713 | if ( e.getStateChange() == ItemEvent.SELECTED ) { |
708 | 714 | setRecMinItem(); |
715 | + if (selectable != null) | |
716 | + selectable.notifyTimeChange(); | |
709 | 717 | } |
710 | 718 | } |
711 | 719 | }; |
@@ -0,0 +1,9 @@ | ||
1 | +package tainavi; | |
2 | + | |
3 | +public interface TitleEditorSelectable { | |
4 | + | |
5 | + /** | |
6 | + * 開始、終了時刻が変わった | |
7 | + */ | |
8 | + public boolean notifyTimeChange(); | |
9 | +} | |
\ No newline at end of file |
@@ -5,7 +5,7 @@ import java.util.regex.Pattern; | ||
5 | 5 | |
6 | 6 | |
7 | 7 | public class VersionInfo { |
8 | - private static final String Version = "タイニー番組ナビゲータ for DBR-T2007 3.22.18β+1.12.1"; | |
8 | + private static final String Version = "タイニー番組ナビゲータ for DBR-T2007 3.22.18β+1.12.2"; | |
9 | 9 | |
10 | 10 | private static final String OSname = System.getProperty("os.name"); |
11 | 11 | private static final String OSvers = System.getProperty("os.version"); |
@@ -60,7 +60,7 @@ public class PlugIn_CSPTVKingdom110 extends PlugIn_TVPTVKingdom implements TVPro | ||
60 | 60 | private final String ERRID = "[ERROR]"+MSGID; |
61 | 61 | private final String DBGID = "[DEBUG]"+MSGID; |
62 | 62 | |
63 | - private final String PROGCACHE_PREFIX = "TVK_CS_"; | |
63 | + private final String PROGCACHE_PREFIX = "TVK_"; | |
64 | 64 | |
65 | 65 | |
66 | 66 | /******************************************************************************* |
@@ -79,8 +79,9 @@ public class PlugIn_CSPTVKingdom110 extends PlugIn_TVPTVKingdom implements TVPro | ||
79 | 79 | @Override |
80 | 80 | public boolean loadProgram(String areaCode, boolean force) { |
81 | 81 | setCacheFileOnly(true); |
82 | + String prefix = PROGCACHE_PREFIX + getCSType() + "_" + areaCode; | |
82 | 83 | |
83 | - if (!force && loadFromProgCache(PROGCACHE_PREFIX + areaCode)) | |
84 | + if (!force && loadFromProgCache(prefix)) | |
84 | 85 | return true; |
85 | 86 | |
86 | 87 | // 入れ物を空にする |
@@ -111,7 +112,7 @@ public class PlugIn_CSPTVKingdom110 extends PlugIn_TVPTVKingdom implements TVPro | ||
111 | 112 | pcenter = newplist; |
112 | 113 | newplist = null; |
113 | 114 | |
114 | - saveToProgCache(PROGCACHE_PREFIX + areaCode); | |
115 | + saveToProgCache(prefix); | |
115 | 116 | |
116 | 117 | return true; |
117 | 118 | } |