示例#1
0
void
ananasTreeView::ContextMenuAdd( QMenu* m )
{
	//--QLabel *caption = new QLabel( tr("<font color=darkblue><u><b>" "Context Menu</b></u></font>"), this );
	//--caption->setAlignment( Qt::AlignCenter );
	//--m->insertItem( caption );
	//m->insertItem( tr("&Rename"), this, SLOT( itemRename() ), //Qt::CTRL+Qt::Key_R);
	QAction* rename = m->addAction(tr("&Rename"));
	rename->setShortcut(Qt::CTRL+Qt::Key_R);
	connect(rename,SIGNAL(triggered()),SLOT(itemRename()));
	//m->insertItem( tr("&Edit"),  this, SLOT( itemEdit() ), //Qt::CTRL+Qt::Key_E );
	QAction* edit = m->addAction(tr("&Edit"));
	edit->setShortcut(Qt::CTRL+Qt::Key_E);
	connect(edit,SIGNAL(triggered()),SLOT(itemEdit()));
	//m->insertItem( tr("&Delete"), this, SLOT( itemDelete() ), //Qt::CTRL+Qt::Key_D );
	QAction* del = m->addAction(tr("&Delete"));
	del->setShortcut(Qt::CTRL+Qt::Key_D);
	connect(del,SIGNAL(triggered()),SLOT(itemDelete()));
	//m->insertItem( tr("&MoveUp"), this, SLOT( itemMoveUp() ), //Qt::CTRL+Qt::Key_U );
	QAction* moveUp = m->addAction(tr("&MoveUp"));
	moveUp->setShortcut(Qt::CTRL+Qt::Key_U);
	connect(moveUp,SIGNAL(triggered()),SLOT(itemMoveUp()));
	//m->insertItem( tr("&MoveDown"), this, SLOT( itemMoveDown() ), //Qt::CTRL+Qt::Key_M );
	QAction* moveDown = m->addAction(tr("&MoveDown"));
	moveDown->setShortcut(Qt::CTRL+Qt::Key_M);
	connect(moveDown,SIGNAL(triggered()),SLOT(itemMoveDown()));
	//m->insertItem( tr("&SaveItem"), this, SLOT( itemSave() ) );
	QAction* saveItem = m->addAction(tr("&SaveItem"));
	connect(saveItem,SIGNAL(triggered()),SLOT(itemSave()));
	//m->insertItem( tr("&LoadItem"), this, SLOT( itemLoad() ) );
	QAction* loadItem = m->addAction(tr("&LoadItem"));
	connect(loadItem,SIGNAL(triggered()),SLOT(itemLoad()));
	m->addSeparator();
};
示例#2
0
// a context menu action was selected
void UserMenuTree::slotPopupActivated(int id)
{
	KILE_DEBUG() << "popup activated with id: " << id;
	switch (id ) {
		case POPUP_INSERT_ABOVE:           insertMenuItem (m_popupItem, false);                      break;
		case POPUP_INSERT_BELOW:           insertMenuItem (m_popupItem, true);                       break;
		case POPUP_SEPARATOR_ABOVE:        insertSeparator(m_popupItem, false);                      break;
		case POPUP_SEPARATOR_BELOW:        insertSeparator(m_popupItem, true);                       break;
		case POPUP_SUBMENU_ABOVE:          insertSubmenu  (m_popupItem, false);                      break;
		case POPUP_SUBMENU_BELOW:          insertSubmenu  (m_popupItem, true);                       break;
		case POPUP_INTO_SUBMENU:           insertIntoSubmenu(m_popupItem, UserMenuData::Text);      break;
		case POPUP_SEPARATOR_INTO_SUBMENU: insertIntoSubmenu(m_popupItem, UserMenuData::Separator); break;
		case POPUP_SUBMENU_INTO_SUBMENU:   insertIntoSubmenu(m_popupItem, UserMenuData::Submenu);   break;
		case POPUP_DELETE_ITEM:            itemDelete(m_popupItem);                                  break;
		case POPUP_DELETE_TREE:            deleteMenuTree();                                         break;
		case POPUP_COLLAPSE_ITEM:          m_popupItem->setExpanded(false);                          break;
		case POPUP_EXPAND_ITEM:            m_popupItem->setExpanded(true);                           break;
		case POPUP_COLLAPSE_TREE:          collapseAll();                                            break;
		case POPUP_EXPAND_TREE:            expandAll();                                              break;
		case POPUP_ITEM_INFO:              itemInfo(m_popupItem);                                    break;
	}
}
void RegionEditDialog::on_addButton_clicked()
{
    RectFrame *aFrame=new RectFrame(mAttributes, this);

    if (ui->itemsLayout->count()==0)
    {
        aFrame->setUpEnabled(false);
    }
    else
    {
        ((RectFrame *)ui->itemsLayout->itemAt(ui->itemsLayout->count()-1)->widget())->setDownEnabled(true);
    }

    aFrame->setDownEnabled(false);

    connect(aFrame, SIGNAL(upPressed()),     this, SLOT(itemUp()));
    connect(aFrame, SIGNAL(downPressed()),   this, SLOT(itemDown()));
    connect(aFrame, SIGNAL(deletePressed()), this, SLOT(itemDelete()));

    ui->itemsLayout->addWidget(aFrame);
    ui->mainScrollArea->verticalScrollBar()->setValue(ui->mainScrollArea->verticalScrollBar()->maximum());

    updateCountButtons();
}
示例#4
0
static int canvasFunc( ClientData data, Tcl_Interp *interp,
      int objc, Tcl_Obj * const objv[] )
{
   const char *cmds[] = { "delete", "configure", "cget", "isMapped",
         "getCurrentSize", "update", "raise", "lower", 
         "create", "itemDelete", "itemShow",
         "itemConfigure", "itemCget", "itemCommand", 
         "affine", "scale", "move", "rotate",
         "windowToCanvas", "canvasToWindow",
         "findItemAt", "getBounds", "findWithTag",
         NULL };
   enum cmdIdx { DeleteIdx, ConfigureIdx, CgetIdx, IsMappedIdx,
         GetCurSizeIdx, UpdateIdx, RaiseIdx, LowerIdx,
         CreateIdx, ItemDeleteIdx, ItemShowIdx,
         ItemConfigureIdx, ItemCgetIdx, ItemCommandIdx, 
         AffineIdx, ScaleIdx, MoveIdx, RotateIdx,
         WindowToCanvasIdx, CanvasToWindowIdx,
         FindItemAtIdx, GetBoundsIdx, GetIDsFromTagIdx };
   CanvasParams *para = (CanvasParams *)data;
   GtkWidget    *widget = GTK_WIDGET( para->canvas );
   int idx;

   if( objc < 2 )
   {
      Tcl_WrongNumArgs( interp, 1, objv, "command" );
      return TCL_ERROR;
   }

   if( Tcl_GetIndexFromObj( interp, objv[1], cmds, "command", 
         TCL_EXACT, &idx ) != TCL_OK )
      return TCL_ERROR;

   switch( idx )
   {
      case DeleteIdx:
            return gnoclDelete( interp, widget, objc, objv );

      case ConfigureIdx:
            {
               int ret = TCL_ERROR;
               if( gnoclParseAndSetOptions( interp, objc - 1, objv + 1, 
                     canvasOptions, G_OBJECT( widget ) ) == TCL_OK )
               {

                  if( canvasOptions[antialiasedIdx].status 
                        == GNOCL_STATUS_CHANGED )
                  {
                     Tcl_SetResult( interp, "antialiasing cannot be changed "
                           "after creation", TCL_STATIC );
                  }
                  else
                     ret = configure( interp, para, canvasOptions );
               }
               gnoclClearOptions( canvasOptions );
               return ret;
            }
            break;
      case CgetIdx:
            {
               int     idx;
               switch( gnoclCget( interp, objc, objv, G_OBJECT( widget ), 
                     canvasOptions, &idx ) )
               {
                  case GNOCL_CGET_ERROR:  
                           return TCL_ERROR;
                  case GNOCL_CGET_HANDLED:
                           return TCL_OK;
                  case GNOCL_CGET_NOTHANDLED:
                           return cget( interp, para->canvas, 
                                 canvasOptions, idx );
               }
               break;
            }
      case IsMappedIdx:
            return isMapped( interp, widget, objc, objv );
      case GetCurSizeIdx:
            return getCurSize( interp, widget, objc, objv );
      case UpdateIdx:
            if( objc != 2 )
            {
               Tcl_WrongNumArgs( interp, 2, objv, NULL );
               return TCL_ERROR;
            }
            gnome_canvas_update_now( para->canvas );
            break;
      case CreateIdx:
            return canvasCreateItem( interp, objc, objv, para );
      case RaiseIdx:
      case LowerIdx:
      case ItemDeleteIdx:
      case ItemShowIdx:
      case ItemConfigureIdx:
      case ItemCgetIdx:
      case ItemCommandIdx:
      case AffineIdx:
      case ScaleIdx:
      case MoveIdx:
      case RotateIdx:
      case GetBoundsIdx:
      case GetIDsFromTagIdx:
            {
               GPtrArray *items;
               int       ret;

               if( objc < 3 )
               {
                  Tcl_WrongNumArgs( interp, 2, objv, 
                        "tag-or-id ?option val ...?" );
                  return TCL_ERROR;
               }
               if( gnoclCanvasItemsFromTagOrId( interp, para, 
                     Tcl_GetString( objv[2] ), &items ) != TCL_OK )
                  return TCL_ERROR;

               switch( idx )
               {
                  case RaiseIdx:
                  case LowerIdx:
                     ret = itemRaise( interp, objc, objv, para, items,
                           idx == RaiseIdx );
                     break;
                  case ItemDeleteIdx:
                     ret = itemDelete( interp, objc, objv, para, items );
                     break;
                  case ItemShowIdx:
                     ret = itemShow( interp, objc, objv, para, items );
                     break;
                  case ItemConfigureIdx:
                     ret = itemConfigure( interp, objc, objv, para, items );
                     break;
                  case ItemCgetIdx:
                     ret = itemCget( interp, objc, objv, para, items );
                     break;
                  case ItemCommandIdx:
                     ret = itemCommand( interp, objc, objv, para, items );
                     break;
                  case AffineIdx:
                     ret = affine( interp, objc, objv, para, items, Affine );
                     break;
                  case ScaleIdx:
                     ret = affine( interp, objc, objv, para, items, Scale );
                     break;
                  case MoveIdx:
                     ret = affine( interp, objc, objv, para, items, Move );
                     break;
                  case RotateIdx:
                     ret = affine( interp, objc, objv, para, items, Rotate );
                     break;
                  case GetBoundsIdx:
                     ret = itemBounds( interp, objc, objv, para, items );
                     break;
                  case GetIDsFromTagIdx:
                     ret = getIDs( interp, objc, objv, para, items );
                     break;
                  default:
                     assert( 0 );
               }
               if( items )
                  g_ptr_array_free( items, 0 );
               return ret;
            }
            break; 
      case WindowToCanvasIdx:
            return windowToCanvas( interp, objc, objv, para, 0 );
      case CanvasToWindowIdx:
            return windowToCanvas( interp, objc, objv, para, 1 );
      case FindItemAtIdx:
            return findItemAt( interp, objc, objv, para );
   }

   return TCL_OK;
}