X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Ftwitter%2Fgui%2Faction%2FTweetMainAction.java;h=9417b1d236ed99c2d635631b6af0d8f331316a37;hb=ccff305c9a45342d20779edeb164c32bc634d69d;hp=e675ad99a900ca9f45fe2fedcde1f43e8a7dfccf;hpb=ecc73763b95408761d0c9068c6031faf17d190f8;p=nt-manager%2Fnt-manager.git diff --git a/src/twitter/gui/action/TweetMainAction.java b/src/twitter/gui/action/TweetMainAction.java index e675ad9..9417b1d 100644 --- a/src/twitter/gui/action/TweetMainAction.java +++ b/src/twitter/gui/action/TweetMainAction.java @@ -18,8 +18,10 @@ import java.net.URL; import java.net.URLEncoder; import java.text.DateFormat; import java.util.ArrayList; +import java.util.BitSet; import java.util.Comparator; import java.util.List; +import java.util.Locale; import java.util.Properties; import java.util.Set; import java.util.TreeSet; @@ -44,6 +46,9 @@ import javax.swing.text.Style; import javax.swing.text.StyleConstants; import javax.swing.text.html.HTMLDocument; import javax.swing.text.html.StyleSheet; + +import org.xml.sax.SAXParseException; + import twitter.action.TweetDirectMessageGetter; import twitter.action.TweetFavoriteGetter; import twitter.action.TweetGetter; @@ -67,11 +72,16 @@ import twitter.gui.form.AboutDialog; import twitter.gui.form.AccountDialog; import twitter.gui.form.ConfigurationDialog; import twitter.gui.form.DirectMessageDialog; +import twitter.gui.form.FollowingFollowerDialog; import twitter.gui.form.HashtagSearchDialog; import twitter.gui.form.KeywordSearchDialog; +import twitter.gui.form.OutputCSVLogDialog; import twitter.gui.form.UserListDialog; +import twitter.gui.form.UserSearchDialog; +import twitter.log.TwitterLogManager; import twitter.manage.TweetConfiguration; import twitter.manage.TweetManager; +import twitter.manage.URLBitlyConverter; import twitter.task.ExistTimerIDException; import twitter.task.TimerID; import twitter.task.TweetTaskException; @@ -80,12 +90,13 @@ import twitter.task.TweetUpdateTask; import twitter.util.HTMLEncode; import twitter4j.Status; import twitter4j.TwitterException; +import twitter4j.User; /** * GUIのアクション部分 - * + * * @author nishio - * + * */ public class TweetMainAction { @@ -113,7 +124,7 @@ public class TweetMainAction { // Send Direct Messageタブに表示する文字 public static final String TAB_SEND_DIRECT_MESSAGE_STRING = "Send"; // テーブルのデータ量が以下の値を超えたら古いデータから削除 - private static final int TABLE_ELEMENT_MAX_SIZE = 200; + private static int tableElementMaxSize = 200; // twitterの公式URL private static final String TWITTER_URL = "http://twitter.com/"; // 基本設定用ダイアログ @@ -173,6 +184,13 @@ public class TweetMainAction { // 自分宛のメッセージを通知バーに表示するか private boolean isNotifyMentionMessage = true; private boolean isNotifyDirectMessage = true; + //前回開いていたタブの情報を復活する際に利用する(最初の一回だけ利用) + private boolean isTempOpenedTimelineTab = true; + private boolean isTempOpenedMentionTab = true; + private boolean isTempOpenedDMTab = true; + private boolean isTempOpenedSendDMTab = true; + //ログを保存するかどうか + private boolean saveLog = false; // Tweetの詳細情報を表示する部分 private JLabel userImageLabel = null; @@ -211,6 +229,12 @@ public class TweetMainAction { // リストダイアログ private UserListDialog userListDialog = null; + //ユーザサーチダイアログ + private UserSearchDialog userSearchDialog = null; + //CSVログ出力ダイアログ + private OutputCSVLogDialog outputCSVLogDialog = null; + //following follower表示ダイアログ + private FollowingFollowerDialog followingFollowerDialog = null; // 情報更新間隔[sec] private int getTimelinePeriod = 60; @@ -219,7 +243,7 @@ public class TweetMainAction { private int getSendDirectMessagePeriod = 60 * 30; /** - * + * * @param mainFrame * @param tweetManager * @param statusBarLabel @@ -406,7 +430,7 @@ public class TweetMainAction { /** * 新しいタブを追加 - * + * * @param timerID * TimerIDクラスで生成したタイマーID * @param period @@ -425,7 +449,7 @@ public class TweetMainAction { final TweetTabbedTable table = new TweetTabbedTable( tweetGetter, tabTitle, this.tweetMainTab, this.tableElementHeight, this.tweetManager, this, - newTableColor, TABLE_ELEMENT_MAX_SIZE, timerID); + newTableColor, this.tableElementMaxSize, timerID); this.tweetTaskManager.addTask(timerID, new TweetUpdateTask() { @@ -442,12 +466,16 @@ public class TweetMainAction { table.addTableToTab(); // タブリストに追加 this.tweetTabbedTableList.add(table); + //設定を保存 + this.saveProperties(); // searchTable.updateTweetTable(); // フォーカスを新しいタブに移す this.actionRequestForusToLastTab(); } catch (TweetTaskException ex) { Logger.getLogger(TweetMainAction.class.getName()).log( Level.SEVERE, null, ex); + } catch (IOException e) { + e.printStackTrace(); } } @@ -459,7 +487,7 @@ public class TweetMainAction { /** * mentionタブを追加する - * + * * @param period * 情報更新間隔[sec] */ @@ -486,7 +514,7 @@ public class TweetMainAction { /** * お気に入りタブを追加 - * + * * @param screenName * nullで自分自身を取得,指定するとscreenNameのFav取得 */ @@ -513,7 +541,7 @@ public class TweetMainAction { /** * timelineタブを追加する - * + * * @param period * [sec] */ @@ -524,7 +552,7 @@ public class TweetMainAction { // 既にIDが存在していたらここで例外発生 timerID.addID(id); // 検索結果を表示するタブを生成 - actionAddTab(id, period, new TweetTimelineGetter(tweetManager), + actionAddTab(id, period, new TweetTimelineGetter(tweetManager, this), TweetMainAction.TAB_TIMELINE_STRING); } catch (ExistTimerIDException ex) { JOptionPane.showMessageDialog(null, "そのタブは既に存在しています", "Error", @@ -534,7 +562,7 @@ public class TweetMainAction { /** * ダイレクトメッセージタブを追加する - * + * * @param period * 更新間隔[sec] */ @@ -562,7 +590,7 @@ public class TweetMainAction { /** * SendDMタブを追加する - * + * * @param period */ public void actionAddSendDirectMessageTab(int period) { @@ -583,7 +611,7 @@ public class TweetMainAction { /** * 指定したリストをタブに追加 - * + * * @param username * @param listID * @param listFullname @@ -607,7 +635,7 @@ public class TweetMainAction { /** * ツイート検索結果を表示するタブを新しく追加 - * + * * @param searchWord * @param period * 更新周期[sec] 0以下の場合は更新しない @@ -629,24 +657,22 @@ public class TweetMainAction { /** * 指定したユーザの発言を表示 - * + * * @param username * タブのタイトルにつけるユーザ名 - * @param userID - * ユーザID * @param period * 更新周期[sec] */ - public void actionAddUserTimelineTab(String username, long userID, + public void actionAddUserTimelineTab(String username, int period) { TimerID timerID = TimerID.getInstance(); - String id = TimerID.createUserTimelineID(userID); + String id = TimerID.createUserTimelineID(username); try { // 既にIDが存在していたらここで例外発生 timerID.addID(id); // 検索結果を表示するタブを生成 actionAddTab(id, period, new TweetUserTimelineGetter(tweetManager, - userID), username + "の発言"); + username), username + "の発言"); } catch (ExistTimerIDException ex) { JOptionPane.showMessageDialog(null, "そのタブは既に存在しています", "Error", JOptionPane.ERROR_MESSAGE); @@ -655,7 +681,7 @@ public class TweetMainAction { /** * タイムラインタブが存在しているか - * + * * @return */ public boolean isExistTimelineTab() { @@ -666,7 +692,7 @@ public class TweetMainAction { /** * Mentionタブが存在するか - * + * * @return */ public boolean isExistMentionTab() { @@ -677,7 +703,7 @@ public class TweetMainAction { /** * DMタブが存在するか - * + * * @return */ public boolean isExistDirectMessageTab() { @@ -688,7 +714,7 @@ public class TweetMainAction { /** * 送信済みDMタブが存在するか - * + * * @return */ public boolean isExistSendDirectMessageTab() { @@ -784,7 +810,7 @@ public class TweetMainAction { /** * 詳細情報表示ボタンを押した時の動作 - * + * * @param e */ public void actionDetailInfoButton(ActionEvent e) { @@ -797,7 +823,7 @@ public class TweetMainAction { /** * 詳細情報ボタンが表示されているか - * + * * @return */ public boolean isDetailInfoPanelVisible() { @@ -806,7 +832,7 @@ public class TweetMainAction { /** * 書き込みメッセージボックスの表示ONOFFボタンを押した時の動作 - * + * * @param e */ public void actionShowTweetboxButton(ActionEvent e) { @@ -834,7 +860,7 @@ public class TweetMainAction { /** * 指定したIDのタブを削除 - * + * * @param timerID */ public void actionRemoveTabbedTable(String timerID) { @@ -848,28 +874,12 @@ public class TweetMainAction { break; } } - - if (deleteTabIndex >= 0) { - int selected = this.tweetTabbedTableList.get(deleteTabIndex) - .getTabSetNum(); - // タブを削除 - this.tweetMainTab.remove(selected); - // 削除 - this.tweetTabbedTableList.remove(deleteTabIndex); - // 自動更新しているタブを削除 - this.tweetTaskManager.shutdownTask(timerID); - // ID削除 - TimerID idManager = TimerID.getInstance(); - idManager.removeID(timerID); - - // checkboxの状態更新 - this.updateCheckboxInformation(); - } + actionRemoveTabbedTable(deleteTabIndex); } /** * 指定した場所にあるタブを削除 - * + * * @param removeTabIndex */ public void actionRemoveTabbedTable(int removeTabIndex) { @@ -895,6 +905,16 @@ public class TweetMainAction { String timerID = this.tweetTabbedTableList.get(deleteTabIndex) .getTimerID(); // 削除 + TweetTabbedTable table = this.tweetTabbedTableList.get(deleteTabIndex); + if( table != null ) { + //streaming api使っている場合はlistenerをストップ + TweetGetter getter = table.getTweetGetter(); + if( getter != null ) { + //streaming apiのストップ + getter.stopUpdateListener(); + } + } + // 削除 this.tweetTabbedTableList.remove(deleteTabIndex); // 自動更新しているタブを削除 this.tweetTaskManager.shutdownTask(timerID); @@ -904,12 +924,18 @@ public class TweetMainAction { // checkboxの状態更新 this.updateCheckboxInformation(); + //設定保存 + try { + saveProperties(); + } catch (IOException e) { + e.printStackTrace(); + } } } /** * 終了ボタンを押した時の動作 - * + * * @param e */ public void actionExitButton(ActionEvent e) { @@ -934,6 +960,32 @@ public class TweetMainAction { } } + /** + * 選択したユーザのfollowingを表示 + */ + public void actionOpenFollowing() { + // ユーザ名 + try { + String userName = this.getCurrentStatus().getUser().getScreenName(); + this.actionShowFollowingFollowerDialog(userName, true); + }catch(Exception e) { + e.printStackTrace(); + } + } + + /** + * 選択したユーザのfollowingを表示 + */ + public void actionOpenFollower() { + try { + // ユーザ名 + String userName = this.getCurrentStatus().getUser().getScreenName(); + this.actionShowFollowingFollowerDialog(userName, false); + }catch(Exception e) { + e.printStackTrace(); + } + } + /** * 選択したユーザのFavを開く */ @@ -991,12 +1043,12 @@ public class TweetMainAction { /** * TweetMessageBox内にある#ハッシュタグ の部分をa hrefリンクに変換 - * + * * @param message */ public String actionReplaceTweetMessageBoxHashTab(String message) { // #で始まる情報 - Pattern userPtn = Pattern.compile("#[0-9A-Z_]+", + Pattern userPtn = Pattern.compile( TweetConfiguration.HASHTAG_PATTERN, Pattern.CASE_INSENSITIVE); Matcher matcher = userPtn.matcher(message); @@ -1021,7 +1073,7 @@ public class TweetMainAction { /** * TweetMessageBox内にあるリンクをa hrefリンクに変換 - * + * * @param message */ public String actionReplaceTweetMessageBoxURLLink(String message) { @@ -1030,6 +1082,32 @@ public class TweetMainAction { } /** + * メッセージ内にあるURLをBitlyに変換する + * @param message + * @return + */ + public String actionConvertURLToBitly(String message) { + String result = new String( message ); + //URLをbitlyに変換 + Matcher matcher = convURLLinkPtn.matcher(message); + while( matcher.find() ) { + String source = matcher.group(); + String conv = URLBitlyConverter.convertUrlToBitly( source ); + result = result.replace( source , conv ); + } + return result; + } + + /** + * つぶやきボックス内のURLをbitlyに変換 + */ + public void actionConvertTweetBoxURLToBitly() { + String message = this.tweetBoxPane.getText(); + String conv = actionConvertURLToBitly(message); + this.tweetBoxPane.setText( conv ); + } + + /** * @ユーザ名の部分をa hrefリンクに変換 * @param message */ @@ -1086,14 +1164,13 @@ public class TweetMainAction { status = this.getCurrentStatus(); } String username = status.getUser().getScreenName(); - long userID = status.getUser().getId(); // ユーザ - actionAddUserTimelineTab(username, userID, this.getGetTimelinePeriod()); + actionAddUserTimelineTab(username, this.getGetTimelinePeriod()); } /** * 選択したユーザが作成したリスト一覧を表示 - * + * * @param selection */ public void actionShowSelectedUserList(ListGetterSelection selection) { @@ -1215,7 +1292,7 @@ public class TweetMainAction { /** * テーブルの高さを更新 - * + * * @param height */ public void updateTableHeight(int height) { @@ -1278,7 +1355,7 @@ public class TweetMainAction { /** * Twitter全体からキーワード検索ダイアログを表示 - * + * * @param searchWord * searchwordボックスに予め設定するワード */ @@ -1290,6 +1367,47 @@ public class TweetMainAction { dialog.setVisible(true); } + /** + * 指定したユーザ検索ダイアログを表示 + */ + public void actionShowUserSearchDialog() { + UserSearchDialog dialog = getUserSearchDialog(); + dialog.setLocationRelativeTo(null); + dialog.setVisible(true); + } + + /** + * CSVログ出力ダイアログを表示 + */ + public void actionShowOutputCSVLogDialog() { + OutputCSVLogDialog dialog = getOutputCSVLogDialog(); + dialog.setLocationRelativeTo(null); + dialog.setVisible(true); + } + + /** + * following follower表示ダイアログを表示 + */ + public void actionShowFollowingFollowerDialog() { + FollowingFollowerDialog dialog = getFollowingFollowerDialog(); + dialog.setLocationRelativeTo(null); + dialog.setVisible(true); + } + + /** + * following follower表示ダイアログを表示 + * @param username 取得したいユーザ + * @param ff trueでfollowing/ falseでfollower取得 + */ + public void actionShowFollowingFollowerDialog(String username, boolean ff) { + FollowingFollowerDialog dialog = getFollowingFollowerDialog(); + //following follower取得開始 + dialog.actionUserSearch(username, ff); + + dialog.setLocationRelativeTo(null); + dialog.setVisible(true); + } + /** * ハッシュタグ検索ダイアログを表示 */ @@ -1302,7 +1420,7 @@ public class TweetMainAction { /** * リストダイアログを表示 - * + * * @param listUserName * リストを保持しているユーザの名前 * @param selection @@ -1349,7 +1467,7 @@ public class TweetMainAction { /** * Tweet情報を更新 - * + * * @param e */ public void actionUpdateButton(java.awt.event.ActionEvent e) { @@ -1382,7 +1500,7 @@ public class TweetMainAction { /** * 指定した番号のタブにフォーカスを移す - * + * * @param index */ public void actionRequestFocusToTab(int index) { @@ -1416,7 +1534,7 @@ public class TweetMainAction { /** * つぶやける残り文字数の更新 - * + * * @param e */ public void actionUpdateTweetMessageCount() { @@ -1444,8 +1562,49 @@ public class TweetMainAction { } /** + * デバッグ用 + */ + public void debug() { + //this.actionShowFollowingFollowerDialog("nishio_dens", false); + } + + /** + * ログデータを保存 + * @param outputFilePath + * @param showUsername + * @param showScreenName + * @param showText + * @param showUpdateTime + * @param showClient + * @param showUserDescription + * @param showFollowing + * @param showFollower + * @param showUpdateCount + * @param showUserURL + * @param showProfileImageURL + * @throws SAXParseException + * @throws IOException + */ + public void outputLogToCSV(String outputFilePath, + boolean showUsername, boolean showScreenName, + boolean showText, + boolean showUpdateTime, boolean showClient, + boolean showUserDescription, + boolean showFollowing, boolean showFollower, + boolean showUpdateCount, boolean showUserURL, + boolean showProfileImageURL) throws SAXParseException, IOException { + TwitterLogManager logManager = new TwitterLogManager(); + List statuses = logManager.get(); + + logManager.outputCSVLog( outputFilePath, statuses, showUsername, showScreenName, + showText, showUpdateTime, showClient, + showUserDescription, showFollowing, showFollower, + showUpdateCount, showUserURL,showProfileImageURL); + } + + /** * 基本設定用ダイアログを取得 - * + * * @return */ public ConfigurationDialog getConfigurationDialog() { @@ -1457,7 +1616,7 @@ public class TweetMainAction { /** * リストダイアログを取得 - * + * * @param listUserName * リストを保持しているユーザの名前 * @param selection @@ -1485,7 +1644,7 @@ public class TweetMainAction { /** * 自身のスクリーン名を取得 - * + * * @return */ public String getScreenName() { @@ -1494,7 +1653,7 @@ public class TweetMainAction { /** * twitter全体からキーワード検索ダイアログを表示 - * + * * @return */ public KeywordSearchDialog getKeywordSearchDialog() { @@ -1504,9 +1663,43 @@ public class TweetMainAction { return keywordSearchDialog; } + /** + * ユーザ検索ダイアログを表示 + * @return + */ + public UserSearchDialog getUserSearchDialog() { + if( this.userSearchDialog == null ) { + this.userSearchDialog = new UserSearchDialog(mainFrame, true, this); + } + return this.userSearchDialog; + } + + /** + * CSVログ出力ダイアログを表示 + * @return + */ + public OutputCSVLogDialog getOutputCSVLogDialog() { + if( this.outputCSVLogDialog == null ) { + this.outputCSVLogDialog = new OutputCSVLogDialog(mainFrame, true, this); + } + return this.outputCSVLogDialog; + } + + /** + * Following follower表示ダイアログ + * @return + */ + public FollowingFollowerDialog getFollowingFollowerDialog() { + if( this.followingFollowerDialog == null ) { + this.followingFollowerDialog = + new FollowingFollowerDialog(mainFrame, true, this.tweetManager); + } + return this.followingFollowerDialog; + } + /** * hashtag検索ダイアログ - * + * * @return */ public HashtagSearchDialog getHashtagSearchDialog() { @@ -1519,7 +1712,7 @@ public class TweetMainAction { /** * アカウント情報設定ダイアログを取得 - * + * * @return */ public AccountDialog getAccountDialog() { @@ -1532,7 +1725,7 @@ public class TweetMainAction { /** * ダイレクトメッセージ送信用ダイアログを取得 - * + * * @return */ public DirectMessageDialog getDirectMessageDialog() { @@ -1545,7 +1738,7 @@ public class TweetMainAction { /** * テーブルで選択したツイートを詳細情報としてセット - * + * * @param table */ public void setDetailInformationFromTable(JTable table) { @@ -1604,7 +1797,7 @@ public class TweetMainAction { } /** - * + * * @return */ public AboutDialog getAboutDialog() { @@ -1616,7 +1809,7 @@ public class TweetMainAction { /** * テーブルで選択した場所のTweet情報を取得 - * + * * @return */ public Status getTweetTableInformation(JTable table, TableModel model) { @@ -1636,7 +1829,7 @@ public class TweetMainAction { /** * ステータスバーに情報を表示する - * + * * @param message */ public void information(String message) { @@ -1644,8 +1837,40 @@ public class TweetMainAction { } /** + * 前回タイムラインタブを開いていたか + * @return + */ + public boolean isTempOpenedTimelineTab() { + return isTempOpenedTimelineTab; + } + + /** + * 前回メンションタブを開いていたか + * @return + */ + public boolean isTempOpenedMentionTab() { + return isTempOpenedMentionTab; + } + + /** + * 前回DMタブを開いていたか + * @return + */ + public boolean isTempOpenedDMTab() { + return isTempOpenedDMTab; + } + + /** + * 前回SendDMタブを開いていたか + * @return + */ + public boolean isTempOpenedSendDMTab() { + return isTempOpenedSendDMTab; + } + + /** * 設定ファイルを読み込む - * + * * @throws IOException * @throws FileNotFoundException */ @@ -1678,6 +1903,18 @@ public class TweetMainAction { String nm = this.property.getProperty("notifyMention"); String ndm = this.property.getProperty("notifyDirectMessage"); + //前回開いていたタブの情報 + String ptl = this.property.getProperty("openTimelineTab"); + String pm = this.property.getProperty("openMentionTab"); + String podm = this.property.getProperty("openDirectMessageTab"); + String posdmt = this.property.getProperty("openSendDirectMessageTab"); + + //ログ + String log = this.property.getProperty("saveLog"); + + //表示可能ツイート数 + String nost = this.property.getProperty("numOfShowTweet"); + try { this.newTableColor = new Color(Integer.parseInt(ntrgb)); this.tlFontSize = Integer.parseInt(tfs); @@ -1695,6 +1932,18 @@ public class TweetMainAction { // 通知関係 this.isNotifyMentionMessage = Boolean.parseBoolean(nm); this.isNotifyDirectMessage = Boolean.parseBoolean(ndm); + + //前回開いていたタブ情報 + this.isTempOpenedTimelineTab = Boolean.parseBoolean(ptl); + this.isTempOpenedMentionTab = Boolean.parseBoolean(pm); + this.isTempOpenedDMTab = Boolean.parseBoolean(podm); + this.isTempOpenedSendDMTab = Boolean.parseBoolean(posdmt); + + //ログ + this.saveLog = Boolean.parseBoolean(log); + + //表示可能ツイート数 + this.tableElementMaxSize = Integer.parseInt(nost); } catch (NumberFormatException e) { e.printStackTrace(); } @@ -1702,7 +1951,7 @@ public class TweetMainAction { /** * 設定ファイルを保存する - * + * * @throws IOException */ public void saveProperties() throws IOException { @@ -1752,6 +2001,18 @@ public class TweetMainAction { this.property.setProperty("notifyDirectMessage", this.isNotifyDirectMessage + ""); + //タブの保存 + this.property.setProperty("openTimelineTab", this.isExistTimelineTab() + ""); + this.property.setProperty("openMentionTab", this.isExistMentionTab() + ""); + this.property.setProperty("openDirectMessageTab", this.isExistDirectMessageTab() + ""); + this.property.setProperty("openSendDirectMessageTab", this.isExistSendDirectMessageTab() + ""); + + //ログを保存するか + this.property.setProperty("saveLog", this.isSaveLog() + ""); + + //テーブルに表示可能なツイートの数 + this.property.setProperty("numOfShowTweet", this.getTableElementMaxSize() + ""); + // プロパティのリストを保存 property.store(new FileOutputStream("./" + PROPERTIES_DIRECTORY + "/" + BASIC_SETTING_FILENAME), null); @@ -1759,7 +2020,7 @@ public class TweetMainAction { /** * newTableColorを取得します。 - * + * * @return newTableColor */ public Color getNewTableColor() { @@ -1768,7 +2029,7 @@ public class TweetMainAction { /** * newTableColorを設定します。 - * + * * @param newTableColor * newTableColor */ @@ -1778,7 +2039,7 @@ public class TweetMainAction { /** * tlFontNameを取得します。 - * + * * @return tlFontName */ public String getTlFontName() { @@ -1787,7 +2048,7 @@ public class TweetMainAction { /** * tlFontNameを設定します。 - * + * * @param tlFontName * tlFontName */ @@ -1797,7 +2058,7 @@ public class TweetMainAction { /** * tlFontSizeを取得します。 - * + * * @return tlFontSize */ public int getTlFontSize() { @@ -1806,7 +2067,7 @@ public class TweetMainAction { /** * tlFontSizeを設定します。 - * + * * @param tlFontSize * tlFontSize */ @@ -1816,7 +2077,7 @@ public class TweetMainAction { /** * detailFontNameを取得します。 - * + * * @return detailFontName */ public String getDetailFontName() { @@ -1825,7 +2086,7 @@ public class TweetMainAction { /** * detailFontNameを設定します。 - * + * * @param detailFontName * detailFontName */ @@ -1835,7 +2096,7 @@ public class TweetMainAction { /** * detailFontSizeを取得します。 - * + * * @return detailFontSize */ public int getDetailFontSize() { @@ -1844,7 +2105,7 @@ public class TweetMainAction { /** * detailFontSizeを設定します。 - * + * * @param detailFontSize * detailFontSize */ @@ -1854,7 +2115,7 @@ public class TweetMainAction { /** * tableElementHeightを取得します。 - * + * * @return tableElementHeight */ public int getTableElementHeight() { @@ -1863,7 +2124,7 @@ public class TweetMainAction { /** * tableElementHeightを設定します。 - * + * * @param tableElementHeight * tableElementHeight */ @@ -1879,7 +2140,7 @@ public class TweetMainAction { } /** - * + * * @param notify */ public void setNotifyMention(boolean notify) { @@ -1887,7 +2148,7 @@ public class TweetMainAction { } /** - * + * * @return */ public boolean getNotifyMention() { @@ -1895,7 +2156,7 @@ public class TweetMainAction { } /** - * + * * @param notify * @return */ @@ -1904,7 +2165,7 @@ public class TweetMainAction { } /** - * + * * @return */ public boolean getNotifyDirectMessage() { @@ -1980,7 +2241,7 @@ public class TweetMainAction { } /** - * + * * @return */ public Status getReplyStatus() { @@ -1988,11 +2249,45 @@ public class TweetMainAction { } /** - * + * * @param status * @return */ public void setReplyStatus(Status status) { this.replyStatus = status; } + + /** + * ログを保存するかどうか + * @return + */ + public boolean isSaveLog() { + return this.saveLog; + } + + /** + * ログを保存するかどうか設定 + * @param check + */ + public void setSaveLog(boolean check) { + this.saveLog = check; + } + + /** + * テーブルに一度に表示できる数を設定 + * @param size + */ + public void setTableElementMaxSize(int size) { + if( size > 0 ) { + this.tableElementMaxSize = size; + } + } + + /** + * テーブルに一度に表示できる数を取得 + * @return + */ + public int getTableElementMaxSize() { + return this.tableElementMaxSize; + } }