Пример #1
0
        public SliderView(double lowerValue, double upperValue, double pageIncrement, double buttonIncrement)
            : base(WindowType.Toplevel)
        {
            this.Build();
            this.buttonIncrement = buttonIncrement;
            this.lowerValue      = lowerValue;

            moreButtonImage.Image = App.Current.ResourcesLocator.LoadIcon("vas-plus", App.Current.Style.IconSmallWidth);
            lessButtonImage.Image = App.Current.ResourcesLocator.LoadIcon("vas-minus", App.Current.Style.IconSmallWidth);
            morebutton.ApplyStyle(StyleConf.ButtonNormal, App.Current.Style.IconSmallWidth);
            lessbutton.ApplyStyle(StyleConf.ButtonNormal, App.Current.Style.IconSmallWidth);

            morebutton.Clicked            += OnMorebuttonClicked;
            lessbutton.Clicked            += OnLessbuttonClicked;
            scale.Adjustment.Upper         = upperValue;
            scale.Adjustment.Lower         = lowerValue;
            scale.Adjustment.PageIncrement = buttonIncrement;
            scale.Adjustment.StepIncrement = pageIncrement;
            scale.ModifyFont(FontDescription.FromString(App.Current.Style.Font + " 8"));
            scale.ValueChanged       += OnScaleValueChanged;
            scale.FormatValue        += HandleScaleFormatValue;
            scale.ButtonPressEvent   += HandleScaleFormatValue;
            scale.ButtonReleaseEvent += HandleScaleFormatValue;

            Misc.SetFocus(this, false);
        }
