13
13
# include "config.h"
16
18
#include "uxmanager.h"
17
19
#include "util/ege-tags.h"
18
20
#include "widgets/toolbox.h"
21
#include "widgets/desktop-widget.h"
26
static vector<SPDesktop*> desktops;
27
static vector<SPDesktopWidget*> dtws;
28
static map<SPDesktop*, vector<GtkWidget*> > trackedBoxes;
20
32
namespace Inkscape {
48
void UXManager::connectToDesktop( std::vector<GtkWidget *> const & toolboxes, SPDesktop *desktop )
50
for (std::vector<GtkWidget*>::const_iterator it = toolboxes.begin(); it != toolboxes.end(); ++it ) {
51
ToolboxFactory::setToolboxDesktop( *it, desktop );
59
void UXManager::setTask(SPDesktop* dt, gint val)
61
GtkOrientation orientation = (val == 0)? GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL;
62
for (vector<SPDesktopWidget*>::iterator it = dtws.begin(); it != dtws.end(); ++it) {
63
if ((*it)->desktop == dt) {
64
vector<GtkWidget*>& boxes = trackedBoxes[dt];
65
for (vector<GtkWidget*>::iterator it2 = boxes.begin(); it2 != boxes.end(); ++it2) {
66
gint id = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(*it2), "BarIdValue"));
68
//ToolboxFactory::setOrientation(*it2, orientation);
77
void UXManager::addTrack( SPDesktopWidget* dtw )
79
if (std::find(dtws.begin(), dtws.end(), dtw) == dtws.end()) {
84
void UXManager::delTrack( SPDesktopWidget* dtw )
86
vector<SPDesktopWidget*>::iterator iter = std::find(dtws.begin(), dtws.end(), dtw);
87
if (iter != dtws.end()) {
92
void UXManager::connectToDesktop( vector<GtkWidget *> const & toolboxes, SPDesktop *desktop )
94
//static map<SPDesktop*, vector<GtkWidget*> > trackedBoxes;
96
for (vector<GtkWidget*>::const_iterator it = toolboxes.begin(); it != toolboxes.end(); ++it ) {
97
GtkWidget* toolbox = *it;
98
ToolboxFactory::setToolboxDesktop( toolbox, desktop );
100
vector<GtkWidget*>& tracked = trackedBoxes[desktop];
101
if (find(tracked.begin(), tracked.end(), toolbox) == tracked.end()) {
102
tracked.push_back(toolbox);
106
if (std::find(desktops.begin(), desktops.end(), desktop) == desktops.end()) {
107
desktops.push_back(desktop);