• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Frequently used words (click to add to your profile)

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

タイニー番組ナビゲータ本体


Commit MetaInfo

Revision53f4fbf7b6a08f04f498044b94fe687079517602 (tree)
Time2021-04-30 12:44:45
AuthorMasahiko Kimura <mkimura@u01....>
CommiterMasahiko Kimura

Log Message

Ver.1.12.23 (2021/4/30)
1.[リスト形式]検索ボックスが空の状態で「キーワードリストに登録」ボタンをクリックすると異常終了する問題の対応
2.[各種設定]フォント変更後確定すると異常終了することがある問題の対応
3.[リスト形式][新聞形式]サービスが終了したCHAN-TORUで予約するメニューを削除する
4.[予約ダイアログ]サービスが終了した番組ID取得のボタンを削除する

Change Summary

Incremental Difference

--- a/TinyBannavi/src/tainavi/AbsKeywordDialog.java
+++ b/TinyBannavi/src/tainavi/AbsKeywordDialog.java
@@ -272,11 +272,18 @@ abstract class AbsKeywordDialog extends JEscCancelDialog {
272272 String [] cs = sK.getContain().split("\t");
273273
274274 for (int n=0; n<ts.length; n++) {
275+ if (n >= cs.length)
276+ break;
277+
275278 KDItem data = new KDItem();
276279 data.target = TargetId.getTargetId(ts[n]);
277- data.regex = rs[n];
278- if (data.target == TargetId.LENGTH)
279- data.regex += "分以上である";
280+
281+ if (n < rs.length){
282+ data.regex = rs[n];
283+ if (data.target == TargetId.LENGTH)
284+ data.regex += "分以上である";
285+ }
286+
280287 data.contain = contain_items.get(Integer.valueOf(cs[n]));
281288 data.fireChanged();
282289
--- a/TinyBannavi/src/tainavi/AbsReserveDialog.java
+++ b/TinyBannavi/src/tainavi/AbsReserveDialog.java
@@ -562,7 +562,6 @@ HDDRecorderListener,RecordExecutable,RecSettingSelectable,LikeReserveSelectable,
562562
563563 private TimeVal setTitleItems(HDDRecorder myrec, ProgDetailList tvd, LikeReserveList lrl, boolean atrsvlst) {
564564
565- jPane_title.setContentIdValue(tvd.progid, ! atrsvlst);
566565 jPane_title.setTitleItems(tvd, lrl, env.getUseAutocomplete());
567566 jPane_title.setChItem(myrec, tvd);
568567
--- a/TinyBannavi/src/tainavi/AbsSettingView.java
+++ b/TinyBannavi/src/tainavi/AbsSettingView.java
@@ -1397,268 +1397,252 @@ public abstract class AbsSettingView extends JScrollPane {
13971397
13981398 TatCount tc = new TatCount();
13991399
1400- StWin.clear();
1400+ int idx;
14011401
1402- new SwingBackgroundWorker(false) {
1402+ try{
1403+ // 全体
1404+ // 表示対象タブ
1405+ tabitems.clear();
1406+ for (int row=0; row<jTable_tabs.getRowCount(); row++) {
1407+ ListColumnInfo cb = new ListColumnInfo();
1408+ if (tab_selected[row])
1409+ cb.setVisible(true);
1410+ else
1411+ cb.setVisible((Boolean)jTable_tabs.getValueAt(row, 0));
1412+ cb.setName((String)jTable_tabs.getValueAt(row, 1));
1413+ cb.setId((Integer)jTable_tabs.getValueAt(row, 2));
1414+ tabitems.add(cb);
1415+ }
14031416
1404- @Override
1405- protected Object doWorks() throws Exception {
1406-
1407- StWin.appendMessage(MSGID+"設定を保存します");
1408-
1409- int idx;
1410-
1411- // 全体
1412- // 表示対象タブ
1413- tabitems.clear();
1414- for (int row=0; row<jTable_tabs.getRowCount(); row++) {
1415- ListColumnInfo cb = new ListColumnInfo();
1416- if (tab_selected[row])
1417- cb.setVisible(true);
1418- else
1419- cb.setVisible((Boolean)jTable_tabs.getValueAt(row, 0));
1420- cb.setName((String)jTable_tabs.getValueAt(row, 1));
1421- cb.setId((Integer)jTable_tabs.getValueAt(row, 2));
1422- tabitems.add(cb);
1423- }
1417+ // ツールバーの表示順
1418+ tbicons.clear();
1419+ for (int row=0; row<jTable_toolbar.getRowCount(); row++) {
1420+ ListColumnInfo cb = new ListColumnInfo();
1421+ cb.setVisible((Boolean)jTable_toolbar.getValueAt(row, 0));
1422+ cb.setName((String)jTable_toolbar.getValueAt(row, 1));
1423+ cb.setId((Integer)jTable_toolbar.getValueAt(row, 2));
1424+ tbicons.add(cb);
1425+ }
1426+ bounds.setSearchBoxAreaWidth(jSP_keywordWidth.getValue());
1427+ bounds.setPagerComboWidth(jSP_pagerComboWidth.getValue());
1428+ bounds.setRecorderComboWidth(jSP_recorderComboWidth.getValue());
1429+ bounds.setDetailRows(jSP_detailRows.getValue());
1430+ bounds.setStatusRows(jSP_statusRows.getValue());
14241431
1425- // ツールバーの表示順
1426- tbicons.clear();
1427- for (int row=0; row<jTable_toolbar.getRowCount(); row++) {
1428- ListColumnInfo cb = new ListColumnInfo();
1429- cb.setVisible((Boolean)jTable_toolbar.getValueAt(row, 0));
1430- cb.setName((String)jTable_toolbar.getValueAt(row, 1));
1431- cb.setId((Integer)jTable_toolbar.getValueAt(row, 2));
1432- tbicons.add(cb);
1433- }
1434- bounds.setSearchBoxAreaWidth(jSP_keywordWidth.getValue());
1435- bounds.setPagerComboWidth(jSP_pagerComboWidth.getValue());
1436- bounds.setRecorderComboWidth(jSP_recorderComboWidth.getValue());
1437- bounds.setDetailRows(jSP_detailRows.getValue());
1438- bounds.setStatusRows(jSP_statusRows.getValue());
1439-
1440- // リスト形式
1441- env.setDisableFazzySearch(jCBP_disableFazzySearch.isSelected());
1442- env.setDisableFazzySearchReverse(jCBP_disableFazzySearchReverse.isSelected());
1443- env.setDefaultFazzyThreshold(jSP_defaultFazzyThreshold.getValue());
1444- env.setSyoboFilterByCenters(jCBP_syoboFilterByCenters.isSelected());
1445- env.setDisplayPassedEntry(jCBP_displayPassedEntry.isSelected());
1446- env.setShowRsvPickup(jCBP_showRsvPickup.isSelected());
1447- env.setShowRsvDup(jCBP_showRsvDup.isSelected());
1448- env.setShowRsvUra(jCBP_showRsvUra.isSelected());
1449- env.setRsvdLineEnhance(jCBP_rsvdLineEnhance.isSelected());
1450- env.setRsvdLineColor(jCCL_rsvdLineColor.getChoosed());
1451- env.setPickedLineColor(jCCL_pickedLineColor.getChoosed());
1452- env.setCurrentLineEnhance(jCBP_currentLineEnhance.isSelected());
1453- env.setCurrentLineColor(jCCL_currentLineColor.getChoosed());
1454- env.setCurrentAfter(jSP_currentAfter.getValue()*60);
1455- env.setCurrentBefore(jSP_currentBefore.getValue()*60);
1456- env.setMatchedKeywordColor(jCCL_matchedKeywordColor.getChoosed());
1457- env.setShowWarnDialog(jCBP_showWarnDialog.isSelected());
1458- env.setSplitMarkAndTitle(jCBP_splitMarkAndTitle.isSelected());
1459- env.setShowDetailOnList(jCBP_showDetailOnList.isSelected());
1460- env.setRsvTargets(jSP_rsvTargets.getValue());
1461- env.setRowHeaderVisible(jCBP_rowHeaderVisible.isSelected());
1462- env.setDblClkCmd((DblClkCmd) jCBX_dblClkCmd.getSelectedItem());
1463- env.setSearchResultMax(jSP_searchResultMax.getValue());
1464- env.setSearchResultBufferMax(jSP_searchResultBufferMax.getValue());
1465-
1466- lvitems.clear();
1467- for (int row=0; row<jTable_listed.getRowCount(); row++) {
1468- ListColumnInfo cb = new ListColumnInfo();
1469- cb.setVisible((Boolean)jTable_listed.getValueAt(row, 0));
1470- cb.setName((String)jTable_listed.getValueAt(row, 1));
1471- cb.setId((Integer)jTable_listed.getValueAt(row, 2));
1472- lvitems.add(cb);
1473- }
1432+ // リスト形式
1433+ env.setDisableFazzySearch(jCBP_disableFazzySearch.isSelected());
1434+ env.setDisableFazzySearchReverse(jCBP_disableFazzySearchReverse.isSelected());
1435+ env.setDefaultFazzyThreshold(jSP_defaultFazzyThreshold.getValue());
1436+ env.setSyoboFilterByCenters(jCBP_syoboFilterByCenters.isSelected());
1437+ env.setDisplayPassedEntry(jCBP_displayPassedEntry.isSelected());
1438+ env.setShowRsvPickup(jCBP_showRsvPickup.isSelected());
1439+ env.setShowRsvDup(jCBP_showRsvDup.isSelected());
1440+ env.setShowRsvUra(jCBP_showRsvUra.isSelected());
1441+ env.setRsvdLineEnhance(jCBP_rsvdLineEnhance.isSelected());
1442+ env.setRsvdLineColor(jCCL_rsvdLineColor.getChoosed());
1443+ env.setPickedLineColor(jCCL_pickedLineColor.getChoosed());
1444+ env.setCurrentLineEnhance(jCBP_currentLineEnhance.isSelected());
1445+ env.setCurrentLineColor(jCCL_currentLineColor.getChoosed());
1446+ env.setCurrentAfter(jSP_currentAfter.getValue()*60);
1447+ env.setCurrentBefore(jSP_currentBefore.getValue()*60);
1448+ env.setMatchedKeywordColor(jCCL_matchedKeywordColor.getChoosed());
1449+ env.setShowWarnDialog(jCBP_showWarnDialog.isSelected());
1450+ env.setSplitMarkAndTitle(jCBP_splitMarkAndTitle.isSelected());
1451+ env.setShowDetailOnList(jCBP_showDetailOnList.isSelected());
1452+ env.setRsvTargets(jSP_rsvTargets.getValue());
1453+ env.setRowHeaderVisible(jCBP_rowHeaderVisible.isSelected());
1454+ env.setDblClkCmd((DblClkCmd) jCBX_dblClkCmd.getSelectedItem());
1455+ env.setSearchResultMax(jSP_searchResultMax.getValue());
1456+ env.setSearchResultBufferMax(jSP_searchResultBufferMax.getValue());
1457+
1458+ lvitems.clear();
1459+ for (int row=0; row<jTable_listed.getRowCount(); row++) {
1460+ ListColumnInfo cb = new ListColumnInfo();
1461+ cb.setVisible((Boolean)jTable_listed.getValueAt(row, 0));
1462+ cb.setName((String)jTable_listed.getValueAt(row, 1));
1463+ cb.setId((Integer)jTable_listed.getValueAt(row, 2));
1464+ lvitems.add(cb);
1465+ }
14741466
1475- lnitems.clear();
1476- for (int row=0; row<jTable_listed_node.getRowCount(); row++) {
1477- ListColumnInfo cb = new ListColumnInfo();
1478- cb.setVisible((Boolean)jTable_listed_node.getValueAt(row, 0));
1479- cb.setName((String)jTable_listed_node.getValueAt(row, 1));
1480- cb.setId((Integer)jTable_listed_node.getValueAt(row, 2));
1481- lnitems.add(cb);
1482- }
1467+ lnitems.clear();
1468+ for (int row=0; row<jTable_listed_node.getRowCount(); row++) {
1469+ ListColumnInfo cb = new ListColumnInfo();
1470+ cb.setVisible((Boolean)jTable_listed_node.getValueAt(row, 0));
1471+ cb.setName((String)jTable_listed_node.getValueAt(row, 1));
1472+ cb.setId((Integer)jTable_listed_node.getValueAt(row, 2));
1473+ lnitems.add(cb);
1474+ }
14831475
1484- // 新聞形式関連
1485- {
1486- String selected = jRBP_getPaperRedrawType.getSelectedItem().getText();
1487- if ( PARER_REDRAW_PAGER.equals(selected) ) {
1488- env.setDrawcacheEnable(false);
1489- env.setCenterPerPage(jSP_centerPerPage.getValue());
1490- }
1491- else if ( PARER_REDRAW_CACHE.equals(selected) ) {
1492- env.setDrawcacheEnable(true);
1493- env.setCenterPerPage(0);
1494- }
1495- else if ( PARER_REDRAW_NORMAL.equals(selected) ) {
1496- env.setDrawcacheEnable(false);
1497- env.setCenterPerPage(0);
1498- }
1499- }
1500- env.setAllPageSnapshot(jCBP_allPageSnapshot.isSelected());
1501- env.setTooltipEnable(jCBP_tooltipEnable.isSelected());
1502- env.setTooltipInitialDelay(jSP_tooltipInitialDelay.getValue());
1503- env.setTooltipDismissDelay(jSP_tooltipDismissDelay.getValue());
1504- env.setTimerbarScrollEnable(jCBP_timerbarScrollEnable.isSelected());
1505- env.setPassedLogLimit(jSP_passedLogLimit.getValue());
1506- env.setDatePerPassedPage(jSP_datePerPage.getValue());
1507- env.setEffectComboToPaper(jCBP_effectComboToPaper.isSelected());
1508- env.setSnapshotFmt((SnapshotFmt) jCBX_snapshotFmt.getSelectedItem());
1509- env.setPrintSnapshot(jCBP_printSnapshot.isSelected());
1510- env.setMouseButtonForNodeAutoPaging(jCBP_mouseButtonForNodeAutoPaging.getSelectedIndex());
1511- env.setMouseButtonForNodeSwitch(jCBP_mouseButtonForNodeSwitch.getSelectedIndex());
1512- env.setMouseButtonForPageSwitch(jCBP_mouseButtonForPageSwitch.getSelectedIndex());
1513-
1514- // リスト・新聞形式共通
1515- env.setDisplayOnlyExecOnEntry(jCBP_displayOnlyExecOnEntry.isSelected());
1516- env.setDisplayPassedReserve(jCBP_displayPassedReserve.isSelected());
1517- env.setShowOnlyNonrepeated(jCBP_showOnlyNonrepeated.isSelected());
1518- env.setAdjLateNight(jCBP_adjLateNight.isSelected());
1519- env.setRootNodeVisible(jCBP_rootNodeVisible.isSelected());
1520- env.setSyncTreeWidth(jCBP_syncTreeWidth.isSelected());
1521- env.setShortExtMark(jCBP_shortExtMark.isSelected());
1522- for (int row=0; row<jTable_showmarks.getRowCount(); row++) {
1523- env.getOptMarks().put((TVProgram.ProgOption) jTable_showmarks.getValueAt(row, 2), (Boolean) jTable_showmarks.getValueAt(row, 0));
1476+ // 新聞形式関連
1477+ {
1478+ String selected = jRBP_getPaperRedrawType.getSelectedItem().getText();
1479+ if ( PARER_REDRAW_PAGER.equals(selected) ) {
1480+ env.setDrawcacheEnable(false);
1481+ env.setCenterPerPage(jSP_centerPerPage.getValue());
15241482 }
1525- for (int row=0; row<jTable_clipboard.getRowCount(); row++) {
1526- cbitems.get(row).setB((Boolean)jTable_clipboard.getValueAt(row, 0));
1527- cbitems.get(row).setItem((String)jTable_clipboard.getValueAt(row, 1));
1528- cbitems.get(row).setId((Integer)jTable_clipboard.getValueAt(row, 2));
1483+ else if ( PARER_REDRAW_CACHE.equals(selected) ) {
1484+ env.setDrawcacheEnable(true);
1485+ env.setCenterPerPage(0);
15291486 }
1530- env.getTvCommand().removeAll(env.getTvCommand());
1531- for (int row = 0; row < jTable_mitable.getRowCount(); row++) {
1532- TextValueSet tv = new TextValueSet();
1533- tv.setText((String) jTable_mitable.getValueAt(row, 0));
1534- tv.setValue((String) jTable_mitable.getValueAt(row, 1));
1535- env.getTvCommand().add(tv);
1487+ else if ( PARER_REDRAW_NORMAL.equals(selected) ) {
1488+ env.setDrawcacheEnable(false);
1489+ env.setCenterPerPage(0);
15361490 }
1491+ }
1492+ env.setAllPageSnapshot(jCBP_allPageSnapshot.isSelected());
1493+ env.setTooltipEnable(jCBP_tooltipEnable.isSelected());
1494+ env.setTooltipInitialDelay(jSP_tooltipInitialDelay.getValue());
1495+ env.setTooltipDismissDelay(jSP_tooltipDismissDelay.getValue());
1496+ env.setTimerbarScrollEnable(jCBP_timerbarScrollEnable.isSelected());
1497+ env.setPassedLogLimit(jSP_passedLogLimit.getValue());
1498+ env.setDatePerPassedPage(jSP_datePerPage.getValue());
1499+ env.setEffectComboToPaper(jCBP_effectComboToPaper.isSelected());
1500+ env.setSnapshotFmt((SnapshotFmt) jCBX_snapshotFmt.getSelectedItem());
1501+ env.setPrintSnapshot(jCBP_printSnapshot.isSelected());
1502+ env.setMouseButtonForNodeAutoPaging(jCBP_mouseButtonForNodeAutoPaging.getSelectedIndex());
1503+ env.setMouseButtonForNodeSwitch(jCBP_mouseButtonForNodeSwitch.getSelectedIndex());
1504+ env.setMouseButtonForPageSwitch(jCBP_mouseButtonForPageSwitch.getSelectedIndex());
15371505
1538- // 本体予約一覧対応
1539- for (int row=0; row<jTable_reserv.getRowCount(); row++) {
1540- rlitems.get(row).setVisible((Boolean)jTable_reserv.getValueAt(row, 0));
1541- rlitems.get(row).setName((String)jTable_reserv.getValueAt(row, 1));
1542- rlitems.get(row).setId((Integer)jTable_reserv.getValueAt(row, 2));
1543- }
1506+ // リスト・新聞形式共通
1507+ env.setDisplayOnlyExecOnEntry(jCBP_displayOnlyExecOnEntry.isSelected());
1508+ env.setDisplayPassedReserve(jCBP_displayPassedReserve.isSelected());
1509+ env.setShowOnlyNonrepeated(jCBP_showOnlyNonrepeated.isSelected());
1510+ env.setAdjLateNight(jCBP_adjLateNight.isSelected());
1511+ env.setRootNodeVisible(jCBP_rootNodeVisible.isSelected());
1512+ env.setSyncTreeWidth(jCBP_syncTreeWidth.isSelected());
1513+ env.setShortExtMark(jCBP_shortExtMark.isSelected());
1514+ for (int row=0; row<jTable_showmarks.getRowCount(); row++) {
1515+ env.getOptMarks().put((TVProgram.ProgOption) jTable_showmarks.getValueAt(row, 2), (Boolean) jTable_showmarks.getValueAt(row, 0));
1516+ }
1517+ for (int row=0; row<jTable_clipboard.getRowCount(); row++) {
1518+ cbitems.get(row).setB((Boolean)jTable_clipboard.getValueAt(row, 0));
1519+ cbitems.get(row).setItem((String)jTable_clipboard.getValueAt(row, 1));
1520+ cbitems.get(row).setId((Integer)jTable_clipboard.getValueAt(row, 2));
1521+ }
1522+ env.getTvCommand().removeAll(env.getTvCommand());
1523+ for (int row = 0; row < jTable_mitable.getRowCount(); row++) {
1524+ TextValueSet tv = new TextValueSet();
1525+ tv.setText((String) jTable_mitable.getValueAt(row, 0));
1526+ tv.setValue((String) jTable_mitable.getValueAt(row, 1));
1527+ env.getTvCommand().add(tv);
1528+ }
15441529
1545- // タイトル一覧対応
1546- for (int row=0; row<jTable_title.getRowCount(); row++) {
1547- tlitems.get(row).setVisible((Boolean)jTable_title.getValueAt(row, 0));
1548- tlitems.get(row).setName((String)jTable_title.getValueAt(row, 1));
1549- tlitems.get(row).setId((Integer)jTable_title.getValueAt(row, 2));
1550- }
1530+ // 本体予約一覧対応
1531+ for (int row=0; row<jTable_reserv.getRowCount(); row++) {
1532+ rlitems.get(row).setVisible((Boolean)jTable_reserv.getValueAt(row, 0));
1533+ rlitems.get(row).setName((String)jTable_reserv.getValueAt(row, 1));
1534+ rlitems.get(row).setId((Integer)jTable_reserv.getValueAt(row, 2));
1535+ }
15511536
1552- // Web番組表対応
1553- env.setContinueTomorrow(jCBP_continueTomorrow.isSelected());
1554- env.setCacheTimeLimit(jSP_cacheTimeLimit.getValue());
1555- if ( env.getCacheTimeLimit() == 0 ) {
1556- env.setShutdownCmd((String) jCBX_shutdownCmd.getSelectedItem());
1557- }
1558- else {
1559- env.setShutdownCmd("");
1560- }
1561- env.setExpandTo8(jCBP_expandTo8.isSelected());
1562- //env.setUseDetailCache(jCBP_useDetailCache.isSelected());
1563- env.setUseDetailCache(false);
1564- env.setAutoEventIdComplete(jCBP_autoEventIdComplete.isSelected());
1565- env.setSplitEpno(jCBP_splitEpno.isSelected());
1566- env.setTraceOnlyTitle(jCBP_traceOnlyTitle.isSelected());
1567- env.setFixTitle(jCBP_fixTitle.isSelected());
1568- env.setNgword(jTextField_ngword.getText());
1569- env.setUserAgent(jTextField_userAgent.getText());
1570- env.setUseProxy(jCBP_useProxy.isSelected());
1571- env.setProxyAddr((String)jTextField_proxyAddr.getText());
1572- env.setProxyPort((String)jTextField_proxyPort.getText());
1573- env.setUseSyobocal(jCBP_useSyobocal.isSelected());
1574- env.setHistoryOnlyUpdateOnce(jCBP_historyOnlyUpdateOnce.isSelected());
1575- env.setUsePassedProgram(jCBP_usePassedProgram.isSelected());
1576- env.setPrepPassedProgramCount(jSP_prepPassedProgramCount.getValue());
1577- env.setDownloadProgramOnFixedTime(jCBP_downloadProgramOnFixedTime.isSelected());
1578- env.setDownloadProgramInBackground(jCBP_downloadProgramInBackground.isSelected());
1579- env.setDownloadProgramTimeList(jTextField_downloadProgramTimeList.getText());
1580- env.setUseProgCache(jCBP_useProgCache.isSelected());
1581-
1582- // レコーダ対応
1583- env.setForceLoadReserveDetails(jRBP_getRdReserveDetails.getSelectedIndex());
1584- env.setForceLoadAutoReserves(jRBP_getRdAutoReserves.getSelectedIndex());
1585- env.setForceLoadRecorded(jRBP_getRdRecorded.getSelectedIndex());
1586- env.setRecordedSaveScope(jCBX_recordedSaveScope.getSelectedIndex());
1587-
1588- // 予約
1589- env.setSpoexLength(String.format("%d",jSP_spoex_extend.getValue()));
1590- idx = jRBP_overlapUp.getSelectedIndex();
1591- switch (idx) {
1592- case 1:
1593- env.setOverlapUp(true);
1594- break;
1595- default:
1596- env.setOverlapUp(false);
1597- break;
1598- }
1599- idx = jRBP_overlapDown.getSelectedIndex();
1600- switch (idx) {
1601- case 1:
1602- env.setOverlapDown(true);
1603- env.setOverlapDown2(false);
1604- break;
1605- case 2:
1606- env.setOverlapDown(false);
1607- env.setOverlapDown2(true);
1608- break;
1609- default:
1610- env.setOverlapDown(false);
1611- env.setOverlapDown2(false);
1612- break;
1613- }
1614- env.setAutoFolderSelect(jCheckBox_autoFolderSelect.isSelected());
1615- env.setEnableCHAVsetting(jCheckBox_enableCHAVsetting.isSelected());
1616- env.setRangeLikeRsv(jSP_rangeLikeRsv.getValue());
1617- env.setGivePriorityToReserved(jCBP_givePriorityToReserved.isSelected());
1618- env.setGivePriorityToReservedTitle(jCBP_givePriorityToReservedTitle.isSelected());
1619- env.setAdjoiningNotRepetition(jCBP_adjoiningNotRepetition.isSelected());
1620- env.setShowAllIterationItem(jCBP_rsv_showallite.isSelected());
1621- env.setIterationItemForeground(jCCL_rsv_itecolor.getChoosed());
1622- env.setTunerShortColor(jCCL_rsv_tunshortcolor.getChoosed());
1623- env.setRecordedColor(jCCL_rsv_recedcolor.getChoosed());
1624- env.setUseAutocomplete(jCBP_useAutocomplete.isSelected());
1625- env.setNotifyBeforeProgStart(jCBP_notifyBeforeProgStart.isSelected());
1626- env.setNotifyBeforePickProgStart(jCBP_notifyBeforePickProgStart.isSelected());
1627- env.setMinsBeforeProgStart(jSP_minsBeforeProgStart.getValue());
1628-
1629- // タイトル一覧関係
1630- env.setShowTitleDetail(jCBP_showTitleDetail.isSelected());
1631-
1632- // その他の設定
1633- env.setUseHolidayCSV(jCBP_useHolidayCSV.isSelected());
1634- env.setHolidayFetchInterval(jSP_holidayCSVFetchInterval.getValue());
1635- env.setUpdateMethod((UpdateOn) jCBX_updateMethod.getSelectedItem());
1636- env.setDisableBeep(jCBP_disableBeep.isSelected());
1637- env.setShowSysTray(jCBP_showSysTray.isSelected());
1638- env.setHideToTray(jCBP_hideToTray.isSelected());
1639- env.setOnlyOneInstance(jCBP_onlyOneInstance.isSelected());
1640- env.setLookAndFeel((String) jComboBox_lookAndFeel.getSelectedItem());
1641- env.setFontName((String) jComboBox_font.getSelectedItem());
1642- env.setFontSize(Integer.valueOf((String) jComboBox_fontSize.getSelectedItem()));
1643- env.setUseGTKRC(jCBP_useGTKRC.isSelected());
1644- env.setUseRundll32(jCBP_useRundll32.isSelected());
1645- env.setDebug(jCBP_debug.isSelected());
1646-
1647- // 設定保存
1648- setEnv(reload_prog_needed);
1649- setUpdateButtonEnhanced(false);
1650-
1651- return null;
1537+ // タイトル一覧対応
1538+ for (int row=0; row<jTable_title.getRowCount(); row++) {
1539+ tlitems.get(row).setVisible((Boolean)jTable_title.getValueAt(row, 0));
1540+ tlitems.get(row).setName((String)jTable_title.getValueAt(row, 1));
1541+ tlitems.get(row).setId((Integer)jTable_title.getValueAt(row, 2));
16521542 }
16531543
1654- @Override
1655- protected void doFinally() {
1656- StWinSetVisible(false);
1544+ // Web番組表対応
1545+ env.setContinueTomorrow(jCBP_continueTomorrow.isSelected());
1546+ env.setCacheTimeLimit(jSP_cacheTimeLimit.getValue());
1547+ if ( env.getCacheTimeLimit() == 0 ) {
1548+ env.setShutdownCmd((String) jCBX_shutdownCmd.getSelectedItem());
16571549 }
1658- }.execute();
1550+ else {
1551+ env.setShutdownCmd("");
1552+ }
1553+ env.setExpandTo8(jCBP_expandTo8.isSelected());
1554+ //env.setUseDetailCache(jCBP_useDetailCache.isSelected());
1555+ env.setUseDetailCache(false);
1556+ env.setAutoEventIdComplete(jCBP_autoEventIdComplete.isSelected());
1557+ env.setSplitEpno(jCBP_splitEpno.isSelected());
1558+ env.setTraceOnlyTitle(jCBP_traceOnlyTitle.isSelected());
1559+ env.setFixTitle(jCBP_fixTitle.isSelected());
1560+ env.setNgword(jTextField_ngword.getText());
1561+ env.setUserAgent(jTextField_userAgent.getText());
1562+ env.setUseProxy(jCBP_useProxy.isSelected());
1563+ env.setProxyAddr((String)jTextField_proxyAddr.getText());
1564+ env.setProxyPort((String)jTextField_proxyPort.getText());
1565+ env.setUseSyobocal(jCBP_useSyobocal.isSelected());
1566+ env.setHistoryOnlyUpdateOnce(jCBP_historyOnlyUpdateOnce.isSelected());
1567+ env.setUsePassedProgram(jCBP_usePassedProgram.isSelected());
1568+ env.setPrepPassedProgramCount(jSP_prepPassedProgramCount.getValue());
1569+ env.setDownloadProgramOnFixedTime(jCBP_downloadProgramOnFixedTime.isSelected());
1570+ env.setDownloadProgramInBackground(jCBP_downloadProgramInBackground.isSelected());
1571+ env.setDownloadProgramTimeList(jTextField_downloadProgramTimeList.getText());
1572+ env.setUseProgCache(jCBP_useProgCache.isSelected());
1573+
1574+ // レコーダ対応
1575+ env.setForceLoadReserveDetails(jRBP_getRdReserveDetails.getSelectedIndex());
1576+ env.setForceLoadAutoReserves(jRBP_getRdAutoReserves.getSelectedIndex());
1577+ env.setForceLoadRecorded(jRBP_getRdRecorded.getSelectedIndex());
1578+ env.setRecordedSaveScope(jCBX_recordedSaveScope.getSelectedIndex());
16591579
1660- StWinSetLocationCenter(parent);
1661- StWinSetVisible(true);
1580+ // 予約
1581+ env.setSpoexLength(String.format("%d",jSP_spoex_extend.getValue()));
1582+ idx = jRBP_overlapUp.getSelectedIndex();
1583+ switch (idx) {
1584+ case 1:
1585+ env.setOverlapUp(true);
1586+ break;
1587+ default:
1588+ env.setOverlapUp(false);
1589+ break;
1590+ }
1591+ idx = jRBP_overlapDown.getSelectedIndex();
1592+ switch (idx) {
1593+ case 1:
1594+ env.setOverlapDown(true);
1595+ env.setOverlapDown2(false);
1596+ break;
1597+ case 2:
1598+ env.setOverlapDown(false);
1599+ env.setOverlapDown2(true);
1600+ break;
1601+ default:
1602+ env.setOverlapDown(false);
1603+ env.setOverlapDown2(false);
1604+ break;
1605+ }
1606+ env.setAutoFolderSelect(jCheckBox_autoFolderSelect.isSelected());
1607+ env.setEnableCHAVsetting(jCheckBox_enableCHAVsetting.isSelected());
1608+ env.setRangeLikeRsv(jSP_rangeLikeRsv.getValue());
1609+ env.setGivePriorityToReserved(jCBP_givePriorityToReserved.isSelected());
1610+ env.setGivePriorityToReservedTitle(jCBP_givePriorityToReservedTitle.isSelected());
1611+ env.setAdjoiningNotRepetition(jCBP_adjoiningNotRepetition.isSelected());
1612+ env.setShowAllIterationItem(jCBP_rsv_showallite.isSelected());
1613+ env.setIterationItemForeground(jCCL_rsv_itecolor.getChoosed());
1614+ env.setTunerShortColor(jCCL_rsv_tunshortcolor.getChoosed());
1615+ env.setRecordedColor(jCCL_rsv_recedcolor.getChoosed());
1616+ env.setUseAutocomplete(jCBP_useAutocomplete.isSelected());
1617+ env.setNotifyBeforeProgStart(jCBP_notifyBeforeProgStart.isSelected());
1618+ env.setNotifyBeforePickProgStart(jCBP_notifyBeforePickProgStart.isSelected());
1619+ env.setMinsBeforeProgStart(jSP_minsBeforeProgStart.getValue());
1620+
1621+ // タイトル一覧関係
1622+ env.setShowTitleDetail(jCBP_showTitleDetail.isSelected());
1623+
1624+ // その他の設定
1625+ env.setUseHolidayCSV(jCBP_useHolidayCSV.isSelected());
1626+ env.setHolidayFetchInterval(jSP_holidayCSVFetchInterval.getValue());
1627+ env.setUpdateMethod((UpdateOn) jCBX_updateMethod.getSelectedItem());
1628+ env.setDisableBeep(jCBP_disableBeep.isSelected());
1629+ env.setShowSysTray(jCBP_showSysTray.isSelected());
1630+ env.setHideToTray(jCBP_hideToTray.isSelected());
1631+ env.setOnlyOneInstance(jCBP_onlyOneInstance.isSelected());
1632+ env.setLookAndFeel((String) jComboBox_lookAndFeel.getSelectedItem());
1633+ env.setFontName((String) jComboBox_font.getSelectedItem());
1634+ env.setFontSize(Integer.valueOf((String) jComboBox_fontSize.getSelectedItem()));
1635+ env.setUseGTKRC(jCBP_useGTKRC.isSelected());
1636+ env.setUseRundll32(jCBP_useRundll32.isSelected());
1637+ env.setDebug(jCBP_debug.isSelected());
1638+
1639+ // 設定保存
1640+ setEnv(reload_prog_needed);
1641+ setUpdateButtonEnhanced(false);
1642+ }
1643+ catch(Exception e){
1644+ e.printStackTrace();
1645+ }
16621646
16631647 MWin.appendMessage(String.format(MSGID+"更新が完了しました。所要時間: %.2f秒",tc.end()));
16641648 }
--- a/TinyBannavi/src/tainavi/AbsToolBar.java
+++ b/TinyBannavi/src/tainavi/AbsToolBar.java
@@ -119,7 +119,7 @@ public abstract class AbsToolBar extends JToolBar implements HDDRecorderSelectab
119119 protected abstract void setFullScreen(boolean b);
120120 protected abstract boolean isTabSelected(MWinTab tab);
121121 // 部品
122- protected abstract boolean addKeywordSearch(SearchKey search);
122+ protected abstract boolean addKeywordSearch(String label, SearchKey search);
123123 protected abstract boolean doLoadTVProgram(String selected);
124124
125125 protected abstract boolean doLoadRdRecorder(String selected);
@@ -1423,7 +1423,7 @@ public abstract class AbsToolBar extends JToolBar implements HDDRecorderSelectab
14231423
14241424 // 検索キーワードが変更されていたら履歴は無視する
14251425 if (kStr.equals(swi.getLabel())){
1426- kStr = swi.getKeyword();
1426+// kStr = swi.getKeyword();
14271427 search = swi.getSearchKey();
14281428 if (search != null)
14291429 new SearchProgram().compile(search);
@@ -1441,7 +1441,7 @@ public abstract class AbsToolBar extends JToolBar implements HDDRecorderSelectab
14411441
14421442 jTextField_keyword.setText("");
14431443
1444- addKeywordSearch(search);
1444+ addKeywordSearch(kStr, search);
14451445 }
14461446 };
14471447
--- a/TinyBannavi/src/tainavi/Env.java
+++ b/TinyBannavi/src/tainavi/Env.java
@@ -1276,6 +1276,14 @@ public class Env {
12761276 f.delete();
12771277 }
12781278
1279+ // CHAN-TORUを削除する
1280+ if (b){
1281+ for (TextValueSet tv : tvCommand) {
1282+ if (tv.getValue().contains("tv.so-net.ne.jp/chan-toru"))
1283+ tvCommand.remove(tv);
1284+ }
1285+ }
1286+
12791287 return b;
12801288
12811289 }
--- a/TinyBannavi/src/tainavi/TitleEditorPanel.java
+++ b/TinyBannavi/src/tainavi/TitleEditorPanel.java
@@ -32,19 +32,16 @@ public class TitleEditorPanel extends JPanel {
3232 * 定数
3333 ******************************************************************************/
3434
35- //
36- private static final String ITEM_EVIDNEEDED = "番組ID取得";
37-
3835 // レイアウト関連
3936 private static final int PARTS_HEIGHT = 25;
4037 private static final int SEP_WIDTH = 10;
4138 private static final int SEP_WIDTH_NARROW = 5;
42- private static final int SEP_HEIGHT = 10;
39+// private static final int SEP_HEIGHT = 10;
4340 private static final int SEP_HEIGHT_NALLOW = 5;
4441
4542 private static final int COMBO_WIDTH = 115;
4643 private static final int COMBO_WIDTH_WIDE = 155;
47- private static final int COMBO_HEIGHT = 43;
44+// private static final int COMBO_HEIGHT = 43;
4845
4946 private static final int TITLE_WIDTH = COMBO_WIDTH_WIDE+COMBO_WIDTH*2+SEP_WIDTH*2;
5047 private static final int CHNAME_WIDTH = COMBO_WIDTH*2+SEP_WIDTH;
@@ -64,8 +61,6 @@ public class TitleEditorPanel extends JPanel {
6461 ******************************************************************************/
6562
6663 private JLabel jLabel_title = null;
67- private JButton jButton_getEventId = null;
68- private JTXTLabel jLabel_eventId = null;
6964 private JButton jButton_addDate = null;
7065 private JComboBoxWithPopup jComboBox_title = null;
7166 private JButton jButton_ch = null;
@@ -153,8 +148,6 @@ public class TitleEditorPanel extends JPanel {
153148 CommonSwingUtils.putComponentOn(this, getJLabel_title("予約名"), 50, PARTS_HEIGHT, x, y);
154149 CommonSwingUtils.putComponentOn(this, getJComboBox_title(), TITLE_WIDTH, PARTS_HEIGHT, x+SEP_WIDTH_NARROW, y+PARTS_HEIGHT);
155150
156- CommonSwingUtils.putComponentOn(this, getJButton_getEventId(ITEM_EVIDNEEDED), 100, PARTS_HEIGHT, x+50, y);
157- CommonSwingUtils.putComponentOn(this, getJLabel_eventId(""), 75, PARTS_HEIGHT-2, x+50+100+SEP_WIDTH_NARROW, y+1);
158151 CommonSwingUtils.putComponentOn(this, getJButton_addDate("日付追加"), 100, PARTS_HEIGHT, x+SEP_WIDTH_NARROW+TITLE_WIDTH-125-SEP_WIDTH, y);
159152
160153 CommonSwingUtils.putComponentOn(this, getJButton_ch("放送局"), 100, PARTS_HEIGHT, x+TITLE_WIDTH+SEP_WIDTH, y);
@@ -239,47 +232,6 @@ public class TitleEditorPanel extends JPanel {
239232 ******************************************************************************/
240233
241234 /***************************************
242- * 番組IDの設定
243- **************************************/
244-
245- /**
246- * @param enabled 番組IDの取得ができないシチュエーション(予約一覧から開くとか)では取得ボタンをfalseに。
247- */
248- public boolean setContentIdValue(String content_id, boolean enabled) {
249-
250- Integer evid = null;
251- if ( content_id != null ) {
252- if ( ContentIdEDCB.decodeContentId(content_id) ) {
253- evid = ContentIdEDCB.getEvId();
254- }
255- else if ( ContentIdREGZA.decodeContentId(content_id) && ContentIdREGZA.getEvId() != 0x0000 && ContentIdREGZA.getEvId() != 0xFFFF ) {
256- evid = ContentIdREGZA.getEvId();
257- }
258- else if ( ContentIdDIMORA.decodeContentId(content_id) && ContentIdDIMORA.getEvId() != 0x0000 && ContentIdDIMORA.getEvId() != 0xFFFF ) {
259- evid = ContentIdDIMORA.getEvId();
260- }
261- }
262-
263- // みつからにゃい
264- if ( evid == null ) {
265- jLabel_eventId.setValue(null);
266- jLabel_eventId.setText(null);
267- jButton_getEventId.setForeground(enabled ? Color.BLUE : Color.GRAY);
268- jButton_getEventId.setEnabled(enabled);
269-
270- return false;
271- }
272-
273- // みつかったじぇい
274- jLabel_eventId.setValue(content_id);
275- jLabel_eventId.setText(String.format("%04X",evid));
276- jButton_getEventId.setForeground(Color.GRAY);
277- jButton_getEventId.setEnabled(false);
278-
279- return true;
280- }
281-
282- /***************************************
283235 * まとめて設定
284236 **************************************/
285237
@@ -287,9 +239,6 @@ public class TitleEditorPanel extends JPanel {
287239 * まとめて設定:番組情報編(番組ID・タイトル・放送局・番組詳細)
288240 */
289241 public void setSelectedValues(ProgDetailList tvd) {
290- // 番組ID
291- setContentIdValue(tvd.progid,true);
292-
293242 // タイトル
294243 {
295244 int index = jComboBox_title.indexOf(tvd.title);
@@ -319,9 +268,6 @@ public class TitleEditorPanel extends JPanel {
319268 * まとめて設定:類似予約編
320269 */
321270 public void setSelectedValues(ReserveList r) {
322- // 番組ID
323- setContentIdValue(r.getContentId(),true);
324-
325271 // タイトル
326272 {
327273 int index = jComboBox_title.indexOf(r.getTitle());
@@ -809,25 +755,6 @@ public class TitleEditorPanel extends JPanel {
809755 * 番組ID取得
810756 **************************************/
811757
812- /**
813- * 番組IDを取得する
814- */
815- private final ActionListener al_getEventId = new ActionListener() {
816- @Override
817- public void actionPerformed(ActionEvent e) {
818-
819- if ( recexec != null ) {
820-
821- String content_id = recexec.doGetEventId();
822-
823- if ( content_id != null ) {
824- setContentIdValue(content_id, false);
825- }
826- }
827- }
828- };
829-
830-
831758 /*******************************************************************************
832759 * 選択された値を呼び出し元に戻す
833760 ******************************************************************************/
@@ -859,14 +786,6 @@ public class TitleEditorPanel extends JPanel {
859786 cal.add(Calendar.MINUTE, getRecMinVal());
860787 r.setEndDateTime(CommonUtils.getDateTime(cal)); // PostRdEntry()中で取得するのでここはダミー
861788
862- //if ( jLabel_eventId.getText() != null && ! (jLabel_eventId.getText().endsWith("0000") ||jLabel_eventId.getText().endsWith("FFFF")) ) {
863- if ( jLabel_eventId.getText() != null ) {
864- r.setContentId(jLabel_eventId.getValue());
865- }
866- else {
867- r.setContentId("");
868- }
869-
870789 r.setAutocomplete(jCheckBox_Autocomplete.isSelected());
871790
872791 return r;
@@ -1003,30 +922,6 @@ public class TitleEditorPanel extends JPanel {
1003922 return jComboBox_title;
1004923 }
1005924
1006- /**
1007- * EpgDataCap_BonプラグインのCHコードとを利用してテレビ王国から番組IDを取得します
1008- * @since 3.14.5β
1009- */
1010- private JButton getJButton_getEventId(String s) {
1011- if (jButton_getEventId == null) {
1012- jButton_getEventId = new JButton(s);
1013-
1014- jButton_getEventId.addActionListener(al_getEventId);
1015- }
1016- return jButton_getEventId;
1017- }
1018-
1019- private JTXTLabel getJLabel_eventId(String s) {
1020- if ( jLabel_eventId == null ) {
1021- jLabel_eventId = new JTXTLabel();
1022- jLabel_eventId.setHorizontalAlignment(JLabel.CENTER);
1023- jLabel_eventId.setForeground(Color.BLUE);
1024-
1025- jLabel_eventId.setBorder(new LineBorder(Color.LIGHT_GRAY));
1026- }
1027- return jLabel_eventId;
1028- }
1029-
1030925 private JButton getJButton_addDate(String s) {
1031926 if (jButton_addDate == null) {
1032927 jButton_addDate = new JButton(s);
--- a/TinyBannavi/src/tainavi/VersionInfo.java
+++ b/TinyBannavi/src/tainavi/VersionInfo.java
@@ -5,7 +5,7 @@ import java.util.regex.Pattern;
55
66
77 public class VersionInfo {
8- private static final String Version = "タイニー番組ナビゲータ for DBR-T2007 3.22.18β+1.12.22";
8+ private static final String Version = "タイニー番組ナビゲータ for DBR-T2007 3.22.18β+1.12.23";
99
1010 private static final String OSname = System.getProperty("os.name");
1111 private static final String OSvers = System.getProperty("os.version");
--- a/TinyBannavi/src/tainavi/Viewer.java
+++ b/TinyBannavi/src/tainavi/Viewer.java
@@ -2164,14 +2164,14 @@ public class Viewer extends JFrame implements ChangeListener,TickTimerListener,H
21642164 }
21652165
21662166 @Override
2167- protected boolean addKeywordSearch(SearchKey search) {
2167+ protected boolean addKeywordSearch(String label, SearchKey search) {
21682168
21692169 timer_now.pause();
21702170
21712171 AbsKeywordDialog kD = new VWKeywordDialog();
21722172 CommonSwingUtils.setLocationCenter(Viewer.this,kD);
21732173
2174- kD.open(search.getLabel(), srKeys, srGrps, search);
2174+ kD.open(label, srKeys, srGrps, search);
21752175 kD.setVisible(true);
21762176
21772177 if (kD.isRegistered()) {
@@ -2745,6 +2745,7 @@ public class Viewer extends JFrame implements ChangeListener,TickTimerListener,H
27452745 public void addBrowseMenuToPopup( JPopupMenu pop, final ProgDetailList tvd ){
27462746 for (final TextValueSet tv : env.getTvCommand()) {
27472747 JMenuItem menuItem = new JMenuItem(tv.getText());
2748+
27482749 String escepedTitle = "";
27492750 String escepedChName = "";
27502751 String escepedDetail = "";
--- a/TinyBannavi/src/tainavi/pluginrec/PlugIn_RecDBR_T2007.java
+++ b/TinyBannavi/src/tainavi/pluginrec/PlugIn_RecDBR_T2007.java
@@ -623,6 +623,13 @@ public class PlugIn_RecDBR_T2007 extends HDDRecorderUtils implements HDDRecorder
623623 ta = TitlesFromFile(titleFile);
624624 }
625625 else{
626+ if (ta.isEmpty()){
627+ reportProgress("0件だったので念のため再度取得します...");
628+ ta = getTitleList(devid, mountedOnly);
629+ if (ta == null)
630+ return false;
631+ }
632+
626633 // タイトルの詳細情報を取得し、内容を調整する
627634 for (TitleInfo entry : ta) {
628635 // 放送局名変換
@@ -1693,6 +1700,7 @@ public class PlugIn_RecDBR_T2007 extends HDDRecorderUtils implements HDDRecorder
16931700 */
16941701 protected ArrayList<TitleInfo> getTitleList(String device_id, boolean mountedOnly) {
16951702 String str = "drive=" + device_id + "&org_pl=0";
1703+
16961704 String response = "";
16971705
16981706 for (int n=0; n<3; n++){