Patch level :4.0 / 10.0
Files correlati : Ricompilazione Demo : [ ] Commento :sistemato problema ingresso in menu git-svn-id: svn://10.65.10.50/trunk@16397 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
30b4f2eacc
commit
302d045484
@ -156,7 +156,7 @@ void TPicture_mask::update()
|
|||||||
RCT rctree; field(DLG_TREE).get_rect(rctree);
|
RCT rctree; field(DLG_TREE).get_rect(rctree);
|
||||||
|
|
||||||
const int maxx = client.right - rctree.right - 2 * CHARX;
|
const int maxx = client.right - rctree.right - 2 * CHARX;
|
||||||
const int maxy = client.bottom - 8 * ROWY;
|
const int maxy = client.bottom - 10 * ROWY;
|
||||||
|
|
||||||
const double ratiox = double(maxx) / image.width();
|
const double ratiox = double(maxx) / image.width();
|
||||||
const double ratioy = double(maxy) / image.height();
|
const double ratioy = double(maxy) / image.height();
|
||||||
@ -166,7 +166,7 @@ void TPicture_mask::update()
|
|||||||
imgy = int(ratio * image.height());
|
imgy = int(ratio * image.height());
|
||||||
|
|
||||||
x = client.right - maxx - 4;
|
x = client.right - maxx - 4;
|
||||||
y = (client.bottom - maxy) / 2;
|
y = client.bottom - maxy;
|
||||||
|
|
||||||
//stabilisce la dimensione del logo
|
//stabilisce la dimensione del logo
|
||||||
if (_logo != NULL)
|
if (_logo != NULL)
|
||||||
@ -194,7 +194,7 @@ void TPicture_mask::update()
|
|||||||
imgx = int(ratio * image.width());
|
imgx = int(ratio * image.width());
|
||||||
imgy = int(ratio * image.height());
|
imgy = int(ratio * image.height());
|
||||||
x = 1;
|
x = 1;
|
||||||
y = (client.bottom - maxy) / 2;
|
y = client.bottom - imgy - 1;
|
||||||
|
|
||||||
//stabilisce la dimensione del logo
|
//stabilisce la dimensione del logo
|
||||||
if (_logo != NULL)
|
if (_logo != NULL)
|
||||||
@ -612,7 +612,8 @@ int TMenu_application::do_level()
|
|||||||
const TSubmenu& curr = _menu.current();
|
const TSubmenu& curr = _menu.current();
|
||||||
const int bwidth = 20;
|
const int bwidth = 20;
|
||||||
|
|
||||||
TPicture_mask mask(curr.caption(), -4, -4, curr);
|
//TPicture_mask mask(curr.caption(), -4, -4, curr);
|
||||||
|
TPicture_mask mask(curr.caption(), 0, 0, curr, 0, 0);
|
||||||
CHECK(_mask == NULL, "Two masks are better than one?");
|
CHECK(_mask == NULL, "Two masks are better than one?");
|
||||||
_mask = &mask;
|
_mask = &mask;
|
||||||
|
|
||||||
|
@ -279,9 +279,16 @@ TMenu_tree::TMenu_tree(TMenu& menu)
|
|||||||
// Utility
|
// Utility
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
//flag per impedire un doppio aggiornamento causato adall'autofocus del primo elemento dell'albero
|
||||||
|
//senza questo flag entra automaticamente nella prima voce di menu, un livello sotto a quello..
|
||||||
|
//..richiesto dall'utente
|
||||||
|
static bool _sincronaising = false;
|
||||||
|
|
||||||
// Sincronizza l'albero in basa alla list view
|
// Sincronizza l'albero in basa alla list view
|
||||||
void synchronize_tree_field(TTree_field& tf)
|
void synchronize_tree_field(TTree_field& tf)
|
||||||
{
|
{
|
||||||
|
_sincronaising = true;
|
||||||
|
|
||||||
TTree& mt = *tf.tree();
|
TTree& mt = *tf.tree();
|
||||||
TString id; mt.curr_id(id); // Memorizza nodo corrente
|
TString id; mt.curr_id(id); // Memorizza nodo corrente
|
||||||
mt.shrink_all(); // Collassa tutto l'albero
|
mt.shrink_all(); // Collassa tutto l'albero
|
||||||
@ -291,6 +298,8 @@ void synchronize_tree_field(TTree_field& tf)
|
|||||||
mt.goto_node(id); // Torna al nodo corrente
|
mt.goto_node(id); // Torna al nodo corrente
|
||||||
|
|
||||||
tf.win().force_update(); // Provoca la rigenerazione dell'albero espanso come sopra
|
tf.win().force_update(); // Provoca la rigenerazione dell'albero espanso come sopra
|
||||||
|
|
||||||
|
_sincronaising = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool can_be_transparent(const TImage& i)
|
bool can_be_transparent(const TImage& i)
|
||||||
@ -1153,6 +1162,7 @@ void TExplorer_mask::on_idle()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void TExplorer_mask::select_tree_current()
|
void TExplorer_mask::select_tree_current()
|
||||||
{
|
{
|
||||||
TTree_field& tf = tfield(DLG_TREE);
|
TTree_field& tf = tfield(DLG_TREE);
|
||||||
@ -1168,7 +1178,7 @@ bool TExplorer_mask::on_field_event(TOperable_field& o, TField_event e, long jol
|
|||||||
switch(o.dlg())
|
switch(o.dlg())
|
||||||
{
|
{
|
||||||
case DLG_TREE:
|
case DLG_TREE:
|
||||||
if (e == fe_modify)
|
if (e == fe_modify && !_sincronaising)
|
||||||
{
|
{
|
||||||
TTree_field& tf = (TTree_field&)o;
|
TTree_field& tf = (TTree_field&)o;
|
||||||
TMenu_tree& mt = *(TMenu_tree*)tf.tree();
|
TMenu_tree& mt = *(TMenu_tree*)tf.tree();
|
||||||
|
@ -60,10 +60,11 @@ TField_event TAutomask::key2event(TMask_field& f, KEY key) const
|
|||||||
case K_SPACE:
|
case K_SPACE:
|
||||||
if (!f.is_edit())
|
if (!f.is_edit())
|
||||||
{
|
{
|
||||||
|
const TMask& wm = f.mask();
|
||||||
if (f.is_kind_of(CLASS_BUTTON_FIELD))
|
if (f.is_kind_of(CLASS_BUTTON_FIELD))
|
||||||
fe = fe_button; else
|
fe = fe_button; else
|
||||||
if (f.is_kind_of(CLASS_TREE_FIELD))
|
if (f.is_kind_of(CLASS_TREE_FIELD))
|
||||||
fe = fe_modify;
|
fe = wm.is_running() ? fe_modify : fe_init;
|
||||||
else
|
else
|
||||||
fe = f.focusdirty() ? fe_modify : fe_init;
|
fe = f.focusdirty() ? fe_modify : fe_init;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user