qcommandline 0.2.0
[qcommandline:qcommandline.git] / doc / man / man3 / QCommandLine.3
1 .TH "QCommandLine" 3 "21 Oct 2010" "Version 0.2.0" "QCommandLine" \" -*- nroff -*-
2 .ad l
3 .nh
4 .SH NAME
5 QCommandLine \- Main class used to convert parse command line.  
6
7 .PP
8 .SH SYNOPSIS
9 .br
10 .PP
11 \fC#include <qcommandline.h>\fP
12 .PP
13 .SS "Public Types"
14
15 .in +1c
16 .ti -1c
17 .RI "enum \fBType\fP { \fBNone\fP =  0, \fBSwitch\fP, \fBOption\fP, \fBParam\fP }"
18 .br
19 .ti -1c
20 .RI "enum \fBFlags\fP { \fBDefault\fP =  0, \fBMandatory\fP =  0x01, \fBOptional\fP =  0x02, \fBMultiple\fP =  0x04, \fBMandatoryMultiple\fP =  Mandatory|Multiple, \fBOptionalMultiple\fP =  Optional|Multiple }"
21 .br
22 .SS "Signals"
23
24 .in +1c
25 .ti -1c
26 .RI "void \fBswitchFound\fP (const QString &name)"
27 .br
28 .ti -1c
29 .RI "void \fBoptionFound\fP (const QString &name, const QVariant &value)"
30 .br
31 .ti -1c
32 .RI "void \fBparamFound\fP (const QString &name, const QVariant &value)"
33 .br
34 .ti -1c
35 .RI "void \fBparseError\fP (const QString &error)"
36 .br
37 .in -1c
38 .SS "Public Member Functions"
39
40 .in +1c
41 .ti -1c
42 .RI "\fBQCommandLine\fP (QObject *parent=0)"
43 .br
44 .ti -1c
45 .RI "\fBQCommandLine\fP (const QCoreApplication &app, const QCommandLineConfig &config=QCommandLineConfig(), QObject *parent=0)"
46 .br
47 .ti -1c
48 .RI "\fBQCommandLine\fP (int argc, char *argv[], const QCommandLineConfig &config=QCommandLineConfig(), QObject *parent=0)"
49 .br
50 .ti -1c
51 .RI "\fBQCommandLine\fP (const QStringList args, const QCommandLineConfig &config=QCommandLineConfig(), QObject *parent=0)"
52 .br
53 .ti -1c
54 .RI "\fB~QCommandLine\fP ()"
55 .br
56 .ti -1c
57 .RI "void \fBsetConfig\fP (const QCommandLineConfig &config)"
58 .br
59 .ti -1c
60 .RI "void \fBsetConfig\fP (const \fBQCommandLineConfigEntry\fP config[])"
61 .br
62 .ti -1c
63 .RI "QCommandLineConfig \fBconfig\fP ()"
64 .br
65 .ti -1c
66 .RI "void \fBsetArguments\fP (int argc, char *argv[])"
67 .br
68 .ti -1c
69 .RI "void \fBsetArguments\fP (QStringList args)"
70 .br
71 .ti -1c
72 .RI "QStringList \fBarguments\fP ()"
73 .br
74 .ti -1c
75 .RI "void \fBenableHelp\fP (bool enable)"
76 .br
77 .ti -1c
78 .RI "bool \fBhelpEnabled\fP ()"
79 .br
80 .ti -1c
81 .RI "void \fBenableVersion\fP (bool enable)"
82 .br
83 .ti -1c
84 .RI "bool \fBversionEnabled\fP ()"
85 .br
86 .ti -1c
87 .RI "bool \fBparse\fP ()"
88 .br
89 .ti -1c
90 .RI "void \fBaddOption\fP (const QChar &shortName, const QString &longName=QString(), const QString &descr=QString(), \fBQCommandLine::Flags\fP flags=QCommandLine::Optional)"
91 .br
92 .ti -1c
93 .RI "void \fBaddSwitch\fP (const QChar &shortName, const QString &longName=QString(), const QString &descr=QString(), \fBQCommandLine::Flags\fP flags=QCommandLine::Optional)"
94 .br
95 .ti -1c
96 .RI "void \fBaddParam\fP (const QString &name, const QString &descr=QString(), \fBQCommandLine::Flags\fP flags=QCommandLine::Optional)"
97 .br
98 .ti -1c
99 .RI "void \fBremoveOption\fP (const QString &name)"
100 .br
101 .ti -1c
102 .RI "void \fBremoveSwitch\fP (const QString &name)"
103 .br
104 .ti -1c
105 .RI "void \fBremoveParam\fP (const QString &name)"
106 .br
107 .ti -1c
108 .RI "QString \fBhelp\fP (bool logo=true)"
109 .br
110 .ti -1c
111 .RI "QString \fBversion\fP ()"
112 .br
113 .ti -1c
114 .RI "void \fBshowHelp\fP (bool exit=true, int returnCode=0)"
115 .br
116 .ti -1c
117 .RI "void \fBshowVersion\fP (bool exit=true, int returnCode=0)"
118 .br
119 .in -1c
120 .SS "Static Public Attributes"
121
122 .in +1c
123 .ti -1c
124 .RI "static const \fBQCommandLineConfigEntry\fP \fBhelpEntry\fP = { QCommandLine::Switch, QLatin1Char('h'), QLatin1String('help'), tr('Display this help and exit'), QCommandLine::Optional }"
125 .br
126 .ti -1c
127 .RI "static const \fBQCommandLineConfigEntry\fP \fBversionEntry\fP = { QCommandLine::Switch, QLatin1Char('V'), QLatin1String('version'), tr('Display version and exit'), QCommandLine::Optional }"
128 .br
129 .in -1c
130 .SH "Detailed Description"
131 .PP 
132 Main class used to convert parse command line. 
133 .PP
134 Definition at line 39 of file qcommandline.h.
135 .SH "Member Enumeration Documentation"
136 .PP 
137 .SS "enum \fBQCommandLine::Flags\fP"
138 .PP
139 Flags that can be applied to a \fBQCommandLineConfigEntry\fP 
140 .PP
141 \fBEnumerator: \fP
142 .in +1c
143 .TP
144 \fB\fIDefault \fP\fP
145 can be used for the last line of a \fBQCommandLineConfigEntry\fP[] . 
146 .TP
147 \fB\fIMandatory \fP\fP
148 mandatory argument, will produce a parse error if not present 
149 .TP
150 \fB\fIOptional \fP\fP
151 optional argument 
152 .TP
153 \fB\fIMultiple \fP\fP
154 argument can be used multiple time and will produce multiple signals. 
155 .PP
156 Definition at line 56 of file qcommandline.h.
157 .SS "enum \fBQCommandLine::Type\fP"
158 .PP
159 Enum used to determine entry type in \fBQCommandLineConfigEntry\fP 
160 .PP
161 \fBEnumerator: \fP
162 .in +1c
163 .TP
164 \fB\fINone \fP\fP
165 can be used for the last line of a \fBQCommandLineConfigEntry\fP[] . 
166 .TP
167 \fB\fISwitch \fP\fP
168 a simple switch wihout argument (eg: ls -l) 
169 .TP
170 \fB\fIOption \fP\fP
171 an option with an argument (eg: tar -f test.tar) 
172 .TP
173 \fB\fIParam \fP\fP
174 a parameter without '-' delimiter (eg: cp foo bar) 
175 .PP
176 Definition at line 46 of file qcommandline.h.
177 .SH "Constructor & Destructor Documentation"
178 .PP 
179 .SS "QCommandLine::QCommandLine (QObject * parent = \fC0\fP)"
180 .PP
181 \fBQCommandLine\fP constructor QCoreApplication::instance()->\fBarguments()\fP will be called to get the arguments. 
182 .PP
183 Definition at line 14 of file qcommandline.cpp.
184 .SS "QCommandLine::QCommandLine (const QCoreApplication & app, const QCommandLineConfig & config = \fCQCommandLineConfig()\fP, QObject * parent = \fC0\fP)"
185 .PP
186 \fBQCommandLine\fP constructor 
187 .PP
188 \fBParameters:\fP
189 .RS 4
190 \fIapp\fP \fBarguments()\fP will be called on this app to get the list of arguments. 
191 .br
192 \fIconfig\fP The parser config 
193 .br
194 \fIparent\fP The parent for this object 
195 .RE
196 .PP
197 \fBSee also:\fP
198 .RS 4
199 \fBsetConfig\fP 
200 .RE
201 .PP
202
203 .PP
204 Definition at line 20 of file qcommandline.cpp.
205 .SS "QCommandLine::QCommandLine (int argc, char * argv[], const QCommandLineConfig & config = \fCQCommandLineConfig()\fP, QObject * parent = \fC0\fP)"
206 .PP
207 \fBQCommandLine\fP constructor 
208 .PP
209 \fBParameters:\fP
210 .RS 4
211 \fIargc\fP Size of the argv array 
212 .br
213 \fIargv\fP Argument array 
214 .br
215 \fIconfig\fP The parser config 
216 .br
217 \fIparent\fP The parent for this object 
218 .RE
219 .PP
220 \fBSee also:\fP
221 .RS 4
222 \fBsetArguments\fP 
223 .PP
224 \fBsetConfig\fP 
225 .RE
226 .PP
227
228 .PP
229 Definition at line 31 of file qcommandline.cpp.
230 .SS "QCommandLine::QCommandLine (const QStringList args, const QCommandLineConfig & config = \fCQCommandLineConfig()\fP, QObject * parent = \fC0\fP)"
231 .PP
232 \fBQCommandLine\fP constructor 
233 .PP
234 \fBParameters:\fP
235 .RS 4
236 \fIargs\fP Command line arguments 
237 .br
238 \fIconfig\fP The parser config 
239 .br
240 \fIparent\fP The parent for this object 
241 .RE
242 .PP
243 \fBSee also:\fP
244 .RS 4
245 \fBsetArguments\fP 
246 .PP
247 \fBsetConfig\fP 
248 .RE
249 .PP
250
251 .PP
252 Definition at line 42 of file qcommandline.cpp.
253 .SS "QCommandLine::~QCommandLine ()"
254 .PP
255 \fBQCommandLine\fP destructor 
256 .PP
257 Definition at line 53 of file qcommandline.cpp.
258 .SH "Member Function Documentation"
259 .PP 
260 .SS "void QCommandLine::addOption (const QChar & shortName, const QString & longName = \fCQString()\fP, const QString & descr = \fCQString()\fP, \fBQCommandLine::Flags\fP flags = \fCQCommandLine::Optional\fP)"
261 .PP
262 Define a new option 
263 .PP
264 \fBParameters:\fP
265 .RS 4
266 \fIshortName\fP Short name for this option (ex: h) 
267 .br
268 \fIlongName\fP Long name for this option (ex: help) 
269 .br
270 \fIdescr\fP Help text 
271 .br
272 \fIflags\fP Switch flags 
273 .RE
274 .PP
275 \fBSee also:\fP
276 .RS 4
277 \fBaddSwitch\fP 
278 .PP
279 \fBaddParam\fP 
280 .RE
281 .PP
282
283 .PP
284 Definition at line 313 of file qcommandline.cpp.
285 .SS "void QCommandLine::addParam (const QString & name, const QString & descr = \fCQString()\fP, \fBQCommandLine::Flags\fP flags = \fCQCommandLine::Optional\fP)"
286 .PP
287 Define a new parameter 
288 .PP
289 \fBParameters:\fP
290 .RS 4
291 \fIname\fP Name, used in help, usage and error messages 
292 .br
293 \fIdescr\fP Help text 
294 .br
295 \fIflags\fP Parameter flags 
296 .RE
297 .PP
298 \fBSee also:\fP
299 .RS 4
300 \fBaddSwitch\fP 
301 .PP
302 \fBaddOption\fP 
303 .RE
304 .PP
305
306 .PP
307 Definition at line 345 of file qcommandline.cpp.
308 .SS "void QCommandLine::addSwitch (const QChar & shortName, const QString & longName = \fCQString()\fP, const QString & descr = \fCQString()\fP, \fBQCommandLine::Flags\fP flags = \fCQCommandLine::Optional\fP)"
309 .PP
310 Define a new switch 
311 .PP
312 \fBParameters:\fP
313 .RS 4
314 \fIshortName\fP Short name for this switch (ex: h) 
315 .br
316 \fIlongName\fP Long name for this switch (ex: help) 
317 .br
318 \fIdescr\fP Help text 
319 .br
320 \fIflags\fP Parameter flags 
321 .RE
322 .PP
323 \fBSee also:\fP
324 .RS 4
325 \fBaddOption\fP 
326 .PP
327 \fBaddParam\fP 
328 .RE
329 .PP
330
331 .PP
332 Definition at line 329 of file qcommandline.cpp.
333 .SS "QStringList QCommandLine::arguments ()"
334 .PP
335 Get command line arguments 
336 .PP
337 \fBReturns:\fP
338 .RS 4
339 Command line arguments (like QApplication::arguments()) 
340 .RE
341 .PP
342 \fBSee also:\fP
343 .RS 4
344 \fBarguments\fP 
345 .RE
346 .PP
347
348 .PP
349 Definition at line 96 of file qcommandline.cpp.
350 .SS "QCommandLineConfig QCommandLine::config ()"
351 .PP
352 Get the current parser configuration 
353 .PP
354 \fBReturns:\fP
355 .RS 4
356 The parser configuration 
357 .RE
358 .PP
359 \fBSee also:\fP
360 .RS 4
361 \fBsetConfig\fP 
362 .RE
363 .PP
364
365 .PP
366 Definition at line 76 of file qcommandline.cpp.
367 .SS "void QCommandLine::enableHelp (bool enable)"
368 .PP
369 Enable --help,-h switch 
370 .PP
371 \fBParameters:\fP
372 .RS 4
373 \fIenable\fP true to enable, false to disable 
374 .RE
375 .PP
376 \fBSee also:\fP
377 .RS 4
378 \fBenableHelp\fP 
379 .RE
380 .PP
381
382 .PP
383 Definition at line 102 of file qcommandline.cpp.
384 .SS "void QCommandLine::enableVersion (bool enable)"
385 .PP
386 Enable --version,-V switch 
387 .PP
388 \fBParameters:\fP
389 .RS 4
390 \fIenable\fP true to enable, false to disable 
391 .RE
392 .PP
393 \fBSee also:\fP
394 .RS 4
395 \fBversionEnabled\fP 
396 .RE
397 .PP
398
399 .PP
400 Definition at line 114 of file qcommandline.cpp.
401 .SS "QString QCommandLine::help (bool logo = \fCtrue\fP)"
402 .PP
403 Return the help message 
404 .PP
405 \fBParameters:\fP
406 .RS 4
407 \fIlogo\fP also show version message on top of the help message 
408 .RE
409 .PP
410 \fBSee also:\fP
411 .RS 4
412 \fBversion\fP 
413 .RE
414 .PP
415
416 .PP
417 Definition at line 402 of file qcommandline.cpp.
418 .SS "bool QCommandLine::helpEnabled ()"
419 .PP
420 Check if help is enabled or not. 
421 .PP
422 \fBReturns:\fP
423 .RS 4
424 true if help is enabled; otherwise returns false. 
425 .RE
426 .PP
427 \fBSee also:\fP
428 .RS 4
429 \fBenableVersion\fP 
430 .RE
431 .PP
432
433 .PP
434 Definition at line 108 of file qcommandline.cpp.
435 .SS "void QCommandLine::optionFound (const QString & name, const QVariant & value)\fC [signal]\fP"
436 .PP
437 Signal emitted when an option is found while parsing 
438 .PP
439 \fBParameters:\fP
440 .RS 4
441 \fIname\fP The 'longName' of the switch. 
442 .br
443 \fIvalue\fP The value of that option 
444 .RE
445 .PP
446 \fBSee also:\fP
447 .RS 4
448 \fBparse\fP 
449 .PP
450 \fBaddSwitch\fP 
451 .RE
452 .PP
453
454 .SS "void QCommandLine::paramFound (const QString & name, const QVariant & value)\fC [signal]\fP"
455 .PP
456 Signal emitted when a param is found while parsing 
457 .PP
458 \fBParameters:\fP
459 .RS 4
460 \fIname\fP The 'longName' of the switch. 
461 .br
462 \fIvalue\fP The actual argument 
463 .RE
464 .PP
465 \fBSee also:\fP
466 .RS 4
467 \fBparse\fP 
468 .PP
469 \fBaddSwitch\fP 
470 .RE
471 .PP
472
473 .SS "bool QCommandLine::parse ()"
474 .PP
475 Parse command line and emmit signals when switchs, options, or param are found. 
476 .PP
477 \fBReturns:\fP
478 .RS 4
479 true if successfully parsed; otherwise returns false. 
480 .RE
481 .PP
482 \fBSee also:\fP
483 .RS 4
484 \fBparseError\fP 
485 .RE
486 .PP
487
488 .PP
489 Definition at line 126 of file qcommandline.cpp.
490 .SS "void QCommandLine::parseError (const QString & error)\fC [signal]\fP"
491 .PP
492 Signal emitted when a parse error is detected 
493 .PP
494 \fBParameters:\fP
495 .RS 4
496 \fIerror\fP Parse error description 
497 .RE
498 .PP
499 \fBSee also:\fP
500 .RS 4
501 \fBparse\fP 
502 .RE
503 .PP
504
505 .SS "void QCommandLine::removeOption (const QString & name)"
506 .PP
507 Remove any option of type \fBQCommandLine::Option\fP with a given shortName or longName. 
508 .PP
509 \fBParameters:\fP
510 .RS 4
511 \fIname\fP the name of the option to remove 
512 .RE
513 .PP
514 \fBSee also:\fP
515 .RS 4
516 \fBremoveParam\fP 
517 .PP
518 \fBremoveSwitch\fP 
519 .RE
520 .PP
521
522 .PP
523 Definition at line 359 of file qcommandline.cpp.
524 .SS "void QCommandLine::removeParam (const QString & name)"
525 .PP
526 Remove any option of type \fBQCommandLine::Param\fP with a given shortName or longName. 
527 .PP
528 \fBParameters:\fP
529 .RS 4
530 \fIname\fP the name of the option to remove 
531 .RE
532 .PP
533 \fBSee also:\fP
534 .RS 4
535 \fBremoveOption\fP 
536 .PP
537 \fBremoveSwitch\fP 
538 .RE
539 .PP
540
541 .PP
542 Definition at line 387 of file qcommandline.cpp.
543 .SS "void QCommandLine::removeSwitch (const QString & name)"
544 .PP
545 Remove any option of type \fBQCommandLine::Switch\fP with a given shortName or longName. 
546 .PP
547 \fBParameters:\fP
548 .RS 4
549 \fIname\fP the name of the option to remove 
550 .RE
551 .PP
552 \fBSee also:\fP
553 .RS 4
554 \fBremoveOption\fP 
555 .PP
556 \fBremoveParam\fP 
557 .RE
558 .PP
559
560 .PP
561 Definition at line 373 of file qcommandline.cpp.
562 .SS "void QCommandLine::setArguments (QStringList args)"
563 .PP
564 Set command line arguments 
565 .PP
566 \fBParameters:\fP
567 .RS 4
568 \fIargs\fP A list of arguments 
569 .RE
570 .PP
571 \fBSee also:\fP
572 .RS 4
573 \fBarguments\fP 
574 .RE
575 .PP
576
577 .PP
578 Definition at line 90 of file qcommandline.cpp.
579 .SS "void QCommandLine::setArguments (int argc, char * argv[])"
580 .PP
581 Set command line arguments 
582 .PP
583 \fBParameters:\fP
584 .RS 4
585 \fIargc\fP Size of the argv array 
586 .br
587 \fIargv\fP Array of arguments 
588 .RE
589 .PP
590 \fBSee also:\fP
591 .RS 4
592 \fBarguments\fP 
593 .RE
594 .PP
595
596 .PP
597 Definition at line 82 of file qcommandline.cpp.
598 .SS "void QCommandLine::setConfig (const \fBQCommandLineConfigEntry\fP config[])"
599 .PP
600 Set the parser configuration 
601 .PP
602 \fBParameters:\fP
603 .RS 4
604 \fIconfig\fP An array containing the configuration 
605 .RE
606 .PP
607 \fBSee also:\fP
608 .RS 4
609 \fBconfig\fP 
610 .RE
611 .PP
612
613 .PP
614 Definition at line 65 of file qcommandline.cpp.
615 .SS "void QCommandLine::setConfig (const QCommandLineConfig & config)"
616 .PP
617 Set the parser configuration 
618 .PP
619 \fBParameters:\fP
620 .RS 4
621 \fIconfig\fP The configuration 
622 .RE
623 .PP
624 \fBSee also:\fP
625 .RS 4
626 \fBconfig\fP 
627 .RE
628 .PP
629
630 .PP
631 Definition at line 59 of file qcommandline.cpp.
632 .SS "void QCommandLine::showHelp (bool exit = \fCtrue\fP, int returnCode = \fC0\fP)"
633 .PP
634 Show the help message. 
635 .PP
636 \fBParameters:\fP
637 .RS 4
638 \fIexit\fP Exit if true 
639 .br
640 \fIreturnCode\fP return code of the program if exit is true 
641 .RE
642 .PP
643 \fBSee also:\fP
644 .RS 4
645 \fBshowVersion\fP 
646 .RE
647 .PP
648
649 .PP
650 Definition at line 486 of file qcommandline.cpp.
651 .SS "void QCommandLine::showVersion (bool exit = \fCtrue\fP, int returnCode = \fC0\fP)"
652 .PP
653 Show the version message. 
654 .PP
655 \fBParameters:\fP
656 .RS 4
657 \fIexit\fP Exit if true 
658 .br
659 \fIreturnCode\fP return code of the program if exit is true 
660 .RE
661 .PP
662 \fBSee also:\fP
663 .RS 4
664 \fBshowHelp\fP 
665 .RE
666 .PP
667
668 .PP
669 Definition at line 496 of file qcommandline.cpp.
670 .SS "void QCommandLine::switchFound (const QString & name)\fC [signal]\fP"
671 .PP
672 Signal emitted when a switch is found while parsing 
673 .PP
674 \fBParameters:\fP
675 .RS 4
676 \fIname\fP The 'longName' of the switch. 
677 .RE
678 .PP
679 \fBSee also:\fP
680 .RS 4
681 \fBparse\fP 
682 .PP
683 \fBaddSwitch\fP 
684 .RE
685 .PP
686
687 .SS "QString QCommandLine::version ()"
688 .PP
689 Return the version message 
690 .PP
691 \fBSee also:\fP
692 .RS 4
693 \fBhelp\fP 
694 .RE
695 .PP
696
697 .PP
698 Definition at line 471 of file qcommandline.cpp.
699 .SS "bool QCommandLine::versionEnabled ()"
700 .PP
701 Check if version is enabled or not. 
702 .PP
703 \fBReturns:\fP
704 .RS 4
705 true if version is enabled; otherwise returns false. 
706 .RE
707 .PP
708 \fBSee also:\fP
709 .RS 4
710 \fBenableHelp\fP 
711 .RE
712 .PP
713
714 .PP
715 Definition at line 120 of file qcommandline.cpp.
716 .SH "Member Data Documentation"
717 .PP 
718 .SS "const \fBQCommandLineConfigEntry\fP \fBQCommandLine::helpEntry\fP = { QCommandLine::Switch, QLatin1Char('h'), QLatin1String('help'), tr('Display this help and exit'), QCommandLine::Optional }\fC [static]\fP"
719 .PP
720 Standard --help, -h entry 
721 .PP
722 Definition at line 287 of file qcommandline.h.
723 .SS "const \fBQCommandLineConfigEntry\fP \fBQCommandLine::versionEntry\fP = { QCommandLine::Switch, QLatin1Char('V'), QLatin1String('version'), tr('Display version and exit'), QCommandLine::Optional }\fC [static]\fP"
724 .PP
725 Standard --version, -V entry 
726 .PP
727 Definition at line 292 of file qcommandline.h.
728
729 .SH "Author"
730 .PP 
731 Generated automatically by Doxygen for QCommandLine from the source code.