fix for wxwidgets 2.9
This commit is contained in:
parent
d4bd033a8e
commit
6c737bc146
|
@ -129,14 +129,17 @@ struct LAYER_SPEC
|
||||||
*/
|
*/
|
||||||
class LAYER_WIDGET : public LAYER_PANEL_BASE
|
class LAYER_WIDGET : public LAYER_PANEL_BASE
|
||||||
{
|
{
|
||||||
|
|
||||||
|
#define MAX_LAYER_ROWS 64
|
||||||
|
#define LAYER_COLUMN_COUNT 4
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
wxBitmap* m_BlankBitmap;
|
wxBitmap* m_BlankBitmap;
|
||||||
wxBitmap* m_RightArrowBitmap;
|
wxBitmap* m_RightArrowBitmap;
|
||||||
wxSize m_BitmapSize;
|
wxSize m_BitmapSize;
|
||||||
wxStaticBitmap* m_Bitmaps[64];
|
wxStaticBitmap* m_Bitmaps[MAX_LAYER_ROWS];
|
||||||
int m_CurrentRow; ///< visual row of layer list
|
int m_CurrentRow; ///< selected row of layer list
|
||||||
|
|
||||||
#define LAYER_COLUMN_COUNT 4
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function makeColorButton
|
* Function makeColorButton
|
||||||
|
@ -221,7 +224,6 @@ protected:
|
||||||
printf("OnRightDownLayers\n");
|
printf("OnRightDownLayers\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function getLayerComp
|
* Function getLayerComp
|
||||||
* returns the component within the m_LayersFlexGridSizer at aSizerNdx.
|
* returns the component within the m_LayersFlexGridSizer at aSizerNdx.
|
||||||
|
@ -253,14 +255,13 @@ protected:
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function insertLayerRow
|
* Function insertLayerRow
|
||||||
* appends or inserts a new row in the layer portion of the widget.
|
* appends or inserts a new row in the layer portion of the widget.
|
||||||
*/
|
*/
|
||||||
void insertLayerRow( int aRow, const LAYER_SPEC& aSpec )
|
void insertLayerRow( int aRow, const LAYER_SPEC& aSpec )
|
||||||
{
|
{
|
||||||
wxASSERT( aRow >= 0 );
|
wxASSERT( aRow >= 0 && aRow < MAX_LAYER_ROWS );
|
||||||
|
|
||||||
size_t index = aRow * LAYER_COLUMN_COUNT;
|
size_t index = aRow * LAYER_COLUMN_COUNT;
|
||||||
|
|
||||||
|
@ -272,24 +273,26 @@ protected:
|
||||||
m_Bitmaps[aRow] = new wxStaticBitmap( m_LayerScrolledWindow, aSpec.layer, *m_BlankBitmap,
|
m_Bitmaps[aRow] = new wxStaticBitmap( m_LayerScrolledWindow, aSpec.layer, *m_BlankBitmap,
|
||||||
wxDefaultPosition, m_BitmapSize );
|
wxDefaultPosition, m_BitmapSize );
|
||||||
m_Bitmaps[aRow]->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( LAYER_WIDGET::OnLeftDownLayers ), NULL, this );
|
m_Bitmaps[aRow]->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( LAYER_WIDGET::OnLeftDownLayers ), NULL, this );
|
||||||
m_LayersFlexGridSizer->Insert( index+0, m_Bitmaps[aRow], wxSizerFlags().Align( wxALIGN_CENTER_VERTICAL ) );
|
m_LayersFlexGridSizer->Insert( index+0,
|
||||||
|
new wxSizerItem( m_Bitmaps[aRow], wxSizerFlags().Align( wxALIGN_CENTER_VERTICAL ) ) );
|
||||||
|
|
||||||
// column 1
|
// column 1
|
||||||
wxBitmapButton* bmb = makeColorButton( aSpec.colorIndex, aSpec.layer );
|
wxBitmapButton* bmb = makeColorButton( aSpec.colorIndex, aSpec.layer );
|
||||||
bmb->SetToolTip( _("Right click to change layer color, left click to select layer" ) );
|
bmb->SetToolTip( _("Right click to change layer color, left click to select layer" ) );
|
||||||
m_LayersFlexGridSizer->Insert( index+1, bmb, flags );
|
m_LayersFlexGridSizer->Insert( index+1,
|
||||||
|
new wxSizerItem( bmb, flags ) );
|
||||||
|
|
||||||
// column 2
|
// column 2
|
||||||
wxStaticText* st = new wxStaticText( m_LayerScrolledWindow, aSpec.layer, aSpec.layerName );
|
wxStaticText* st = new wxStaticText( m_LayerScrolledWindow, aSpec.layer, aSpec.layerName );
|
||||||
st->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( LAYER_WIDGET::OnLeftDownLayers ), NULL, this );
|
st->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( LAYER_WIDGET::OnLeftDownLayers ), NULL, this );
|
||||||
st->SetToolTip( _( "Click here to select this layer" ) );
|
st->SetToolTip( _( "Click here to select this layer" ) );
|
||||||
m_LayersFlexGridSizer->Insert( index+2, st,
|
m_LayersFlexGridSizer->Insert( index+2,
|
||||||
wxSizerFlags().Align( wxALIGN_CENTER_VERTICAL ) );
|
new wxSizerItem( st, wxSizerFlags().Align( wxALIGN_CENTER_VERTICAL )) );
|
||||||
|
|
||||||
// column 3
|
// column 3
|
||||||
wxCheckBox* cb = new wxCheckBox( m_LayerScrolledWindow, aSpec.layer, wxEmptyString );
|
wxCheckBox* cb = new wxCheckBox( m_LayerScrolledWindow, aSpec.layer, wxEmptyString );
|
||||||
cb->SetToolTip( _( "Enable this for visibility" ) );
|
cb->SetToolTip( _( "Enable this for visibility" ) );
|
||||||
m_LayersFlexGridSizer->Insert( index+3, cb, flags );
|
m_LayersFlexGridSizer->Insert( index+3, new wxSizerItem( cb, flags ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
@ -313,6 +316,10 @@ public:
|
||||||
AppendLayerRow( LAYER_SPEC( wxT("layer_4_you"), 3, BLUE ) );
|
AppendLayerRow( LAYER_SPEC( wxT("layer_4_you"), 3, BLUE ) );
|
||||||
|
|
||||||
SelectLayerRow( 1 );
|
SelectLayerRow( 1 );
|
||||||
|
|
||||||
|
Fit();
|
||||||
|
|
||||||
|
SetMinSize( GetSize() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -362,7 +369,6 @@ public:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function SelectLayer
|
* Function SelectLayer
|
||||||
* changes the row selection in the layer list to the given layer.
|
* changes the row selection in the layer list to the given layer.
|
||||||
|
@ -373,6 +379,7 @@ public:
|
||||||
return SelectLayerRow( row );
|
return SelectLayerRow( row );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//-----<abstract functions>-------------------------------------------
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function ColorChange
|
* Function ColorChange
|
||||||
|
@ -387,17 +394,12 @@ public:
|
||||||
* will handle this accordingly, and can deny the change by returning false.
|
* will handle this accordingly, and can deny the change by returning false.
|
||||||
*/
|
*/
|
||||||
virtual bool LayerChange( int aLayer ) = 0;
|
virtual bool LayerChange( int aLayer ) = 0;
|
||||||
|
|
||||||
|
//-----</abstract functions>------------------------------------------
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* class LAYER_WIDGET : public wxPanel
|
|
||||||
* {
|
|
||||||
* };
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(STAND_ALONE)
|
#if defined(STAND_ALONE)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -408,6 +410,9 @@ public:
|
||||||
*/
|
*/
|
||||||
class MYFRAME : public wxFrame
|
class MYFRAME : public wxFrame
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// example of how to derive from LAYER_WIDGET in order to provide the
|
||||||
|
// abstract methods.
|
||||||
class MYLAYERS : public LAYER_WIDGET
|
class MYLAYERS : public LAYER_WIDGET
|
||||||
{
|
{
|
||||||
MYFRAME* frame;
|
MYFRAME* frame;
|
||||||
|
|
Loading…
Reference in New Issue