OSDN Git Service

無駄な処理をすべて削除.
authorspark_xp <spark_xp@d8c9ecd3-d47d-4367-8645-de82c00e513f>
Wed, 15 Sep 2010 16:08:42 +0000 (16:08 +0000)
committerspark_xp <spark_xp@d8c9ecd3-d47d-4367-8645-de82c00e513f>
Wed, 15 Sep 2010 16:08:42 +0000 (16:08 +0000)
そのかわり,TLなどの更新周期が変更できなくなった.また設定も保存できなくなった.修正の必要あり.

git-svn-id: http://svn.sourceforge.jp/svnroot/nt-manager/NishioTweetManager/trunk@44 d8c9ecd3-d47d-4367-8645-de82c00e513f

src/MainGUI.java [deleted file]
src/twitter/gui/action/TweetMainAction.java
src/twitter/gui/component/TweetTabbedTable.java
src/twitter/gui/form/AccountDialog.java
src/twitter/gui/form/ConfigurationDialog.java
src/twitter/gui/form/NishioTweetManager.form
src/twitter/gui/form/NishioTweetManager.java

diff --git a/src/MainGUI.java b/src/MainGUI.java
deleted file mode 100644 (file)
index 469988e..0000000
+++ /dev/null
@@ -1,1218 +0,0 @@
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Event;
-import java.awt.Font;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.awt.Point;
-import java.awt.Rectangle;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.KeyEvent;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import javax.swing.BorderFactory;
-import javax.swing.BoxLayout;
-import javax.swing.ImageIcon;
-import javax.swing.JButton;
-import javax.swing.JDialog;
-import javax.swing.JEditorPane;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JPopupMenu;
-import javax.swing.JScrollPane;
-import javax.swing.JTabbedPane;
-import javax.swing.JTable;
-import javax.swing.JTextPane;
-import javax.swing.KeyStroke;
-import javax.swing.ScrollPaneConstants;
-import javax.swing.SwingConstants;
-import javax.swing.SwingUtilities;
-import javax.swing.UIManager;
-import javax.swing.border.EtchedBorder;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import javax.swing.table.TableColumn;
-import javax.swing.table.TableColumnModel;
-import javax.swing.text.Style;
-import javax.swing.text.StyleConstants;
-import javax.swing.text.html.HTMLDocument;
-import javax.swing.text.html.StyleSheet;
-
-import twitter.gui.action.TweetMainAction;
-import twitter.gui.component.ImagePanel;
-import twitter.gui.component.TweetCommentRenderer;
-import twitter.gui.component.TweetHyperlinkHandler;
-import twitter.gui.component.TweetTableModel;
-import twitter.gui.component.UserImageRenderer;
-import twitter.manage.TweetManager;
-import twitter4j.Status;
-
-public class MainGUI {
-
-       /**
-        * This method initializes jScrollPane3
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane3() {
-               if (jScrollPane3 == null) {
-                       jScrollPane3 = new JScrollPane();
-                       jScrollPane3.setViewportView(getJTable2());
-               }
-               return jScrollPane3;
-       }
-
-       /**
-        * This method initializes jTable2
-        * 
-        * @return javax.swing.JTable
-        */
-       private JTable getJTable2() {
-               if (jTable2 == null) {
-                       jTable2 = new JTable();
-                       messageTableModel = new TweetTableModel();
-                       jTable2 = new JTable(messageTableModel);
-                       jTable2.addFocusListener(new java.awt.event.FocusAdapter() {
-                               @Override
-                               public void focusGained(java.awt.event.FocusEvent e) {
-                                       mainAction.actionResetUncheckedDirectMessageCount();
-                               }
-                       });
-                       jTable2.addMouseListener(new java.awt.event.MouseAdapter() {
-                               @Override
-                               public void mousePressed(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               @Override
-                               public void mouseReleased(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               private void showPopup(MouseEvent e) {
-                                       if (e.isPopupTrigger()) {
-                                               // 右クリックのメニューを表示
-                                               getRightClickPopup().show(e.getComponent(), e.getX(),
-                                                               e.getY());
-                                       }
-                               }
-                       });
-                       createTweetTable(jTable2);
-               }
-               return jTable2;
-       }
-
-       /**
-        * This method initializes jScrollPane4
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane4() {
-               if (jScrollPane4 == null) {
-                       jScrollPane4 = new JScrollPane();
-                       jScrollPane4.setViewportView(getJTable3());
-               }
-               return jScrollPane4;
-       }
-
-       /**
-        * This method initializes jTable3
-        * 
-        * @return javax.swing.JTable
-        */
-       private JTable getJTable3() {
-               if (jTable3 == null) {
-                       jTable3 = new JTable();
-                       sendMessageTableModel = new TweetTableModel();
-                       jTable3 = new JTable(sendMessageTableModel);
-                       createTweetTable(jTable3);
-               }
-               return jTable3;
-       }
-
-       /**
-        * This method initializes jScrollPane5
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane5() {
-               if (jScrollPane5 == null) {
-                       jScrollPane5 = new JScrollPane();
-                       jScrollPane5.setViewportView(getJTextPane());
-               }
-               return jScrollPane5;
-       }
-
-       /**
-        * This method initializes jScrollPane6
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane6() {
-               if (jScrollPane6 == null) {
-                       jScrollPane6 = new JScrollPane();
-                       jScrollPane6.setBounds(new Rectangle(58, 8, 739, 46));
-                       jScrollPane6.setViewportView(getTweetMessageBox());
-               }
-               return jScrollPane6;
-       }
-
-       /**
-        * This method initializes jTable4
-        * 
-        * @return javax.swing.JTable
-        */
-       private JTable getJTable4() {
-               if (jTable4 == null) {
-                       jTable4 = new JTable();
-                       filterTableModel = new TweetTableModel();
-                       createTweetTable(jTable4);
-               }
-               return jTable4;
-       }
-
-       /**
-        * This method initializes basicSettingMenuItem
-        * 
-        * @return javax.swing.JMenuItem
-        */
-       private JMenuItem getBasicSettingMenuItem() {
-               if (basicSettingMenuItem == null) {
-                       basicSettingMenuItem = new JMenuItem();
-                       basicSettingMenuItem.setText("基本設定");
-                       basicSettingMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // 基本設定ダイアログを開く
-                                                       mainAction.actionBasicSettingDialog();
-                                               }
-                                       });
-               }
-               return basicSettingMenuItem;
-       }
-
-       /**
-        * Launches this application
-        */
-       public static void main(String[] args) {
-               SwingUtilities.invokeLater(new Runnable() {
-                       public void run() {
-                               try {
-                                       // UIをシステム標準のものとする
-                                       UIManager.setLookAndFeel(UIManager
-                                                       .getSystemLookAndFeelClassName());
-                               } catch (Exception e) {
-                                       e.printStackTrace();
-                               }
-                               MainGUI application = new MainGUI();
-                               application.getJFrame().setVisible(true);
-                       }
-               });
-       }
-
-       // TweetManager
-       private final TweetManager tweetManager = new TweetManager();
-
-       // GUIAction部分
-       private TweetMainAction mainAction = null;
-       private JFrame jFrame = null; // @jve:decl-index=0:visual-constraint="10,96"
-       private JPanel jContentPane = null;
-       private JMenuBar jJMenuBar = null;
-       private JMenu fileMenu = null;
-       private JMenu settingMenu = null;
-       private JMenu helpMenu = null;
-       private JMenuItem exitMenuItem = null;
-       private JMenuItem aboutMenuItem = null;
-       private JMenuItem saveMenuItem = null;
-       private JDialog aboutDialog = null;
-       private JPanel aboutContentPane = null;
-       private JLabel aboutVersionLabel = null;
-       private JTextPane jTextPane = null;
-       private JButton jButton = null;
-       private JTabbedPane jTabbedPane = null;
-       private JScrollPane jScrollPane = null;
-       private JTable jTable = null;
-       private TweetTableModel tweetTableModel = null;
-       private TweetTableModel mentionTableModel = null;
-       private TweetTableModel messageTableModel = null;
-       private TweetTableModel sendMessageTableModel = null;
-       private TweetTableModel filterTableModel = null;
-       private JButton jButton1 = null;
-       private JButton jButton2 = null;
-       private JPanel jPanel = null;
-       private JButton jButton3 = null;
-       private JPanel jPanel2 = null;
-       private JPanel jPanel1 = null;
-       private JEditorPane tweetMessageBox = null;
-       private JLabel userImageLabel = null;
-       private JLabel userNameLabel = null;
-       private JLabel updateTimeLabel = null;
-       private JLabel jLabel = null;
-       private JLabel jLabel1 = null;
-       private JLabel jLabel2 = null;
-       private JLabel locationLabel = null;
-       private JLabel jLabel4 = null;
-       private JLabel jLabel5 = null;
-       private JLabel jLabel6 = null;
-       private JLabel followingLabel = null;
-       private JLabel FollowerLabel = null;
-       private JLabel updateLabel = null;
-       private JEditorPane userWebBox = null;
-       private JScrollPane jScrollPane1 = null;
-       private JEditorPane userIntroBox = null;
-       private JEditorPane clientName = null;
-       private JLabel jLabel3 = null;
-       private JLabel statusBar = null;
-       private JPanel jPanel3 = null;
-       private JScrollPane jScrollPane2 = null;
-       private JTable jTable1 = null;
-       private JPopupMenu rightClickPopup = null;
-
-       private JScrollPane jScrollPane3 = null;
-
-       private JTable jTable2 = null;
-
-       private JScrollPane jScrollPane4 = null;
-
-       private JTable jTable3 = null;
-
-       private JScrollPane jScrollPane5 = null;
-
-       private JScrollPane jScrollPane6 = null;
-
-       private JTable jTable4 = null;
-
-       private JMenuItem basicSettingMenuItem = null;
-
-       /**
-        * Tweetを表示するテーブルを作成
-        * 
-        * @param model
-        * @return
-        */
-       private void createTweetTable(final JTable table) {
-
-               table.setAutoResizeMode(JTable.AUTO_RESIZE_NEXT_COLUMN);
-               table.setShowVerticalLines(false);
-               table.setShowHorizontalLines(true);
-
-               // Comment部分のColumnを複数行コメントが表示できるようにする
-               TableColumnModel mdl = table.getColumnModel();
-               TableColumn col = mdl.getColumn(1);
-               TweetCommentRenderer commentRenderer = new TweetCommentRenderer();
-               col.setCellRenderer(commentRenderer);
-               // INfo部分のColumnを複数行表示できるように
-               TweetCommentRenderer infoRenderer = new TweetCommentRenderer();
-               col = mdl.getColumn(2);
-               col.setCellRenderer(infoRenderer);
-               col.setMaxWidth(200);
-               col.setMinWidth(150);
-               // TODO:とりあえず幅指定した部分
-               // あとでファイルに幅情報などを保存しておき,それを読み込んで設定するような仕様に変更する
-               // ユーザImageを表示する部分
-               col = mdl.getColumn(0);
-               col.setCellRenderer(new UserImageRenderer());
-               col.setMinWidth(50);
-               col.setMaxWidth(50);
-               // 選択したセルの情報をDetailInfoへと表示
-               table.getSelectionModel().addListSelectionListener(
-                               new ListSelectionListener() {
-
-                                       @Override
-                                       public void valueChanged(ListSelectionEvent e) {
-
-                                               if (e.getValueIsAdjusting()) {
-                                                       return;
-                                               }
-
-                                               int sc = table.getSelectedRowCount();
-                                               String infoMessage = "";
-                                               if (sc == 1) {
-                                                       Status st = mainAction.getTweetTableInformation(
-                                                                       table, table.getModel());
-                                                       infoMessage = st.getText();
-                                                       // tweetMessageBox内のURLをhtmlリンクへ変換
-                                                       infoMessage = mainAction
-                                                                       .actionReplaceTweetMessageBoxURLLink(infoMessage);
-                                                       // @ユーザ情報をhtmlリンクへ変換
-                                                       infoMessage = mainAction
-                                                                       .actionReplaceTweetMessageBoxUserInfo(infoMessage);
-                                                       // #ハッシュタグ情報をhtmlリンクへ変換
-                                                       infoMessage = mainAction
-                                                                       .actionReplaceTweetMessageBoxHashTab(infoMessage);
-                                                       // 詳細情報にテーブルで選択した人のツイート情報を表示
-                                                       tweetMessageBox.setText(infoMessage);
-                                                       // user icon
-                                                       userImageLabel.setIcon(new ImageIcon(st.getUser()
-                                                                       .getProfileImageURL()));
-                                                       // user name and id
-                                                       userNameLabel.setText(st.getUser().getName()
-                                                                       + " / " + st.getUser().getScreenName());
-                                                       // update Time
-                                                       updateTimeLabel.setText(st.getCreatedAt()
-                                                                       .toLocaleString());
-                                                       // ユーザのバックグラウンドイメージを取得
-                                                       /*
-                                                        * ImagePanel imagePanel = null; if( jContentPane
-                                                        * instanceof ImagePanel ) { imagePanel =
-                                                        * (ImagePanel)jContentPane; try { URL url = new URL
-                                                        * ( st.getUser().getProfileBackgroundImageUrl() );
-                                                        * imagePanel.setImage( new ImageIcon( url
-                                                        * ).getImage() ); } catch (MalformedURLException
-                                                        * e1) { e1.printStackTrace(); } }
-                                                        */
-                                                       // ユーザ自己紹介文
-                                                       userIntroBox.setText(st.getUser().getDescription());
-                                                       // フォローされている数
-                                                       FollowerLabel.setText(st.getUser()
-                                                                       .getFollowersCount()
-                                                                       + "");
-                                                       // フォローしている数
-                                                       followingLabel.setText(st.getUser()
-                                                                       .getFriendsCount()
-                                                                       + "");
-                                                       // 現在地
-                                                       locationLabel.setText(st.getUser().getLocation());
-                                                       // Web
-                                                       if (st.getUser().getURL() != null) {
-                                                               userWebBox.setText("<a href=\""
-                                                                               + st.getUser().getURL() + "\">"
-                                                                               + st.getUser().getScreenName()
-                                                                               + "のWebを開く" + "</a>");
-                                                       } else {
-                                                               userWebBox.setText("");
-                                                       }
-                                                       // client
-                                                       clientName.setText(" via " + st.getSource());
-                                                       // Update
-                                                       updateLabel.setText(st.getUser().getStatusesCount()
-                                                                       + "");
-                                               }
-                                       }
-                               });
-               // JTableを右クリックでも選択できるようにする
-               // また,同じ行を2回クリックできるようにする
-               table.addMouseListener(new MouseAdapter() {
-                       @Override
-                       public void mousePressed(MouseEvent e) {
-                               // いったんSelectしていた情報を削除
-                               table.clearSelection();
-                               // if (e.getButton() == MouseEvent.BUTTON3) {
-                               Point p = e.getPoint();
-                               int col = table.columnAtPoint(p);
-                               int row = table.rowAtPoint(p);
-                               table.changeSelection(row, col, false, false);
-                               // }
-                       }
-               });
-               // MouseEventを追加
-               table.addMouseListener(commentRenderer);
-               table.addMouseMotionListener(commentRenderer);
-               table.addMouseListener(infoRenderer);
-               table.addMouseMotionListener(infoRenderer);
-       }
-
-       /**
-        * This method initializes aboutContentPane
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getAboutContentPane() {
-               if (aboutContentPane == null) {
-                       aboutContentPane = new JPanel();
-                       aboutContentPane.setLayout(new BorderLayout());
-                       aboutContentPane.add(getAboutVersionLabel(), BorderLayout.CENTER);
-               }
-               return aboutContentPane;
-       }
-
-       /**
-        * This method initializes aboutDialog
-        * 
-        * @return javax.swing.JDialog
-        */
-       private JDialog getAboutDialog() {
-               if (aboutDialog == null) {
-                       aboutDialog = new JDialog(getJFrame(), true);
-                       aboutDialog.setTitle("About");
-                       aboutDialog.setContentPane(getAboutContentPane());
-               }
-               return aboutDialog;
-       }
-
-       /**
-        * This method initializes jMenuItem
-        * 
-        * @return javax.swing.JMenuItem
-        */
-       private JMenuItem getAboutMenuItem() {
-               if (aboutMenuItem == null) {
-                       aboutMenuItem = new JMenuItem();
-                       aboutMenuItem.setText("About");
-                       aboutMenuItem.addActionListener(new ActionListener() {
-                               public void actionPerformed(ActionEvent e) {
-                                       JDialog aboutDialog = getAboutDialog();
-                                       aboutDialog.pack();
-                                       Point loc = getJFrame().getLocation();
-                                       loc.translate(20, 20);
-                                       aboutDialog.setLocation(loc);
-                                       aboutDialog.setVisible(true);
-                               }
-                       });
-               }
-               return aboutMenuItem;
-       }
-
-       /**
-        * This method initializes aboutVersionLabel
-        * 
-        * @return javax.swing.JLabel
-        */
-       private JLabel getAboutVersionLabel() {
-               if (aboutVersionLabel == null) {
-                       aboutVersionLabel = new JLabel();
-                       aboutVersionLabel.setText("Version 1.0");
-                       aboutVersionLabel.setHorizontalAlignment(SwingConstants.CENTER);
-               }
-               return aboutVersionLabel;
-       }
-
-       /**
-        * This method initializes clientName
-        * 
-        * @return javax.swing.JEditorPane
-        */
-       private JEditorPane getClientName() {
-               if (clientName == null) {
-                       clientName = new JEditorPane();
-                       clientName.setBounds(new Rectangle(210, 135, 294, 16));
-                       clientName.setContentType("text/html");
-                       clientName.setEditable(false);
-                       clientName.addHyperlinkListener(new TweetHyperlinkHandler());
-                       try {
-                               // htmlフォント変更
-                               HTMLDocument doc = (HTMLDocument) clientName.getDocument();
-                               StyleSheet[] style = doc.getStyleSheet().getStyleSheets();
-                               for (int i = style.length - 1; i >= 0; i--) {
-                                       Style body = style[i].getStyle("body");
-                                       if (body != null) {
-                                               // TODO: default font size
-                                               StyleConstants.setFontSize(body, 13);
-                                       }
-                               }
-                       } catch (Exception e) {
-                               e.printStackTrace();
-                       }
-               }
-               return clientName;
-       }
-
-       /**
-        * This method initializes jMenu
-        * 
-        * @return javax.swing.JMenu
-        */
-       private JMenu getSettingMenu() {
-               if (settingMenu == null) {
-                       settingMenu = new JMenu();
-                       settingMenu.setText("Setting");
-                       settingMenu.add(getBasicSettingMenuItem());
-               }
-               return settingMenu;
-       }
-
-       /**
-        * This method initializes jMenuItem
-        * 
-        * @return javax.swing.JMenuItem
-        */
-       private JMenuItem getExitMenuItem() {
-               if (exitMenuItem == null) {
-                       exitMenuItem = new JMenuItem();
-                       exitMenuItem.setText("Exit");
-                       exitMenuItem.addActionListener(new ActionListener() {
-                               public void actionPerformed(ActionEvent e) {
-                                       // 終了動作
-                                       mainAction.actionExitButton(e);
-                               }
-                       });
-               }
-               return exitMenuItem;
-       }
-
-       /**
-        * This method initializes jMenu
-        * 
-        * @return javax.swing.JMenu
-        */
-       private JMenu getFileMenu() {
-               if (fileMenu == null) {
-                       fileMenu = new JMenu();
-                       fileMenu.setText("File");
-                       fileMenu.add(getSaveMenuItem());
-                       fileMenu.add(getExitMenuItem());
-               }
-               return fileMenu;
-       }
-
-       /**
-        * This method initializes jMenu
-        * 
-        * @return javax.swing.JMenu
-        */
-       private JMenu getHelpMenu() {
-               if (helpMenu == null) {
-                       helpMenu = new JMenu();
-                       helpMenu.setText("Help");
-                       helpMenu.add(getAboutMenuItem());
-               }
-               return helpMenu;
-       }
-
-       /**
-        * This method initializes jButton
-        * 
-        * @return javax.swing.JButton
-        */
-       private JButton getJButton() {
-               if (jButton == null) {
-                       jButton = new JButton();
-                       jButton.setText("つぶやく");
-                       jButton.addActionListener(new java.awt.event.ActionListener() {
-                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                       // メッセージをつぶやく
-                                       mainAction.actionTweet();
-                               }
-                       });
-               }
-               return jButton;
-       }
-
-       /**
-        * This method initializes jButton1
-        * 
-        * @return javax.swing.JButton
-        */
-       private JButton getJButton1() {
-               if (jButton1 == null) {
-                       jButton1 = new JButton();
-                       jButton1.setText("今すぐ更新");
-                       jButton1.addActionListener(new java.awt.event.ActionListener() {
-                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                       mainAction.actionUpdateButton(e);
-                                       // いますぐ更新ボタンを押したので,更新タイムを一度リセットする
-                                       mainAction.resetTweetAutoUpdate();
-                               }
-                       });
-               }
-               return jButton1;
-       }
-
-       /**
-        * This method initializes jButton2
-        * 
-        * @return javax.swing.JButton
-        */
-       private JButton getJButton2() {
-               if (jButton2 == null) {
-                       jButton2 = new JButton();
-                       jButton2.setText("Refresh");
-                       jButton2.addActionListener(new java.awt.event.ActionListener() {
-                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                       // tweet取得時間情報を更新
-                                       mainAction.actionRefreshTime();
-                               }
-                       });
-               }
-               return jButton2;
-       }
-
-       /**
-        * This method initializes jButton3
-        * 
-        * @return javax.swing.JButton
-        */
-       private JButton getJButton3() {
-               if (jButton3 == null) {
-                       jButton3 = new JButton();
-                       jButton3.setText("詳細情報");
-                       jButton3.addActionListener(new java.awt.event.ActionListener() {
-                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                       // 詳細情報ボタンを押した時の動作
-                                       mainAction.actionDetailInfoButton(e);
-                               }
-                       });
-               }
-               return jButton3;
-       }
-
-       /**
-        * This method initializes jContentPane
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getJContentPane() {
-               if (jContentPane == null) {
-                       statusBar = new JLabel();
-                       statusBar.setText("Status");
-                       jContentPane = new ImagePanel();
-                       jContentPane.setLayout(null);
-                       jContentPane.add(getJTabbedPane(), null);
-                       jContentPane.add(getJPanel2(), null);
-                       jContentPane.add(getJPanel3(), null);
-               }
-               return jContentPane;
-       }
-
-       /**
-        * This method initializes jFrame
-        * 
-        * @return javax.swing.JFrame
-        */
-       private JFrame getJFrame() {
-               if (jFrame == null) {
-                       jFrame = new JFrame();
-                       jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-                       jFrame.setJMenuBar(getJJMenuBar());
-                       jFrame.setSize(832, 786);
-                       jFrame.setContentPane(getJContentPane());
-                       jFrame.setTitle("Nishio Tweet Manager");
-                       init(); // 初期化
-               }
-               return jFrame;
-       }
-
-       /**
-        * This method initializes jJMenuBar
-        * 
-        * @return javax.swing.JMenuBar
-        */
-       private JMenuBar getJJMenuBar() {
-               if (jJMenuBar == null) {
-                       jJMenuBar = new JMenuBar();
-                       jJMenuBar.add(getFileMenu());
-                       jJMenuBar.add(getSettingMenu());
-                       jJMenuBar.add(getHelpMenu());
-               }
-               return jJMenuBar;
-       }
-
-       /**
-        * This method initializes jPanel
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getJPanel() {
-               if (jPanel == null) {
-                       GridBagConstraints gridBagConstraints5 = new GridBagConstraints();
-                       gridBagConstraints5.fill = GridBagConstraints.VERTICAL;
-                       gridBagConstraints5.gridheight = 2;
-                       gridBagConstraints5.gridwidth = 3;
-                       gridBagConstraints5.gridx = 0;
-                       gridBagConstraints5.gridy = 1;
-                       gridBagConstraints5.ipadx = 675;
-                       gridBagConstraints5.ipady = 41;
-                       gridBagConstraints5.weightx = 1.0;
-                       gridBagConstraints5.weighty = 1.0;
-                       gridBagConstraints5.insets = new Insets(0, 0, 0, 0);
-                       GridBagConstraints gridBagConstraints4 = new GridBagConstraints();
-                       gridBagConstraints4.insets = new Insets(6, 1, 2, 8);
-                       gridBagConstraints4.gridy = 1;
-                       gridBagConstraints4.ipadx = 97;
-                       gridBagConstraints4.ipady = 12;
-                       gridBagConstraints4.gridx = 3;
-                       GridBagConstraints gridBagConstraints3 = new GridBagConstraints();
-                       gridBagConstraints3.insets = new Insets(0, 0, 3, 3);
-                       gridBagConstraints3.gridy = 0;
-                       gridBagConstraints3.ipadx = 134;
-                       gridBagConstraints3.ipady = 9;
-                       gridBagConstraints3.fill = GridBagConstraints.HORIZONTAL;
-                       gridBagConstraints3.gridx = 2;
-                       GridBagConstraints gridBagConstraints2 = new GridBagConstraints();
-                       gridBagConstraints2.insets = new Insets(0, 0, 3, 5);
-                       gridBagConstraints2.gridy = 0;
-                       gridBagConstraints2.ipadx = 131;
-                       gridBagConstraints2.ipady = 9;
-                       gridBagConstraints2.fill = GridBagConstraints.HORIZONTAL;
-                       gridBagConstraints2.gridx = 1;
-                       GridBagConstraints gridBagConstraints1 = new GridBagConstraints();
-                       gridBagConstraints1.insets = new Insets(0, 0, 3, 5);
-                       gridBagConstraints1.gridy = 0;
-                       gridBagConstraints1.ipadx = 121;
-                       gridBagConstraints1.ipady = 9;
-                       gridBagConstraints1.fill = GridBagConstraints.HORIZONTAL;
-                       gridBagConstraints1.gridx = 0;
-                       GridBagConstraints gridBagConstraints = new GridBagConstraints();
-                       gridBagConstraints.insets = new Insets(3, 1, 6, 7);
-                       gridBagConstraints.gridy = 2;
-                       gridBagConstraints.ipadx = 36;
-                       gridBagConstraints.ipady = 5;
-                       gridBagConstraints.gridx = 3;
-                       jLabel3 = new JLabel();
-                       jLabel3.setText("140");
-                       jPanel = new JPanel();
-                       jPanel.setLayout(new GridBagLayout());
-                       jPanel.setPreferredSize(new Dimension(811, 445));
-                       jPanel.setBounds(new Rectangle(3, 160, 814, 119));
-                       jPanel.add(getJButton(), gridBagConstraints);
-                       jPanel.add(getJButton1(), gridBagConstraints1);
-                       jPanel.add(getJButton2(), gridBagConstraints2);
-                       jPanel.add(getJButton3(), gridBagConstraints3);
-                       jPanel.add(jLabel3, gridBagConstraints4);
-                       jPanel.add(getJScrollPane5(), gridBagConstraints5);
-               }
-               return jPanel;
-       }
-
-       /**
-        * This method initializes jPanel1
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getJPanel1() {
-               if (jPanel1 == null) {
-                       updateLabel = new JLabel();
-                       updateLabel.setBounds(new Rectangle(414, 100, 91, 15));
-                       updateLabel.setText("0");
-                       FollowerLabel = new JLabel();
-                       FollowerLabel.setBounds(new Rectangle(414, 80, 91, 15));
-                       FollowerLabel.setText("0");
-                       followingLabel = new JLabel();
-                       followingLabel.setBounds(new Rectangle(414, 60, 91, 15));
-                       followingLabel.setText("0");
-                       jLabel6 = new JLabel();
-                       jLabel6.setBounds(new Rectangle(329, 100, 78, 14));
-                       jLabel6.setText("Update");
-                       jLabel5 = new JLabel();
-                       jLabel5.setBounds(new Rectangle(329, 80, 78, 16));
-                       jLabel5.setText("Follower");
-                       jLabel4 = new JLabel();
-                       jLabel4.setBounds(new Rectangle(329, 60, 78, 17));
-                       jLabel4.setText("Following");
-                       locationLabel = new JLabel();
-                       locationLabel.setBounds(new Rectangle(72, 100, 254, 15));
-                       locationLabel.setText("No Information");
-                       jLabel2 = new JLabel();
-                       jLabel2.setBounds(new Rectangle(8, 100, 58, 12));
-                       jLabel2.setText("現在地");
-                       jLabel1 = new JLabel();
-                       jLabel1.setBounds(new Rectangle(8, 80, 58, 12));
-                       jLabel1.setText("更新日");
-                       jLabel = new JLabel();
-                       jLabel.setBounds(new Rectangle(8, 60, 58, 12));
-                       jLabel.setText("ユーザ名");
-                       updateTimeLabel = new JLabel();
-                       updateTimeLabel.setBounds(new Rectangle(72, 80, 254, 13));
-                       updateTimeLabel.setText("Date");
-                       userNameLabel = new JLabel();
-                       userNameLabel.setBounds(new Rectangle(72, 60, 254, 15));
-                       userNameLabel.setText("UserName");
-                       userImageLabel = new JLabel();
-                       userImageLabel.setBounds(new Rectangle(6, 8, 48, 45));
-                       userImageLabel.setText("");
-                       userImageLabel.setBackground(new Color(51, 51, 51));
-                       jPanel1 = new JPanel();
-                       jPanel1.setLayout(null);
-                       jPanel1.setBorder(BorderFactory
-                                       .createEtchedBorder(EtchedBorder.RAISED));
-                       jPanel1.setBounds(new Rectangle(9, 0, 809, 151));
-                       jPanel1.add(userImageLabel, null);
-                       jPanel1.add(userNameLabel, null);
-                       jPanel1.add(updateTimeLabel, null);
-                       jPanel1.add(jLabel, null);
-                       jPanel1.add(jLabel1, null);
-                       jPanel1.add(jLabel2, null);
-                       jPanel1.add(locationLabel, null);
-                       jPanel1.add(jLabel4, null);
-                       jPanel1.add(jLabel5, null);
-                       jPanel1.add(jLabel6, null);
-                       jPanel1.add(followingLabel, null);
-                       jPanel1.add(FollowerLabel, null);
-                       jPanel1.add(updateLabel, null);
-                       jPanel1.add(getUserWebBox(), null);
-                       jPanel1.add(getJScrollPane1(), null);
-                       jPanel1.add(getClientName(), null);
-                       jPanel1.add(getJScrollPane6(), null);
-               }
-               return jPanel1;
-       }
-
-       /**
-        * This method initializes jPanel2
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getJPanel2() {
-               if (jPanel2 == null) {
-                       jPanel2 = new JPanel();
-                       jPanel2.setLayout(null);
-                       jPanel2.setBounds(new Rectangle(2, 403, 826, 309));
-                       jPanel2.add(getJPanel(), null);
-                       jPanel2.add(getJPanel1(), null);
-               }
-               return jPanel2;
-       }
-
-       /**
-        * This method initializes jPanel3
-        * 
-        * @return javax.swing.JPanel
-        */
-       private JPanel getJPanel3() {
-               if (jPanel3 == null) {
-                       jPanel3 = new JPanel();
-                       jPanel3.setLayout(new BoxLayout(getJPanel3(), BoxLayout.X_AXIS));
-                       jPanel3.setBounds(new Rectangle(1, 715, 824, 21));
-                       jPanel3.setBorder(BorderFactory
-                                       .createEtchedBorder(EtchedBorder.RAISED));
-                       jPanel3.add(statusBar, null);
-               }
-               return jPanel3;
-       }
-
-       /**
-        * This method initializes jScrollPane
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane() {
-               if (jScrollPane == null) {
-                       jScrollPane = new JScrollPane();
-                       jScrollPane.setViewportView(getJTable());
-               }
-               return jScrollPane;
-       }
-
-       /**
-        * This method initializes jScrollPane1
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane1() {
-               if (jScrollPane1 == null) {
-                       jScrollPane1 = new JScrollPane();
-                       jScrollPane1.setBounds(new Rectangle(511, 72, 285, 78));
-                       jScrollPane1
-                                       .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
-                       jScrollPane1.setViewportView(getUserIntroBox());
-               }
-               return jScrollPane1;
-       }
-
-       /**
-        * This method initializes jScrollPane2
-        * 
-        * @return javax.swing.JScrollPane
-        */
-       private JScrollPane getJScrollPane2() {
-               if (jScrollPane2 == null) {
-                       jScrollPane2 = new JScrollPane();
-                       jScrollPane2.setViewportView(getJTable1());
-               }
-               return jScrollPane2;
-       }
-
-       /**
-        * This method initializes jTabbedPane
-        * 
-        * @return javax.swing.JTabbedPane
-        */
-       private JTabbedPane getJTabbedPane() {
-               if (jTabbedPane == null) {
-                       jTabbedPane = new JTabbedPane();
-                       jTabbedPane.setName("Tweet");
-                       jTabbedPane.setBounds(new Rectangle(2, 2, 826, 394));
-                       jTabbedPane.setEnabled(true);
-                       jTabbedPane.addTab("Timeline", null, getJScrollPane(), null);
-                       jTabbedPane.addTab("Mention", null, getJScrollPane2(), null);
-                       jTabbedPane.addTab("Message", null, getJScrollPane3(), null);
-                       jTabbedPane.addTab("SendMessage", null, getJScrollPane4(), null);
-               }
-               return jTabbedPane;
-       }
-
-       /**
-        * This method initializes jTable
-        * 
-        * @return javax.swing.JTable
-        */
-       private JTable getJTable() {
-               if (jTable == null) {
-                       tweetTableModel = new TweetTableModel();
-                       jTable = new JTable(tweetTableModel);
-                       jTable.setFont(new Font("Takao Pゴシック", Font.PLAIN, 10));
-                       jTable.addFocusListener(new java.awt.event.FocusAdapter() {
-                               @Override
-                               public void focusGained(java.awt.event.FocusEvent e) {
-                                       // まだ見ていないtweet数を0にする
-                                       mainAction.actionResetUncheckedTimelineTweetCount();
-                               }
-                       });
-                       jTable.addMouseListener(new java.awt.event.MouseAdapter() {
-                               @Override
-                               public void mousePressed(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               @Override
-                               public void mouseReleased(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               private void showPopup(MouseEvent e) {
-                                       if (e.isPopupTrigger()) {
-                                               // 右クリックのメニューを表示
-                                               getRightClickPopup().show(e.getComponent(), e.getX(),
-                                                               e.getY());
-                                       }
-                               }
-                       });
-
-                       createTweetTable(jTable);
-               }
-               return jTable;
-       }
-
-       /**
-        * This method initializes jTable1
-        * 
-        * @return javax.swing.JTable
-        */
-       private JTable getJTable1() {
-               if (jTable1 == null) {
-                       mentionTableModel = new TweetTableModel();
-                       jTable1 = new JTable(mentionTableModel);
-                       jTable1.addFocusListener(new java.awt.event.FocusAdapter() {
-                               @Override
-                               public void focusGained(java.awt.event.FocusEvent e) {
-                                       mainAction.actionResetUncheckedMentionTweetCount();
-                               }
-                       });
-                       jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
-                               @Override
-                               public void mousePressed(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               @Override
-                               public void mouseReleased(java.awt.event.MouseEvent e) {
-                                       showPopup(e);
-                               }
-
-                               private void showPopup(MouseEvent e) {
-                                       if (e.isPopupTrigger()) {
-                                               // 右クリックのメニューを表示
-                                               getRightClickPopup().show(e.getComponent(), e.getX(),
-                                                               e.getY());
-                                       }
-                               }
-                       });
-                       createTweetTable(jTable1);
-               }
-               return jTable1;
-       }
-
-       /**
-        * This method initializes jTextPane
-        * 
-        * @return javax.swing.JTextPane
-        */
-       private JTextPane getJTextPane() {
-               if (jTextPane == null) {
-                       jTextPane = new JTextPane();
-                       jTextPane.setBackground(Color.white);
-                       jTextPane.addKeyListener(new java.awt.event.KeyAdapter() {
-                               @Override
-                               public void keyReleased(java.awt.event.KeyEvent e) {
-                                       // 残りつぶやける文字数情報を更新
-                                       mainAction.actionUpdateTweetMessageCount();
-                               }
-                       });
-                       jTextPane.addFocusListener(new java.awt.event.FocusAdapter() {
-                               @Override
-                               public void focusGained(java.awt.event.FocusEvent e) {
-                                       updateLen();
-                               }
-
-                               @Override
-                               public void focusLost(java.awt.event.FocusEvent e) {
-                                       updateLen();
-                               }
-
-                               private void updateLen() {
-                                       // 残りつぶやける文字数情報を更新
-                                       mainAction.actionUpdateTweetMessageCount();
-                               }
-                       });
-
-               }
-               return jTextPane;
-       }
-
-       /**
-        * This method initializes jMenuItem
-        * 
-        * @return javax.swing.JMenuItem
-        */
-       private JMenuItem getSaveMenuItem() {
-               if (saveMenuItem == null) {
-                       saveMenuItem = new JMenuItem();
-                       saveMenuItem.setText("Save");
-                       saveMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,
-                                       Event.CTRL_MASK, true));
-               }
-               return saveMenuItem;
-       }
-
-       /**
-        * This method initializes tweetMessageBox
-        * 
-        * @return javax.swing.JEditorPane
-        */
-       private JEditorPane getTweetMessageBox() {
-               if (tweetMessageBox == null) {
-                       tweetMessageBox = new JEditorPane();
-                       tweetMessageBox.setEditable(false);
-                       tweetMessageBox.setContentType("text/html");
-                       tweetMessageBox.setBackground(new Color(255, 255, 255));
-                       tweetMessageBox.addHyperlinkListener(new TweetHyperlinkHandler());
-               }
-               return tweetMessageBox;
-       }
-
-       /**
-        * This method initializes userIntroBox
-        * 
-        * @return javax.swing.JEditorPane
-        */
-       private JEditorPane getUserIntroBox() {
-               if (userIntroBox == null) {
-                       userIntroBox = new JEditorPane();
-               }
-               return userIntroBox;
-       }
-
-       /**
-        * This method initializes userWebBox
-        * 
-        * @return javax.swing.JEditorPane
-        */
-       private JEditorPane getUserWebBox() {
-               if (userWebBox == null) {
-                       userWebBox = new JEditorPane();
-                       userWebBox.setBounds(new Rectangle(8, 134, 201, 16));
-                       userWebBox.setContentType("text/html");
-                       userWebBox.setEditable(false);
-                       userWebBox.addHyperlinkListener(new TweetHyperlinkHandler());
-                       try {
-                               // htmlフォント変更
-                               HTMLDocument doc = (HTMLDocument) userWebBox.getDocument();
-                               StyleSheet[] style = doc.getStyleSheet().getStyleSheets();
-                               for (int i = style.length - 1; i >= 0; i--) {
-                                       Style body = style[i].getStyle("body");
-                                       if (body != null) {
-                                               // TODO: change default font size
-                                               StyleConstants.setFontSize(body, 13);
-                                       }
-                               }
-                       } catch (Exception e) {
-                               e.printStackTrace();
-                       }
-               }
-               return userWebBox;
-       }
-
-       /**
-        * Twitter初期化
-        */
-       private void init() {
-        try {
-            // twitterログイン
-            tweetManager.loginTwitter();
-        } catch (FileNotFoundException ex) {
-            Logger.getLogger(MainGUI.class.getName()).log(Level.SEVERE, null, ex);
-        } catch (IOException ex) {
-            Logger.getLogger(MainGUI.class.getName()).log(Level.SEVERE, null, ex);
-        }
-               // メインアクション初期化
-               /*mainAction = new TweetMainAction(jFrame, tweetManager, statusBar,
-                               tweetTableModel, mentionTableModel, messageTableModel,
-                               sendMessageTableModel, jTable, jTable1, jTable2, jTable3,
-                               jTextPane, jLabel3, jPanel1, jTabbedPane, tweetMessageBox);
-               // 自動更新開始
-               mainAction.startTweetAutoUpdate();*/
-       }
-
-       /**
-        * 右クリックを押した時のポップアップメニューを取得
-        * 
-        * @return
-        */
-       private JPopupMenu getRightClickPopup() {
-               if (rightClickPopup == null) {
-                       rightClickPopup = new JPopupMenu();
-                       JMenuItem directMessageMenuItem = new JMenuItem("ダイレクトメッセージを送信");
-                       directMessageMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // ダイレクトメッセージ送信ダイアログを表示
-                                                       mainAction.actionShowDirectMessageDialog();
-                                               }
-                                       });
-                       rightClickPopup.add(directMessageMenuItem);
-                       JMenuItem retweetMenuItem = new JMenuItem("発言を公式リツイート");
-                       retweetMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // 選択したセルのステータスをRetweet
-                                                       mainAction.actionRetweet();
-                                               }
-                                       });
-                       rightClickPopup.add(retweetMenuItem);
-                       JMenuItem quoteMenuItem = new JMenuItem("発言をコメント付きリツイート");
-                       quoteMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // 選択したセルのステータスをコメント付Retweet
-                                                       mainAction.actionCopySelectedStatusToTweetBoxPane();
-                                               }
-                                       });
-                       rightClickPopup.add(quoteMenuItem);
-
-                       JMenuItem statusBrowserMenuItem = new JMenuItem("発言をブラウザで開く");
-                       statusBrowserMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // 選択したセルのステータスをブラウザで開く
-                                                       mainAction.actionOpenStatusURL();
-                                               }
-                                       });
-                       rightClickPopup.add(statusBrowserMenuItem);
-
-                       JMenuItem openBrowserUserInformationMenuItem = new JMenuItem(
-                                       "この人のTimelineをブラウザで開く");
-                       openBrowserUserInformationMenuItem
-                                       .addActionListener(new java.awt.event.ActionListener() {
-                                               public void actionPerformed(java.awt.event.ActionEvent e) {
-                                                       // 選択したセルのユーザ情報をブラウザで開く
-                                                       mainAction.actionOpenUserURL();
-                                               }
-                                       });
-                       rightClickPopup.add(openBrowserUserInformationMenuItem);
-               }
-               return rightClickPopup;
-       }
-
-}
\ No newline at end of file
index 165c450..249a665 100644 (file)
@@ -79,114 +79,6 @@ import twitter4j.TwitterException;
  */
 public class TweetMainAction {
 
-    /**
-     * 一定時間毎にtweet情報をアップデートするタスク
-     *
-     * @author nishio
-     *
-     */
-    private class TweetAutoUpdateTask implements Runnable {
-
-        TweetAutoUpdateTask() {
-        }
-
-        public void run() {
-            // 一定時間ごとにTweet情報をアップデート
-            try {
-                /*if (currentGetTimelinePeriodNum == 0) {
-                    // Tweetテーブルの情報を更新
-                    actionTweetTableUpdate();
-                }
-                currentGetTimelinePeriodNum = (currentGetTimelinePeriodNum + 1)
-                        % getTimelinePeriodNum;
-
-                if (currentGetMentionPeriodNum == 0) {
-                    // Mentionテーブルの情報を更新
-                    //actionMentionTableUpdate();
-                }
-                currentGetMentionPeriodNum = (currentGetMentionPeriodNum + 1)
-                        % getMentionPeriodNum;
-
-                if (currentGetDirectMessagePeriodNum == 0) {
-                    // DirectMessageテーブルの情報を更新
-                    actionDirectMessageTableUpdate();
-                }
-                currentGetDirectMessagePeriodNum = (currentGetDirectMessagePeriodNum + 1)
-                        % getDirectMessagePeriodNum;
-
-                if (currentGetSendDirectMessagePeriodNum == 0) {
-                    // SendDirectMessageテーブルの情報を更新
-                    actionSendDirectMessageTableUpdate();
-                }
-                currentGetSendDirectMessagePeriodNum = (currentGetSendDirectMessagePeriodNum + 1)
-                        % getSendDirectMessagePeriodNum;*/
-
-                //設定ファイルを保存
-                saveProperties();
-
-            } catch (Exception e1) {
-                e1.printStackTrace();
-            }
-        }
-    }
-
-    /**
-     * 一定時間毎にtweet情報をアップデートする
-     *
-     * @author nishio
-     *
-     */
-    private class TweetAutoUpdateTimer {
-
-        private ScheduledFuture<?> future;
-        private final ScheduledExecutorService scheduler;
-        private final Runnable task;
-        private long time = 0;
-
-        public TweetAutoUpdateTimer() {
-            task = new TweetAutoUpdateTask();
-            scheduler = Executors.newSingleThreadScheduledExecutor();
-        }
-
-        /**
-         * 更新リセット
-         */
-        public void reset() {
-            stop();
-            if (future != null) {
-                future = scheduler.scheduleAtFixedRate(task, time, time,
-                        TimeUnit.SECONDS);
-            }
-        }
-
-        /**
-         * シャットダウン
-         */
-        public void shutdown() {
-            scheduler.shutdown();
-        }
-
-        /**
-         * 一定時間毎にTweetUpdateTaskを実行
-         *
-         * @param time
-         *            second単位
-         */
-        public void start(long time) {
-            future = scheduler.scheduleAtFixedRate(task, 2, time,
-                    TimeUnit.SECONDS);
-            this.time = time;
-        }
-
-        /**
-         * タスク終了
-         */
-        public void stop() {
-            if (future != null) {
-                future.cancel(true);
-            }
-        }
-    }
     // 基本設定を保存するファイル名
     public static final String BASIC_SETTING_FILENAME = TweetConfiguration.BASIC_SETTING_FILENAME;
     // httpのパターン
@@ -213,14 +105,8 @@ public class TweetMainAction {
     private static final int TABLE_ELEMENT_MAX_SIZE = 200;
     // twitterの公式URL
     private static final String TWITTER_URL = "http://twitter.com/";
-    // Tweet情報自動更新タイマー
-    private TweetAutoUpdateTimer autoUpdateTimer = null;
     // 基本設定用ダイアログ
     private ConfigurationDialog configurationDialog = null;
-    private int currentGetDirectMessagePeriodNum = 0;
-    private int currentGetMentionPeriodNum = 0;
-    private int currentGetSendDirectMessagePeriodNum = 0;
-    private int currentGetTimelinePeriodNum = 0;
     // 現在選択しているStatus情報
     private Status currentStatus = null;
     // 詳細情報パネル
@@ -229,20 +115,6 @@ public class TweetMainAction {
     private DirectMessageDialog directMessageDialog = null;
     //Twitter全体からキーワード検索ダイアログ
     private KeywordSearchDialog keywordSearchDialog = null;
-    // directMessageを表示するテーブル
-    private JTable directMessageTable = null;
-    // directMessageのtweetを表示するテーブルモデル
-    private TweetTableModel directMessageTableModel = null;
-    // 情報アップデート間隔(分)
-    private int updatePeriod = 1;
-    // DirectMessageの取得間隔
-    private int getDirectMessagePeriodNum = 10;
-    // Mentionの取得間隔
-    private int getMentionPeriodNum = 5;
-    // SendDirectMessageの取得間隔
-    private int getSendDirectMessagePeriodNum = 30;
-    // Timelineの取得間隔
-    private int getTimelinePeriodNum = 1;
     // 新しく取得した部分のテーブルカラー
     private Color newTableColor = new Color(224, 255, 255);
     // TLのフォント名
@@ -261,22 +133,12 @@ public class TweetMainAction {
     private int mainFrameHeight = 629;
     // MainFrame
     private JFrame mainFrame = null;
-    // メインのtweetを表示するテーブル
-    private JTable mainTweetTable = null;
-    // mentionを表示するテーブル
-    private JTable mentionTable = null;
-    // mentionのtweetを表示するテーブルモデル
-    private TweetTableModel mentionTableModel = null;
     // 設定
     private Properties property = null;
     // 現在テーブルで選択しているユーザ画像のURL
     private URL selectedUserImageURL = null;
     // 現在テーブルで選択しているユーザの名前
     private String selectedUsername = null;
-    // sendDirectMessageを表示するテーブル
-    private JTable sendDirectMessageTable = null;
-    // sendDirectMessageのtweetを表示するテーブル
-    private TweetTableModel sendDirectMessageTableModel = null;
     // ステータス表示ラベル
     private JLabel statusBarLabel = null;
     // 自分がつぶやきをかく領域
@@ -291,8 +153,6 @@ public class TweetMainAction {
     private JEditorPane tweetMessageBox = null;
     // つぶやくことができる文字数を表示するラベル
     private JLabel tweetMessageCountLabel = null;
-    // メインのtweetを表示するテーブルモデル
-    private TweetTableModel tweetTableModel = null;
     private int uncheckedDirectMessageCount = 0;
     private int uncheckedMentionTweetCount = 0;
 
@@ -317,8 +177,6 @@ public class TweetMainAction {
     private List<TweetTabbedTable> tweetTabbedTableList = new ArrayList<TweetTabbedTable>();
     //ツイートテーブルの情報を一定間隔で更新するクラスを作成
     private TweetTaskManager tweetTaskManager = new TweetTaskManager();
-    //ここは一時的に追加している部分 タブにすでに存在しているテーブルの数
-    private int ALREADY_TWEET_TAB_NUM = 4;
 
     /**
      *
@@ -353,14 +211,6 @@ public class TweetMainAction {
     public TweetMainAction(JFrame mainFrame,
             TweetManager tweetManager,
             JLabel statusBarLabel,
-            TweetTableModel tweetTableModel,
-            TweetTableModel mentionTableModel,
-            TweetTableModel directMessageTableModel,
-            TweetTableModel sendDirectMessageTableModel,
-            JTable mainTweetTable,
-            JTable mentionTable,
-            JTable directMessageTable,
-            JTable sendDirectMessageTable,
             JTextPane tweetBoxPane,
             JScrollPane tweetBoxScrollPane,
             JLabel tweetMessageCountLabel,
@@ -380,14 +230,6 @@ public class TweetMainAction {
         this.mainFrame = mainFrame;
         this.tweetManager = tweetManager;
         this.statusBarLabel = statusBarLabel;
-        this.tweetTableModel = tweetTableModel;
-        this.mentionTableModel = mentionTableModel;
-        this.directMessageTableModel = directMessageTableModel;
-        this.sendDirectMessageTableModel = sendDirectMessageTableModel;
-        this.mainTweetTable = mainTweetTable;
-        this.mentionTable = mentionTable;
-        this.directMessageTable = directMessageTable;
-        this.sendDirectMessageTable = sendDirectMessageTable;
         this.tweetBoxPane = tweetBoxPane;
         this.tweetMessageCountLabel = tweetMessageCountLabel;
         this.detailInfoPanel = detailInfoPanel;
@@ -435,10 +277,11 @@ public class TweetMainAction {
                 detailFont = new Font(this.detailFontName, Font.PLAIN,
                         this.detailFontSize);
             }
-            this.mainTweetTable.setFont(tlFont);
-            this.mentionTable.setFont(tlFont);
-            this.directMessageTable.setFont(tlFont);
-            this.sendDirectMessageTable.setFont(tlFont);
+
+            //すべてのテーブルにフォント情報を反映
+            for( TweetTabbedTable t : this.tweetTabbedTableList) {
+                t.getTable().setFont(tlFont);
+            }
 
             // tweetメッセージボックスのフォントはhtmlレベルで変更する必要がある
             this.tweetMessageBox.setFont(detailFont);
@@ -468,15 +311,13 @@ public class TweetMainAction {
     public void actionAddTab(String timerID, int period, TweetGetter tweetGetter, String tabTitle) {
         int numOfTab = this.tweetTabbedTableList.size();
         //すでに追加されているタブの数
-        //TODO:ここはあとで変更する必要がある.なぜなら既に追加されているタブの数は変わる可能性があるから
-        int alreadyExistTabNum = ALREADY_TWEET_TAB_NUM;
 
         //周期的に情報を更新する
         if( period > 0 ) {
             try {
                 //テーブルを作成
                 final TweetTabbedTable table = new TweetTabbedTable(tweetGetter, tabTitle,
-                        this.tweetMainTab, numOfTab + alreadyExistTabNum,
+                        this.tweetMainTab, numOfTab,
                         this.tableElementHeight, this.tweetManager,
                         this, newTableColor, tableElementHeight, timerID);
 
@@ -500,6 +341,9 @@ public class TweetMainAction {
                 Logger.getLogger(TweetMainAction.class.getName()).log(Level.SEVERE, null, ex);
             }
         }
+
+        //フォント情報を更新
+        this.updateFontInformationToComponent();
     }
 
     /**
@@ -647,53 +491,15 @@ public class TweetMainAction {
     }
 
     /**
-     * DirectMessageテーブルの更新
-     */
-    public void actionDirectMessageTableUpdate() {
-        try {
-            // API残り回数を取得
-            int remainingHits = tweetManager.getRateLimitStatus().getRemainingHits();
-            if (remainingHits <= 0) {
-                information("API制限です.リクエストの残数が0となりました.");
-                return;
-            }
-
-            // Direct Message情報
-
-            // DirectMessageを追加
-            List<Status> directMessages = tweetManager.getNewDirectMessages();
-            // まだ見ていないdirectMessage数を追加
-            uncheckedDirectMessageCount += directMessages.size();
-            // まだ見ていないmentionの数をタブに表示
-            if (uncheckedDirectMessageCount > 0) {
-                tweetMainTab.setTitleAt(2, TAB_DIRECT_MESSAGE_STRING + "("
-                        + uncheckedDirectMessageCount + ")");
-            }
-            for (Status t : directMessages) {
-                directMessageTableModel.insertTweet(t);
-                directMessageTable.setRowHeight(0, tableElementHeight);
-            }
-            // 古いデータを削除
-            directMessageTableModel.removeOldTweet(TABLE_ELEMENT_MAX_SIZE);
-
-            directMessageTableModel.refreshTime();
-        } catch (TwitterException e1) {
-            e1.printStackTrace();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-    }
-
-    /**
      * 選択しているタブを削除
      */
     public void actionRemoveFocusedTabbedTable() {
         int selected = this.tweetMainTab.getSelectedIndex();
-        //TODO:ここはいつか変更
-        int deleteTabIndex = selected - this.ALREADY_TWEET_TAB_NUM;
+        int deleteTabIndex = selected;
+        
         if( deleteTabIndex >= 0 ) {
             //タブを削除
-            this.tweetMainTab.remove(deleteTabIndex + this.ALREADY_TWEET_TAB_NUM);
+            this.tweetMainTab.remove(deleteTabIndex);
             int tabSetNum = this.tweetTabbedTableList.get(deleteTabIndex).getTabSetNum();
             //タブのタイマーID
             String timerID = this.tweetTabbedTableList.get(deleteTabIndex).getTimerID();
@@ -701,8 +507,6 @@ public class TweetMainAction {
             //削除
             this.tweetTabbedTableList.remove(deleteTabIndex);
 
-            //一時的に
-            tabSetNum -= this.ALREADY_TWEET_TAB_NUM;
             //削除した分,既存のタブ番号を1つずつずらさなければならない
             int tabNum = this.tweetTabbedTableList.size();
             for(int i = tabSetNum; i < tabNum; i++) {
@@ -728,53 +532,6 @@ public class TweetMainAction {
     }
 
     /**
-     * Mentionテーブル情報を更新
-     */
-    public void actionMentionTableUpdate() {
-        try {
-            // API残り回数を取得
-            int remainingHits = tweetManager.getRateLimitStatus().getRemainingHits();
-            if (remainingHits <= 0) {
-                information("API制限です.リクエストの残数が0となりました.");
-                return;
-            }
-
-            // Mention情報
-
-            // Mentionを追加
-            List<Status> mention = tweetManager.getNewMentionData();
-            // まだ見ていないmention数を追加
-            uncheckedMentionTweetCount += mention.size();
-            // まだ見ていないmentionの数をタブに表示
-            if (uncheckedMentionTweetCount > 0) {
-                tweetMainTab.setTitleAt(1, TAB_MENTION_STRING + "("
-                        + uncheckedMentionTweetCount + ")");
-            }
-            for (Status t : mention) {
-                mentionTableModel.insertTweet(t);
-                mentionTable.setRowHeight(0, tableElementHeight);
-            }
-            // 新規した部分の背景色を変更
-            TableCellRenderer renderer2 = mentionTable.getCellRenderer(0, 2);
-            if (renderer2 instanceof TweetCommentRenderer) {
-                if (this.uncheckedMentionTweetCount - 1 >= 0) {
-                    ((TweetCommentRenderer) renderer2).updateNewCellRow(
-                            this.uncheckedMentionTweetCount, newTableColor);
-                } else {
-                    ((TweetCommentRenderer) renderer2).updateNewCellRow(-1,
-                            newTableColor);
-                }
-            }
-            // 古いデータを削除
-            mentionTableModel.removeOldTweet(TABLE_ELEMENT_MAX_SIZE);
-
-            mentionTableModel.refreshTime();
-        } catch (TwitterException e1) {
-            e1.printStackTrace();
-        }
-    }
-
-    /**
      * 選択した発言をブラウザで開く
      */
     public void actionOpenStatusURL() {
@@ -810,11 +567,6 @@ public class TweetMainAction {
      * Tweet取得時間情報を更新
      */
     public void actionRefreshTime() {
-        tweetTableModel.refreshTime();
-        mentionTableModel.refreshTime();
-        directMessageTableModel.refreshTime();
-        sendDirectMessageTableModel.refreshTime();
-
         //タブに存在する時間情報を更新
         for(TweetTabbedTable t : this.tweetTabbedTableList ) {
             TweetTableModel model = t.getModel();
@@ -948,42 +700,8 @@ public class TweetMainAction {
      */
     public void updateTableHeight(int height) {
         this.tableElementHeight = height;
-        mainTweetTable.setRowHeight(tableElementHeight);
-        mentionTable.setRowHeight(tableElementHeight);
-        directMessageTable.setRowHeight(tableElementHeight);
-        sendDirectMessageTable.setRowHeight(tableElementHeight);
-    }
-
-    /**
-     * SendDirectMessageテーブルを更新
-     */
-    public void actionSendDirectMessageTableUpdate() {
-        try {
-            // API残り回数を取得
-            int remainingHits = tweetManager.getRateLimitStatus().getRemainingHits();
-            if (remainingHits <= 0) {
-                information("API制限です.リクエストの残数が0となりました.");
-                return;
-            }
-            // Direct Message情報
-
-            List<Status> sendDirectMessages = tweetManager.getNewSendDirectMessages();
-
-            //TODO:ここはnullぽが頻発している.修正の必要あり
-            try {
-                for (Status t : sendDirectMessages) {
-                    sendDirectMessageTableModel.insertTweet(t);
-                    sendDirectMessageTable.setRowHeight(0, tableElementHeight);
-                }
-            }catch(NullPointerException e2) {
-                e2.printStackTrace();
-            }
-            // 古いデータを削除
-            sendDirectMessageTableModel.removeOldTweet(TABLE_ELEMENT_MAX_SIZE);
-
-            sendDirectMessageTableModel.refreshTime();
-        } catch (TwitterException e1) {
-            e1.printStackTrace();
+        for( TweetTabbedTable t : this.tweetTabbedTableList) {
+            t.getTable().setRowHeight(tableElementHeight);
         }
     }
 
@@ -1045,76 +763,24 @@ public class TweetMainAction {
     }
 
     /**
-     * Tweetテーブルの情報を更新
-     */
-    public void actionTweetTableUpdate() {
-        try {
-            // API残り回数を取得
-            int remainingHits = tweetManager.getRateLimitStatus().getRemainingHits();
-            if (remainingHits <= 0) {
-                information("API制限です.リクエストの残数が0となりました.");
-                return;
-            }
-
-            // Timeline情報
-            List<Status> tweet = tweetManager.getNewTimelineData();
-            // まだ見ていないtweet数を追加
-            uncheckedTimelineTweetCount += tweet.size();
-            // まだチェックしていないtweetの数をタブにも表示
-            if (uncheckedTimelineTweetCount > 0) {
-                tweetMainTab.setTitleAt(0, TAB_TIMELINE_STRING + "("
-                        + uncheckedTimelineTweetCount + ")");
-            }
-            // Timelineをテーブルに追加
-            for (Status t : tweet) {
-                tweetTableModel.insertTweet(t);
-                mainTweetTable.setRowHeight(0, tableElementHeight);
-            }
-            // 新規した部分の背景色を変更
-            TableCellRenderer renderer = mainTweetTable.getCellRenderer(0, 2);
-            if (renderer instanceof TweetCommentRenderer) {
-                if (this.uncheckedTimelineTweetCount - 1 >= 0) {
-                    ((TweetCommentRenderer) renderer).updateNewCellRow(
-                            this.uncheckedTimelineTweetCount, newTableColor);
-                } else {
-                    ((TweetCommentRenderer) renderer).updateNewCellRow(-1,
-                            newTableColor);
-                }
-            }
-            // 古いデータを削除
-            tweetTableModel.removeOldTweet(TABLE_ELEMENT_MAX_SIZE);
-
-            // 取得したコメント数をステータスバーに表示
-            information(uncheckedTimelineTweetCount
-                    + " 件の新しいツイートを取得しました. (APIリクエスト残数は" + remainingHits
-                    + "回です)");
-
-            tweetTableModel.refreshTime();
-        } catch (TwitterException e1) {
-            e1.printStackTrace();
-        }
-    }
-
-    /**
-     * メインTweet情報を更新
+     * Tweet情報を更新
      *
      * @param e
      */
     public void actionUpdateButton(java.awt.event.ActionEvent e) {
         try {
-            // Tweetテーブルの情報を更新
-            actionTweetTableUpdate();
-            // Mentionテーブルの情報を更新
-            actionMentionTableUpdate();
-            // DirectMessageテーブルの情報を更新
-            actionDirectMessageTableUpdate();
-            // SendDirectMessageテーブルの情報を更新
-            actionSendDirectMessageTableUpdate();
-
-            //新しく追加したタブ上に存在するテーブルの情報を更新
+            //タブ上に存在するテーブルの情報を更新
             for(TweetTabbedTable t : this.tweetTabbedTableList ) {
                 t.updateTweetTable();
             }
+
+            // API残り回数を取得
+            int remainingHits = tweetManager.getRateLimitStatus().getRemainingHits();
+            // 取得したコメント数をステータスバーに表示
+            //TODO:ここの???部分を更新
+            information("???"
+                    + " 件の新しいツイートを取得しました. (APIリクエスト残数は" + remainingHits
+                    + "回です)");
         } catch (Exception e1) {
             e1.printStackTrace();
         }
@@ -1245,61 +911,6 @@ public class TweetMainAction {
     }
 
     /**
-     * updatePeriodを取得します。
-     *
-     * @return updatePeriod
-     */
-    public int getUpdatePeriod() {
-        return updatePeriod;
-    }
-
-    /**
-     * updatePeriodを設定します。
-     *
-     * @param updatePeriod
-     *            updatePeriod
-     */
-    public void setUpdatePeriod(int updatePeriod) {
-        this.updatePeriod = updatePeriod;
-    }
-
-    /**
-     * getDirectMessagePeriodNumを取得します。
-     *
-     * @return getDirectMessagePeriodNum
-     */
-    public int getGetDirectMessagePeriodNum() {
-        return getDirectMessagePeriodNum;
-    }
-
-    /**
-     * getMentionPeriodNumを取得します。
-     *
-     * @return getMentionPeriodNum
-     */
-    public int getGetMentionPeriodNum() {
-        return getMentionPeriodNum;
-    }
-
-    /**
-     * getSendDirectMessagePeriodNumを取得します。
-     *
-     * @return getSendDirectMessagePeriodNum
-     */
-    public int getGetSendDirectMessagePeriodNum() {
-        return getSendDirectMessagePeriodNum;
-    }
-
-    /**
-     * getTimelinePeriodNumを取得します。
-     *
-     * @return getTimelinePeriodNum
-     */
-    public int getGetTimelinePeriodNum() {
-        return getTimelinePeriodNum;
-    }
-
-    /**
      * テーブルで選択した場所のTweet情報を取得
      *
      * @return
@@ -1360,11 +971,6 @@ public class TweetMainAction {
         String mfh = this.property.getProperty("mainFrameHeight");
 
         try {
-            this.getTimelinePeriodNum = Integer.parseInt(gtpn);
-            this.getMentionPeriodNum = Integer.parseInt(gmpn);
-            this.getDirectMessagePeriodNum = Integer.parseInt(gdmpn);
-            this.getSendDirectMessagePeriodNum = Integer.parseInt(gsdmpn);
-            this.updatePeriod = Integer.parseInt(up);
             this.newTableColor = new Color(Integer.parseInt(ntrgb));
             this.tlFontSize = Integer.parseInt(tfs);
             this.detailFontSize = Integer.parseInt(dfs);
@@ -1377,15 +983,6 @@ public class TweetMainAction {
     }
 
     /**
-     * Tweet情報の自動更新のタイムをリセット
-     */
-    public void resetTweetAutoUpdate() {
-        if (this.autoUpdateTimer != null) {
-            this.autoUpdateTimer.reset();
-        }
-    }
-
-    /**
      * 設定ファイルを保存する
      *
      * @throws IOException
@@ -1403,16 +1000,6 @@ public class TweetMainAction {
         if (property == null) {
             this.property = new Properties();
         }
-        // since idを保存
-        this.property.setProperty("getTimelinePeriodNum",
-                this.getTimelinePeriodNum + "");
-        this.property.setProperty("getMentionPeriodNum",
-                this.getMentionPeriodNum + "");
-        this.property.setProperty("getDirectMessagePeriodNum",
-                this.getDirectMessagePeriodNum + "");
-        this.property.setProperty("getSendDirectMessagePeriodNum",
-                this.getSendDirectMessagePeriodNum + "");
-        this.property.setProperty("updatePeriod", this.updatePeriod + "");
         this.property.setProperty("newTableColorRGB", newTableColor.getRGB()
                 + "");
         this.property.setProperty("tlFontName", this.tlFontName);
@@ -1435,62 +1022,6 @@ public class TweetMainAction {
     }
 
     /**
-     * getDirectMessagePeriodNumを設定します。
-     *
-     * @param getDirectMessagePeriodNum
-     *            getDirectMessagePeriodNum
-     */
-    public void setGetDirectMessagePeriodNum(int getDirectMessagePeriodNum) {
-        this.getDirectMessagePeriodNum = getDirectMessagePeriodNum;
-    }
-
-    /**
-     * getMentionPeriodNumを設定します。
-     *
-     * @param getMentionPeriodNum
-     *            getMentionPeriodNum
-     */
-    public void setGetMentionPeriodNum(int getMentionPeriodNum) {
-        this.getMentionPeriodNum = getMentionPeriodNum;
-    }
-
-    /**
-     * getSendDirectMessagePeriodNumを設定します。
-     *
-     * @param getSendDirectMessagePeriodNum
-     *            getSendDirectMessagePeriodNum
-     */
-    public void setGetSendDirectMessagePeriodNum(
-            int getSendDirectMessagePeriodNum) {
-        this.getSendDirectMessagePeriodNum = getSendDirectMessagePeriodNum;
-    }
-
-    /**
-     * getTimelinePeriodNumを設定します。
-     *
-     * @param getTimelinePeriodNum
-     *            getTimelinePeriodNum
-     */
-    public void setGetTimelinePeriodNum(int getTimelinePeriodNum) {
-        this.getTimelinePeriodNum = getTimelinePeriodNum;
-    }
-
-    /**
-     * Tweet情報の自動更新スタート
-     *
-     * @param second
-     */
-    public void startTweetAutoUpdate() {
-        if (this.autoUpdateTimer == null) {
-            this.autoUpdateTimer = new TweetAutoUpdateTimer();
-        }
-        // 一度タイマーストップ
-        this.autoUpdateTimer.stop();
-        // 自動更新開始
-        this.autoUpdateTimer.start(updatePeriod * 60);
-    }
-
-    /**
      * newTableColorを取得します。
      *
      * @return newTableColor
index 72c47e9..a4a57a0 100644 (file)
@@ -102,9 +102,9 @@ public class TweetTabbedTable {
      */
     public void addTableToTab() {
         //テーブルをタブに追加
-        table.setModel(model);
-        table.getTableHeader().setReorderingAllowed(false);
-        table.addMouseListener(new java.awt.event.MouseAdapter() {
+        getTable().setModel(model);
+        getTable().getTableHeader().setReorderingAllowed(false);
+        getTable().addMouseListener(new java.awt.event.MouseAdapter() {
             @Override
             public void mousePressed(java.awt.event.MouseEvent evt) {
                 jTableMousePressed(evt);
@@ -116,10 +116,10 @@ public class TweetTabbedTable {
         });
 
         //tweetを表示するテーブルを作成
-        createTweetTable(table);
+        createTweetTable(getTable());
 
         //スクロールペーン追加
-        scrollPane.setViewportView(table);
+        scrollPane.setViewportView(getTable());
         //タブにテーブル追加
         tabbedPane.addTab(this.title, scrollPane);
     }
@@ -215,10 +215,10 @@ public class TweetTabbedTable {
             // ツイートをテーブルに追加
             for (Status t : tweet) {
                 this.getModel().insertTweet(t);
-                this.table.setRowHeight(0, getTableElementHeight());
+                this.getTable().setRowHeight(0, getTableElementHeight());
             }
             // 新規した部分の背景色を変更
-            TableCellRenderer renderer = table.getCellRenderer(0, 2);
+            TableCellRenderer renderer = getTable().getCellRenderer(0, 2);
             if (renderer instanceof TweetCommentRenderer) {
                 if (this.getUncheckedTweet() - 1 >= 0) {
                     ((TweetCommentRenderer) renderer).updateNewCellRow(
@@ -424,4 +424,11 @@ public class TweetTabbedTable {
         return timerID;
     }
 
+    /**
+     * @return the table
+     */
+    public JTable getTable() {
+        return table;
+    }
+
 }
index 065ff4d..72f2c64 100644 (file)
@@ -150,7 +150,8 @@ public class AccountDialog extends javax.swing.JDialog {
         }
         try {
             this.tweetManager.loginTwitter();
-            this.mainAction.actionTweetTableUpdate();
+            //TODO: ここにツイート情報を更新する動作を追加 この下の行はいささか不安
+            this.mainAction.actionUpdateButton(null);
         } catch (FileNotFoundException ex) {
             Logger.getLogger(AccountDialog.class.getName()).log(Level.SEVERE, null, ex);
         } catch (IOException ex) {
index ff8688e..235bd66 100644 (file)
@@ -104,13 +104,6 @@ public class ConfigurationDialog extends JDialog {
        public void setVisible(boolean b) {
                super.setVisible(b);
                try {
-                       // 画面が見えたときに情報更新
-                       jTextField2.setText(mainAction.getUpdatePeriod() + "");
-                       jTextField.setText(mainAction.getGetTimelinePeriodNum() + "");
-                       jTextField1.setText(mainAction.getGetMentionPeriodNum() + "");
-                       jTextField3.setText(mainAction.getGetDirectMessagePeriodNum() + "");
-                       jTextField4.setText(mainAction.getGetSendDirectMessagePeriodNum()
-                                       + "");
                        jLabel12.setBackground(mainAction.getNewTableColor());
 
                        // font関係
@@ -321,17 +314,6 @@ public class ConfigurationDialog extends JDialog {
                        jButton.addActionListener(new java.awt.event.ActionListener() {
                                public void actionPerformed(java.awt.event.ActionEvent e) {
                                        try {
-                                               // 更新間隔情報
-                                               mainAction.setUpdatePeriod(Integer.parseInt(jTextField2
-                                                               .getText()));
-                                               mainAction.setGetTimelinePeriodNum(Integer
-                                                               .parseInt(jTextField.getText()));
-                                               mainAction.setGetMentionPeriodNum(Integer
-                                                               .parseInt(jTextField1.getText()));
-                                               mainAction.setGetDirectMessagePeriodNum(Integer
-                                                               .parseInt(jTextField3.getText()));
-                                               mainAction.setGetSendDirectMessagePeriodNum(Integer
-                                                               .parseInt(jTextField4.getText()));
                                                mainAction.setNewTableColor(jLabel12.getBackground());
 
                                                // フォント情報
index 60f8a12..dd7ad3c 100644 (file)
     <Container class="javax.swing.JTabbedPane" name="jTabbedPane1">
 
       <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
-      <SubComponents>
-        <Container class="javax.swing.JScrollPane" name="jScrollPane1">
-          <AuxValues>
-            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
-          </AuxValues>
-          <Constraints>
-            <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Timeline">
-                <Property name="tabTitle" type="java.lang.String" value="Timeline"/>
-              </JTabbedPaneConstraints>
-            </Constraint>
-          </Constraints>
-
-          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
-          <SubComponents>
-            <Component class="javax.swing.JTable" name="jTable">
-              <Properties>
-                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
-                  <Connection code="tweetTableModel" type="code"/>
-                </Property>
-                <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
-                  <TableColumnModel selectionModel="0"/>
-                </Property>
-                <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
-                  <TableHeader reorderingAllowed="false" resizingAllowed="true"/>
-                </Property>
-              </Properties>
-              <Events>
-                <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTableMousePressed"/>
-                <EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTableMouseReleased"/>
-                <EventHandler event="focusGained" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="jTableFocusGained"/>
-              </Events>
-            </Component>
-          </SubComponents>
-        </Container>
-        <Container class="javax.swing.JScrollPane" name="jScrollPane2">
-          <AuxValues>
-            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
-          </AuxValues>
-          <Constraints>
-            <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Mention">
-                <Property name="tabTitle" type="java.lang.String" value="Mention"/>
-              </JTabbedPaneConstraints>
-            </Constraint>
-          </Constraints>
-
-          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
-          <SubComponents>
-            <Component class="javax.swing.JTable" name="jTable1">
-              <Properties>
-                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
-                  <Connection code="mentionTableModel" type="code"/>
-                </Property>
-                <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
-                  <TableColumnModel selectionModel="0"/>
-                </Property>
-                <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
-                  <TableHeader reorderingAllowed="false" resizingAllowed="true"/>
-                </Property>
-              </Properties>
-              <Events>
-                <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTable1MousePressed"/>
-                <EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTable1MouseReleased"/>
-                <EventHandler event="focusGained" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="jTable1FocusGained"/>
-              </Events>
-            </Component>
-          </SubComponents>
-        </Container>
-        <Container class="javax.swing.JScrollPane" name="jScrollPane3">
-          <AuxValues>
-            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
-          </AuxValues>
-          <Constraints>
-            <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Message">
-                <Property name="tabTitle" type="java.lang.String" value="Message"/>
-              </JTabbedPaneConstraints>
-            </Constraint>
-          </Constraints>
-
-          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
-          <SubComponents>
-            <Component class="javax.swing.JTable" name="jTable2">
-              <Properties>
-                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
-                  <Connection code="messageTableModel" type="code"/>
-                </Property>
-                <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
-                  <TableColumnModel selectionModel="0"/>
-                </Property>
-                <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
-                  <TableHeader reorderingAllowed="false" resizingAllowed="true"/>
-                </Property>
-              </Properties>
-              <Events>
-                <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTable2MousePressed"/>
-                <EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTable2MouseReleased"/>
-                <EventHandler event="focusGained" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="jTable2FocusGained"/>
-              </Events>
-            </Component>
-          </SubComponents>
-        </Container>
-        <Container class="javax.swing.JScrollPane" name="jScrollPane4">
-          <AuxValues>
-            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
-          </AuxValues>
-          <Constraints>
-            <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Send">
-                <Property name="tabTitle" type="java.lang.String" value="Send"/>
-              </JTabbedPaneConstraints>
-            </Constraint>
-          </Constraints>
-
-          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
-          <SubComponents>
-            <Component class="javax.swing.JTable" name="jTable3">
-              <Properties>
-                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
-                  <Connection code="sendMessageTableModel" type="code"/>
-                </Property>
-                <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
-                  <TableColumnModel selectionModel="0"/>
-                </Property>
-                <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
-                  <TableHeader reorderingAllowed="false" resizingAllowed="true"/>
-                </Property>
-              </Properties>
-            </Component>
-          </SubComponents>
-        </Container>
-      </SubComponents>
     </Container>
     <Container class="javax.swing.JPanel" name="jPanel1">
       <Properties>
index 52d071a..7f9a41e 100644 (file)
@@ -13,7 +13,6 @@ package twitter.gui.form;
 import java.awt.AWTException;
 import java.awt.Image;
 import java.awt.MenuItem;
-import java.awt.Point;
 import java.awt.PopupMenu;
 import java.awt.SystemTray;
 import java.awt.TrayIcon;
@@ -22,29 +21,18 @@ import java.awt.event.ActionListener;
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
 import java.awt.image.BufferedImage;
-import java.net.URL;
 import javax.swing.ImageIcon;
 import javax.swing.JFrame;
-import javax.swing.JMenuItem;
 import javax.swing.JPopupMenu;
-import javax.swing.JTable;
 import javax.swing.UIManager;
 import javax.swing.WindowConstants;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import javax.swing.table.TableColumn;
-import javax.swing.table.TableColumnModel;
 import javax.swing.text.Style;
 import javax.swing.text.StyleConstants;
 import javax.swing.text.html.HTMLDocument;
 import javax.swing.text.html.StyleSheet;
 import twitter.gui.action.TweetMainAction;
-import twitter.gui.component.TweetCommentRenderer;
 import twitter.gui.component.TweetHyperlinkHandler;
-import twitter.gui.component.TweetTableModel;
-import twitter.gui.component.UserImageRenderer;
 import twitter.manage.TweetManager;
-import twitter4j.Status;
 
 /**
  *
@@ -102,6 +90,7 @@ public class NishioTweetManager extends javax.swing.JFrame {
         MenuItem item1 = new MenuItem("画面を開く");
         item1.addActionListener(new ActionListener() {
 
+            @Override
             public void actionPerformed(ActionEvent e) {
                 frame.setVisible(true);
             }
@@ -109,6 +98,7 @@ public class NishioTweetManager extends javax.swing.JFrame {
         MenuItem item2 = new MenuItem("終了");
         item2.addActionListener(new ActionListener() {
 
+            @Override
             public void actionPerformed(ActionEvent e) {
                 systemTray.remove(trayIcon);
                 frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
@@ -136,14 +126,6 @@ public class NishioTweetManager extends javax.swing.JFrame {
     private void initComponents() {
 
         jTabbedPane1 = new javax.swing.JTabbedPane();
-        jScrollPane1 = new javax.swing.JScrollPane();
-        jTable = new javax.swing.JTable();
-        jScrollPane2 = new javax.swing.JScrollPane();
-        jTable1 = new javax.swing.JTable();
-        jScrollPane3 = new javax.swing.JScrollPane();
-        jTable2 = new javax.swing.JTable();
-        jScrollPane4 = new javax.swing.JScrollPane();
-        jTable3 = new javax.swing.JTable();
         jPanel1 = new javax.swing.JPanel();
         userImageLabel = new javax.swing.JLabel();
         jScrollPane5 = new javax.swing.JScrollPane();
@@ -195,69 +177,6 @@ public class NishioTweetManager extends javax.swing.JFrame {
 
         setTitle("Nishio Tweet Manager");
 
-        jTable.setModel(tweetTableModel);
-        jTable.getTableHeader().setReorderingAllowed(false);
-        jTable.addMouseListener(new java.awt.event.MouseAdapter() {
-            public void mousePressed(java.awt.event.MouseEvent evt) {
-                jTableMousePressed(evt);
-            }
-            public void mouseReleased(java.awt.event.MouseEvent evt) {
-                jTableMouseReleased(evt);
-            }
-        });
-        jTable.addFocusListener(new java.awt.event.FocusAdapter() {
-            public void focusGained(java.awt.event.FocusEvent evt) {
-                jTableFocusGained(evt);
-            }
-        });
-        jScrollPane1.setViewportView(jTable);
-
-        jTabbedPane1.addTab("Timeline", jScrollPane1);
-
-        jTable1.setModel(mentionTableModel);
-        jTable1.getTableHeader().setReorderingAllowed(false);
-        jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
-            public void mousePressed(java.awt.event.MouseEvent evt) {
-                jTable1MousePressed(evt);
-            }
-            public void mouseReleased(java.awt.event.MouseEvent evt) {
-                jTable1MouseReleased(evt);
-            }
-        });
-        jTable1.addFocusListener(new java.awt.event.FocusAdapter() {
-            public void focusGained(java.awt.event.FocusEvent evt) {
-                jTable1FocusGained(evt);
-            }
-        });
-        jScrollPane2.setViewportView(jTable1);
-
-        jTabbedPane1.addTab("Mention", jScrollPane2);
-
-        jTable2.setModel(messageTableModel);
-        jTable2.getTableHeader().setReorderingAllowed(false);
-        jTable2.addMouseListener(new java.awt.event.MouseAdapter() {
-            public void mousePressed(java.awt.event.MouseEvent evt) {
-                jTable2MousePressed(evt);
-            }
-            public void mouseReleased(java.awt.event.MouseEvent evt) {
-                jTable2MouseReleased(evt);
-            }
-        });
-        jTable2.addFocusListener(new java.awt.event.FocusAdapter() {
-            public void focusGained(java.awt.event.FocusEvent evt) {
-                jTable2FocusGained(evt);
-            }
-        });
-        jScrollPane3.setViewportView(jTable2);
-
-        jTabbedPane1.addTab("Message", jScrollPane3);
-
-        jTable3.setModel(sendMessageTableModel);
-        jTable3.getTableHeader().setReorderingAllowed(false);
-        jScrollPane4.setViewportView(jTable3);
-
-        jTabbedPane1.addTab("Send", jScrollPane4);
-
         jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
 
         userImageLabel.setBackground(java.awt.Color.black);
@@ -678,59 +597,13 @@ public class NishioTweetManager extends javax.swing.JFrame {
         updateLen();
     }//GEN-LAST:event_jButton4ActionPerformed
 
-    private void jTableFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_jTableFocusGained
-        // まだ見ていないtweet数を0にする
-        mainAction.actionResetUncheckedTimelineTweetCount();
-    }//GEN-LAST:event_jTableFocusGained
-
-    private void jTableMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTableMousePressed
-        //右クリックメニュー表示
-        showPopup(evt);
-        mainAction.actionResetUncheckedTimelineTweetCount();
-    }//GEN-LAST:event_jTableMousePressed
-
-    private void jTableMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTableMouseReleased
-        //右クリックメニュー表示
-        showPopup(evt);
-    }//GEN-LAST:event_jTableMouseReleased
-
-    private void jTable1FocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_jTable1FocusGained
-        mainAction.actionResetUncheckedMentionTweetCount();
-    }//GEN-LAST:event_jTable1FocusGained
-
-    private void jTable1MousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTable1MousePressed
-        //右クリックメニュー表示
-        showPopup(evt);
-        mainAction.actionResetUncheckedMentionTweetCount();
-    }//GEN-LAST:event_jTable1MousePressed
-
-    private void jTable1MouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTable1MouseReleased
-        //右クリックメニュー表示
-        showPopup(evt);
-    }//GEN-LAST:event_jTable1MouseReleased
-
-    private void jTable2FocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_jTable2FocusGained
-        mainAction.actionResetUncheckedDirectMessageCount();
-    }//GEN-LAST:event_jTable2FocusGained
-
-    private void jTable2MousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTable2MousePressed
-        //右クリックメニュー表示
-        showPopup(evt);
-        mainAction.actionResetUncheckedDirectMessageCount();
-    }//GEN-LAST:event_jTable2MousePressed
-
-    private void jTable2MouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTable2MouseReleased
-        //右クリックメニュー表示
-        showPopup(evt);
-    }//GEN-LAST:event_jTable2MouseReleased
-
     private void tweetMessageBoxComponentResized(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_tweetMessageBoxComponentResized
     }//GEN-LAST:event_tweetMessageBoxComponentResized
 
     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
         mainAction.actionUpdateButton(evt);
         // いますぐ更新ボタンを押したので,更新タイムを一度リセットする
-        mainAction.resetTweetAutoUpdate();
+        //mainAction.resetTweetAutoUpdate();
     }//GEN-LAST:event_jButton1ActionPerformed
 
     private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
@@ -792,7 +665,7 @@ public class NishioTweetManager extends javax.swing.JFrame {
     private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem7ActionPerformed
         mainAction.actionUpdateButton(evt);
         // いますぐ更新ボタンを押したので,更新タイムを一度リセットする
-        mainAction.resetTweetAutoUpdate();
+       // mainAction.resetTweetAutoUpdate();
     }//GEN-LAST:event_jMenuItem7ActionPerformed
 
     private void jMenuItem8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem8ActionPerformed
@@ -816,18 +689,6 @@ public class NishioTweetManager extends javax.swing.JFrame {
     }
 
     /**
-     * ポップアップメニューを作成
-     * @param e
-     */
-    private void showPopup(MouseEvent e) {
-        if (e.isPopupTrigger()) {
-            // 右クリックのメニューを表示
-            getRightClickPopup().show(e.getComponent(), e.getX(),
-                    e.getY());
-        }
-    }
-
-    /**
      * @param args the command line arguments
      */
     public static void main(String args[]) {
@@ -862,161 +723,29 @@ public class NishioTweetManager extends javax.swing.JFrame {
 
         // メインアクション初期化
         mainAction = new TweetMainAction(this, tweetManager, statusBar,
-                tweetTableModel, mentionTableModel, messageTableModel,
-                sendMessageTableModel, jTable, jTable1, jTable2, jTable3,
                 jTextPane, jScrollPane9, tweetLengthLabel, jPanel1, jTabbedPane1, tweetMessageBox, userImageLabel,
                 userNameLabel, updateTimeLabel, followerLabel, followingLabel, locationLabel,
                 clientNameLabel, updateLabel, userIntroBox, userWebBox);
         // 自動更新開始
-        mainAction.startTweetAutoUpdate();
+        //TODO:処理を書く
+        //mainAction.startTweetAutoUpdate();
         //もしログインに失敗したら,アカウント設定画面を出す
         if (login == false) {
             mainAction.actionShowAccountDialog();
+        } else {
+            //TLなどを表示するタブを追加
+            //TODO:時間情報を更新
+            this.mainAction.actionAddTimelineTab(60);
+            this.mainAction.actionAddMentionTab(180);
+            this.mainAction.actionAddDirectMessageTab(3000);
         }
-        //テーブル生成
-        createTweetTable(jTable);
-        createTweetTable(jTable1);
-        createTweetTable(jTable2);
-        createTweetTable(jTable3);
-    }
-
-    /**
-     * Tweetを表示するテーブルを作成
-     *
-     * @param model
-     * @return
-     */
-    private void createTweetTable(final JTable table) {
-
-        table.setAutoResizeMode(JTable.AUTO_RESIZE_NEXT_COLUMN);
-        table.setShowVerticalLines(false);
-        table.setShowHorizontalLines(true);
-
-        // Comment部分のColumnを複数行コメントが表示できるようにする
-        TableColumnModel mdl = table.getColumnModel();
-        TableColumn col = mdl.getColumn(1);
-        TweetCommentRenderer commentRenderer = new TweetCommentRenderer();
-        col.setCellRenderer(commentRenderer);
-        // INfo部分のColumnを複数行表示できるように
-        TweetCommentRenderer infoRenderer = new TweetCommentRenderer();
-        col = mdl.getColumn(2);
-        col.setCellRenderer(infoRenderer);
-        col.setMaxWidth(200);
-        col.setMinWidth(150);
-        // TODO:とりあえず幅指定した部分
-        // あとでファイルに幅情報などを保存しておき,それを読み込んで設定するような仕様に変更する
-        // ユーザImageを表示する部分
-        col = mdl.getColumn(0);
-        col.setCellRenderer(new UserImageRenderer());
-        col.setMinWidth(50);
-        col.setMaxWidth(50);
-        // 選択したセルの情報をDetailInfoへと表示
-        table.getSelectionModel().addListSelectionListener(
-                new ListSelectionListener() {
-
-                    @Override
-                    public void valueChanged(ListSelectionEvent e) {
-
-                        if (e.getValueIsAdjusting()) {
-                            return;
-                        }
-
-                        //テーブルで選択した要素を詳細情報として表示
-                        mainAction.setDetailInformationFromTable(table);
-                    }
-                });
-        // JTableを右クリックでも選択できるようにする
-        // また,同じ行を2回クリックできるようにする
-        table.addMouseListener(new MouseAdapter() {
-
-            @Override
-            public void mousePressed(MouseEvent e) {
-                // いったんSelectしていた情報を削除
-                table.clearSelection();
-                // if (e.getButton() == MouseEvent.BUTTON3) {
-                Point p = e.getPoint();
-                int col = table.columnAtPoint(p);
-                int row = table.rowAtPoint(p);
-                table.changeSelection(row, col, false, false);
-                // }
-            }
-        });
-        // MouseEventを追加
-        table.addMouseListener(commentRenderer);
-        table.addMouseMotionListener(commentRenderer);
-        table.addMouseListener(infoRenderer);
-        table.addMouseMotionListener(infoRenderer);
-    }
-
-    /**
-     * 右クリックを押した時のポップアップメニューを取得
-     *
-     * @return
-     */
-    private JPopupMenu getRightClickPopup() {
-        if (rightClickPopup == null) {
-            rightClickPopup = new JPopupMenu();
-            JMenuItem directMessageMenuItem = new JMenuItem("ダイレクトメッセージを送信");
-            directMessageMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-                public void actionPerformed(java.awt.event.ActionEvent e) {
-                    // ダイレクトメッセージ送信ダイアログを表示
-                    mainAction.actionShowDirectMessageDialog();
-                }
-            });
-            rightClickPopup.add(directMessageMenuItem);
-            JMenuItem retweetMenuItem = new JMenuItem("発言を公式リツイート");
-            retweetMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-                public void actionPerformed(java.awt.event.ActionEvent e) {
-                    // 選択したセルのステータスをRetweet
-                    mainAction.actionRetweet();
-                }
-            });
-            rightClickPopup.add(retweetMenuItem);
-            JMenuItem quoteMenuItem = new JMenuItem("発言をコメント付きリツイート");
-            quoteMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-                public void actionPerformed(java.awt.event.ActionEvent e) {
-                    // 選択したセルのステータスをコメント付Retweet
-                    mainAction.actionCopySelectedStatusToTweetBoxPane();
-                }
-            });
-            rightClickPopup.add(quoteMenuItem);
-
-            JMenuItem statusBrowserMenuItem = new JMenuItem("発言をブラウザで開く");
-            statusBrowserMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-                public void actionPerformed(java.awt.event.ActionEvent e) {
-                    // 選択したセルのステータスをブラウザで開く
-                    mainAction.actionOpenStatusURL();
-                }
-            });
-            rightClickPopup.add(statusBrowserMenuItem);
-
-            JMenuItem openBrowserUserInformationMenuItem = new JMenuItem(
-                    "この人のTimelineをブラウザで開く");
-            openBrowserUserInformationMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-                public void actionPerformed(java.awt.event.ActionEvent e) {
-                    // 選択したセルのユーザ情報をブラウザで開く
-                    mainAction.actionOpenUserURL();
-                }
-            });
-            rightClickPopup.add(openBrowserUserInformationMenuItem);
-        }
-        return rightClickPopup;
     }
+    
     //nishio tweet manager
     private JPopupMenu rightClickPopup = null;
     private TweetMainAction mainAction = null;
     // TweetManager
     private TweetManager tweetManager = new TweetManager();
-    //TableModel
-    private TweetTableModel tweetTableModel = new TweetTableModel();
-    private TweetTableModel mentionTableModel = new TweetTableModel();
-    private TweetTableModel messageTableModel = new TweetTableModel();
-    private TweetTableModel sendMessageTableModel = new TweetTableModel();
     // Variables declaration - do not modify//GEN-BEGIN:variables
     private javax.swing.JEditorPane clientNameLabel;
     private javax.swing.JLabel followerLabel;
@@ -1048,20 +777,12 @@ public class NishioTweetManager extends javax.swing.JFrame {
     private javax.swing.JMenuItem jMenuItem8;
     private javax.swing.JMenuItem jMenuItem9;
     private javax.swing.JPanel jPanel1;
-    private javax.swing.JScrollPane jScrollPane1;
-    private javax.swing.JScrollPane jScrollPane2;
-    private javax.swing.JScrollPane jScrollPane3;
-    private javax.swing.JScrollPane jScrollPane4;
     private javax.swing.JScrollPane jScrollPane5;
     private javax.swing.JScrollPane jScrollPane6;
     private javax.swing.JScrollPane jScrollPane7;
     private javax.swing.JScrollPane jScrollPane8;
     private javax.swing.JScrollPane jScrollPane9;
     private javax.swing.JTabbedPane jTabbedPane1;
-    private javax.swing.JTable jTable;
-    private javax.swing.JTable jTable1;
-    private javax.swing.JTable jTable2;
-    private javax.swing.JTable jTable3;
     private javax.swing.JTextPane jTextPane;
     private javax.swing.JToggleButton jToggleButton1;
     private javax.swing.JToggleButton jToggleButton2;