📄 command.cpp
字号:
MetaDataBase::changeFunctionAttributes( formWindow(), newName, oldName, oldSpec, oldAccess, oldType, oldLang, oldReturnType ); formWindow()->formFile()->functionNameChanged( newName, oldName ); formWindow()->formFile()->functionRetTypeChanged( oldName, newReturnType, oldReturnType ); formWindow()->mainWindow()->functionsChanged(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------RemoveFunctionCommand::RemoveFunctionCommand( const QString &name, FormWindow *fw, const QCString &f, const QString& spec, const QString &a, const QString &t, const QString &l, const QString &rt ) : Command( name, fw ), function( f ), specifier( spec ), access( a ), functionType( t ), language( l ), returnType( rt ){ if ( spec.isNull() ) { QValueList<MetaDataBase::Function> lst = MetaDataBase::functionList( fw ); for ( QValueList<MetaDataBase::Function>::Iterator it = lst.begin(); it != lst.end(); ++it ) { if ( MetaDataBase::normalizeFunction( (*it).function ) == MetaDataBase::normalizeFunction( function ) ) { specifier = (*it).specifier; access = (*it).access; functionType = (*it).type; returnType = (*it).returnType; language = (*it).language; break; } } }}void RemoveFunctionCommand::execute(){ MetaDataBase::removeFunction( formWindow(), function, specifier, access, functionType, language, returnType ); formWindow()->mainWindow()->functionsChanged(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}void RemoveFunctionCommand::unexecute(){ if ( MetaDataBase::hasFunction( formWindow(), function ) ) return; MetaDataBase::addFunction( formWindow(), function, specifier, access, functionType, language, returnType ); formWindow()->mainWindow()->functionsChanged(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------AddVariableCommand::AddVariableCommand( const QString &name, FormWindow *fw, const QString &vn, const QString &a ) : Command( name, fw ), varName( vn ), access( a ){}void AddVariableCommand::execute(){ MetaDataBase::addVariable( formWindow(), varName, access ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}void AddVariableCommand::unexecute(){ MetaDataBase::removeVariable( formWindow(), varName ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------SetVariablesCommand::SetVariablesCommand( const QString &name, FormWindow *fw, QValueList<MetaDataBase::Variable> lst ) : Command( name, fw ), newList( lst ){ oldList = MetaDataBase::variables( formWindow() );}void SetVariablesCommand::execute(){ MetaDataBase::setVariables( formWindow(), newList ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}void SetVariablesCommand::unexecute(){ MetaDataBase::setVariables( formWindow(), oldList ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------RemoveVariableCommand::RemoveVariableCommand( const QString &name, FormWindow *fw, const QString &vn ) : Command( name, fw ), varName( vn ){ QValueList<MetaDataBase::Variable> lst = MetaDataBase::variables( fw ); for ( QValueList<MetaDataBase::Variable>::Iterator it = lst.begin(); it != lst.end(); ++it ) { if ( (*it).varName == varName ) { access = (*it).varAccess; break; } }}void RemoveVariableCommand::execute(){ MetaDataBase::removeVariable( formWindow(), varName ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}void RemoveVariableCommand::unexecute(){ MetaDataBase::addVariable( formWindow(), varName, access ); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------EditDefinitionsCommand::EditDefinitionsCommand( const QString &name, FormWindow *fw, LanguageInterface *lf, const QString &n, const QStringList &nl ) : Command( name, fw ), lIface( lf ), defName( n ), newList( nl ){ oldList = lIface->definitionEntries( defName, formWindow()->mainWindow()->designerInterface() );}void EditDefinitionsCommand::execute(){ lIface->setDefinitionEntries( defName, newList, formWindow()->mainWindow()->designerInterface() ); lIface->release(); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}void EditDefinitionsCommand::unexecute(){ lIface->setDefinitionEntries( defName, oldList, formWindow()->mainWindow()->designerInterface() ); lIface->release(); formWindow()->mainWindow()->objectHierarchy()->updateFormDefinitionView(); if ( formWindow()->formFile() ) formWindow()->formFile()->setModified( TRUE );}// ------------------------------------------------------------LowerCommand::LowerCommand( const QString &name, FormWindow *fw, const QWidgetList &w ) : Command( name, fw ), widgets( w ){}void LowerCommand::execute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->lower(); formWindow()->raiseSelection( w ); }}void LowerCommand::unexecute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->raise(); formWindow()->raiseSelection( w ); }}// ------------------------------------------------------------RaiseCommand::RaiseCommand( const QString &name, FormWindow *fw, const QWidgetList &w ) : Command( name, fw ), widgets( w ){}void RaiseCommand::execute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->raise(); formWindow()->raiseSelection( w ); }}void RaiseCommand::unexecute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->lower(); formWindow()->raiseSelection( w ); }}// ------------------------------------------------------------PasteCommand::PasteCommand( const QString &n, FormWindow *fw, const QWidgetList &w ) : Command( n, fw ), widgets( w ){}void PasteCommand::execute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->show(); formWindow()->selectWidget( w ); formWindow()->widgets()->insert( w, w ); formWindow()->mainWindow()->objectHierarchy()->widgetInserted( w ); }}void PasteCommand::unexecute(){ for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { w->hide(); formWindow()->selectWidget( w, FALSE ); formWindow()->widgets()->remove( w ); formWindow()->mainWindow()->objectHierarchy()->widgetRemoved( w ); } }// ------------------------------------------------------------TabOrderCommand::TabOrderCommand( const QString &n, FormWindow *fw, const QWidgetList &ol, const QWidgetList &nl ) : Command( n, fw ), oldOrder( ol ), newOrder( nl ){}void TabOrderCommand::merge( Command *c ){ TabOrderCommand *cmd = (TabOrderCommand*)c; newOrder = cmd->newOrder;}bool TabOrderCommand::canMerge( Command * ){ return TRUE;}void TabOrderCommand::execute(){ MetaDataBase::setTabOrder( formWindow(), newOrder );}void TabOrderCommand::unexecute(){ MetaDataBase::setTabOrder( formWindow(), oldOrder );}// ------------------------------------------------------------PopulateListBoxCommand::PopulateListBoxCommand( const QString &n, FormWindow *fw, QListBox *lb, const QValueList<Item> &items ) : Command( n, fw ), newItems( items ), listbox( lb ){ QListBoxItem *i = 0; for ( i = listbox->firstItem(); i; i = i->next() ) { Item item; if ( i->pixmap() ) item.pix = *i->pixmap(); item.text = i->text(); oldItems.append( item ); }}void PopulateListBoxCommand::execute(){ listbox->clear(); for ( QValueList<Item>::Iterator it = newItems.begin(); it != newItems.end(); ++it ) { Item i = *it; if ( !i.pix.isNull() ) (void)new QListBoxPixmap( listbox, i.pix, i.text ); else (void)new QListBoxText( listbox, i.text ); } formWindow()->mainWindow()->propertyeditor()->refetchData();}void PopulateListBoxCommand::unexecute(){ listbox->clear(); for ( QValueList<Item>::Iterator it = oldItems.begin(); it != oldItems.end(); ++it ) { Item i = *it; if ( !i.pix.isNull() ) (void)new QListBoxPixmap( listbox, i.pix, i.text ); else (void)new QListBoxText( listbox, i.text ); } formWindow()->mainWindow()->propertyeditor()->refetchData();}// ------------------------------------------------------------PopulateIconViewCommand::PopulateIconViewCommand( const QString &n, FormWindow *fw, QIconView *iv, const QValueList<Item> &items ) : Command( n, fw ), newItems( items ), iconview( iv ){#ifndef QT_NO_ICONVIEW QIconViewItem *i = 0; for ( i = iconview->firstItem(); i; i = i->nextItem() ) { Item item; if ( i->pixmap() ) item.pix = *i->pixmap(); item.text = i->text(); oldItems.append( item ); }#endif}void PopulateIconViewCommand::execute(){#ifndef QT_NO_ICONVIEW iconview->clear(); for ( QValueList<Item>::Iterator it = newItems.begin(); it != newItems.end(); ++it ) { Item i = *it; (void)new QIconViewItem( iconview, i.text, i.pix ); }#endif}void PopulateIconViewCommand::unexecute(){#ifndef QT_NO_ICONVIEW iconview->clear(); for ( QValueList<Item>::Iterator it = oldItems.begin(); it != oldItems.end(); ++it ) { Item i = *it; (void)new QIconViewItem( iconview, i.text, i.pix ); }#endif}// ------------------------------------------------------------PopulateListViewCommand::PopulateListViewCommand( const QString &n, FormWindow *fw, QListView *lv, QListView *from ) : Command( n, fw ), listview( lv ){ newItems = new QListView(); newItems->hide(); transferItems( from, newItems ); oldItems = new QListView(); oldItems->hide(); transferItems( listview, oldItems );}void PopulateListViewCommand::execute(){ listview->clear(); transferItems( newItems, listview );}void PopulateListViewCommand::unexecute(){ listview->clear(); transferItems( oldItems, listview );}void PopulateListViewCommand::transferItems( QListView *from, QListView *to ){ QHeader *header = to->header(); while ( header->count() ) to->removeColumn( 0 ); QHeader *h2 = from->header(); for ( int i = 0; i < h2->count(); ++i ) { to->addColumn( h2->label( i ) ); if ( h2->iconSet( i ) && !h2->iconSet( i )->pixmap().isNull() ) header->setLabel( i, *h2->iconSet( i ), h2->label( i ) ); header->setResizeEnabled( h2->isResizeEnabled( i ), i ); header->setClickEnabled( h2->isClickEnabled( i ), i ); } QListViewItemIterator it( from ); QPtrStack<QListViewItem> fromParents, toParents; fromParents.push( 0 ); toParents.push( 0 ); QPtrStack<QListViewItem> toLasts; QListViewItem *fromLast = 0; toLasts.push( 0 ); int cols = from->columns(); to->setSorting( -1 ); from->setSorting( -1 ); for ( ; it.current(); ++it ) { QListViewItem *i = it.current(); if ( i->parent() == fromParents.top() ) { QListViewItem *pi = toParents.top(); QListViewItem *ni = 0; if ( pi ) ni = new QListViewItem( pi, toLasts.top() ); else ni = new QListViewItem( to, toLasts.top() ); for ( int c = 0; c < cols; ++c ) { ni->setText( c, i->text( c ) ); if ( i->pixmap( c ) ) ni->setPixmap( c, *i->pixmap( c ) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -