private void eventboxTitle_HandleButtonPressEvent(object o, Gtk.ButtonPressEventArgs args) { // start moving if (MovingHelper.Window.GdkWindow.State != Gdk.WindowState.Maximized) { if (args.Event.Type == Gdk.EventType.ButtonPress && args.Event.Button == 1) { MovingHelper.StartMove(); } } // maximize if (MaximizeVisible && args.Event.Type == Gdk.EventType.TwoButtonPress && args.Event.Button == 1) { if (MovingHelper.Window.GdkWindow.State == Gdk.WindowState.Maximized) { MovingHelper.Window.GdkWindow.Unmaximize(); } else { MovingHelper.Window.GdkWindow.Maximize(); } } }
private void eventboxTitle_HandleMotionNotifyEvent(object o, Gtk.MotionNotifyEventArgs args) { // move if (MovingHelper.IsMoving) { MovingHelper.Move(); } }
public TitleBox() { this.Build(); this.eventboxTitleBar.ButtonPressEvent += eventboxTitle_HandleButtonPressEvent; this.eventboxTitleBar.ButtonReleaseEvent += eventboxTitle_HandleButtonReleaseEvent; this.eventboxTitleBar.MotionNotifyEvent += eventboxTitle_HandleMotionNotifyEvent; this.buttonMinimize.Clicked += buttonMinimize_HandleClicked; this.buttonMaximize.Clicked += buttonMaximize_HandleClicked; this.buttonClose.Clicked += buttonClose_HandleClicked; this.buttonMinimize.Image = ThemingHelper.LoadImageMinBtn(); this.buttonMaximize.Image = ThemingHelper.LoadImageMaxBtn(); this.buttonClose.Image = ThemingHelper.LoadImageCloseBtn(); // Set style for title box from resource style this.StyleSet+= delegate(object o, Gtk.StyleSetArgs args) { Gdk.Color bgc = this.Style.Background(Gtk.StateType.Selected); this.eventboxCaption.ModifyBg(Gtk.StateType.Normal, bgc); this.eventboxButtons.ModifyBg(Gtk.StateType.Normal, bgc); this.eventboxTitleBarBottom.ModifyBg(Gtk.StateType.Normal, bgc); Gdk.Color fgc = this.Style.Base(Gtk.StateType.Active); this.labelCaption.ModifyFg(Gtk.StateType.Normal, fgc); }; // Init moving helper with top level window this.Realized += delegate(object sender, EventArgs e) { _movingHelper = new MovingHelper(this.Toplevel); MovingHelper.Window.GdkWindow.Title = this.labelCaption.Text; }; // buttons visibility this.buttonMaximize.Realized += delegate(object sender, EventArgs e) { this.buttonMaximize.Visible = _maximize_visible; this.buttonMaximize.Sensitive = _maximize_visible; }; this.buttonMinimize.Realized += delegate(object sender, EventArgs e) { this.buttonMinimize.Visible = _minimize_visible; this.buttonMinimize.Sensitive = _minimize_visible; }; }
public TitleBox() { this.Build(); this.eventboxTitleBar.ButtonPressEvent += eventboxTitle_HandleButtonPressEvent; this.eventboxTitleBar.ButtonReleaseEvent += eventboxTitle_HandleButtonReleaseEvent; this.eventboxTitleBar.MotionNotifyEvent += eventboxTitle_HandleMotionNotifyEvent; this.buttonMinimize.Clicked += buttonMinimize_HandleClicked; this.buttonMaximize.Clicked += buttonMaximize_HandleClicked; this.buttonClose.Clicked += buttonClose_HandleClicked; this.buttonMinimize.Image = ThemingHelper.LoadImageMinBtn(); this.buttonMaximize.Image = ThemingHelper.LoadImageMaxBtn(); this.buttonClose.Image = ThemingHelper.LoadImageCloseBtn(); // Set style for title box from resource style this.StyleSet += delegate(object o, Gtk.StyleSetArgs args) { Gdk.Color bgc = this.Style.Background(Gtk.StateType.Selected); this.eventboxCaption.ModifyBg(Gtk.StateType.Normal, bgc); this.eventboxButtons.ModifyBg(Gtk.StateType.Normal, bgc); this.eventboxTitleBarBottom.ModifyBg(Gtk.StateType.Normal, bgc); Gdk.Color fgc = this.Style.Base(Gtk.StateType.Active); this.labelCaption.ModifyFg(Gtk.StateType.Normal, fgc); }; // Init moving helper with top level window this.Realized += delegate(object sender, EventArgs e) { _movingHelper = new MovingHelper(this.Toplevel); MovingHelper.Window.GdkWindow.Title = this.labelCaption.Text; }; // buttons visibility this.buttonMaximize.Realized += delegate(object sender, EventArgs e) { this.buttonMaximize.Visible = _maximize_visible; this.buttonMaximize.Sensitive = _maximize_visible; }; this.buttonMinimize.Realized += delegate(object sender, EventArgs e) { this.buttonMinimize.Visible = _minimize_visible; this.buttonMinimize.Sensitive = _minimize_visible; }; }
private void eventboxTitle_HandleButtonReleaseEvent(object o, Gtk.ButtonReleaseEventArgs args) { // stop move MovingHelper.StopMove(); }