0.8.17:

2005-03-22  Murray Cumming  <murrayc@murrayc.com>

	* examples/example_smallbusiness.glom:
	Change the database name, adding v2 at the 
	end, to force the database to be recreated 
	when previous glom users open the example 
	again.

2005-03-22  Murray Cumming  <murrayc@murrayc.com>

	* glom/mode_data/box_data_details.cc:
	* glom/mode_data/box_data_list.cc:
	* glom/mode_data/box_data_list.h:
	fill_from_database(): Disable the Add and Delete 
	buttons if the current user does not have those 
	priviliges.

2005-03-22  Murray Cumming  <murrayc@murrayc.com>

	* glom/data_structure/layout/layoutitem_field.cc:
	* glom/data_structure/layout/layoutitem_field.h:
	Store priv_view when we store priv_edit.
	* glom/mode_data/box_data.cc:
	* glom/mode_data/box_data_details.cc:
	* glom/mode_data/box_data_list.cc:
	Do not get records if the table may not be viewed 
	by the current user.
	* glom/utility_widgets/datawidget.cc:
	* glom/utility_widgets/datawidget.h:
	Make field contents non-visible if necessary, 
	though we do not even fill them with data in 
	that case anyway.
	* glom/mode_design/users/dialog_groups_list.cc:
	When setting view to false, set everything else 
	to false too, because anything else would be 
	stupid.

2005-03-22  Murray Cumming <murrayc@murrayc.com>

	* glom/base_db.cc:
	* glom/base_db.h:
	* glom/frame_glom.cc:
	on_menu_userlevel_Developer(): Prevent 
	developer mode if the user is not in the 
	developer group.

2005-03-22  Murray Cumming <murrayc@murrayc.com>

	* glom/mode_design/users/dialog_user.cc:
	* glom/mode_design/users/dialog_user.h:
	* glom/mode_design/users/dialog_users_list.cc:
	When editing a user, show the group (though 
	we can not edit it here yet), and update the 
	password in the connection if it is the 
	current user.

2005-03-22  Murray Cumming <murrayc@murrayc.com>

	* glom/mode_design/users/dialog_groups_list.cc:
	* glom/mode_design/users/dialog_groups_list.h:
	Add a description of the special developers group.
	* glom/mode_design/users/dialog_users_list.cc:
	* glom/mode_design/users/dialog_users_list.h:
	Prevent removal of the last developer.

2005-03-22  Murray Cumming <murrayc@murrayc.com>

	* glom/base_db.cc:
	* glom/base_db.h:
	* glom/data_structure/layout/layoutitem.h:
	* glom/data_structure/layout/layoutitem_field.cc:
	* glom/data_structure/layout/layoutitem_field.h:
	* glom/mode_data/box_data.cc:
	* glom/mode_data/box_data.h:
	* glom/utility_widgets/db_adddel/db_adddel.cc:
	* glom/utility_widgets/db_adddel/db_adddel.h:
	* glom/utility_widgets/flowtablewithfields.cc:
	Store the privileges in the LayoutItem_Field, 
	filling them in when we get the field information 
	from the database. Make widgets for non-editable 
	fields to non-editable.
	* glom/frame_glom.cc:
	Update the layout when the Users window closes, 
	to show changes.

2005-03-22  Murray Cumming  <murrayc@murrayc.com>

	* examples/example_smallbusiness.glom:
	Added the table_privs.
	* glom/document/document_glom.cc:
	Do not use an invalid map iterator, to 
	prevent a crash.

2005-03-22  Murray Cumming  <murrayc@murrayc.com>

	* glom/application.cc: recreate_database():
	Add the developer group and make the user a 
	member of it.
	* glom/base_db.cc:
	* glom/base_db.h:
	Added get_current_privs().
	* glom/data_structure/Makefile.am:
	* glom/data_structure/groupinfo.cc:
	* glom/data_structure/groupinfo.h:
	* glom/document/document_glom.cc:
	* glom/document/document_glom.h:
	Moved GroupInfo class out of Document_Glom.
	* glom/mode_design/users/dialog_groups_list.cc:
	Set the groups in the document when we get 
	them from the database. But just in case 
	we need to recreate the database from the 
	document.

2005-03-21  Murray Cumming  <murrayc@murrayc.com>

	* glom/document/document_glom.cc:
	* glom/document/document_glom.h:
	* glom/glom_document.dtd:
	Add API to get/set the groups, and load/save 
	them in the XML. Not used yet.

