## AnjutaCommandQueue AnjutaCommandQueue — AnjutaCommandQueue is used to queue commands |

## Synopsis

    #include <libanjuta/anjuta-async-command.h>

    struct              AnjutaCommandQueueClass;
    enum                AnjutaCommandQueueExecuteMode;
    AnjutaCommandQueue * anjuta_command_queue_new           (AnjutaCommandQueueExecuteMode mode);
    void                anjuta_command_queue_push           (AnjutaCommandQueue *self,
                                                             AnjutaCommand *command);
    gboolean            anjuta_command_queue_start          (AnjutaCommandQueue *self);
                        AnjutaCommandQueuePriv;

## Description

AnjutaCommandQueue always starts the next command in the queue when the previous command finishes. That also works for asyncronous commands

## Details

### struct AnjutaCommandQueueClass

    struct AnjutaCommandQueueClass {
    	GObjectClass parent_class;

    	/* Signals */
    	void (*finished) (AnjutaCommandQueue *queue);
    };

### enum AnjutaCommandQueueExecuteMode

    typedef enum {
    	ANJUTA_COMMAND_QUEUE_EXECUTE_AUTOMATIC,
    	ANJUTA_COMMAND_QUEUE_EXECUTE_MANUAL
    } AnjutaCommandQueueExecuteMode;

`ANJUTA_COMMAND_QUEUE_EXECUTE_AUTOMATIC` |
`ANJUTA_COMMAND_QUEUE_EXECUTE_MANUAL` |

### anjuta_command_queue_new ()

    AnjutaCommandQueue * anjuta_command_queue_new           (AnjutaCommandQueueExecuteMode mode);

### anjuta_command_queue_push ()

    void                anjuta_command_queue_push           (AnjutaCommandQueue *self,
                                                             AnjutaCommand *command);

Adds a command to the Queue and starts it if there are no other commands waiting

`self` : | AnjutaCommandQueue object
`command` : | The command to add

### anjuta_command_queue_start ()

    gboolean            anjuta_command_queue_start          (AnjutaCommandQueue *self);

### AnjutaCommandQueuePriv

    typedef struct _AnjutaCommandQueuePriv AnjutaCommandQueuePriv;