Added wxString version of wxStripExtension; changed OnClose to return TRUE;

fixed some bad casts in resource.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
1998-07-22 13:54:47 +00:00
parent 9123006f13
commit 47fa796902
3 changed files with 61 additions and 16 deletions

View File

@@ -267,6 +267,21 @@ void wxStripExtension(char *buffer)
}
}
void wxStripExtension(wxString& buffer)
{
size_t len = buffer.Length();
size_t i = len-1;
while (i > 0)
{
if (buffer.GetChar(i) == '.')
{
buffer = buffer.Left(i);
break;
}
i --;
}
}
// Destructive removal of /./ and /../ stuff
char *wxRealPath (char *path)
{

View File

@@ -785,7 +785,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
}
else
{
id = wxResourceGetIdentifier(WXSTRINGCAST expr1->StringValue(), &table);
wxString str(expr1->StringValue());
id = wxResourceGetIdentifier(WXSTRINGCAST str, &table);
if (id == 0)
{
char buf[300];
@@ -861,7 +862,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
// Check for bitmap resource name
if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
{
controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
wxString str(expr->Nth(count)->StringValue());
controlItem->SetValue4(WXSTRINGCAST str);
count ++;
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
@@ -896,7 +898,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
// Check for default value
if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
{
controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
wxString str(expr->Nth(count)->StringValue());
controlItem->SetValue4(WXSTRINGCAST str);
count ++;
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
@@ -914,7 +917,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
// Check for bitmap resource name
if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
{
controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
wxString str(expr->Nth(count)->StringValue());
controlItem->SetValue4(WXSTRINGCAST str);
count ++;
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
@@ -1081,7 +1085,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
PrologExpr *textValue = expr->Nth(count);
if (textValue && (textValue->Type() == PrologString || textValue->Type() == PrologWord))
{
controlItem->SetValue4(WXSTRINGCAST textValue->StringValue());
wxString str(textValue->StringValue());
controlItem->SetValue4(WXSTRINGCAST str);
count ++;
@@ -1186,7 +1191,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
item->SetType("wxMenu"); // Well, menu item, but doesn't matter.
if (labelExpr)
{
item->SetTitle(WXSTRINGCAST labelExpr->StringValue());
wxString str(labelExpr->StringValue());
item->SetTitle(WXSTRINGCAST str);
}
if (idExpr)
{
@@ -1194,7 +1200,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
// If a string or word, must look up in identifier table.
if ((idExpr->Type() == PrologString) || (idExpr->Type() == PrologWord))
{
id = wxResourceGetIdentifier(WXSTRINGCAST idExpr->StringValue(), &table);
wxString str(idExpr->StringValue());
id = wxResourceGetIdentifier(WXSTRINGCAST str, &table);
if (id == 0)
{
char buf[300];
@@ -1209,7 +1216,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
}
if (helpExpr)
{
item->SetValue4(WXSTRINGCAST helpExpr->StringValue());
wxString str(helpExpr->StringValue());
item->SetValue4(WXSTRINGCAST str);
}
if (checkableExpr)
item->SetValue2(checkableExpr->IntegerValue());
@@ -1346,9 +1354,15 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), Prol
PrologExpr *xresExpr = listExpr->Nth(4);
PrologExpr *yresExpr = listExpr->Nth(5);
if (nameExpr && nameExpr->StringValue())
bitmapSpec->SetName(WXSTRINGCAST nameExpr->StringValue());
{
wxString str(nameExpr->StringValue());
bitmapSpec->SetName(WXSTRINGCAST str);
}
if (typeExpr && typeExpr->StringValue())
bitmapSpec->SetValue1(wxParseWindowStyle(WXSTRINGCAST typeExpr->StringValue()));
{
wxString str(typeExpr->StringValue());
bitmapSpec->SetValue1(wxParseWindowStyle(WXSTRINGCAST str));
}
else
bitmapSpec->SetValue1(0);
@@ -1421,12 +1435,23 @@ wxFont *wxResourceInterpretFontSpec(PrologExpr *expr)
PrologExpr *faceNameExpr = expr->Nth(5);
if (pointExpr)
point = (int)pointExpr->IntegerValue();
wxString str;
if (familyExpr)
family = (int)wxParseWindowStyle(WXSTRINGCAST familyExpr->StringValue());
{
str = familyExpr->StringValue();
family = (int)wxParseWindowStyle(WXSTRINGCAST str);
}
if (styleExpr)
style = (int)wxParseWindowStyle(WXSTRINGCAST styleExpr->StringValue());
{
str = styleExpr->StringValue();
style = (int)wxParseWindowStyle(WXSTRINGCAST str);
}
if (weightExpr)
weight = (int)wxParseWindowStyle(WXSTRINGCAST weightExpr->StringValue());
{
str = weightExpr->StringValue();
weight = (int)wxParseWindowStyle(WXSTRINGCAST str);
}
if (underlineExpr)
underline = (int)underlineExpr->IntegerValue();
if (faceNameExpr)

View File

@@ -813,6 +813,11 @@ void wxFrame::OnCloseWindow(wxCloseEvent& event)
}
}
bool wxFrame::OnClose(void)
{
return TRUE;
}
// Destroy the window (delayed, if a managed window)
bool wxFrame::Destroy(void)
{