public hashgen() { self = Assembly.GetExecutingAssembly (); Stream ico = self.GetManifestResourceStream ("HashGenerator.icon.png"); icon = new Pixbuf (ico); // Window Gtk.Window window = new Gtk.Window ((self.GetCustomAttributes (typeof(AssemblyTitleAttribute), false) [0] as AssemblyTitleAttribute).Title); window.SetDefaultSize (600, 500); window.DeleteEvent += OnDelete; window.Icon = icon; #region [Widgets] Box topBox = new VBox (); topBox.Homogeneous = false; // Toolbar Toolbar tb = new Toolbar (); // Toolbar New Button ToolButton tb_New = new ToolButton (Stock.New); tb_New.Clicked += OnToolbarNew_Clicked; tb.Add (tb_New); // Toolbar Open Button ToolButton tb_Open = new ToolButton (Stock.Open); tb_Open.Clicked += OnToolbarOpen_Clicked; tb.Add (tb_Open); // Toolbar Save Button ToolButton tb_Save = new ToolButton (Stock.Save); tb_Save.Clicked += OnToolbarSave_Clicked; tb.Add (tb_Save); tb.Add (new SeparatorToolItem ()); // Toolbar About Button ToolButton tb_About = new ToolButton (Stock.About); tb_About.Clicked += new EventHandler (OnToolbarAbout_Clicked); tb.Add (tb_About); tb.ShowAll (); topBox.PackStart (tb, false, true, 0); Box mbox = new VBox (); topBox.PackStart (mbox, false, true, 0); Box mhbx = new HBox (); mbox.PackStart (mhbx, false, true, 0); entry = new Entry (); mhbx.PackStart (entry, true, true, 0); Button btnFile = new Button (); btnFile.Image = Gtk.Image.NewFromIconName (Stock.File, IconSize.Button); btnFile.Clicked += OnBtnFile_Clicked; mhbx.PackStart (btnFile, false, true, 0); string[] htype = { "MD5", "SHA128", "SHA256", "SHA512", "CRC32" }; cboType = new ComboBox (htype); cboType.Active = 0; mhbx.PackStart (cboType, false, false, 0); Button btnHash = new Button ("Generate"); btnHash.Clicked += OnBtnHash_Clicked; mhbx.PackStart (btnHash, false, false, 0); // Tree ScrolledWindow sw = new ScrolledWindow (); topBox.PackStart (sw, true, true, 0); TreeView tree = new TreeView (); sw.Add (tree); TreeViewColumn inColu = new TreeViewColumn (); inColu.Title = "Input"; CellRendererText inCell = new CellRendererText (); inColu.PackStart (inCell, true); TreeViewColumn typeColu = new TreeViewColumn (); typeColu.Title = "Type"; CellRendererText typeCell = new CellRendererText (); typeColu.PackStart (typeCell, true); TreeViewColumn hashColu = new TreeViewColumn (); hashColu.Title = "Hash"; CellRendererText hashCell = new CellRendererText (); hashCell.Editable = true; hashColu.PackStart (hashCell, true); tree.AppendColumn (inColu); tree.AppendColumn (typeColu); tree.AppendColumn (hashColu); inColu.AddAttribute (inCell, "text", 0); typeColu.AddAttribute (typeCell, "text", 1); hashColu.AddAttribute (hashCell, "text", 2); hashStore = new ListStore (typeof(string), typeof(string), typeof(string)); // Search Filter filter = new TreeModelFilter (hashStore, null); filter.VisibleFunc = SearchTree; tree.Model = filter; // StatusBar Statusbar sb = new Statusbar (); topBox.PackStart (sb, false, true, 0); sb.Add (new Label ("Search:")); search = new Entry (); search.Changed += OnSearch; sb.Add (search); #endregion window.Add (topBox); window.ShowAll (); }
private void Build() { this.Title = "Sqlite browser"; mainVbox = new Gtk.VBox(); mainVbox.Spacing = 4; this.Add(mainVbox); // Main menu mainMenu = new MainMenu(); mainVbox.Add(mainMenu); var mainMenuBox = (Gtk.Box.BoxChild)mainVbox [mainMenu]; // mainMenuBox.Position = 0; mainMenuBox.Expand = false; mainMenuBox.Fill = false; mainMenu.NewSqliteDbActivated += OnNewSqliteDb; mainMenu.OpenSqliteDbActivated += OnOpenSqliteDb; mainMenu.ExitActivated += OnExit; mainMenu.NewSqlEditorWindowActivated += OnNewSqlTab; // toolbar toolbar = new MainToolbar(); mainVbox.Add(toolbar); var toolbarBox = (Gtk.Box.BoxChild)mainVbox [toolbar]; toolbarBox.Expand = false; // left paned leftPaned = new Gtk.HPaned(); leftPaned.CanFocus = true; mainVbox.Add(leftPaned); var objectBrowserScrolledWindow = new Gtk.ScrolledWindow(); objectBrowserScrolledWindow.ShadowType = ShadowType.EtchedIn; objectBrowserScrolledWindow.WidthRequest = 300; leftPaned.Add1(objectBrowserScrolledWindow); objectBrowserTreeView = new TreeView(); objectBrowserScrolledWindow.Add(objectBrowserTreeView); objectBrowserTreeStore = new TreeStore(typeof(Gdk.Pixbuf), typeof(IFeature)); objectBrowserTreeView.Model = objectBrowserTreeStore; // main tabbed area tabbedArea = new Notebook(); leftPaned.Add2(tabbedArea); // status bar statusBar = new Statusbar(); mainVbox.Add(statusBar); var statusBarBox = (Gtk.Box.BoxChild)mainVbox [statusBar]; statusBarBox.Expand = false; statusBarBox.Fill = false; global::Gtk.Label currentDbLabel = new Label(); ApplicationState.Instance.CurrentConnectionChanged += (sender, e) => currentDbLabel.Text = e.DbServerConnection.Name; statusBar.Add(currentDbLabel); this.ShowAll( ); this.DeleteEvent += OnExit; }
private void Build() { this.Title = "Sqlite browser"; mainVbox = new Gtk.VBox (); mainVbox.Spacing = 4; this.Add (mainVbox); // Main menu mainMenu = new MainMenu (); mainVbox.Add (mainMenu); var mainMenuBox = (Gtk.Box.BoxChild)mainVbox [mainMenu]; // mainMenuBox.Position = 0; mainMenuBox.Expand = false; mainMenuBox.Fill = false; mainMenu.NewSqliteDbActivated += OnNewSqliteDb; mainMenu.OpenSqliteDbActivated += OnOpenSqliteDb; mainMenu.ExitActivated += OnExit; mainMenu.NewSqlEditorWindowActivated += OnNewSqlTab; // toolbar toolbar = new MainToolbar(); mainVbox.Add (toolbar); var toolbarBox = (Gtk.Box.BoxChild)mainVbox [toolbar]; toolbarBox.Expand = false; // left paned leftPaned = new Gtk.HPaned(); leftPaned.CanFocus = true; mainVbox.Add (leftPaned); var objectBrowserScrolledWindow = new Gtk.ScrolledWindow (); objectBrowserScrolledWindow.ShadowType = ShadowType.EtchedIn; objectBrowserScrolledWindow.WidthRequest = 300; leftPaned.Add1 (objectBrowserScrolledWindow); objectBrowserTreeView = new TreeView (); objectBrowserScrolledWindow.Add (objectBrowserTreeView); objectBrowserTreeStore = new TreeStore (typeof(Gdk.Pixbuf), typeof(IFeature)); objectBrowserTreeView.Model = objectBrowserTreeStore; // main tabbed area tabbedArea = new Notebook(); leftPaned.Add2 (tabbedArea); // status bar statusBar = new Statusbar(); mainVbox.Add (statusBar); var statusBarBox = (Gtk.Box.BoxChild)mainVbox [statusBar]; statusBarBox.Expand = false; statusBarBox.Fill = false; global::Gtk.Label currentDbLabel = new Label (); ApplicationState.Instance.CurrentConnectionChanged += (sender, e) => currentDbLabel.Text = e.DbServerConnection.Name; statusBar.Add (currentDbLabel); this.ShowAll ( ); this.DeleteEvent += OnExit; }