panthera-www.cc
C source, ASCII text
1#include "gpanthera.hh" 2#include <gtkmm.h> 3#include <glibmm.h> 4#include <glibmm/ustring.h> 5#include <iostream> 6#include <memory> 7 8int main(int argc, char *argv[]) { 9auto app = Gtk::Application::create(argc, argv, "org.gpanthera.demo"); 10 11Gtk::Window window; 12window.set_default_size(600, 400); 13 14auto layout_manager = std::make_shared<gPanthera::LayoutManager>(); 15 16if(!layout_manager) { 17std::cout << "null" << std::endl; 18return 1; 19} 20auto dock_stack = Gtk::make_managed<gPanthera::DockStack>(layout_manager); 21auto switcher = Gtk::make_managed<gPanthera::DockStackSwitcher>(dock_stack); 22auto pane_content = Gtk::make_managed<Gtk::Box>(Gtk::ORIENTATION_VERTICAL, 0); 23pane_content->pack_start(*Gtk::make_managed<Gtk::Label>("Pane 1 content"), Gtk::PACK_EXPAND_WIDGET); 24auto pane_icon = Gtk::make_managed<Gtk::Image>(); 25pane_icon->set_from_icon_name("go-home-symbolic", Gtk::ICON_SIZE_MENU); 26auto pane = std::make_shared<gPanthera::DockablePane>(*pane_content, "pane1", "Pane 1", pane_icon); 27layout_manager->add_pane(pane); 28dock_stack->add(*pane, pane->get_identifier()); 29switcher->update_buttons(); 30 31Gtk::Box vbox(Gtk::ORIENTATION_VERTICAL); 32vbox.pack_start(*switcher, Gtk::PACK_SHRINK); 33vbox.pack_start(*dock_stack); 34 35window.add(vbox); 36window.show_all(); 37 38return app->run(window); 39} 40