X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fzoomdial.cpp;h=ae2f4a431cdf7ca8c5b76844df84c50b6501096e;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=27e9374ebc8d03a17208b90def8afc83f7f65eb6;hpb=02252941b29de64037116f4d37991a38d9ff0d94;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/zoomdial.cpp b/synfig-studio/trunk/src/gtkmm/zoomdial.cpp index 27e9374..ae2f4a4 100644 --- a/synfig-studio/trunk/src/gtkmm/zoomdial.cpp +++ b/synfig-studio/trunk/src/gtkmm/zoomdial.cpp @@ -2,19 +2,20 @@ /*! \file zoomdial.cpp ** \brief Template File ** -** $Id: zoomdial.cpp,v 1.1.1.1 2005/01/07 03:34:37 darco Exp $ +** $Id$ ** ** \legal -** Copyright (c) 2002 Robert B. Quattlebaum Jr. +** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley ** -** This software and associated documentation -** are CONFIDENTIAL and PROPRIETARY property of -** the above-mentioned copyright holder. +** This package is free software; you can redistribute it and/or +** modify it under the terms of the GNU General Public License as +** published by the Free Software Foundation; either version 2 of +** the License, or (at your option) any later version. ** -** You may not copy, print, publish, or in any -** other way distribute this software without -** a prior written agreement with -** the copyright holder. +** This package is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +** General Public License for more details. ** \endlegal */ /* ========================================================================= */ @@ -28,13 +29,18 @@ # include #endif -//#include "zoomdial.h" +#include "zoomdial.h" +#include +#include + +#include "general.h" #endif /* === U S I N G =========================================================== */ using namespace std; +using namespace studio; /* === M A C R O S ========================================================= */ @@ -44,4 +50,32 @@ using namespace std; /* === M E T H O D S ======================================================= */ +ZoomDial::ZoomDial(Gtk::IconSize & size): Table(3, 1, false) +{ + zoom_in = create_icon(size, Gtk::Stock::ZOOM_IN, _("Zoom In")); + zoom_out = create_icon(size, Gtk::Stock::ZOOM_OUT, _("Zoom Out")); + zoom_fit = create_icon(size, Gtk::Stock::ZOOM_FIT, _("Zoom to Fit")); + zoom_norm = create_icon(size, Gtk::Stock::ZOOM_100, _("Zoom to 100%")); + + attach(*zoom_out, 0, 1, 0, 1, Gtk::SHRINK, Gtk::SHRINK, 0, 0); + attach(*zoom_norm, 1, 2, 0, 1, Gtk::SHRINK, Gtk::SHRINK, 0, 0); + attach(*zoom_fit, 2, 3, 0, 1, Gtk::SHRINK, Gtk::SHRINK, 0, 0); + attach(*zoom_in, 3, 4, 0, 1, Gtk::SHRINK, Gtk::SHRINK, 0, 0); +} + +Gtk::Button * +ZoomDial::create_icon(Gtk::IconSize size, const Gtk::BuiltinStockID & stockid, + const char * tooltip) +{ + Gtk::Button *button = manage(new class Gtk::Button()); + Gtk::Image *icon = manage(new Gtk::Image(stockid, size)); + button->add(*icon); + tooltips.set_tip(*button, tooltip); + icon->set_padding(0, 0); + icon->show(); + button->set_relief(Gtk::RELIEF_NONE); + button->show(); + + return button; +}