Lines Matching refs:item
20 #include "display/sp-canvas-item.h"
79 void updateItem(SPCanvasItem *item);
81 bool setControlType(SPCanvasItem *item, ControlType type);
83 bool setControlResize(SPCanvasItem *item, int ctrlResize);
85 void setSelected(SPCanvasItem *item, bool selected);
220 SPCanvasItem *item = 0;
225 item = sp_canvas_item_new(parent, SP_TYPE_CTRL,
235 item = sp_canvas_item_new(parent, SP_TYPE_CTRL,
249 item = sp_canvas_item_new(parent, SP_TYPE_CTRL,
256 item = sp_canvas_item_new(parent, SP_TYPE_CTRL,
263 item = sp_canvas_item_new(parent, SP_TYPE_CTRL, NULL);
265 if (item) {
266 item->ctrlType = type;
268 return item;
271 void ControlManagerImpl::track(SPCanvasItem *item)
273 g_object_weak_ref( G_OBJECT(item), ControlManagerImpl::thingFinalized, this );
275 _itemList.push_back(item);
285 void ControlManagerImpl::updateItem(SPCanvasItem *item)
287 if (item) {
288 double target = _sizeTable[item->ctrlType][_size - 1] + item->ctrlResize;
290 g_object_set(item, "size", target, NULL);
292 sp_canvas_item_request_update(item);
296 bool ControlManagerImpl::setControlType(SPCanvasItem *item, ControlType type)
299 if (item && (item->ctrlType == type)) {
302 } else if (item) {
303 if (_ctrlToShape.count(type) && (_typeTable[type] == _typeTable[item->ctrlType])) { // compatible?
304 double targetSize = _sizeTable[type][_size - 1] + item->ctrlResize;
307 g_object_set(item, "shape", targetShape, "size", targetSize, NULL);
308 item->ctrlType = type;
316 bool ControlManagerImpl::setControlResize(SPCanvasItem *item, int ctrlResize)
318 if(item) {
319 item->ctrlResize = ctrlResize;
320 double targetSize = _sizeTable[item->ctrlType][_size - 1] + item->ctrlResize;
321 g_object_set(item, "size", targetSize, NULL);
327 void ControlManagerImpl::setSelected(SPCanvasItem *item, bool selected)
329 if (_manager.isSelected(item) != selected) {
330 item->ctrlFlags ^= CTRL_FLAG_SELECTED; // toggle, since we know it is different
332 if (selected && _resizeOnSelect.count(item->ctrlType)) {
333 item->ctrlResize = 2;
337 double targetSize = _sizeTable[item->ctrlType][_size - 1] + _resize;
338 g_object_set(item, "size", targetSize, NULL);
421 void ControlManager::track(SPCanvasItem *item)
423 _impl->track(item);
431 void ControlManager::updateItem(SPCanvasItem *item)
433 return _impl->updateItem(item);
436 bool ControlManager::setControlType(SPCanvasItem *item, ControlType type)
438 return _impl->setControlType(item, type);
441 bool ControlManager::setControlResize(SPCanvasItem *item, int ctrlResize)
443 return _impl->setControlResize(item, ctrlResize);
446 bool ControlManager::isActive(SPCanvasItem *item) const
448 return (item->ctrlFlags & CTRL_FLAG_ACTIVE) != 0;
451 void ControlManager::setActive(SPCanvasItem *item, bool active)
453 if (isActive(item) != active) {
454 item->ctrlFlags ^= CTRL_FLAG_ACTIVE; // toggle, since we know it is different
459 bool ControlManager::isPrelight(SPCanvasItem *item) const
461 return (item->ctrlFlags & CTRL_FLAG_PRELIGHT) != 0;
464 void ControlManager::setPrelight(SPCanvasItem *item, bool prelight)
466 if (isPrelight(item) != prelight) {
467 item->ctrlFlags ^= CTRL_FLAG_PRELIGHT; // toggle, since we know it is different
472 bool ControlManager::isSelected(SPCanvasItem *item) const
474 return (item->ctrlFlags & CTRL_FLAG_SELECTED) != 0;
477 void ControlManager::setSelected(SPCanvasItem *item, bool selected)
479 _impl->setSelected(item, selected);