2005-03-21  Murray Cumming <murrayc@murrayc.com>

	* docs/website/screenshots/glom_design_groups.png:
	* docs/website/screenshots/index.html:
	Add a section to show the Groups window.
	* glom/glom.glade:
	Use SCROLLBARS_AUTOMATIC on some ScrolledWindows.

2005-03-21  Murray Cumming  <murrayc@murrayc.com>

	* examples/example_smallbusiness.glom:
	Remove nonsense table information.
	* glom/base_db.cc:
	* glom/base_db.h:
	Add add_standard_groups() - it ensures that 
	there is always a developer group.
	* glom/mode_design/users/dialog_groups_list.cc:
	load_from_document(): Call add_standard_groups() to ensure 
	that the developer group always exists.
	on_button_group_new(): Provide sensible default privilieges 
	for new groups.
	* glom/document/document_glom.cc:
	* glom/document/document_glom.h:
	Add remove_table() and remove_relationship().
	* glom/navigation/box_tables.cc: on_adddel_Delete():
	Remove tables from the document as well as the database 
	server.	

2005-03-21  Murray Cumming <murrayc@murrayc.com>

	* configure.in:
	* glom/Makefile.am:
	* glom/application.cc:
	* glom/base_db.cc:
	* glom/base_db.h:
	* glom/box_db.h:
	* glom/data_structure/Makefile.am:
	* glom/data_structure/tableinfo.h:
	* glom/document/document_glom.cc:
	* glom/document/document_glom.h:
	* glom/frame_glom.cc:
	* glom/glom.glade:
	* glom/mode_design/Makefile.am:
	* glom/mode_design/dialog_user.cc:
	* glom/mode_design/dialog_user.h:
	* glom/mode_design/dialog_users_list.cc:
	* glom/mode_design/dialog_users_list.h:
	* glom/mode_design/fields/combo_textglade.cc:
	* glom/mode_design/fields/combo_textglade.h:
	* glom/mode_design/users/Makefile.am:
	* glom/mode_design/users/dialog_choose_user.cc:
	* glom/mode_design/users/dialog_choose_user.h:
	* glom/mode_design/users/dialog_groups_list.cc:
	* glom/mode_design/users/dialog_groups_list.h:
	* glom/mode_design/users/dialog_new_group.cc:
	* glom/mode_design/users/dialog_new_group.h:
	* glom/mode_design/users/dialog_user.cc:
	* glom/mode_design/users/dialog_user.h:
	* glom/mode_design/users/dialog_users_list.cc:
	* glom/mode_design/users/dialog_users_list.h:
	* glom/navigation/box_tables.cc:
	* glom/utility_widgets/adddel/adddel.cc:
	User management is now group-based, with 
	users in groups, and permissions for each group.

2005-03-19  Murray Cumming <murrayc@murrayc.com>

	* glom/Makefile.am:
	* glom/frame_glom.cc:
	* glom/glom.glade:
	* glom/mode_data/box_data.cc:
	* glom/mode_design/Makefile.am:
	* glom/mode_design/dialog_user.cc:
	* glom/mode_design/dialog_user.h:
	* glom/mode_design/dialog_users_list.cc:
	* glom/mode_design/dialog_users_list.h:
	Added very simple user administration, available
	from the Developer menu.

2005-03-18  Murray Cumming <murrayc@murrayc.com>

	* examples/example_smallbusiness.glom:
	* glom/Makefile.am:
	* glom/data_structure/layout/layoutitem_portal.h:
	* glom/mode_data/dialog_layout_details.cc:
	* glom/mode_data/treestore_layout.h:
	* glom/mode_design/dialog_relationships.cc:
	* glom/utility_widgets/datawidget.cc:
	* glom/utility_widgets/datawidget.h:
	* glom/utility_widgets/entryglom.cc:
	* glom/utility_widgets/entryglom.h:
	* glom/utility_widgets/flowtable.cc:
	* glom/utility_widgets/flowtable.h:
	* glom/utility_widgets/flowtablewithfields.cc:
	* glom/utility_widgets/flowtablewithfields.h:
	* glom/utility_widgets/layoutwidgetbase.cc:
	* glom/utility_widgets/layoutwidgetbase.h:
	Details view: You can now right-click on a Field 
	Entry, to add a field, group, or related records 
	portal after the clicked field.