Some code improvements
This commit is contained in:
parent
3ca644669d
commit
2ba6b0bcf7
|
@ -96,10 +96,12 @@ void FMenuItem::init (FWidget* parent)
|
||||||
|
|
||||||
if ( parent )
|
if ( parent )
|
||||||
{
|
{
|
||||||
|
FMenuList* super_menu_list = dynamic_cast<FMenuList*>(parent);
|
||||||
|
setSuperMenu(super_menu_list);
|
||||||
|
super_menu_list->insert(this);
|
||||||
|
|
||||||
if ( isMenuBar(parent) ) // Parent is menubar
|
if ( isMenuBar(parent) ) // Parent is menubar
|
||||||
{
|
{
|
||||||
setSuperMenu( dynamic_cast<FMenuList*>(parent) );
|
|
||||||
superMenu()->insert(this);
|
|
||||||
FMenuBar* menubar_ptr = dynamic_cast<FMenuBar*>(parent);
|
FMenuBar* menubar_ptr = dynamic_cast<FMenuBar*>(parent);
|
||||||
if ( menubar_ptr )
|
if ( menubar_ptr )
|
||||||
menubar_ptr->menu_dimension();
|
menubar_ptr->menu_dimension();
|
||||||
|
@ -119,8 +121,6 @@ void FMenuItem::init (FWidget* parent)
|
||||||
}
|
}
|
||||||
else if ( isMenu(parent) ) // Parent is menu
|
else if ( isMenu(parent) ) // Parent is menu
|
||||||
{
|
{
|
||||||
setSuperMenu( dynamic_cast<FMenuList*>(parent) );
|
|
||||||
superMenu()->insert(this);
|
|
||||||
FMenu* super_menu_ptr = dynamic_cast<FMenu*>(parent);
|
FMenu* super_menu_ptr = dynamic_cast<FMenu*>(parent);
|
||||||
if ( super_menu_ptr )
|
if ( super_menu_ptr )
|
||||||
super_menu_ptr->menu_dimension();
|
super_menu_ptr->menu_dimension();
|
||||||
|
@ -259,10 +259,18 @@ void FMenuItem::onMouseDown (FMouseEvent* ev)
|
||||||
if ( super_menu )
|
if ( super_menu )
|
||||||
{
|
{
|
||||||
if ( isMenu(super_menu) )
|
if ( isMenu(super_menu) )
|
||||||
dynamic_cast<FMenu*>(super_menu)->onMouseDown(ev);
|
{
|
||||||
|
FMenu* sm = dynamic_cast<FMenu*>(super_menu);
|
||||||
|
if ( sm )
|
||||||
|
sm->onMouseDown(ev);
|
||||||
|
}
|
||||||
|
|
||||||
if ( isMenuBar(super_menu) )
|
if ( isMenuBar(super_menu) )
|
||||||
dynamic_cast<FMenuBar*>(super_menu)->onMouseDown(ev);
|
{
|
||||||
|
FMenuBar* mb = dynamic_cast<FMenuBar*>(super_menu);
|
||||||
|
if ( mb )
|
||||||
|
mb->onMouseDown(ev);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delete ev;
|
delete ev;
|
||||||
|
@ -281,10 +289,18 @@ void FMenuItem::onMouseUp (FMouseEvent* ev)
|
||||||
if ( super_menu )
|
if ( super_menu )
|
||||||
{
|
{
|
||||||
if ( isMenu(super_menu) )
|
if ( isMenu(super_menu) )
|
||||||
dynamic_cast<FMenu*>(super_menu)->onMouseUp(ev);
|
{
|
||||||
|
FMenu* sm = dynamic_cast<FMenu*>(super_menu);
|
||||||
|
if ( sm )
|
||||||
|
sm->onMouseUp(ev);
|
||||||
|
}
|
||||||
|
|
||||||
if ( isMenuBar(super_menu) )
|
if ( isMenuBar(super_menu) )
|
||||||
dynamic_cast<FMenuBar*>(super_menu)->onMouseUp(ev);
|
{
|
||||||
|
FMenuBar* mb = dynamic_cast<FMenuBar*>(super_menu);
|
||||||
|
if ( mb )
|
||||||
|
mb->onMouseUp(ev);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delete ev;
|
delete ev;
|
||||||
|
@ -303,10 +319,18 @@ void FMenuItem::onMouseMove (FMouseEvent* ev)
|
||||||
if ( super_menu )
|
if ( super_menu )
|
||||||
{
|
{
|
||||||
if ( isMenu(super_menu) )
|
if ( isMenu(super_menu) )
|
||||||
dynamic_cast<FMenu*>(super_menu)->onMouseMove(ev);
|
{
|
||||||
|
FMenu* sm = dynamic_cast<FMenu*>(super_menu);
|
||||||
|
if ( sm )
|
||||||
|
sm->onMouseMove(ev);
|
||||||
|
}
|
||||||
|
|
||||||
if ( isMenuBar(super_menu) )
|
if ( isMenuBar(super_menu) )
|
||||||
dynamic_cast<FMenuBar*>(super_menu)->onMouseMove(ev);
|
{
|
||||||
|
FMenuBar* mb = dynamic_cast<FMenuBar*>(super_menu);
|
||||||
|
if ( mb )
|
||||||
|
mb->onMouseMove(ev);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delete ev;
|
delete ev;
|
||||||
|
|
|
@ -422,7 +422,9 @@ int FOptiMove::relative_move ( char*& move
|
||||||
|
|
||||||
if ( F_parm_right_cursor.cap && F_parm_right_cursor.duration < htime )
|
if ( F_parm_right_cursor.cap && F_parm_right_cursor.duration < htime )
|
||||||
{
|
{
|
||||||
strcat (hmove, tparm(F_parm_right_cursor.cap, num));
|
strncat ( hmove
|
||||||
|
, tparm(F_parm_right_cursor.cap, num)
|
||||||
|
, sizeof(hmove) - strlen(hmove) - 1 );
|
||||||
htime = F_parm_right_cursor.duration;
|
htime = F_parm_right_cursor.duration;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -647,7 +649,7 @@ char* FOptiMove::cursor_move (int xold, int yold, int xnew, int ynew)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
strncpy (move_ptr, F_cursor_to_ll.cap, sizeof(move_buf));
|
strncpy (move_ptr, F_cursor_to_ll.cap, sizeof(move_buf) - 1);
|
||||||
move_ptr += F_cursor_to_ll.length;
|
move_ptr += F_cursor_to_ll.length;
|
||||||
relative_move (move_ptr, 0, screen_height-1, xnew, ynew);
|
relative_move (move_ptr, 0, screen_height-1, xnew, ynew);
|
||||||
break;
|
break;
|
||||||
|
@ -656,7 +658,9 @@ char* FOptiMove::cursor_move (int xold, int yold, int xnew, int ynew)
|
||||||
move_buf[0] = '\0';
|
move_buf[0] = '\0';
|
||||||
if ( xold >= 0 )
|
if ( xold >= 0 )
|
||||||
strcat (move_ptr, F_carriage_return.cap);
|
strcat (move_ptr, F_carriage_return.cap);
|
||||||
strcat (move_ptr, F_cursor_left.cap);
|
strncat ( move_ptr
|
||||||
|
, F_cursor_left.cap
|
||||||
|
, sizeof(move_buf) - strlen(move_ptr) - 1 );
|
||||||
move_ptr += strlen(move_buf);
|
move_ptr += strlen(move_buf);
|
||||||
relative_move (move_ptr, screen_width-1, yold-1, xnew, ynew);
|
relative_move (move_ptr, screen_width-1, yold-1, xnew, ynew);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -220,10 +220,8 @@ int FTerm::getFramebuffer_bpp ()
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
::close(fd);
|
::close(fd);
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -206,8 +206,15 @@ int main (int, char**)
|
||||||
<< alphabet.right(11) << "\"" << std::endl;
|
<< alphabet.right(11) << "\"" << std::endl;
|
||||||
|
|
||||||
FString insert_str = "I am a string";
|
FString insert_str = "I am a string";
|
||||||
|
try
|
||||||
|
{
|
||||||
std::cout << " insert: "
|
std::cout << " insert: "
|
||||||
<< insert_str.insert("changed ", 7) << std::endl;
|
<< insert_str.insert("changed ", 7) << std::endl;
|
||||||
|
}
|
||||||
|
catch (const std::out_of_range& ex)
|
||||||
|
{
|
||||||
|
std::cerr << "Out of Range error: " << ex.what() << std::endl;
|
||||||
|
}
|
||||||
|
|
||||||
FString index(5); // a string with five characters
|
FString index(5); // a string with five characters
|
||||||
index = "index";
|
index = "index";
|
||||||
|
@ -222,6 +229,7 @@ int main (int, char**)
|
||||||
{
|
{
|
||||||
std::cerr << "Out of Range error: " << ex.what() << std::endl;
|
std::cerr << "Out of Range error: " << ex.what() << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
FString stringIterator = "iterator";
|
FString stringIterator = "iterator";
|
||||||
FString::iterator iter;
|
FString::iterator iter;
|
||||||
iter = stringIterator.begin();
|
iter = stringIterator.begin();
|
||||||
|
|
Loading…
Reference in New Issue