2 * Copyright (C) 2009 by Aiwota Programmer
3 * aiwotaprog@tetteke.tk
5 * This file is part of Dialektos.
7 * Dialektos is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * Dialektos is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with Dialektos. If not, see <http://www.gnu.org/licenses/>.
21 #include "board_view_column.hxx"
23 #include <boost/date_time/posix_time/posix_time.hpp>
24 #include <boost/date_time/local_time_adjustor.hpp>
25 #include <boost/lexical_cast.hpp>
31 namespace view_column {
34 void RenderCellStartTime::operator()(
35 Gtk::CellRenderer* cell,
36 const Gtk::TreeModel::iterator& iter) const {
38 model_column::ID::type value;
39 iter->get_value(boost::mpl::find<ModelColumns::type,
40 model_column::ID>::type::pos::value, value);
43 typedef boost::date_time::local_adjustor<
44 boost::posix_time::ptime, 9, boost::posix_time::no_dst> jpn;
46 std::time_t t = boost::lexical_cast<std::time_t>(value);
47 boost::posix_time::ptime ptime = boost::posix_time::from_time_t(t);
48 boost::posix_time::time_facet* facet =
49 new boost::posix_time::time_facet("%Y/%m/%d %H:%M:%S");
51 ss.imbue(std::locale(ss.getloc(), facet));
52 ss << jpn::utc_to_local(ptime);
54 } catch (const std::exception& /*e*/) {
58 cell->set_property("text", value);
62 } // namespace view_column
64 } // namespace dialektos