added FIXME force processing of all pending Gtk::Main events after

* src/Dialog_Base_Partition.cc,
  src/FrameVisualDisk.cc: added FIXME
* src/Win_GParted.cc: force processing of all pending Gtk::Main events
  after Refresh_Visual. This fixes an issue with incorrect displayed
  Visual Partition Display.
This commit is contained in:
Bart Hakvoort 2006-03-01 21:50:52 +00:00
parent 9830c8f63e
commit 58f812484c
4 changed files with 17 additions and 5 deletions

View File

@ -1,3 +1,11 @@
2006-03-01 Bart Hakvoort <hakvoort@cvs.gnome.org>
* src/Dialog_Base_Partition.cc,
src/FrameVisualDisk.cc: added FIXME
* src/Win_GParted.cc: force processing of all pending Gtk::Main events
after Refresh_Visual. This fixes an issue with incorrect displayed
Visual Partition Display.
2006-03-01 Bart Hakvoort <hakvoort@cvs.gnome.org> 2006-03-01 Bart Hakvoort <hakvoort@cvs.gnome.org>
* include/Frame_Resizer_Base.h, * include/Frame_Resizer_Base.h,

View File

@ -23,7 +23,7 @@ namespace GParted
Dialog_Base_Partition::Dialog_Base_Partition( ) Dialog_Base_Partition::Dialog_Base_Partition( )
{ {
this ->set_has_separator( false ) ; this ->set_has_separator( false ) ;
//FIXME: somehow the 'off by a few' MiB's warning disappeared. I need to display it whenever the round to cylinders isn't checked.
frame_resizer_base = NULL; frame_resizer_base = NULL;
GRIP = false ; GRIP = false ;
this ->fixed_start = false ; this ->fixed_start = false ;

View File

@ -23,7 +23,7 @@
namespace GParted namespace GParted
{ {
//FIXME: left border of extended partition seems to be 1px bigger than it's rightborder..
FrameVisualDisk::FrameVisualDisk() FrameVisualDisk::FrameVisualDisk()
{ {
this ->set_border_width( 5 ) ; this ->set_border_width( 5 ) ;
@ -334,7 +334,7 @@ void FrameVisualDisk::drawingarea_on_realize()
bool FrameVisualDisk::drawingarea_on_expose( GdkEventExpose * event ) bool FrameVisualDisk::drawingarea_on_expose( GdkEventExpose * event )
{ {
draw_partitions( visual_partitions ) ; draw_partitions( visual_partitions ) ;
return true ; return true ;
} }
@ -374,6 +374,7 @@ void FrameVisualDisk::on_resize( Gtk::Allocation & allocation )
while ( TOTAL <= 0 && MIN_SIZE > 0 ) ; while ( TOTAL <= 0 && MIN_SIZE > 0 ) ;
//due to rounding a few px may be lost (max. 2), lets add these to the last partition. //due to rounding a few px may be lost (max. 2), lets add these to the last partition.
//FIXME: instead of adding all leftover px to the last partition we should spread them over all partitions
if ( allocation .get_width() > calced && visual_partitions .size() ) if ( allocation .get_width() > calced && visual_partitions .size() )
visual_partitions .back() .length += ( allocation .get_width() - calced ) ; visual_partitions .back() .length += ( allocation .get_width() - calced ) ;

View File

@ -572,7 +572,7 @@ void Win_GParted::Add_Operation( OperationType operationtype, const Partition &
treeview_operations .set_cursor( static_cast<Gtk::TreePath>( static_cast<Gtk::TreeRow>( *iter ) ) ) ; treeview_operations .set_cursor( static_cast<Gtk::TreePath>( static_cast<Gtk::TreeRow>( *iter ) ) ) ;
} }
void Win_GParted::Refresh_Visual( ) void Win_GParted::Refresh_Visual()
{ {
std::vector<Partition> partitions = devices[ current_device ] .partitions ; std::vector<Partition> partitions = devices[ current_device ] .partitions ;
liststore_operations ->clear(); liststore_operations ->clear();
@ -633,7 +633,10 @@ void Win_GParted::Refresh_Visual( )
//no partition can be selected after a refresh.. //no partition can be selected after a refresh..
selected_partition .Reset() ; selected_partition .Reset() ;
set_valid_operations() ; set_valid_operations() ;
while ( Gtk::Main::events_pending() )
Gtk::Main::iteration() ;
} }
bool Win_GParted::Quit_Check_Operations() bool Win_GParted::Quit_Check_Operations()