whiteboard-sharewithuser.cpp revision 6b15695578f07a3f72c4c9475c1a261a3021472a
/**
* Whiteboard share with user dialog
*
* Authors:
* David Yip <yipdw@rose-hulman.edu>
* Jason Segal, Jonas Collaros, Stephen Montgomery, Brandi Soggs, Matthew Weinstock (original C/Gtk version)
*
* Copyright (c) 2004-2005 Authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#include <gtk/gtkdialog.h>
#include "message-stack.h"
#include "message-context.h"
#include "inkscape.h"
#include "desktop.h"
#include "jabber_whiteboard/typedefs.h"
#include "jabber_whiteboard/session-manager.h"
#include "jabber_whiteboard/buddy-list-manager.h"
#include "jabber_whiteboard/session-file-selector.h"
#include "ui/dialog/whiteboard-sharewithuser.h"
#include "util/ucompose.hpp"
namespace Inkscape {
namespace UI {
namespace Dialog {
{
return new WhiteboardShareWithUserDialogImpl();
}
{
this->setSessionManager();
this->_construct();
this->get_vbox()->show_all_children();
this->_sm->session_data->buddyList.addInsertListener(sigc::mem_fun(this, &WhiteboardShareWithUserDialogImpl::_insertBuddy));
this->_sm->session_data->buddyList.addEraseListener(sigc::mem_fun(this, &WhiteboardShareWithUserDialogImpl::_eraseBuddy));
}
{
}
void
{
this->_desktop = SP_ACTIVE_DESKTOP;
}
void
{
// Construct dialog interface
// Buttons
this->_share.set_use_underline(true);
this->_cancel.set_use_underline(true);
// Button callbacks
this->_share.signal_clicked().connect(sigc::bind< 0 >(sigc::mem_fun(*this, &WhiteboardShareWithUserDialogImpl::_respCallback), SHARE));
this->_cancel.signal_clicked().connect(sigc::bind< 0 >(sigc::mem_fun(*this, &WhiteboardShareWithUserDialogImpl::_respCallback), CANCEL));
// Construct ListStore for buddy list information
// Fill buddy list
this->_fillBuddyList();
// Buddy list onclick callback
this->_buddylist.get_selection()->signal_changed().connect(sigc::mem_fun(*this, &WhiteboardShareWithUserDialogImpl::_listCallback));
// Pack widgets into boxes
// Pack boxes into main box
}
void
{
this->_insertBuddy(*i);
}
// std::for_each(bl.begin(), bl.end(), std::mem_fun(&WhiteboardShareWithUserDialogImpl::_insertBuddy));
}
void
{
// FIXME: need a better way to avoid inserting duplicate rows in the case
// of duplicate Jabber presence messages
return;
}
}
}
void
{
// FIXME: Doesn't gtkmm provide a better way to erase rows from a ListStore?
this->_buddylistdata->erase(i);
return;
}
}
}
void
{
switch (resp) {
case SHARE:
{
if (this->_sfsbox.isSelected()) {
} else {
}
this->hide();
break;
}
case CANCEL:
this->hide();
break;
default:
break;
}
}
void
{
}
}
}
}
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :