fix typo, beautify

This commit is contained in:
dickelbeck 2007-12-11 23:12:37 +00:00
parent 57a2791bc8
commit d01e04c978
1 changed files with 173 additions and 150 deletions

View File

@ -10,127 +10,139 @@
#include "macros.h"
/***********************/
/* class WinEDAListBox */
/***********************/
/***********************/
/* class WinEDAListBox */
/***********************/
enum listbox {
ID_LISTBOX_LIST = 8000
};
BEGIN_EVENT_TABLE(WinEDAListBox, wxDialog)
EVT_BUTTON(wxID_OK, WinEDAListBox::OnOkClick)
EVT_BUTTON(wxID_CANCEL, WinEDAListBox::OnCancelClick)
EVT_LISTBOX(ID_LISTBOX_LIST, WinEDAListBox::ClickOnList)
EVT_LISTBOX_DCLICK(ID_LISTBOX_LIST, WinEDAListBox::D_ClickOnList)
EVT_CHAR(WinEDAListBox::OnKeyEvent)
EVT_CHAR_HOOK(WinEDAListBox::OnKeyEvent)
EVT_CLOSE( WinEDAListBox::OnClose )
BEGIN_EVENT_TABLE( WinEDAListBox, wxDialog )
EVT_BUTTON( wxID_OK, WinEDAListBox::OnOkClick )
EVT_BUTTON( wxID_CANCEL, WinEDAListBox::OnCancelClick )
EVT_LISTBOX( ID_LISTBOX_LIST, WinEDAListBox::ClickOnList )
EVT_LISTBOX_DCLICK( ID_LISTBOX_LIST, WinEDAListBox::D_ClickOnList )
EVT_CHAR( WinEDAListBox::OnKeyEvent )
EVT_CHAR_HOOK( WinEDAListBox::OnKeyEvent )
EVT_CLOSE( WinEDAListBox::OnClose )
END_EVENT_TABLE()
/*******************************/
/* Constructeur et destructeur */
/*******************************/
/*******************************/
/* Constructeur et destructeur */
/*******************************/
/* Permet l'affichage d'une liste d'elements pour selection.
itemlist = pointeur sur la liste des pinteurs de noms
reftext = preselection
movefct = fonction de création de commentaires a afficher
*/
* itemlist = pointeur sur la liste des pinteurs de noms
* reftext = preselection
* movefct = fonction de création de commentaires a afficher
*/
WinEDAListBox::WinEDAListBox( WinEDA_DrawFrame * parent, const wxString & title,
const wxChar ** itemlist,
const wxString & reftext,
void(* movefct)(wxString & Text),
const wxColour & colour, wxPoint dialog_position):
wxDialog(parent, -1, title, dialog_position, wxDefaultSize,
wxDEFAULT_DIALOG_STYLE | MAYBE_RESIZE_BORDER
)
WinEDAListBox::WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title,
const wxChar** itemlist,
const wxString& reftext,
void(* movefct)(wxString& Text) ,
const wxColour& colour, wxPoint dialog_position ) :
wxDialog( parent, -1, title, dialog_position, wxDefaultSize,
wxDEFAULT_DIALOG_STYLE | MAYBE_RESIZE_BORDER
)
{
wxSize size;
const wxChar ** names;
int ii;
wxSize size;
const wxChar** names;
int ii;
m_ItemList = itemlist;
m_Parent = parent;
m_MoveFct = movefct;
m_WinMsg = NULL;
SetReturnCode(-1);
SetFont(*g_DialogFont);
m_ItemList = itemlist;
m_Parent = parent;
m_MoveFct = movefct;
m_WinMsg = NULL;
SetReturnCode( -1 );
SetFont( *g_DialogFont );
if ( itemlist )
for ( names = m_ItemList, ii = 0; *names != NULL; names++)
ii++;
else ii = 30;
if( itemlist )
for( names = m_ItemList, ii = 0; *names != NULL; names++ )
ii++;
wxBoxSizer * GeneralBoxSizer = new wxBoxSizer(wxVERTICAL);
SetSizer(GeneralBoxSizer);
else
ii = 30;
wxBoxSizer * MainBoxSizer = new wxBoxSizer(wxHORIZONTAL);
GeneralBoxSizer->Add(MainBoxSizer, 0, wxGROW|wxEXPAND|wxALL, 1);
wxBoxSizer* GeneralBoxSizer = new wxBoxSizer( wxVERTICAL );
wxBoxSizer * LeftBoxSizer = new wxBoxSizer(wxVERTICAL);
MainBoxSizer->Add(LeftBoxSizer, 0, wxGROW|wxALL, 5);
wxBoxSizer * RightBoxSizer = new wxBoxSizer(wxVERTICAL);
MainBoxSizer->Add(RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
SetSizer( GeneralBoxSizer );
size.x = 200;
size.y = 350;
m_List = new wxListBox(this,
ID_LISTBOX_LIST,
wxDefaultPosition, size,
0, NULL,
wxLB_NEEDED_SB|wxLB_SINGLE|wxLB_HSCROLL );
if ( colour != wxNullColour)
{
m_List->SetBackgroundColour(colour);
m_List->SetForegroundColour(*wxBLACK);
}
LeftBoxSizer->Add(m_List, 0, wxGROW|wxALL, 5);
wxBoxSizer* MainBoxSizer = new wxBoxSizer( wxHORIZONTAL );
GeneralBoxSizer->Add( MainBoxSizer, 0, wxGROW | wxEXPAND | wxALL, 1 );
wxBoxSizer* LeftBoxSizer = new wxBoxSizer( wxVERTICAL );
MainBoxSizer->Add( LeftBoxSizer, 0, wxGROW | wxALL, 5 );
wxBoxSizer* RightBoxSizer = new wxBoxSizer( wxVERTICAL );
MainBoxSizer->Add( RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 );
size.x = 200;
size.y = 350;
m_List = new wxListBox( this,
ID_LISTBOX_LIST,
wxDefaultPosition, size,
0, NULL,
wxLB_NEEDED_SB | wxLB_SINGLE | wxLB_HSCROLL );
if( colour != wxNullColour )
{
m_List->SetBackgroundColour( colour );
m_List->SetForegroundColour( *wxBLACK );
}
LeftBoxSizer->Add( m_List, 0, wxGROW | wxALL, 5 );
if ( itemlist )
for ( names = m_ItemList, ii = 0; *names != NULL; names++, ii++ )
{
m_List->Append(*names);
}
if( itemlist )
for( names = m_ItemList, ii = 0; *names != NULL; names++, ii++ )
{
m_List->Append( *names );
}
wxButton * butt = new wxButton(this, wxID_OK, _("OK"));
RightBoxSizer->Add(butt, 0, wxGROW|wxALL, 5);
butt->SetDefault();
wxButton* butt = new wxButton( this, wxID_OK, _( "OK" ) );
butt = new wxButton(this, wxID_CANCEL, _("Cancel"));
RightBoxSizer->Add(butt, 0, wxGROW|wxALL, 5);
RightBoxSizer->Add( butt, 0, wxGROW | wxALL, 5 );
butt->SetDefault();
if (m_MoveFct )
{
size.x = -1; size.y = 60;
m_WinMsg = new wxTextCtrl(this, -1, wxEmptyString, wxDefaultPosition, size,
wxTE_READONLY|wxTE_MULTILINE);
GeneralBoxSizer->Add(m_WinMsg, 0, wxGROW|wxALL, 5);
}
butt = new wxButton( this, wxID_CANCEL, _( "Cancel" ) );
GetSizer()->Fit(this);
GetSizer()->SetSizeHints(this);
if ( dialog_position == wxDefaultPosition ) // Put the window on the parent centre
{
Centre();
}
else // Ensure the window dialog is on screen :
{
wxPoint pos;
m_Parent->GetPosition(& pos.x, &pos.y);
if ( pos.x < 0 ) pos.x = 0;
if ( pos.y < 0 ) pos.y = 0;
pos.x += 20; pos.y += 30;
Move(pos);
}
RightBoxSizer->Add( butt, 0, wxGROW | wxALL, 5 );
if( m_MoveFct )
{
size.x = -1; size.y = 60;
m_WinMsg = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition, size,
wxTE_READONLY | wxTE_MULTILINE );
GeneralBoxSizer->Add( m_WinMsg, 0, wxGROW | wxALL, 5 );
}
GetSizer()->Fit( this );
GetSizer()->SetSizeHints( this );
if( dialog_position == wxDefaultPosition ) // Put the window on the parent centre
{
Centre();
}
else // Ensure the window dialog is on screen :
{
wxPoint pos;
m_Parent->GetPosition( &pos.x, &pos.y );
if( pos.x < 0 )
pos.x = 0;
if( pos.y < 0 )
pos.y = 0;
pos.x += 20; pos.y += 30;
Move( pos );
}
}
WinEDAListBox:: ~WinEDAListBox()
WinEDAListBox::~WinEDAListBox()
{
}
@ -139,93 +151,104 @@ WinEDAListBox:: ~WinEDAListBox()
void WinEDAListBox::MoveMouseToOrigin()
/******************************************/
{
int x, y, w, h;
wxSize list_size = m_List->GetSize();
int orgx = m_List->GetRect().GetLeft();
int orgy = m_List->GetRect().GetTop();
wxClientDisplayRect(&x, &y, &w, &h);
WarpPointer(x + orgx + 20, y + orgy + (list_size.y/2) );
int x, y, w, h;
wxSize list_size = m_List->GetSize();
int orgx = m_List->GetRect().GetLeft();
int orgy = m_List->GetRect().GetTop();
wxClientDisplayRect( &x, &y, &w, &h );
WarpPointer( x + orgx + 20, y + orgy + (list_size.y / 2) );
}
/*********************************************/
wxString WinEDAListBox::GetTextSelection()
/*********************************************/
{
wxString text = m_List->GetStringSelection();
return text;
wxString text = m_List->GetStringSelection();
return text;
}
/***************************************************************/
void WinEDAListBox::WinEDAListBox::Append(const wxString & item)
void WinEDAListBox::Append( const wxString& item )
/***************************************************************/
{
m_List->Append(item);
m_List->Append( item );
}
/******************************************************************************/
void WinEDAListBox::InsertItems(const wxArrayString & itemlist, int position)
void WinEDAListBox::InsertItems( const wxArrayString& itemlist, int position )
/******************************************************************************/
{
m_List->InsertItems(itemlist, position);
m_List->InsertItems( itemlist, position );
}
/************************************************/
void WinEDAListBox::OnCancelClick(wxCommandEvent& event)
void WinEDAListBox::OnCancelClick( wxCommandEvent& event )
/************************************************/
{
EndModal(-1);
EndModal( -1 );
}
/*****************************************************/
void WinEDAListBox::ClickOnList(wxCommandEvent& event)
void WinEDAListBox::ClickOnList( wxCommandEvent& event )
/*****************************************************/
{
wxString text;
wxString text;
if (m_MoveFct)
{
m_WinMsg->Clear();
text = m_List->GetStringSelection();
m_MoveFct(text);
m_WinMsg->WriteText(text.GetData());
}
if( m_MoveFct )
{
m_WinMsg->Clear();
text = m_List->GetStringSelection();
m_MoveFct( text );
m_WinMsg->WriteText( text.GetData() );
}
}
/*******************************************************/
void WinEDAListBox::D_ClickOnList(wxCommandEvent& event)
void WinEDAListBox::D_ClickOnList( wxCommandEvent& event )
/*******************************************************/
{
int ii = m_List->GetSelection();
EndModal(ii);
int ii = m_List->GetSelection();
EndModal( ii );
}
/***********************************************/
void WinEDAListBox::OnOkClick(wxCommandEvent& event)
void WinEDAListBox::OnOkClick( wxCommandEvent& event )
/***********************************************/
{
int ii = m_List->GetSelection();
EndModal(ii);
int ii = m_List->GetSelection();
EndModal( ii );
}
/***********************************************/
void WinEDAListBox::OnClose(wxCloseEvent& event)
void WinEDAListBox::OnClose( wxCloseEvent& event )
/***********************************************/
{
EndModal(-1);
EndModal( -1 );
}
/********************************************************************/
static int SortItems( const wxString ** ptr1, const wxString ** ptr2 )
static int SortItems( const wxString** ptr1, const wxString** ptr2 )
/********************************************************************/
/* Routines de comparaison pour le tri tri alphabetique,
* avec traitement des nombres en tant que valeur numerique
*/
{
return StrNumICmp( (*ptr1)->GetData(), (*ptr2)->GetData() );
return StrNumICmp( (*ptr1)->GetData(), (*ptr2)->GetData() );
}
@ -233,35 +256,35 @@ static int SortItems( const wxString ** ptr1, const wxString ** ptr2 )
void WinEDAListBox:: SortList()
/************************************/
{
int ii, NbItems = m_List->GetCount();
const wxString ** BufList;
int ii, NbItems = m_List->GetCount();
const wxString** BufList;
if( NbItems <= 0 ) return;
if( NbItems <= 0 )
return;
BufList = (const wxString **) MyZMalloc( 100*NbItems * sizeof(wxString*) );
for( ii = 0; ii < NbItems; ii++ )
{
BufList[ii] = new wxString(m_List->GetString(ii));
}
BufList = (const wxString**) MyZMalloc( 100 * NbItems * sizeof(wxString*) );
for( ii = 0; ii < NbItems; ii++ )
{
BufList[ii] = new wxString( m_List->GetString (ii) );
}
qsort(BufList, NbItems, sizeof(wxString *),
(int(*)(const void *,const void *)) SortItems);
qsort( BufList, NbItems, sizeof(wxString*),
( int( * ) ( const void*, const void* ) )SortItems );
m_List->Clear();
for( ii = 0; ii < NbItems; ii++ )
{
m_List->Append(*BufList[ii]);
delete BufList[ii];
}
m_List->Clear();
for( ii = 0; ii < NbItems; ii++ )
{
m_List->Append( *BufList[ii] );
delete BufList[ii];
}
free(BufList);
free( BufList );
}
/****************************************************/
void WinEDAListBox::OnKeyEvent(wxKeyEvent& event)
void WinEDAListBox::OnKeyEvent( wxKeyEvent& event )
/****************************************************/
{
event.Skip();
event.Skip();
}