Add Crop reset button - 2nd attempt (#5015)
Add dedicated reset button for Crop, rearrange some GUI, disable crop buttons in batch mode
This commit is contained in:
parent
4e4a83b576
commit
c8300b137c
@ -658,7 +658,6 @@ TP_CROP_GUIDETYPE;Tipus de guia:
|
||||
TP_CROP_H;Alt
|
||||
TP_CROP_LABEL;Cropa
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Selecc. cropar
|
||||
TP_CROP_W;Ample
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -761,7 +761,6 @@ TP_CROP_GUIDETYPE;辅助方式:
|
||||
TP_CROP_H;高
|
||||
TP_CROP_LABEL;剪裁
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;选择预设
|
||||
TP_CROP_W;宽
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -339,7 +339,6 @@ TP_CROP_GTRULETHIRDS;1/3法則
|
||||
TP_CROP_GUIDETYPE;輔助方式:
|
||||
TP_CROP_H;高
|
||||
TP_CROP_LABEL;剪裁
|
||||
TP_CROP_SELECTCROP; 選擇預設
|
||||
TP_CROP_W;寬
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1425,7 +1425,6 @@ TP_CROP_GUIDETYPE;Druh vodítek:
|
||||
TP_CROP_H;Výška
|
||||
TP_CROP_LABEL;Ořez
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Vyznačit výřez
|
||||
TP_CROP_W;Šířka
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;Reglen om tredjedele
|
||||
TP_CROP_GUIDETYPE;Hjælpelinjer:
|
||||
TP_CROP_H;H
|
||||
TP_CROP_LABEL;Beskær
|
||||
TP_CROP_SELECTCROP; Vælg beskæring
|
||||
TP_CROP_W;B
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1553,7 +1553,6 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
|
||||
!TP_CROP_H;Height
|
||||
!TP_CROP_LABEL;Crop
|
||||
!TP_CROP_PPI;PPI=
|
||||
!TP_CROP_SELECTCROP;Select Crop
|
||||
!TP_CROP_W;Width
|
||||
!TP_CROP_X;X
|
||||
!TP_CROP_Y;Y
|
||||
|
@ -1515,7 +1515,6 @@
|
||||
!TP_CROP_H;Height
|
||||
!TP_CROP_LABEL;Crop
|
||||
!TP_CROP_PPI;PPI=
|
||||
!TP_CROP_SELECTCROP;Select Crop
|
||||
!TP_CROP_W;Width
|
||||
!TP_CROP_X;X
|
||||
!TP_CROP_Y;Y
|
||||
|
@ -1075,7 +1075,6 @@ TP_CROP_GUIDETYPE;Clase de guía:
|
||||
TP_CROP_H;Al
|
||||
TP_CROP_LABEL;Recortar
|
||||
TP_CROP_PPI;Ptos/Pulgada=
|
||||
TP_CROP_SELECTCROP;Seleccionar recorte
|
||||
TP_CROP_W;Ancho
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;Herenen erregela
|
||||
TP_CROP_GUIDETYPE;Gida mota:
|
||||
TP_CROP_H;H
|
||||
TP_CROP_LABEL;Moztu
|
||||
TP_CROP_SELECTCROP; Mozketa hautatu
|
||||
TP_CROP_W;W
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1509,7 +1509,6 @@ TP_CROP_GUIDETYPE;Type de guide:
|
||||
TP_CROP_H;H
|
||||
TP_CROP_LABEL;Recadrage
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP; Sélection du recadrage
|
||||
TP_CROP_W;L
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;Κανόνας τρίτων
|
||||
TP_CROP_GUIDETYPE;Είδος βοηθών:
|
||||
TP_CROP_H;H
|
||||
TP_CROP_LABEL;Αποκοπή
|
||||
TP_CROP_SELECTCROP; Επιλογή αποκοπής
|
||||
TP_CROP_W;W
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;כלל השליש
|
||||
TP_CROP_GUIDETYPE;סוג מדריך
|
||||
TP_CROP_H;גובה
|
||||
TP_CROP_LABEL;גזור
|
||||
TP_CROP_SELECTCROP;בחור גזירה
|
||||
TP_CROP_W;רוחב
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -944,7 +944,6 @@ TP_CROP_GUIDETYPE;Tipo di guida:
|
||||
TP_CROP_H;A
|
||||
TP_CROP_LABEL;Ritaglio
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP; Seleziona Area
|
||||
TP_CROP_W;L
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -1537,7 +1537,6 @@ TP_CROP_GUIDETYPE;ガイドタイプ:
|
||||
TP_CROP_H;高さ
|
||||
TP_CROP_LABEL;切り抜き
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP; 選択範囲切り抜き
|
||||
TP_CROP_W;W 幅
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;Trešdaļas
|
||||
TP_CROP_GUIDETYPE;Vadlīnijas:
|
||||
TP_CROP_H;A
|
||||
TP_CROP_LABEL;Kadrējums
|
||||
TP_CROP_SELECTCROP; Norādīt kadrējumu
|
||||
TP_CROP_W;P
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -626,7 +626,6 @@ TP_CROP_GUIDETYPE;Segédvonal típusa:
|
||||
TP_CROP_H;M
|
||||
TP_CROP_LABEL;Kivágás
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP; Kijelölés egérrel
|
||||
TP_CROP_W;Sz
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1319,7 +1319,6 @@ TP_CROP_GUIDETYPE;Hulplijnen:
|
||||
TP_CROP_H;Hoogte
|
||||
TP_CROP_LABEL;Bijsnijden
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Selecteer gebied
|
||||
TP_CROP_W;Breedte
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -330,7 +330,6 @@ TP_CROP_GTRULETHIRDS;Tredjedelsreglen
|
||||
TP_CROP_GUIDETYPE;Guidetype:
|
||||
TP_CROP_H;H
|
||||
TP_CROP_LABEL;Beskjæring
|
||||
TP_CROP_SELECTCROP;Velg beskjæringsområde
|
||||
TP_CROP_W;B
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1030,7 +1030,6 @@ TP_CROP_GUIDETYPE;Typ pomocy:
|
||||
TP_CROP_H;Wysokość
|
||||
TP_CROP_LABEL;Kadrowanie
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Wybierz kadr
|
||||
TP_CROP_W;Szerokość
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -1030,7 +1030,6 @@ TP_CROP_GUIDETYPE;Typ pomocy:
|
||||
TP_CROP_H;Wysokosc
|
||||
TP_CROP_LABEL;Kadrowanie
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Wybierz kadr
|
||||
TP_CROP_W;Szerokosc
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -1461,7 +1461,6 @@ TP_CROP_GUIDETYPE;Tipo de guia:
|
||||
TP_CROP_H;Altura
|
||||
TP_CROP_LABEL;Cortar
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Selecione para Cortar
|
||||
TP_CROP_W;Largura
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
|
@ -1004,7 +1004,6 @@ TP_CROP_GUIDETYPE;Тип направляющей:
|
||||
TP_CROP_H;Высота
|
||||
TP_CROP_LABEL;Кадрирование
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Включить режим обрезки
|
||||
TP_CROP_W;Ширина
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -909,7 +909,6 @@ TP_CROP_GUIDETYPE;Вођицe:
|
||||
TP_CROP_H;В
|
||||
TP_CROP_LABEL;Исецање
|
||||
TP_CROP_PPI;ППИ=
|
||||
TP_CROP_SELECTCROP; Изабери област
|
||||
TP_CROP_W;Ш
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -909,7 +909,6 @@ TP_CROP_GUIDETYPE;Vođice:
|
||||
TP_CROP_H;V
|
||||
TP_CROP_LABEL;Isecanje
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP; Izaberi oblast
|
||||
TP_CROP_W;Š
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -384,7 +384,6 @@ TP_CROP_GTRULETHIRDS;Pravidlo tretín
|
||||
TP_CROP_GUIDETYPE;Type vodidiel:
|
||||
TP_CROP_H;V
|
||||
TP_CROP_LABEL;Orezanie
|
||||
TP_CROP_SELECTCROP; Vyberte Orez
|
||||
TP_CROP_W;Š
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -331,7 +331,6 @@ TP_CROP_GTRULETHIRDS;Kolmijako
|
||||
TP_CROP_GUIDETYPE;Sommittelumalli:
|
||||
TP_CROP_H;Kork.
|
||||
TP_CROP_LABEL;Rajaus
|
||||
TP_CROP_SELECTCROP;Valitse alue
|
||||
TP_CROP_W;Lev.
|
||||
TP_CROP_X; x
|
||||
TP_CROP_Y; y
|
||||
|
@ -1206,7 +1206,6 @@ TP_CROP_GUIDETYPE;Guidetyp:
|
||||
TP_CROP_H;Höjd
|
||||
TP_CROP_LABEL;Beskär
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Välj beskärningsområde
|
||||
TP_CROP_W;Bredd
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -331,7 +331,6 @@ TP_CROP_GTRULETHIRDS;Üçler kuralı
|
||||
TP_CROP_GUIDETYPE;Kılavuz türü:
|
||||
TP_CROP_H;Y
|
||||
TP_CROP_LABEL;Kırp
|
||||
TP_CROP_SELECTCROP; Kırpma alanı seç
|
||||
TP_CROP_W;G
|
||||
TP_CROP_X;x
|
||||
TP_CROP_Y;y
|
||||
|
@ -1528,10 +1528,11 @@ TP_CROP_GUIDETYPE;Guide type:
|
||||
TP_CROP_H;Height
|
||||
TP_CROP_LABEL;Crop
|
||||
TP_CROP_PPI;PPI=
|
||||
TP_CROP_SELECTCROP;Select Crop
|
||||
TP_CROP_SELECTCROP;Select
|
||||
TP_CROP_RESETCROP;Reset
|
||||
TP_CROP_W;Width
|
||||
TP_CROP_X;X
|
||||
TP_CROP_Y;Y
|
||||
TP_CROP_X;Left
|
||||
TP_CROP_Y;Top
|
||||
TP_DARKFRAME_AUTOSELECT;Auto-selection
|
||||
TP_DARKFRAME_LABEL;Dark-Frame
|
||||
TP_DEFRINGE_LABEL;Defringe
|
||||
|
@ -107,7 +107,7 @@ void BatchToolPanelCoordinator::initSession ()
|
||||
// compare all the ProcParams and describe which parameters has different (i.e. inconsistent) values in pparamsEdited
|
||||
pparamsEdited.initFrom (initialPP);
|
||||
|
||||
crop->setDimensions (100000, 100000);
|
||||
//crop->setDimensions (100000, 100000);
|
||||
|
||||
/* if (!selected.empty()) {
|
||||
pparams = selected[0]->getProcParams ();
|
||||
@ -127,6 +127,10 @@ void BatchToolPanelCoordinator::initSession ()
|
||||
|
||||
coarse->initBatchBehavior ();
|
||||
|
||||
int w,h;
|
||||
selected[0]->getOriginalSize(w,h);
|
||||
crop->setDimensions (w, h);
|
||||
|
||||
if (selected.size() == 1) {
|
||||
|
||||
for (size_t i = 0; i < toolPanels.size(); i++) {
|
||||
|
156
rtgui/crop.cc
156
rtgui/crop.cc
@ -99,89 +99,129 @@ Crop::Crop():
|
||||
maxw = 3000;
|
||||
maxh = 2000;
|
||||
|
||||
Gtk::HBox* hb1 = Gtk::manage (new Gtk::HBox ());
|
||||
methodgrid = Gtk::manage(new Gtk::Grid());
|
||||
methodgrid->get_style_context()->add_class("grid-spacing");
|
||||
setExpandAlignProperties(methodgrid, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
Gtk::Label* xlab = Gtk::manage (new Gtk::Label (M("TP_CROP_X") + ":"));
|
||||
setExpandAlignProperties(xlab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
hb1->pack_start (*Gtk::manage (new Gtk::Label (Glib::ustring(" ") + M("TP_CROP_X") + ": ")));
|
||||
x = Gtk::manage (new MySpinButton ());
|
||||
x->set_size_request (60, -1);
|
||||
hb1->pack_start (*x);
|
||||
setExpandAlignProperties(x, true, false, Gtk::ALIGN_END, Gtk::ALIGN_CENTER);
|
||||
x->set_width_chars(6);
|
||||
|
||||
Gtk::Label* ylab = Gtk::manage (new Gtk::Label (M("TP_CROP_Y") + ":"));
|
||||
setExpandAlignProperties(ylab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
hb1->pack_start (*Gtk::manage (new Gtk::Label (Glib::ustring(" ") + M("TP_CROP_Y") + ": ")));
|
||||
y = Gtk::manage (new MySpinButton ());
|
||||
y->set_size_request (60, -1);
|
||||
hb1->pack_start (*y);
|
||||
setExpandAlignProperties(y, true, false, Gtk::ALIGN_END, Gtk::ALIGN_CENTER);
|
||||
y->set_width_chars(6);
|
||||
|
||||
pack_start (*hb1, Gtk::PACK_SHRINK, 2);
|
||||
Gtk::Label* wlab = Gtk::manage (new Gtk::Label (M("TP_CROP_W") + ":"));
|
||||
setExpandAlignProperties(wlab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
Gtk::HBox* hb2 = Gtk::manage (new Gtk::HBox ());
|
||||
|
||||
hb2->pack_start (*Gtk::manage (new Gtk::Label (M("TP_CROP_W") + ": ")));
|
||||
w = Gtk::manage (new MySpinButton ());
|
||||
w->set_size_request (60, -1);
|
||||
hb2->pack_start (*w);
|
||||
setExpandAlignProperties(w, true, false, Gtk::ALIGN_END, Gtk::ALIGN_CENTER);
|
||||
w->set_width_chars(6);
|
||||
|
||||
Gtk::Label* hlab = Gtk::manage (new Gtk::Label (M("TP_CROP_H") + ":"));
|
||||
setExpandAlignProperties(hlab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
hb2->pack_start (*Gtk::manage (new Gtk::Label (M("TP_CROP_H") + ": ")));
|
||||
h = Gtk::manage (new MySpinButton ());
|
||||
h->set_size_request (60, -1);
|
||||
hb2->pack_start (*h);
|
||||
|
||||
pack_start (*hb2, Gtk::PACK_SHRINK, 4);
|
||||
setExpandAlignProperties(h, true, false, Gtk::ALIGN_END, Gtk::ALIGN_CENTER);
|
||||
h->set_width_chars(6);
|
||||
|
||||
selectCrop = Gtk::manage (new Gtk::Button (M("TP_CROP_SELECTCROP")));
|
||||
setExpandAlignProperties(selectCrop, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
selectCrop->get_style_context()->add_class("independent");
|
||||
selectCrop->set_image (*Gtk::manage (new RTImage ("crop-small.png")));
|
||||
|
||||
pack_start (*selectCrop, Gtk::PACK_SHRINK, 2);
|
||||
resetCrop = Gtk::manage (new Gtk::Button (M("TP_CROP_RESETCROP")));
|
||||
setExpandAlignProperties(resetCrop, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
resetCrop->get_style_context()->add_class("independent");
|
||||
resetCrop->set_image (*Gtk::manage (new RTImage ("undo-small.png")));
|
||||
|
||||
Gtk::HBox* hb3 = Gtk::manage (new Gtk::HBox ());
|
||||
methodgrid->attach (*xlab, 0, 0, 1, 1);
|
||||
methodgrid->attach (*x, 1, 0, 1, 1);
|
||||
methodgrid->attach (*ylab, 2, 0, 1, 1);
|
||||
methodgrid->attach (*y, 3, 0, 1, 1);
|
||||
methodgrid->attach (*wlab, 0, 1, 1, 1);
|
||||
methodgrid->attach (*w, 1, 1, 1, 1);
|
||||
methodgrid->attach (*hlab, 2, 1, 1, 1);
|
||||
methodgrid->attach (*h, 3, 1, 1, 1);
|
||||
methodgrid->attach (*selectCrop, 0, 2, 2, 1);
|
||||
methodgrid->attach (*resetCrop, 2, 2, 2, 1);
|
||||
pack_start (*methodgrid, Gtk::PACK_EXPAND_WIDGET, 0 );
|
||||
|
||||
Gtk::HSeparator* methodseparator = Gtk::manage (new Gtk::HSeparator());
|
||||
methodseparator->get_style_context()->add_class("grid-row-separator");
|
||||
pack_start (*methodseparator, Gtk::PACK_SHRINK, 0);
|
||||
|
||||
Gtk::Grid* settingsgrid = Gtk::manage(new Gtk::Grid());
|
||||
settingsgrid->get_style_context()->add_class("grid-spacing");
|
||||
setExpandAlignProperties(settingsgrid, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
fixr = Gtk::manage (new Gtk::CheckButton (M("TP_CROP_FIXRATIO")));
|
||||
setExpandAlignProperties(fixr, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
fixr->set_active (1);
|
||||
|
||||
hb3->pack_start (*fixr, Gtk::PACK_SHRINK, 4);
|
||||
|
||||
ratio = Gtk::manage (new MyComboBoxText ());
|
||||
hb3->pack_start (*ratio, Gtk::PACK_EXPAND_WIDGET, 4);
|
||||
setExpandAlignProperties(ratio, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
orientation = Gtk::manage (new MyComboBoxText ());
|
||||
hb3->pack_start (*orientation);
|
||||
setExpandAlignProperties(orientation, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
pack_start (*hb3, Gtk::PACK_SHRINK, 4);
|
||||
Gtk::Label* guidelab = Gtk::manage (new Gtk::Label (M("TP_CROP_GUIDETYPE")));
|
||||
setExpandAlignProperties(guidelab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
Gtk::HBox* hb31 = Gtk::manage (new Gtk::HBox ());
|
||||
|
||||
hb31->pack_start (*Gtk::manage (new Gtk::Label (M("TP_CROP_GUIDETYPE"))), Gtk::PACK_SHRINK, 4);
|
||||
guide = Gtk::manage (new MyComboBoxText ());
|
||||
hb31->pack_start (*guide);
|
||||
setExpandAlignProperties(guide, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
pack_start (*hb31, Gtk::PACK_SHRINK, 4);
|
||||
settingsgrid->attach (*fixr, 0, 0, 1, 1);
|
||||
settingsgrid->attach (*ratio, 1, 0, 1, 1);
|
||||
settingsgrid->attach (*orientation, 2, 0, 1, 1);
|
||||
settingsgrid->attach (*guidelab, 0, 1, 1, 1);
|
||||
settingsgrid->attach (*guide, 1, 1, 2, 1);
|
||||
pack_start (*settingsgrid, Gtk::PACK_SHRINK, 0 );
|
||||
|
||||
// ppibox START
|
||||
ppibox = Gtk::manage (new Gtk::VBox());
|
||||
ppibox->pack_start (*Gtk::manage (new Gtk::HSeparator()), Gtk::PACK_SHRINK, 2);
|
||||
|
||||
Gtk::HBox* hb4 = Gtk::manage (new Gtk::HBox ());
|
||||
hb4->pack_start (*Gtk::manage (new Gtk::Label (M("TP_CROP_PPI"))));
|
||||
// ppigrid START
|
||||
ppigrid = Gtk::manage(new Gtk::Grid());
|
||||
ppigrid->get_style_context()->add_class("grid-spacing");
|
||||
ppigrid->set_column_homogeneous (true);
|
||||
setExpandAlignProperties(ppigrid, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
Gtk::HSeparator* ppiseparator = Gtk::manage (new Gtk::HSeparator());
|
||||
ppiseparator->get_style_context()->add_class("grid-row-separator");
|
||||
|
||||
Gtk::Grid* ppisubgrid = Gtk::manage(new Gtk::Grid());
|
||||
ppisubgrid->get_style_context()->add_class("grid-spacing");
|
||||
setExpandAlignProperties(ppisubgrid, true, false, Gtk::ALIGN_FILL, Gtk::ALIGN_CENTER);
|
||||
|
||||
Gtk::Label* ppilab = Gtk::manage (new Gtk::Label (M("TP_CROP_PPI")));
|
||||
setExpandAlignProperties(ppilab, false, false, Gtk::ALIGN_START, Gtk::ALIGN_CENTER);
|
||||
|
||||
ppi = Gtk::manage (new MySpinButton ());
|
||||
ppi->set_size_request (60, -1);
|
||||
hb4->pack_start (*ppi);
|
||||
setExpandAlignProperties(ppi, true, false, Gtk::ALIGN_END, Gtk::ALIGN_CENTER);
|
||||
ppi->set_width_chars(6);
|
||||
|
||||
sizebox = Gtk::manage (new Gtk::VBox());
|
||||
ppisubgrid->attach (*ppilab, 0, 0, 1, 1);
|
||||
ppisubgrid->attach (*ppi, 1, 0, 1, 1);
|
||||
|
||||
sizecm = Gtk::manage (new Gtk::Label (M("GENERAL_NA") + " cm x " + M("GENERAL_NA") + " cm"));
|
||||
setExpandAlignProperties(sizecm, false, false, Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER);
|
||||
|
||||
sizein = Gtk::manage (new Gtk::Label (M("GENERAL_NA") + " in x " + M("GENERAL_NA") + " in"));
|
||||
setExpandAlignProperties(sizein, false, false, Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER);
|
||||
|
||||
sizebox->pack_start (*sizecm, Gtk::PACK_SHRINK, 4);
|
||||
sizebox->pack_start (*Gtk::manage (new Gtk::HSeparator()), Gtk::PACK_SHRINK, 6);
|
||||
sizebox->pack_start (*sizein, Gtk::PACK_SHRINK, 4);
|
||||
sizebox->pack_start (*Gtk::manage (new Gtk::HSeparator()), Gtk::PACK_SHRINK, 6);
|
||||
sizebox->pack_start (*hb4, Gtk::PACK_SHRINK, 2);
|
||||
|
||||
ppibox->pack_start (*sizebox, Gtk::PACK_SHRINK, 1);
|
||||
pack_start (*ppibox, Gtk::PACK_SHRINK, 0);
|
||||
ppigrid->attach (*ppiseparator, 0, 0, 2, 1);
|
||||
ppigrid->attach (*sizecm, 1, 1, 1, 1);
|
||||
ppigrid->attach (*sizein, 1, 2, 1, 1);
|
||||
ppigrid->attach (*ppisubgrid, 0, 1, 1, 2);
|
||||
pack_start (*ppigrid, Gtk::PACK_SHRINK, 0 );
|
||||
|
||||
ppi->set_value (300);
|
||||
// ppibox END
|
||||
// ppigrid END
|
||||
|
||||
// Populate the combobox
|
||||
for (const auto& crop_ratio : crop_ratios) {
|
||||
@ -241,6 +281,7 @@ Crop::Crop():
|
||||
oconn = orientation->signal_changed().connect( sigc::mem_fun(*this, &Crop::ratioChanged) );
|
||||
gconn = guide->signal_changed().connect( sigc::mem_fun(*this, &Crop::notifyListener) );
|
||||
selectCrop->signal_pressed().connect( sigc::mem_fun(*this, &Crop::selectPressed) );
|
||||
resetCrop->signal_pressed().connect( sigc::mem_fun(*this, &Crop::doresetCrop) );
|
||||
ppi->signal_value_changed().connect( sigc::mem_fun(*this, &Crop::refreshSize) );
|
||||
|
||||
nx = ny = nw = nh = 0;
|
||||
@ -482,6 +523,23 @@ void Crop::selectPressed ()
|
||||
}
|
||||
}
|
||||
|
||||
void Crop::doresetCrop ()
|
||||
{
|
||||
xDirty = true;
|
||||
yDirty = true;
|
||||
wDirty = true;
|
||||
hDirty = true;
|
||||
|
||||
int X = 0;
|
||||
int Y = 0;
|
||||
int W = maxw;
|
||||
int H = maxh;
|
||||
cropResized (X, Y, W, H);
|
||||
idle_register.add(notifyListenerUI, this);
|
||||
|
||||
refreshSpins();
|
||||
}
|
||||
|
||||
void Crop::notifyListener ()
|
||||
{
|
||||
|
||||
@ -1296,5 +1354,7 @@ void Crop::setBatchMode (bool batchMode)
|
||||
ratio->append (M("GENERAL_UNCHANGED"));
|
||||
orientation->append (M("GENERAL_UNCHANGED"));
|
||||
guide->append (M("GENERAL_UNCHANGED"));
|
||||
removeIfThere (this, ppibox);
|
||||
removeIfThere (this, ppigrid);
|
||||
removeIfThere (methodgrid, selectCrop);
|
||||
removeIfThere (methodgrid, resetCrop);
|
||||
}
|
||||
|
@ -51,6 +51,7 @@ public:
|
||||
void ratioFixedChanged (); // The toggle button
|
||||
void refreshSize ();
|
||||
void selectPressed ();
|
||||
void doresetCrop ();
|
||||
void setDimensions (int mw, int mh);
|
||||
void enabledChanged () override;
|
||||
void positionChanged ();
|
||||
@ -102,7 +103,9 @@ private:
|
||||
MyComboBoxText* ratio;
|
||||
MyComboBoxText* orientation;
|
||||
MyComboBoxText* guide;
|
||||
|
||||
Gtk::Button* selectCrop;
|
||||
Gtk::Button* resetCrop;
|
||||
CropPanelListener* clistener;
|
||||
int opt;
|
||||
MySpinButton* x;
|
||||
@ -112,8 +115,9 @@ private:
|
||||
MySpinButton* ppi;
|
||||
Gtk::Label* sizecm;
|
||||
Gtk::Label* sizein;
|
||||
Gtk::VBox* ppibox;
|
||||
Gtk::VBox* sizebox;
|
||||
Gtk::Grid* ppigrid;
|
||||
Gtk::Grid* methodgrid;
|
||||
|
||||
int maxw, maxh;
|
||||
double nx, ny;
|
||||
int nw, nh;
|
||||
|
@ -618,6 +618,11 @@ void Thumbnail::getFinalSize (const rtengine::procparams::ProcParams& pparams, i
|
||||
}
|
||||
}
|
||||
|
||||
void Thumbnail::getOriginalSize (int& w, int& h)
|
||||
{
|
||||
w = tw;
|
||||
h = th;
|
||||
}
|
||||
|
||||
rtengine::IImage8* Thumbnail::processThumbImage (const rtengine::procparams::ProcParams& pparams, int h, double& scale)
|
||||
{
|
||||
|
@ -114,6 +114,7 @@ public:
|
||||
rtengine::IImage8* upgradeThumbImage (const rtengine::procparams::ProcParams& pparams, int h, double& scale);
|
||||
void getThumbnailSize (int &w, int &h, const rtengine::procparams::ProcParams *pparams = nullptr);
|
||||
void getFinalSize (const rtengine::procparams::ProcParams& pparams, int& w, int& h);
|
||||
void getOriginalSize (int& w, int& h);
|
||||
|
||||
const Glib::ustring& getExifString () const;
|
||||
const Glib::ustring& getDateTimeString () const;
|
||||
|
Loading…
x
Reference in New Issue
Block a user