OSDN Git Service

no message
authorwagashi <wagashi@users.sourceforge.jp>
Thu, 2 Dec 2010 10:52:19 +0000 (19:52 +0900)
committerwagashi <wagashi@users.sourceforge.jp>
Thu, 2 Dec 2010 10:52:19 +0000 (19:52 +0900)
passer/MainForm.cs
passer/MainFormEvent.cs
passer/Program.cs

index 08bd64f..81d5573 100644 (file)
@@ -631,52 +631,6 @@ namespace Lugens.Passer
             return null;
         }
 
-        public void ShowFileList()
-        {
-            if (Directory.Exists(this.searchTextBox.TextBox.Text))
-            {
-
-                this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Items.Clear();
-                if (this.searchTextBox.TextBox.Text.Equals(Directory.GetDirectoryRoot(this.searchTextBox.TextBox.Text)))
-                {
-                    DriveInfo driveInfo = new DriveInfo(this.searchTextBox.TextBox.Text[0].ToString());
-                    if (!driveInfo.IsReady)
-                        return;
-                }
-                foreach (string directory in Directory.GetDirectories(this.searchTextBox.TextBox.Text))
-                {
-                    IconListViewItem item = new IconListViewItem();
-                    item.Name = directory.Substring(this.searchTextBox.TextBox.Text.Length);
-                    item.Text = directory;
-                    item.Type = IconListViewType.Directory;
-                    item.Icon = Program.DirectoryIcon;
-                    this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Items.Add(item);
-                }
-                foreach (string file in Directory.GetFiles(this.searchTextBox.TextBox.Text))
-                {
-                    IconListViewItem item = new IconListViewItem();
-                    item.Name = file.Substring(this.searchTextBox.TextBox.Text.Length);
-                    item.Text = file;
-                    item.Type = IconListViewType.Directory;
-
-                    Win32.SHFILEINFO shinfo = new Win32.SHFILEINFO();
-                    Win32.SHGetFileInfo(file, 0, ref shinfo, Marshal.SizeOf(shinfo), Win32.SHGFI_ICON | Win32.SHGFI_LARGEICON);
-                    if(shinfo.hIcon != IntPtr.Zero)
-                        item.Icon = System.Drawing.Icon.FromHandle(shinfo.hIcon);
-
-                    this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Items.Add(item);
-                }
-            }
-            if (this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Items.Count == 0)
-            {
-                this.searchTextBox.TextBox.DropdownForm.DoVisibleChange(false);
-                return;
-            }
-            this.searchTextBox.TextBox.SetDropdownFormLocation();
-            this.searchTextBox.TextBox.DropdownForm.DropdownListBox.SelectedIndex = 0;
-            this.searchTextBox.TextBox.DropdownForm.DoVisibleChange(true);
-        }
-
         public void DoVisibleChange(bool visible)
         {
             if (visible)
index 8c4b4dd..3a54145 100644 (file)
@@ -164,6 +164,7 @@ namespace Lugens.Passer
                 IconListBoxItem item = new IconListBoxItem();
                 item.Name = d.Name;
                 item.Text = item.Name;
+                item.ToolTipText = item.Name;
                 item.Type = IconListBoxType.Directory;
                 switch (d.DriveType)
                 {
@@ -297,8 +298,9 @@ namespace Lugens.Passer
                             foreach (string directory in Directory.GetDirectories(directories, files + "*"))
                             {
                                 IconListBoxItem item = new IconListBoxItem();
-                                item.Name = directory.Substring(directories.Length) + "\\";
-                                item.Text = directory + "\\";
+                                item.Name = directory + "\\";
+                                item.Text = directory.Substring(directories.Length) + "\\";
+                                item.ToolTipText = item.Text;
                                 item.Type = IconListBoxType.Directory;
                                 item.IconImage = Program.DirectoryIcon.ToBitmap();
                                 this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Items.Add(item);
@@ -308,9 +310,10 @@ namespace Lugens.Passer
                                 int extindex;
                                 string ext;
                                 IconListBoxItem item = new IconListBoxItem();
-                                item.Name = file.Substring(directories.Length);
-                                item.Text = file;
-                                item.Type = IconListBoxType.Directory;
+                                item.Name = file;
+                                item.Text = file.Substring(directories.Length); 
+                                item.ToolTipText = item.Text;
+                                item.Type = IconListBoxType.File;
 
                                 extindex = item.Name.LastIndexOf('.');
                                 ext = extindex == -1 ? "" : item.Name.Substring(extindex + 1);
@@ -349,7 +352,7 @@ namespace Lugens.Passer
                             }
                         }
                     }
