xref: /haiku/src/tests/apps/miniterminal/Arguments.h (revision 4cbc183b53c514dfa87690f2e4ffb596dbeb708f)
142244cf3SIngo Weinhold /*
242244cf3SIngo Weinhold  * Copyright 2005, Ingo Weinhold, bonefish@users.sf.net.
342244cf3SIngo Weinhold  * Distributed under the terms of the MIT License.
442244cf3SIngo Weinhold  */
542244cf3SIngo Weinhold 
642244cf3SIngo Weinhold #ifndef ARGUMENTS_H
742244cf3SIngo Weinhold #define ARGUMENTS_H
842244cf3SIngo Weinhold 
942244cf3SIngo Weinhold #include <Rect.h>
1042244cf3SIngo Weinhold 
1142244cf3SIngo Weinhold class Arguments {
1242244cf3SIngo Weinhold public:
1342244cf3SIngo Weinhold 	Arguments();
1442244cf3SIngo Weinhold 	~Arguments();
1542244cf3SIngo Weinhold 
1642244cf3SIngo Weinhold 	void Parse(int argc, const char *const *argv);
1742244cf3SIngo Weinhold 
Bounds()1842244cf3SIngo Weinhold 	BRect Bounds() const		{ return fBounds; }
Title()19*4cbc183bSIngo Weinhold 	const char *Title() const	{ return fTitle; }
StandardShell()2042244cf3SIngo Weinhold 	bool StandardShell() const	{ return fStandardShell; }
2142244cf3SIngo Weinhold 	void GetShellArguments(int &argc, const char *const *&argv) const;
2242244cf3SIngo Weinhold 
2342244cf3SIngo Weinhold private:
2442244cf3SIngo Weinhold 	void _SetShellArguments(int argc, const char *const *argv);
2542244cf3SIngo Weinhold 
2642244cf3SIngo Weinhold 	BRect		fBounds;
2742244cf3SIngo Weinhold 	bool		fStandardShell;
2842244cf3SIngo Weinhold 	int			fShellArgumentCount;
2942244cf3SIngo Weinhold 	const char	**fShellArguments;
30*4cbc183bSIngo Weinhold 	const char	*fTitle;
3142244cf3SIngo Weinhold };
3242244cf3SIngo Weinhold 
3342244cf3SIngo Weinhold 
3442244cf3SIngo Weinhold #endif	// ARGUMENTS_H
35