Changeset 19302

Show
Ignore:
Timestamp:
09/15/08 00:09:33 (5 years ago)
Author:
showyou
Message:

gui不具合修正

Location:
lang/python/crochet
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/python/crochet/chat_allsrc.py

    r19189 r19302  
    3737                imagePath = urllib.urlopen(self.url).read() 
    3838                #time.sleep(1) 
    39                 print "load image" 
    4039                self.lock.acquire() 
    4140                self.func(imagePath,self.result) 
     
    5554                #ここに通信処理を書く 
    5655                self.lock.acquire() 
    57                 a = self.tw.getDM("") 
    58                 self.func(a) 
    59                 self.lock.release() 
     56                try: 
     57                        a = self.tw.getDM("") 
     58                        self.func(a) 
     59                finally: 
     60                        self.lock.release() 
    6061""" 
    6162twitterにhttpRequestを投げるスレッド 
     
    9192                #a = self.tw.get("") 
    9293                self.lock.acquire() 
    93                 a = self.tw.getWithScraping("") 
     94                try: 
     95                        a = self.tw.getWithScraping("") 
     96                except: 
     97                        import traceback 
     98                        print traceback.print_exception()        
    9499                self.func(a) 
    95100                self.lock.release() 
     
    100105""" 
    101106class TmpTwitPage(wx.NotebookPage): 
    102  
    103107        def __init__(self, title, parent, threadLock): 
    104108                 
    105109                self.dataList = [] 
    106110                self.hiddenDataList = [] 
     111                self.tmpDataList = [] 
     112                self.tmpHiddenDataList = [] 
    107113                self.count = 0 
    108114                self.owner = parent 
     
    149155                self.count = 0 
    150156        # 後で多分実装         
    151         def ChangeItemColour(index,data,re,color): 
     157        def ChangeItemColour(self,index,data,re,color): 
    152158                pass     
    153159        def OnDoubleClick(self,event): 
     
    217223                self.list.Focus(self.selectedRow) 
    218224 
    219         def InsertData(self,user,data,hiddenData): 
     225        def InsertData(self,data,hiddenData): 
     226 
    220227                i = self.count 
    221                 self.dataList.insert(i,data)# + self.dataList 
    222                 self.hiddenDataList.insert(i,hiddenData)# + self.hiddenDataList 
     228                #ここでロック 
     229                self.tmpDataList.insert(i,data)# + self.dataList 
     230                self.tmpHiddenDataList.insert(i,hiddenData)# + self.hiddenDataList 
     231                #ここでアンロック 
     232                self.count += 1 
     233 
     234        #InsertDataで追加されてるかどうか確認して、あればリストに入れる 
     235        def CheckUpdate(self): 
     236                if len(self.tmpDataList) < 0 or len(self.tmpHiddenDataList) < 0: 
     237                        return 
     238 
     239                user = self.owner.tw.user['user'] 
    223240                import re 
    224                 b = data         
    225                 j = 0 
    226                 self.list.InsertStringItem(i,"") 
    227                 for j in range(3): 
    228                         self.list.SetStringItem(i,j,b[j]) 
    229                  
    230                 if re.match(user,b[1]): 
    231                         self.list.SetItemBackgroundColour(i,g_config['mycolor']) 
    232  
    233                 if re.search(user,b[2]): 
    234                         self.list.SetItemBackgroundColour(i,wx.Color(255,153,153)) 
    235                 #import time 
    236                 #time.sleep(1)           
    237                 #if 先読み=on 
    238                 #try:    
    239                 self.owner.GetImageListElement(b[4]) 
    240                 #except: 
    241                 #       print "Error:GetImageListElement" 
    242                 #       pass 
    243                 self.count += 1 
     241                i = 0 
     242                for b in self.tmpDataList: 
     243         
     244                        self.list.InsertStringItem(i,"") 
     245                        for j in range(3): 
     246                                self.list.SetStringItem(i,j,b[j]) 
     247                 
     248                        if re.match(user,b[1]): 
     249                                self.list.SetItemBackgroundColour(i,g_config['mycolor']) 
     250 
     251                        if re.search(user,b[2]): 
     252                                self.list.SetItemBackgroundColour(i,wx.Color(255,153,153)) 
     253                 
     254                        #import time 
     255                        #time.sleep(1)           
     256                        #if 先読み=on 
     257                        #try:    
     258                        self.owner.GetImageListElement(b[4]) 
     259                        #except: 
     260                        #       print "Error:GetImageListElement" 
     261                        #       pass 
     262                        i += 1 
     263                self.dataList[:0] =self.tmpDataList 
     264                self.hiddenDataList[:0] = self.tmpHiddenDataList 
     265                self.tmpDataList = []  
     266                self.tmpHiddenDataList = [] 
     267                self.ResetCount() 
    244268""" 
    245269カスタムページ(自分でフィルタリングする) 
     
    259283        u"ゴミ" 
    260284] 
    261  
    262 import Growl 
     285try: 
     286        import Growl 
     287        g_growl = True 
     288except: 
     289        print "not exist:Growl sdk" 
     290        g_growl = False 
     291 
    263292class RecentPage(TmpTwitPage): 
    264293        def __init__(self, parent,threadLock): 
    265294                TmpTwitPage.__init__(self,"Recent",parent,threadLock) 
    266295 
    267                 self.dataList = [] 
    268                 self.hiddenDataList = [] 
     296                #self.dataList = [] 
     297                #self.hiddenDataList = [] 
    269298                self.customPages = [] # フィルタリングページの固まり? 
    270299                 
    271                 self.g = Growl.GrowlNotifier( 
    272                         applicationName='crochet',notifications=['newTwit']) 
    273                 self.g.register() 
     300                if g_growl == True: 
     301                        self.g = Growl.GrowlNotifier( 
     302                                applicationName='crochet',notifications=['newTwit']) 
     303                        self.g.register() 
    274304                 
    275305        def ResetCount(self): 
    276                 self.count = 0 
     306                TmpTwitPage.ResetCount(self)             
    277307                for p in self.customPages: 
    278308                        p.ResetCount() 
     
    322352                                        flag2 = 1 
    323353         
    324                                 if flag2 == 0:   
    325                                         self.InsertData(user,dataListElement,hiddenDataListElement) 
    326                                         self.g.notify(noteType='newTwit',title=x[0],description=x[1], 
    327                                                                         sticky=False) 
     354                                if flag2 == 0: 
     355                                        self.InsertData(dataListElement,hiddenDataListElement) 
     356                                        if g_growl == True: 
     357                                                self.g.notify(noteType='newTwit',title=x[0], 
     358                                                        description=x[1],sticky=False) 
     359                                self.owner.SetNowTime2StatusBar() 
    328360                print "end setdataList" 
    329361 
     
    332364        def __init__(self, parent,threadLock): 
    333365                TmpTwitPage.__init__(self,"Reply",parent,threadLock) 
    334                 self.dataList = [] 
    335                 self.hiddenDataList = [] 
     366                #self.dataList = [] 
     367                #self.hiddenDataList = [] 
    336368         
    337369        def Reflesh(self): 
     
    362394                                hiddenDataListElement.append(x[4])#発言id 
    363395         
    364                                 self.InsertData(user,dataListElement,hiddenDataListElement)      
     396                                self.InsertData(dataListElement,hiddenDataListElement)   
    365397                print "end setdataList" 
    366398 
     
    397429                                hiddenDataListElement.append(x[4])#発言id 
    398430         
    399                                 self.InsertData(user,dataListElement,hiddenDataListElement)      
     431                                self.InsertData(dataListElement,hiddenDataListElement)   
    400432                print "end setdataList" 
    401433         
     
    490522                wx.EVT_TIMER(self,self.TIMER_ID,self.OnUpdate) 
    491523                self.timer.Start(60000) 
     524                 
     525                self.timer11 = wx.Timer(self,self.TIMER_ID3+1) 
     526                wx.EVT_TIMER(self,self.TIMER_ID3+1,self.OnUpdate2) 
     527                self.timer11.Start(10000) 
    492528 
    493529                self.timer2 = wx.Timer(self,self.TIMER_ID2) 
     
    521557                self.RefleshTw() 
    522558         
     559        def OnUpdate2(self, event): 
     560                self.SetStatusBar(u"新着取得中...") 
     561                self.recentPage.CheckUpdate() 
     562                self.replyPage.CheckUpdate() 
     563                self.directPage.CheckUpdate() 
     564                self.SetNowTime2StatusBar() 
     565 
    523566        def OnReplyUpdate(self, event): 
    524567         
     
    601644 
    602645 
    603  
    604646        def WebImageCallback(self,imageData,result): 
    605  
    606647                from cStringIO import StringIO 
    607648                image_pil = Image.open(StringIO(imageData)) 
  • lang/python/crochet/twitter3.py

    r19189 r19302  
    202202                data = opener.open(s) 
    203203                urlstring = data.read() 
    204                 print urlstring 
     204                #print urlstring 
    205205                if num == 1: 
    206206                        return self.scrapeTwit(urlstring,True)