Changeset 34179 for lang/csharp

Show
Ignore:
Timestamp:
06/28/09 21:38:36 (5 years ago)
Author:
hoge1e3
Message:

検索履歴のデータ構造変更。searchedNewest,searchedOldest

Location:
lang/csharp/soyText/soyText
Files:
10 modified

Legend:

Unmodified
Added
Removed
  • lang/csharp/soyText/soyText/EditorTab.cs

    r34038 r34179  
    4545            else 
    4646            { 
    47                 newDocument(); 
    48                 refreshList(); 
     47                //newDocument(); 
     48                refreshList(null); 
    4949            } 
    5050            listInited = true; 
     
    9595        public void refreshList() 
    9696        { 
    97             refreshList(null); 
     97            refreshList(condition); 
    9898        } 
    9999        TerminableThread searchThread; 
     
    108108            if (kw == "" || kw==null) Text = "soyText"; 
    109109            else Text = kw + " - " + "soyText"; 
    110             if ((condition ?? "") != "") 
     110            var oldCond=(condition ?? ""); 
     111            var newCond=(kw ?? ""); 
     112            if (oldCond != "" && newCond!=oldCond) 
    111113            { 
    112114                var oldSL = documentSet.searchLogSet.get(condition); 
     
    117119                } 
    118120            } 
    119             condition = (kw ?? ""); 
     121            condition = newCond; 
    120122            if (titleChanged != null) titleChanged(kw); 
    121123            if (documentSearcher != null) documentSearcher.terminate(); 
     
    236238                { 
    237239                    command.Text = condition; 
     240                    parentForm.curTab.refreshList(); 
    238241                } 
    239242                else 
  • lang/csharp/soyText/soyText/Form2.cs

    r34038 r34179  
    1212    public partial class Form2 : Form 
    1313    { 
    14         EditorTab curTab; 
     14        public EditorTab curTab; 
    1515        public Workspace workspace; 
    1616        public int inst = 0; 
     
    5757        private void アーカイブAToolStripMenuItem_Click(object sender, EventArgs e) 
    5858        { 
     59            if (curTab.curDoc == null) return; 
    5960            curTab.curDoc.state = DocumentState.archived; 
    6061            curTab.docListBox.Items.Remove(curTab.curDoc); 
     
    156157        private void 外部プログラムを実行RToolStripMenuItem_Click(object sender, EventArgs e) 
    157158        { 
     159            if (curTab.curDoc == null) return; 
    158160            var f = new ExecForm(); 
    159161            f.Show(); 
  • lang/csharp/soyText/soyText/LoggedDocumentSearcher.cs

    r34127 r34179  
    3232            UniqueList<string> res = new UniqueList<string>(); 
    3333            bool searchedToLast = false; 
     34            Document newestDoc=null,oldestDoc=null; 
    3435            try 
    3536            { 
    3637                searchLog = documentSet.searchLogSet.addOrGet(condition); 
    3738                searchLog.parsed["closed"] = "false"; 
    38                 useSearchLog = searchLog.parsed["hasCache"] == "true"; 
    39                 bool hasCompleteCache = searchLog.parsed["hasCompleteCache"] == "true"; 
     39                var newest = TimeFormat.fromFormat(searchLog.parsed["searchedNewest"]); 
     40                var oldest = TimeFormat.fromFormat(searchLog.parsed["searchedOldest"]); 
     41 
     42                useSearchLog = (newest != null); 
     43                bool hasCompleteCache = (oldest == null); 
     44 
    4045 
    4146                var rec0 = documentSet.getRecents(); 
     
    5459                { 
    5560                    var d = dent.Value; 
     61                    if (newestDoc==null) newestDoc=d; 
     62                    oldestDoc=d; 
    5663                    Debug.print("文書を検索: " + condition + "(" + cnt + "/" + c + ") - " + found + "件見つかりました"); 
    5764                    cnt++; 
    58                     if (skip != 0 && d.lastUpdate >= skip) 
     65                    if (skip != 0 && d.lastUpdate > skip) 
    5966                    { 
    6067                        continue; 
     
    6673                            useSearchLog = false; 
    6774                        } 
    68                         if (d.id == searchLog.id) 
     75                        if (d.lastUpdate < ((DateTime)newest).Ticks) 
    6976                        { 
    70                             Document lastDoc = null; 
     77                            //Debug.alert(TimeFormat.format(d.lastUpdate) + " < " +  
     78                            //            TimeFormat.format(  ((DateTime)newest).Ticks ) ); 
     79 
     80                            //Document lastDoc = null; 
    7181                            foreach (var l in Str.eachLine(searchLog.body)) 
    7282                            { 
     
    7484                                if (d2 != null) 
    7585                                { 
    76                                     lastDoc = d2; 
     86                                    //lastDoc = d2; 
    7787                                    if (res.add(l)) 
    7888                                    { 
     
    8393                            if (hasCompleteCache) 
    8494                            { 
     95                                searchedToLast = true; 
    8596                                break; 
    8697                            } 
    87                             if (lastDoc != null) 
     98                            skip = ((DateTime)oldest).Ticks; 
     99                            /*if (lastDoc != null) 
    88100                            { 
    89101                                skip = (lastDoc.lastUpdate); 
    90                             } 
     102                            }*/ 
     103                        } 
     104                        else 
     105                        { 
     106                            //Debug.alert(d.lastUpdate+" >= "+((DateTime)newest).Ticks); 
     107 
    91108                        } 
    92109                    } 
     
    105122            finally 
    106123            { 
    107                 searchLog.parsed["hasCache"] = "true"; 
    108                 searchLog.parsed["hasCompleteCache"] = (searchedToLast?"true":"false"); 
     124                searchLog.parsed["searchedNewest"] = TimeFormat.format(newestDoc.lastUpdate); 
     125                if (searchedToLast) 
     126                { 
     127                    searchLog.parsed["searchedOldest"] = ""; 
     128                } 
     129                else 
     130                { 
     131                    searchLog.parsed["searchedOldest"] = TimeFormat.format(oldestDoc.lastUpdate); 
     132                } 
     133                //searchLog.parsed["hasCache"] = "true"; 
     134                //searchLog.parsed["hasCompleteCache"] = (searchedToLast?"true":"false"); 
    109135                var con = ""; 
    110136                foreach (var id in res) 
  • lang/csharp/soyText/soyText/SearchLogSet.cs

    r33777 r34179  
    2222            if (d.parsed["type"] != "SearchLog") return false; 
    2323            var c=d.parsed["condition"]; 
     24            if (c == null) return false; 
    2425            if (!expr2doc.ContainsKey(c)) { 
    2526                           expr2doc[c]=d; 
  • lang/csharp/soyText/soyText/TimeFormat.cs

    r34020 r34179  
    33using System.Linq; 
    44using System.Text; 
     5using System.Text.RegularExpressions; 
    56 
    67namespace SoyText 
     
    1314            return format(dtNow); 
    1415        } 
     16        public static String format(long t) { 
     17            return format(new DateTime(t)); 
     18        } 
    1519        public static String format(DateTime t) 
    1620        { 
     
    1822 
    1923        } 
    20         /* 
    21         internal static long toLong(string time) 
     24         
     25        internal static DateTime? fromFormat(string time) 
    2226        { 
     27            if (time==null) return null; 
    2328            int y, M, d, h, m, s; 
    24  
    25             DateTime t = new DateTime(y,M,d,h,m,s); 
    26  
    27         }*/ 
     29            var r=Regex.Match(time, @"([0-9][0-9])([0-9][0-9])([0-9][0-9])_([0-9][0-9])([0-9][0-9])([0-9][0-9])"); 
     30            if (r.Success) 
     31            { 
     32                y = int.Parse(r.Groups[1].Value)+2000; 
     33                if (y > 2070) y = -100; 
     34                M = int.Parse(r.Groups[2].Value); 
     35                d = int.Parse(r.Groups[3].Value); 
     36                h = int.Parse(r.Groups[4].Value); 
     37                m = int.Parse(r.Groups[5].Value); 
     38                s = int.Parse(r.Groups[6].Value); 
     39                DateTime t = new DateTime(y, M, d, h, m, s); 
     40                return t; 
     41            } 
     42            return null; 
     43        } 
    2844    } 
    2945} 
  • lang/csharp/soyText/soyText/bin/Debug/soyText.application

    r34144 r34179  
    1212        </dsig:Transforms> 
    1313        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
    14         <dsig:DigestValue>lqrKlSdVtPT+fk18yC3mvzpExf0=</dsig:DigestValue> 
     14        <dsig:DigestValue>FR4XEFY5NbLA8mTZgaYjOOnGrb0=</dsig:DigestValue> 
    1515      </hash> 
    1616    </dependentAssembly> 
  • lang/csharp/soyText/soyText/bin/Debug/soyText.exe.manifest

    r34144 r34179  
    113113  </dependency> 
    114114  <dependency> 
    115     <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="soyText.exe" size="80384"> 
     115    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="soyText.exe" size="81408"> 
    116116      <assemblyIdentity name="soyText" version="1.0.0.0" language="neutral" processorArchitecture="msil" /> 
    117117      <hash> 
     
    120120        </dsig:Transforms> 
    121121        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
    122         <dsig:DigestValue>/jitbLMts8/pejNt1+sbgUyErq0=</dsig:DigestValue> 
     122        <dsig:DigestValue>yoAAAVQSDievuUfAKenez35Vdvk=</dsig:DigestValue> 
    123123      </hash> 
    124124    </dependentAssembly> 
  • lang/csharp/soyText/soyText/bin/Debug/soyText.vshost.application

    r34144 r34179  
    1212        </dsig:Transforms> 
    1313        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
    14         <dsig:DigestValue>lqrKlSdVtPT+fk18yC3mvzpExf0=</dsig:DigestValue> 
     14        <dsig:DigestValue>FR4XEFY5NbLA8mTZgaYjOOnGrb0=</dsig:DigestValue> 
    1515      </hash> 
    1616    </dependentAssembly>