Пример #2
0
        public DrawingTool()
        {
            this.Build();
            blackboard = new Blackboard(new WidgetWrapper(drawingarea));
            blackboard.ConfigureObjectEvent    += HandleConfigureObjectEvent;
            blackboard.ShowMenuEvent           += HandleShowMenuEvent;
            blackboard.DrawableChangedEvent    += HandleDrawableChangedEvent;
            blackboard.DrawToolChanged         += HandleDrawToolChangedEvent;
            blackboard.RegionOfInterestChanged += HandleRegionOfInterestChanged;

            selectbutton.Active = true;

            buttonToDrawTool = new Dictionary <RadioButton, DrawTool> ()
            {
                { selectbutton, DrawTool.Selection },
                { eraserbutton, DrawTool.Eraser },
                { penbutton, DrawTool.Pen },
                { textbutton, DrawTool.Text },
                { linebutton, DrawTool.Line },
                { crossbutton, DrawTool.Cross },
                { rectanglebutton, DrawTool.Rectangle },
                { ellipsebutton, DrawTool.Ellipse },
                { rectanglefilledbutton, DrawTool.RectangleArea },
                { ellipsefilledbutton, DrawTool.CircleArea },
                { numberbutton, DrawTool.Counter },
                { anglebutton, DrawTool.Angle },
                { playerbutton, DrawTool.Player },
                { zoombutton, DrawTool.Zoom },
            };

            foreach (var button in buttonToDrawTool.Keys)
            {
                button.Name     = "DrawingToolButton-" + button.Name;
                button.Toggled += HandleToolClicked;
            }

            CreateToolSettings();
            UpdateSettingsVisibility(DrawTool.Selection);

            selectbuttonimage.Image          = App.Current.ResourcesLocator.LoadIcon("vas-select", 20);
            eraserbuttonimage.Image          = App.Current.ResourcesLocator.LoadIcon("vas-eraser", 20);
            penbuttonimage.Image             = App.Current.ResourcesLocator.LoadIcon("vas-pencil", 20);
            textbuttonimage.Image            = App.Current.ResourcesLocator.LoadIcon("vas-text", 20);
            linebuttonimage.Image            = App.Current.ResourcesLocator.LoadIcon("vas-arrow", 20);
            crossbuttonimage.Image           = App.Current.ResourcesLocator.LoadIcon("vas-mark", 20);
            rectanglebuttonimage.Image       = App.Current.ResourcesLocator.LoadIcon("vas-square", 20);
            ellipsebuttonimage.Image         = App.Current.ResourcesLocator.LoadIcon("vas-circle", 20);
            rectanglefilledbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-square-fill", 20);
            ellipsefilledbuttonimage.Image   = App.Current.ResourcesLocator.LoadIcon("vas-circle-fill", 20);
            playerbuttonimage.Image          = App.Current.ResourcesLocator.LoadIcon("vas-person", 20);
            numberbuttonimage.Image          = App.Current.ResourcesLocator.LoadIcon("vas-counter", 20);
            anglebuttonimage.Image           = App.Current.ResourcesLocator.LoadIcon("vas-angle", 20);
            zoombuttonimage.Image            = App.Current.ResourcesLocator.LoadIcon("vas-search", 20);
            zoomoutimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-zoom-out", 14);
            zoominimage.Image  = App.Current.ResourcesLocator.LoadIcon("vas-zoom-in", 14);

            // Force tooltips to be translatable as there seems to be a bug in stetic
            // code generation for translatable tooltips.
            selectbutton.TooltipMarkup          = Catalog.GetString("Selection tool");
            eraserbutton.TooltipMarkup          = Catalog.GetString("Eraser tool");
            penbutton.TooltipMarkup             = Catalog.GetString("Pencil tool");
            textbutton.TooltipMarkup            = Catalog.GetString("Text tool");
            linebutton.TooltipMarkup            = Catalog.GetString("Line tool");
            crossbutton.TooltipMarkup           = Catalog.GetString("Cross tool");
            rectanglebutton.TooltipMarkup       = Catalog.GetString("Rectangle tool");
            ellipsebutton.TooltipMarkup         = Catalog.GetString("Ellipse tool");
            rectanglefilledbutton.TooltipMarkup = Catalog.GetString("Rectangle area tool");
            ellipsefilledbutton.TooltipMarkup   = Catalog.GetString("Ellipsis area tool");
            playerbutton.TooltipMarkup          = Catalog.GetString("Player tool");
            numberbutton.TooltipMarkup          = Catalog.GetString("Index tool");
            anglebutton.TooltipMarkup           = Catalog.GetString("Angle tool");
            stylecombobox.TooltipMarkup         = Catalog.GetString("Change the line style");
            typecombobox.TooltipMarkup          = Catalog.GetString("Change the line style");
            clearbutton.TooltipMarkup           = Catalog.GetString("Clear all drawings");
            zoombutton.TooltipMarkup            = Catalog.GetString("Zoom tool. Click to zoom in, Alt+Shift to zoom out");

            FillLineStyle();
            FillLineType();

            colorbutton.ColorSet += HandleColorSet;
            colorbutton.Color     = Misc.ToGdkColor(Color.Red1);
            colorbutton.UseAlpha  = true;
            colorbutton.Alpha     = Color.FloatToUShort(0.8f);
            blackboard.Color      = Color.Red1;
            blackboard.Color.SetAlpha(0.8f);
            textcolorbutton.ColorSet       += HandleTextColorSet;
            textcolorbutton.Color           = Misc.ToGdkColor(Color.White);
            blackboard.TextColor            = Color.White;
            backgroundcolorbutton.UseAlpha  = true;
            backgroundcolorbutton.Alpha     = 0;
            backgroundcolorbutton.ColorSet += HandleBackgroundColorSet;
            backgroundcolorbutton.Color     = Misc.ToGdkColor(Color.Green1);
            blackboard.TextBackgroundColor  = Misc.ToLgmColor(backgroundcolorbutton.Color,
                                                              backgroundcolorbutton.Alpha);
            textspinbutton.Value             = 12;
            textspinbutton.ValueChanged     += (sender, e) => UpdateTextSize();
            linesizespinbutton.ValueChanged += (sender, e) => UpdateLineWidth();
            linesizespinbutton.Value         = 2;

            zoomscale.CanFocus       = false;
            hscrollbar.ValueChanged += HandleScrollValueChanged;
            wscrollbar.ValueChanged += HandleScrollValueChanged;
            hscrollbar.Visible       = wscrollbar.Visible = false;


            Misc.SetFocus(this, false);

            var saveToFileCommand = new AsyncCommand(SaveToFile);

            saveToFileCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-save", App.Current.Style.IconSmallWidth);
            saveToFileCommand.Text = Catalog.GetString("Save to File");
            savebutton.BindManually(saveToFileCommand);

            var saveToProjectCommand = new AsyncCommand(SaveToProject);

            saveToProjectCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-save", App.Current.Style.IconSmallWidth);
            saveToProjectCommand.Text = Catalog.GetString("Save to Project");
            savetoprojectbutton.BindManually(saveToProjectCommand);

            var clearCommand = new Command(Clear);

            clearCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-delete", App.Current.Style.IconSmallWidth);
            clearbutton.BindManually(clearCommand);

            Bind();
        }
