Skip to content
2 changes: 2 additions & 0 deletions gui/fitpanelv7/inc/ROOT/RFitPanel6.hxx
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,8 @@ struct RFitPanelModel6 {
int fContourPoints{0};
float fConfLevel{0.};
bool fContourImpose{false};
std::string fColorContour[3];
int colorC[3];

//Scan Tab
int fScanPoints{0};
Expand Down
17 changes: 12 additions & 5 deletions gui/fitpanelv7/src/RFitPanel6.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "TBufferJSON.h"
#include "TMath.h"
#include "Math/Minimizer.h"
#include "TColor.h"
#include <sstream>
#include <iostream>
#include <iomanip>
Expand Down Expand Up @@ -379,9 +380,15 @@ void ROOT::Experimental::RFitPanel6::ProcessData(unsigned connid, const std::str
void ROOT::Experimental::RFitPanel6::DrawContour(const std::string &model)
{
static TGraph * graph = 0;
int colorC[3];
std::string options;
TBackCompFitter *fFitter = 0;
auto obj = TBufferJSON::FromJSON<ROOT::Experimental::RFitPanelModel6>(model);
for(int i=0; i<3; i++){
colorC[i] = std::stoi(obj->fColorContour[i]);
}
TColor *color = new TColor(1234, colorC[0], colorC[1], colorC[2]);


if(!(obj->fContourImpose)) {
if(graph){
Expand All @@ -399,12 +406,12 @@ void ROOT::Experimental::RFitPanel6::DrawContour(const std::string &model)
return;
}

fFitter->Contour(obj->fContourPar1, obj->fContourPar2, graph, obj->fConfLevel);
graph->GetXaxis()->SetTitle( fFitter->GetParName(obj->fContourPar1) );
graph->GetYaxis()->SetTitle( fFitter->GetParName(obj->fContourPar2) );
graph->Draw( options.c_str() );
gPad->Update();

//fFitter->Contour(obj->fContourPar1, obj->fContourPar2, graph, obj->fConfLevel);
//graph->GetXaxis()->SetTitle( fFitter->GetParName(obj->fContourPar1) );
//graph->GetYaxis()->SetTitle( fFitter->GetParName(obj->fContourPar2) );
//graph->Draw( options.c_str() );
gPad->Update();

//printf("Points %d Contour1 %d Contour2 %d ConfLevel %f\n", obj->fContourPoints, obj->fContourPar1, obj->fContourPar2, obj->fConfLevel);
}
Expand Down
63 changes: 41 additions & 22 deletions ui5/fitpanel/controller/FitPanel.controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,16 @@ sap.ui.define([
'sap/m/Label',
'sap/m/CheckBox',
'sap/m/Column',
'sap/m/ColumnListItem'
'sap/m/ColumnListItem',
'sap/m/ColorPalettePopover'
], function (GuiPanelController, JSONModel, mButton, mTable,
mDialog, mList, mInput, mLabel, mCheckBox, mColumn, mColumnListItem) {
mDialog, mList, mInput, mLabel, mCheckBox, mColumn, mColumnListItem, ColorPalettePopover) {

"use strict";
var count = 0;
var colorContour;
var colorConf;
var colorContour = "rgb(0,0,0)";
var colorConf = "rgb(0,0,0)";

return GuiPanelController.extend("rootui5.fitpanel.controller.FitPanel", {

//function called from GuiPanelController
Expand Down Expand Up @@ -210,7 +212,7 @@ sap.ui.define([
var json = JSROOT.toJSON(this.parData);
if (this.websocket)
this.websocket.Send("SETPARS:" + json);
console.log("JSON " + json)
//console.log("JSON " + json)
}

this.parsDialog.close();
Expand All @@ -229,10 +231,15 @@ sap.ui.define([
var contourPar2 = parseInt(this.byId("ContourPar2").getSelectedKey());
data.fContourPar2 = contourPar2;
var confLevel = this.byId("ConfLevel").getValue();
data.fConfLevel = confLevel;


this.getView().getModel().refresh();
var colorContourNum = (String((colorContour.replace( /^\D+/g, '')).replace(/[()]/g, ''))).split(',');
data.fColorContour = colorContourNum;

console.log("COLOR " + colorContourNum)
// var colConfN = colorConf.replace( /^\D+/g, '');
// var colorConfNum = colConfN.replace(/[()]/g, '');
// data.fConfLevel = colorConfNum;

this.getView().getModel().refresh();
//Each time we click the button, we keep the current state of the model
if (this.websocket)
this.websocket.Send('SETCONTOUR:'+this.getView().getModel().getJSON());
Expand Down Expand Up @@ -371,55 +378,67 @@ sap.ui.define([

colorPickerContour: function (oEvent) {
this.inputId = oEvent.getSource().getId();
if (!this.oColorPickerPopover) {
this.oColorPickerPopover = new sap.ui.unified.ColorPickerPopover({
if (!this.oColorPickerPopoverContour) {
this.oColorPickerPopoverContour = new sap.ui.unified.ColorPickerPopover({
colorString: "blue",
mode: sap.ui.unified.ColorPickerMode.HSL,
change: this.handleChangeContour.bind(this)
});
}
this.oColorPickerPopover.openBy(oEvent.getSource());
this.oColorPickerPopoverContour.openBy(oEvent.getSource());
// if(!this.oColorPalettePopoverFull) {
// this.oColorPalettePopoverFull = new ColorPalettePopover("oColorPalettePopoverFull", {
// color:"blue",
// colorSelect: this.handleChangeContour.bind(this)
// });
// }

// this.oColorPalettePopoverFull.openBy(oEvent.getSource());
this.oColorPickerPopoverContour.openBy(oEvent.getSource());
},


handleChangeContour: function (oEvent) {
var oView = this.getView();
this.inputId = "";
var color = oEvent.getParameter("colorString");
var color1 = oEvent.getParameter("colorString");
var oButtonContour = this.getView().byId("colorContour");
var oButtonInnerContour = oButtonContour.$().find('.sapMBtnInner');
oButtonInnerContour.css('background',colorContour);
oButtonInnerContour.css('background',color1);
oButtonInnerContour.css('color','#FFFFFF');
oButtonInnerContour.css('text-shadow','1px 1px 2px #333333');

colorContour = color;
colorContour = color1;

return colorContour;
},

colorPickerConf: function (oEvent) {
this.inputId = oEvent.getSource().getId();
if (!this.oColorPickerPopover) {
this.oColorPickerPopover = new sap.ui.unified.ColorPickerPopover({
if (!this.oColorPickerPopoverConf) {
this.oColorPickerPopoverConf = new sap.ui.unified.ColorPickerPopover({
colorString: "blue",
mode: sap.ui.unified.ColorPickerMode.HSL,
change: this.handleChangeConf.bind(this)
});
}
this.oColorPickerPopover.openBy(oEvent.getSource());
this.oColorPickerPopoverConf.openBy(oEvent.getSource());

},


handleChangeConf: function (oEvent) {
var oView = this.getView();
this.inputId = "";
var color = oEvent.getParameter("colorString");
var oButtonContour = this.getView().byId("colorContour");
var color2 = oEvent.getParameter("colorString");
var oButtonContour = this.getView().byId("colorConf");
var oButtonInnerContour = oButtonContour.$().find('.sapMBtnInner');
oButtonInnerContour.css('background',color);
oButtonInnerContour.css('background',color2);
oButtonInnerContour.css('color','#FFFFFF');
oButtonInnerContour.css('text-shadow','1px 1px 2px #333333');

colorConf = color;
colorConf = color2;

return colorConf;
},

Expand Down
14 changes: 14 additions & 0 deletions ui5/fitpanel/style/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,17 @@
margin-bottom: 1.3rem !important;
}

.sapUiFormResGridCont {
padding-bottom: 0.5rem !important;
}

.sapUiFormResGrid>div {
padding: 0.2rem !important;
}

.sapMText {
padding: 0.5rem !important;
}
/*.sapUiFormEdit {
line-height: 0.5rem !important;
}*/
Loading