1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
4 Copyright (C) 2005 Sebastien Granjoux
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #ifndef __VARIABLE_H__
22 #define __VARIABLE_H__
24 #include <libanjuta/anjuta-shell.h>
28 typedef struct _ATPVariable
34 ATP_DEFAULT_VARIABLE
= 0,
35 ATP_DIRECTORY_VARIABLE
= 1 << 1, /* Variable is a directory */
36 ATP_FILE_VARIABLE
= 1 << 2, /* Variable is a filename */
37 ATP_INTERACTIVE_VARIABLE
= 1 << 3, /* Variable display a dialog */
38 ATP_NO_VARIABLE
= 1 << 15
41 ATPVariable
* atp_variable_construct (ATPVariable
* this, AnjutaShell
* shell
);
42 void atp_variable_destroy (ATPVariable
* this);
44 guint
atp_variable_get_count (const ATPVariable
* this);
45 const gchar
* atp_variable_get_name (const ATPVariable
* this, guint id
);
46 const gchar
* atp_variable_get_help (const ATPVariable
* this, guint id
);
47 ATPFlags
atp_variable_get_flag (const ATPVariable
* this, guint id
);
49 gchar
* atp_variable_get_value_from_id (const ATPVariable
* this, guint id
);
50 gchar
* atp_variable_get_value (const ATPVariable
* this, const gchar
* name
);
51 gchar
* atp_variable_get_value_from_name_part (const ATPVariable
* this, const gchar
* name
, gsize length
);