Пример #3
0
        public CapturerBin()
        {
            this.Build();
            Misc.SetFocus(vbox1, false);
            videowindow.ReadyEvent  += HandleReady;
            videowindow.ExposeEvent += HandleExposeEvent;
            videowindow.CanFocus     = true;
            recbutton.Clicked       += (sender, e) => StartPeriod();
            stopbutton.Clicked      += (sender, e) => StopPeriod();
            pausebutton.Clicked     += (sender, e) => PausePeriod();
            resumebutton.Clicked    += (sender, e) => ResumePeriod();
            savebutton.Clicked      += HandleSaveClicked;
            cancelbutton.Clicked    += HandleCloseClicked;

            // Force tooltips to be translatable as there seems to be a bug in stetic
            // code generation for translatable tooltips.
            recbutton.TooltipMarkup        = Catalog.GetString("Start recording period");
            stopbutton.TooltipMarkup       = Catalog.GetString("Stop recording period");
            pausebutton.TooltipMarkup      = Catalog.GetString("Pause clock");
            resumebutton.TooltipMarkup     = Catalog.GetString("Resume clock");
            savebutton.TooltipMarkup       = Catalog.GetString("Save project");
            cancelbutton.TooltipMarkup     = Catalog.GetString("Cancel capture");
            deletelastbutton.TooltipMarkup = Catalog.GetString("Delete event");
            playlastbutton.TooltipMarkup   = Catalog.GetString("Replay event");

            recimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-control-record",
                                                                   Sizes.PlayerCapturerIconSize);
            stopimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-stop",
                                                                    Sizes.PlayerCapturerIconSize);
            pauseimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-pause-clock",
                                                                     Sizes.PlayerCapturerIconSize);
            resumeimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-resume-clock",
                                                                      Sizes.PlayerCapturerIconSize);
            saveimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-save",
                                                                    Sizes.PlayerCapturerIconSize);
            cancelimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-cancel-rec",
                                                                      Sizes.PlayerCapturerIconSize);
            deletelastimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-delete",
                                                                          Sizes.PlayerCapturerIconSize);
            playlastimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-control-play",
                                                                        Sizes.PlayerCapturerIconSize);

            hourText = new TextView(new WidgetWrapper(hourArea))
            {
                Text = "00"
            };
            minutesText = new TextView(new WidgetWrapper(minutesArea))
            {
                Text = "00"
            };
            secondsText = new TextView(new WidgetWrapper(secondsArea))
            {
                Text = "00"
            };

            lasteventbox.Visible      = false;
            deletelastbutton.Clicked += HandleDeleteLast;
            playlastbutton.Clicked   += HandlePlayLast;
            Periods = new List <Period> ();
            Reset();
            Mode = CapturerType.Live;
            App.Current.EventsBroker.Subscribe <EventCreatedEvent> (HandleEventCreated);
            lastlabel.ModifyFont(Pango.FontDescription.FromString(App.Current.Style.Font + " 8px"));
            ReadyToCapture = false;
        }