OSDN Git Service

テーブルに表示できるツイートの件数を設定画面から指定できるようにする #24975
authorspark_xp <spark_xp@d8c9ecd3-d47d-4367-8645-de82c00e513f>
Sun, 21 Aug 2011 13:52:38 +0000 (13:52 +0000)
committerspark_xp <spark_xp@d8c9ecd3-d47d-4367-8645-de82c00e513f>
Sun, 21 Aug 2011 13:52:38 +0000 (13:52 +0000)
git-svn-id: http://svn.sourceforge.jp/svnroot/nt-manager/NishioTweetManager/trunk@164 d8c9ecd3-d47d-4367-8645-de82c00e513f

src/twitter/gui/action/TweetMainAction.java
src/twitter/gui/form/ConfigurationDialog.form
src/twitter/gui/form/ConfigurationDialog.java

index 13780ea..48c15ec 100644 (file)
@@ -124,7 +124,7 @@ public class TweetMainAction {
        // Send Direct Messageタブに表示する文字
        public static final String TAB_SEND_DIRECT_MESSAGE_STRING = "Send";
        // テーブルのデータ量が以下の値を超えたら古いデータから削除
-       private static final int TABLE_ELEMENT_MAX_SIZE = 200;
+       private static int tableElementMaxSize = 200;
        // twitterの公式URL
        private static final String TWITTER_URL = "http://twitter.com/";
        // 基本設定用ダイアログ
@@ -449,7 +449,7 @@ public class TweetMainAction {
                                final TweetTabbedTable table = new TweetTabbedTable(
                                                tweetGetter, tabTitle, this.tweetMainTab,
                                                this.tableElementHeight, this.tweetManager, this,
-                                               newTableColor, TABLE_ELEMENT_MAX_SIZE, timerID);
+                                               newTableColor, this.tableElementMaxSize, timerID);
 
                                this.tweetTaskManager.addTask(timerID, new TweetUpdateTask() {
 
@@ -1923,6 +1923,9 @@ public class TweetMainAction {
                 
                 //ログ
                 String log = this.property.getProperty("saveLog");
+                
+                //表示可能ツイート数
+                String nost = this.property.getProperty("numOfShowTweet");
 
                try {
                        this.newTableColor = new Color(Integer.parseInt(ntrgb));
@@ -1950,6 +1953,9 @@ public class TweetMainAction {
                         
                         //ログ
                         this.saveLog = Boolean.parseBoolean(log);
+                        
+                        //表示可能ツイート数
+                        this.tableElementMaxSize = Integer.parseInt(nost);
                } catch (NumberFormatException e) {
                        e.printStackTrace();
                }
@@ -2015,6 +2021,9 @@ public class TweetMainAction {
                 
                 //ログを保存するか
                 this.property.setProperty("saveLog", this.isSaveLog() + "");
+                
+                //テーブルに表示可能なツイートの数
+                this.property.setProperty("numOfShowTweet", this.getTableElementMaxSize() + "");
 
                // プロパティのリストを保存
                property.store(new FileOutputStream("./" + PROPERTIES_DIRECTORY + "/"
@@ -2275,4 +2284,22 @@ public class TweetMainAction {
         public void setSaveLog(boolean check) {
             this.saveLog = check;
         }
+        
+        /**
+         * テーブルに一度に表示できる数を設定
+         * @param size 
+         */
+        public void setTableElementMaxSize(int size) {
+            if( size > 0 ) {
+                this.tableElementMaxSize = size;
+            }
+        }
+        
+        /**
+         * テーブルに一度に表示できる数を取得
+         * @return 
+         */
+        public int getTableElementMaxSize() {
+            return this.tableElementMaxSize;
+        }
 }
index ee088fd..1dbe257 100644 (file)
                   <Group type="102" attributes="0">
                       <EmptySpace max="-2" attributes="0"/>
                       <Group type="103" groupAlignment="0" attributes="0">
-                          <Group type="102" attributes="0">
-                              <Component id="jLabel11" min="-2" max="-2" attributes="0"/>
-                              <EmptySpace max="-2" attributes="0"/>
-                              <Component id="jSpinner5" pref="297" max="32767" attributes="0"/>
-                          </Group>
                           <Component id="jCheckBox1" alignment="0" pref="431" max="32767" attributes="0"/>
                           <Component id="jCheckBox2" alignment="0" pref="431" max="32767" attributes="0"/>
+                          <Group type="102" alignment="0" attributes="0">
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Component id="jLabel12" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jLabel11" alignment="0" min="-2" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Component id="jSpinner5" alignment="0" pref="290" max="32767" attributes="0"/>
+                                  <Component id="jSpinner6" alignment="0" pref="290" max="32767" attributes="0"/>
+                              </Group>
+                          </Group>
                       </Group>
                       <EmptySpace max="-2" attributes="0"/>
                   </Group>
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="0" attributes="0">
                       <EmptySpace max="-2" attributes="0"/>
+                      <Group type="103" groupAlignment="3" attributes="0">
+                          <Component id="jSpinner5" alignment="3" max="32767" attributes="1"/>
+                          <Component id="jLabel11" alignment="3" min="-2" max="-2" attributes="1"/>
+                      </Group>
+                      <EmptySpace min="-2" pref="5" max="-2" attributes="0"/>
                       <Group type="103" groupAlignment="1" max="-2" attributes="0">
-                          <Component id="jLabel11" alignment="0" max="32767" attributes="1"/>
-                          <Component id="jSpinner5" alignment="0" max="32767" attributes="1"/>
+                          <Component id="jLabel12" alignment="0" max="32767" attributes="1"/>
+                          <Component id="jSpinner6" alignment="0" min="-2" max="-2" attributes="1"/>
                       </Group>
                       <EmptySpace max="-2" attributes="0"/>
                       <Component id="jCheckBox1" min="-2" max="-2" attributes="0"/>
                       <EmptySpace max="-2" attributes="0"/>
                       <Component id="jCheckBox2" min="-2" max="-2" attributes="0"/>
-                      <EmptySpace pref="240" max="32767" attributes="0"/>
+                      <EmptySpace pref="215" max="32767" attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>
                 <Property name="text" type="java.lang.String" value="&#x81ea;&#x5206;&#x5b9b;&#x306e;Direct&#x30e1;&#x30c3;&#x30bb;&#x30fc;&#x30b8;&#x3092;&#x30bf;&#x30b9;&#x30af;&#x30d0;&#x30fc;&#x304b;&#x3089;&#x901a;&#x77e5;&#x3059;&#x308b;"/>
               </Properties>
             </Component>
+            <Component class="javax.swing.JSpinner" name="jSpinner6">
+              <Events>
+                <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="jSpinner6StateChanged"/>
+              </Events>
+            </Component>
+            <Component class="javax.swing.JLabel" name="jLabel12">
+              <Properties>
+                <Property name="text" type="java.lang.String" value="&#x30c6;&#x30fc;&#x30d6;&#x30eb;&#x306b;&#x8868;&#x793a;&#x3059;&#x308b;&#x30c4;&#x30a4;&#x30fc;&#x30c8;&#x6570;"/>
+              </Properties>
+            </Component>
           </SubComponents>
         </Container>
       </SubComponents>
index 1df8ea1..7f9c945 100644 (file)
@@ -88,6 +88,9 @@ public class ConfigurationDialog extends javax.swing.JDialog {
                        jSpinner5.setValue(mainAction.getTableElementHeight());
                         jCheckBox1.setSelected( mainAction.getNotifyMention() );
                         jCheckBox2.setSelected( mainAction.getNotifyDirectMessage() );
+                        
+                        //テーブルに表示するツイート数
+                        jSpinner6.setValue(mainAction.getTableElementMaxSize());
             
                } catch (Exception e) {
                        e.printStackTrace();
@@ -141,6 +144,8 @@ public class ConfigurationDialog extends javax.swing.JDialog {
         jSpinner5 = new javax.swing.JSpinner();
         jCheckBox1 = new javax.swing.JCheckBox();
         jCheckBox2 = new javax.swing.JCheckBox();
+        jSpinner6 = new javax.swing.JSpinner();
+        jLabel12 = new javax.swing.JLabel();
         jButton1 = new javax.swing.JButton();
         jButton2 = new javax.swing.JButton();
 
@@ -348,6 +353,14 @@ public class ConfigurationDialog extends javax.swing.JDialog {
         jCheckBox2.setSelected(true);
         jCheckBox2.setText("自分宛のDirectメッセージをタスクバーから通知する");
 
+        jSpinner6.addChangeListener(new javax.swing.event.ChangeListener() {
+            public void stateChanged(javax.swing.event.ChangeEvent evt) {
+                jSpinner6StateChanged(evt);
+            }
+        });
+
+        jLabel12.setText("テーブルに表示するツイート数");
+
         javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
         jPanel4.setLayout(jPanel4Layout);
         jPanel4Layout.setHorizontalGroup(
@@ -355,26 +368,34 @@ public class ConfigurationDialog extends javax.swing.JDialog {
             .addGroup(jPanel4Layout.createSequentialGroup()
                 .addContainerGap()
                 .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(jCheckBox1, javax.swing.GroupLayout.DEFAULT_SIZE, 431, Short.MAX_VALUE)
+                    .addComponent(jCheckBox2, javax.swing.GroupLayout.DEFAULT_SIZE, 431, Short.MAX_VALUE)
                     .addGroup(jPanel4Layout.createSequentialGroup()
-                        .addComponent(jLabel11)
+                        .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(jLabel12)
+                            .addComponent(jLabel11))
                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                        .addComponent(jSpinner5, javax.swing.GroupLayout.DEFAULT_SIZE, 297, Short.MAX_VALUE))
-                    .addComponent(jCheckBox1, javax.swing.GroupLayout.DEFAULT_SIZE, 431, Short.MAX_VALUE)
-                    .addComponent(jCheckBox2, javax.swing.GroupLayout.DEFAULT_SIZE, 431, Short.MAX_VALUE))
+                        .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(jSpinner5, javax.swing.GroupLayout.DEFAULT_SIZE, 290, Short.MAX_VALUE)
+                            .addComponent(jSpinner6, javax.swing.GroupLayout.DEFAULT_SIZE, 290, Short.MAX_VALUE))))
                 .addContainerGap())
         );
         jPanel4Layout.setVerticalGroup(
             jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(jPanel4Layout.createSequentialGroup()
                 .addContainerGap()
+                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(jSpinner5)
+                    .addComponent(jLabel11))
+                .addGap(5, 5, 5)
                 .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
-                    .addComponent(jLabel11, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
-                    .addComponent(jSpinner5, javax.swing.GroupLayout.Alignment.LEADING))
+                    .addComponent(jLabel12, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .addComponent(jSpinner6, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                 .addComponent(jCheckBox1)
                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                 .addComponent(jCheckBox2)
-                .addContainerGap(240, Short.MAX_VALUE))
+                .addContainerGap(215, Short.MAX_VALUE))
         );
 
         jTabbedPane1.addTab("表示", jPanel4);
@@ -471,6 +492,9 @@ public class ConfigurationDialog extends javax.swing.JDialog {
             mainAction.setTableElementHeight(Integer.parseInt( jSpinner5.getValue().toString() ));
             mainAction.setNotifyMention( jCheckBox1.isSelected() );
             mainAction.setNotifyDirectMessage( jCheckBox2.isSelected() );
+            
+            //ツイート表示数
+            mainAction.setTableElementMaxSize(Integer.parseInt( jSpinner6.getValue().toString() ));
         } catch (Exception e1) {
             e1.printStackTrace();
         }
@@ -537,6 +561,10 @@ public class ConfigurationDialog extends javax.swing.JDialog {
         // TODO add your handling code here:
     }//GEN-LAST:event_jCheckBox1ActionPerformed
 
+private void jSpinner6StateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jSpinner6StateChanged
+// TODO add your handling code here:
+}//GEN-LAST:event_jSpinner6StateChanged
+
     //twitter
     private TweetMainAction mainAction;
     // 利用可能なフォント一覧
@@ -563,6 +591,7 @@ public class ConfigurationDialog extends javax.swing.JDialog {
     private javax.swing.JLabel jLabel1;
     private javax.swing.JLabel jLabel10;
     private javax.swing.JLabel jLabel11;
+    private javax.swing.JLabel jLabel12;
     private javax.swing.JLabel jLabel2;
     private javax.swing.JLabel jLabel3;
     private javax.swing.JLabel jLabel4;
@@ -581,6 +610,7 @@ public class ConfigurationDialog extends javax.swing.JDialog {
     private javax.swing.JSpinner jSpinner3;
     private javax.swing.JSpinner jSpinner4;
     private javax.swing.JSpinner jSpinner5;
+    private javax.swing.JSpinner jSpinner6;
     private javax.swing.JTabbedPane jTabbedPane1;
     // End of variables declaration//GEN-END:variables