source: cpp/frams/errmgr/stderrors.cpp @ 120

Last change on this file since 120 was 109, checked in by sz, 11 years ago

source reorganization (see README)
new feature added: part/joint shapes (see frams/_demos/part_shapes.cpp)

  • Property svn:eol-style set to native
File size: 1.0 KB
Line 
1// This file is a part of the Framsticks GDK library.
2// Copyright (C) 2002-2013  Szymon Ulatowski.  See LICENSE.txt for details.
3// Refer to http://www.framsticks.com/ for further information.
4
5#include "stderrors.h"
6#include <frams/util/sstringutils.h>
7#include <common/framsg.h>
8
9bool listIndexCheck(SList* list,int index,const char* msgobj,const char* msgfun)
10{
11        int size=list->size();
12if ((index<0)||(index>=size))
13        {
14        if (size>0)
15                FMprintf(msgobj,msgfun,FMLV_ERROR,"Invalid index %d (allowed range is 0..%d)",index,size-1);
16        else
17                FMprintf(msgobj,msgfun,FMLV_ERROR,"Invalid index %d (this list is empty)",index);
18        return 0;
19        }
20return 1;
21}
22
23SString stringCheck(SString& in,const char* msgobj,const char* msgfun,const char* msg,SString (*checker)(SString& in))
24{
25if (!checker)
26        checker=trim;
27SString corrected=checker(in);
28if (corrected!=in)
29        {
30        SString msg2=SString(msg)+": \"%s\" (adjusted to \"%s\")";
31        FMprintf(msgobj,msgfun,FMLV_WARN,(const char*)msg2,(const char*)in,(const char*)corrected);
32        }
33return corrected;
34}
Note: See TracBrowser for help on using the repository browser.