-                    catch (Exception ex) { MessageBox.Show("ex: " + ex.ToString()); }
+                    catch (Exception ex) { MessageBox.Show(ex.Message); }
                 }
             }
         }
@@ -394,6 +397,7 @@ namespace Lugens.Passer
                     IconListBoxItem item = new IconListBoxItem();
                     item.Name = info.Name;
                     item.Text = info.Name;
+                    item.ToolTipText = info.Display;
                     item.IconImage = info.IconImage;
                     item.Type = IconListBoxType.SearchEngine;
                     item.Data = info;
@@ -406,6 +410,7 @@ namespace Lugens.Passer
                     IconListBoxItem item = new IconListBoxItem();
                     item.Name = info.Name;
                     item.Text = info.Name;
+                    item.ToolTipText = info.Display;
                     item.IconImage = info.IconImage;
                     item.Type = IconListBoxType.SearchEngine;
                     item.Data = info;
@@ -463,9 +468,14 @@ namespace Lugens.Passer
                         IconListBoxItem item = (IconListBoxItem)this.searchTextBox.TextBox.DropdownForm.DropdownListBox.SelectedItem;
                         switch (item.Type)
                         {
+                            case IconListBoxType.File:
                             case IconListBoxType.Directory:
+                                this.searchTextBox.TextBox.Text = item.Name;
+                                this.searchTextBox.TextBox.SelectionStart = this.searchTextBox.TextBox.Text.Length;
+                                Program.Status = ProgramStatus.MainFormOpen; 
+                                this.searchTextBox.TextBox.DropdownForm.DoVisibleChange(false);
+                                break;
                             case IconListBoxType.Command:
-                            case IconListBoxType.File:
                             case IconListBoxType.History:
                             case IconListBoxType.SysCommand:
                             case IconListBoxType.SearchEngineText:
@@ -532,7 +542,10 @@ namespace Lugens.Passer
                             }
                             else
                             {
-                                this.searchTextBox.TextBox.Text = this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Text;
+                                if (item.Type == IconListBoxType.File || item.Type == IconListBoxType.Directory)
+                                    this.searchTextBox.TextBox.Text = item.Name;
+                                else
+                                    this.searchTextBox.TextBox.Text = this.searchTextBox.TextBox.DropdownForm.DropdownListBox.Text;
                                 this.searchTextBox.TextBox.SelectionStart = this.Text.Length;
                                 Program.Status = ProgramStatus.MainFormOpen;
                                 this.searchTextBox.TextBox.DropdownForm.DoVisibleChange(false);
@@ -730,7 +743,6 @@ namespace Lugens.Passer
 
         private void textBox_cmd_Complement(IconListBoxType type)
         {
-            //this.ShowFileList();
         }
 
         private void textBox_cmd_ImeComposition(int type, string text)
@@ -774,19 +786,19 @@ namespace Lugens.Passer
             if (text.Equals(this.dropdownListBoxText))
                 return;
 
-            if (!(text.StartsWith(":") || Program.CommandDic.ContainsKey(text)))
-                return;
-
             int lastIndex = listBox.ClientRectangle.Height / listBox.ItemHeight;
             if (listBox.TopIndex > listBox.SelectedIndex || (listBox.TopIndex + lastIndex) <= listBox.SelectedIndex)
                 return;
 
             IconListBoxItem item = (IconListBoxItem)listBox.SelectedItem;
+            if (item.Type == IconListBoxType.SearchEngineText)
+                return;
+
             DropdownListForm dropdownForm = this.searchTextBox.TextBox.DropdownForm;
 
             Rectangle r = dropdownForm.Bounds;
             r.Y = dropdownForm.Location.Y + listBox.GetItemRectangle(listBox.SelectedIndex).Y;
-            if (item.ToolTipText == null || item.ToolTipText.Length == 0)
+            if (this.SelectedEngineType == 0 && (item.ToolTipText == null || item.ToolTipText.Length == 0))
             {
                 CommandInfo info = Program.CommandDic[text];
                 text = info.Comment == null ? info.Name : info.Comment;
index 96f1218..d98ef91 100644 (file)
@@ -1382,7 +1382,7 @@ namespace Lugens.Passer
             for (int i = 0; i < lines.Length; i++)
             {
                 string line = lines[i];
-
+                
                 //ドライブが指定されている
                 if (line.Length > 1 && line.Substring(1).StartsWith(@":\"))
                 {
@@ -1397,7 +1397,7 @@ namespace Lugens.Passer
                     }
                     catch(IOException ioe)
                     {
-                        MessageBox.Show(ioe.ToString());
+                        MessageBox.Show(ioe.Message);
                         return ret.ToArray(); ;
                     }
                     if (fileCount == 0)