Exemplo n.º 1
0
static time_t
get_requested_time (DialogData *data, 
		    const char *filename)
{
	int idx  = gtk_option_menu_get_history (GTK_OPTION_MENU (data->date_optionmenu));
	time_t t = (time_t)0;

	switch (idx) {
	case NO_DATE:
		break;
	case FOLLOWING_DATE:
		t = gnome_date_edit_get_time (GNOME_DATE_EDIT (data->date_dateedit));
		break;
	case CURRENT_DATE:
		t = time (NULL);
		break;
	case EXIF_DATE:
		t = get_metadata_time (NULL, filename);
		break;
	case LAST_MODIFIED_DATE:
		t = get_file_mtime (filename);
		break;
	case IMAGE_CREATION_DATE:
		t = get_file_ctime (filename);
		break;
	}

	return t;
}
Exemplo n.º 2
0
static void
prop_set(GnomePropertyBox * pb, gint page, PropDlg *dlg)
{
	long ivl;
	const gchar *cstr;
	gchar *str;
	double rate;
	time_t tval;

	if (!dlg->proj) return;

	if (0 == page)
	{
		gtt_project_freeze (dlg->proj);
		cstr = gtk_entry_get_text(dlg->title);
		if (cstr && cstr[0])
		{
			gtt_project_set_title(dlg->proj, cstr);
		}
		else
		{
			gtt_project_set_title(dlg->proj, _("empty"));
			gtk_entry_set_text(dlg->title, _("empty"));
		}
	
		gtt_project_set_desc(dlg->proj, gtk_entry_get_text(dlg->desc));
		str = xxxgtk_textview_get_text(dlg->notes);
		gtt_project_set_notes(dlg->proj, str);
		g_free(str);
		gtt_project_thaw (dlg->proj);
	}

	if (1 == page)
	{
		gtt_project_freeze (dlg->proj);
		rate = atof (gtk_entry_get_text(dlg->regular));
		gtt_project_set_billrate (dlg->proj, rate);
		rate = atof (gtk_entry_get_text(dlg->overtime));
		gtt_project_set_overtime_rate (dlg->proj, rate);
		rate = atof (gtk_entry_get_text(dlg->overover));
		gtt_project_set_overover_rate (dlg->proj, rate);
		rate = atof (gtk_entry_get_text(dlg->flatfee));
		gtt_project_set_flat_fee (dlg->proj, rate);
		gtt_project_thaw (dlg->proj);
	}
	
	if (2 == page)
	{
		gtt_project_freeze (dlg->proj);
		ivl = atoi (gtk_entry_get_text(dlg->minimum));
		gtt_project_set_min_interval (dlg->proj, ivl);
		ivl = atoi (gtk_entry_get_text(dlg->interval));
		gtt_project_set_auto_merge_interval (dlg->proj, ivl);
		ivl = atoi (gtk_entry_get_text(dlg->gap));
		gtt_project_set_auto_merge_gap (dlg->proj, ivl);
		gtt_project_thaw (dlg->proj);
	}
	if (3 == page)
	{
		gtt_project_freeze (dlg->proj);
		
		ivl = (long) GET_MENU (dlg->urgency, "urgency");
		gtt_project_set_urgency (dlg->proj, (GttRank) ivl);
		ivl = (long) GET_MENU (dlg->importance, "importance");
		gtt_project_set_importance (dlg->proj, (GttRank) ivl);

		ivl = (long) GET_MENU (dlg->status, "status");
		gtt_project_set_status (dlg->proj, (GttProjectStatus) ivl);

		tval = gnome_date_edit_get_time (dlg->start);
		gtt_project_set_estimated_start (dlg->proj, tval);
		tval = gnome_date_edit_get_time (dlg->end);
		gtt_project_set_estimated_end (dlg->proj, tval);
		tval = gnome_date_edit_get_time (dlg->due);
		gtt_project_set_due_date (dlg->proj, tval);

		rate = atof (gtk_entry_get_text(dlg->sizing));
		ivl = rate * 3600.0;
		gtt_project_set_sizing (dlg->proj, ivl);

		ivl = atoi (gtk_entry_get_text(dlg->percent));
		gtt_project_set_percent_complete (dlg->proj, ivl);

		gtt_project_thaw (dlg->proj);
	}
}