Exemple #1
0
ListWidgetParent::ListWidgetParent( QWidget *parent, bool showMovePage ) :
  QWidget(parent),
  m_enableScroller(0)
{
  setObjectName("ListWidgetParent");

  QVBoxLayout *topLayout = new QVBoxLayout( this );
  topLayout->setContentsMargins( 0, 0, 0, 0  );

  list = new QTreeWidget( this );
  list->setObjectName("WpListWidgetParent");
  list->setRootIsDecorated(false);
  list->setItemsExpandable(false);
  list->setUniformRowHeights(true);
  list->setAlternatingRowColors(true);
  list->setColumnCount(4);
  list->setAllColumnsShowFocus(true);
  list->setSelectionMode(QAbstractItemView::SingleSelection);
  list->setSelectionBehavior(QAbstractItemView::SelectRows);
  list->setFocusPolicy( Qt::StrongFocus );

  QStringList sl;
  sl << tr("Name") << tr("Description") << tr("Country") << tr("ICAO");
  list->setHeaderLabels(sl);
  list->setFocus();

  filter = new ListViewFilter( list, this );
  filter->setObjectName( "ListViewFilter" );

  list->setVerticalScrollMode( QAbstractItemView::ScrollPerPixel );
  list->setHorizontalScrollMode( QAbstractItemView::ScrollPerPixel );

#ifdef QSCROLLER
  list->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);
  QScroller::grabGesture( list->viewport(), QScroller::LeftMouseButtonGesture );
#endif

#ifdef QTSCROLLER
  list->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);
  QtScroller::grabGesture( list->viewport(), QtScroller::LeftMouseButtonGesture );
#endif

  up = new QPushButton( this );
  up->setIcon( QIcon(GeneralConfig::instance()->loadPixmap( "up.png", true )));
  up->setIconSize( QSize(Layout::getButtonSize(12), Layout::getButtonSize(12)) );
  up->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred );
  up->setToolTip( tr("move page up") );

#if defined(QSCROLLER) || defined(QTSCROLLER)

  m_enableScroller = new QCheckBox("][");
  m_enableScroller->setCheckState( Qt::Checked );
  m_enableScroller->setMinimumHeight( Layout::getButtonSize(12) );

  connect( m_enableScroller, SIGNAL(stateChanged(int)),
	   this, SLOT(slot_scrollerBoxToggled(int)) );

#endif

  down = new QPushButton( this );
  down->setIcon( QIcon(GeneralConfig::instance()->loadPixmap( "down.png", true )));
  down->setIconSize( QSize(Layout::getButtonSize(12), Layout::getButtonSize(12)) );
  down->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred );
  down->setToolTip( tr("move page down") );

  QVBoxLayout* movePageBox = new QVBoxLayout;
  movePageBox->setSpacing( 0 );
  movePageBox->addWidget( up, 10 );

#if defined(QSCROLLER) || defined(QTSCROLLER)

  movePageBox->addSpacing( 15 * Layout::getIntScaledDensity() );
  movePageBox->addWidget( m_enableScroller, 0, Qt::AlignCenter );
  movePageBox->addSpacing( 15 * Layout::getIntScaledDensity() );

#endif

  movePageBox->addWidget( down, 10 );

  QHBoxLayout *hBox = new QHBoxLayout;

  hBox->addWidget( list );
  hBox->addLayout( movePageBox );

  topLayout->addWidget( filter );
  topLayout->addLayout( hBox);

  if( showMovePage == false )
    {
      up->setVisible( false );
      down->setVisible( false );
    }

  connect( list, SIGNAL( itemClicked(QTreeWidgetItem*,int) ),
           this, SLOT( slot_listItemClicked(QTreeWidgetItem*,int) ) );

  connect( up, SIGNAL(pressed()), this, SLOT(slot_PageUp()) );
  connect( down, SIGNAL(pressed()), this, SLOT(slot_PageDown()) );

  rowDelegate   = 0;
  firstLoadDone = false;
}
// create popup menu
void TextEditor::CreateMenu ( QWidget * pParent )
{
  QRect rect;
  m_pMainMenu = new ZOptionsMenu ( rect, pParent, NULL , 0 , ZSkinService::clsZOptionsMenu);
  m_pFileMenu = new ZOptionsMenu ( rect, pParent, NULL , 0 , ZSkinService::clsZOptionsMenu);
  m_pEditMenu = new ZOptionsMenu ( rect, pParent, NULL , 0 , ZSkinService::clsZOptionsMenu);
  m_pOptionsMenu = new ZOptionsMenu ( rect, pParent, NULL , 0 , ZSkinService::clsZOptionsMenu);
  m_pNavigateMenu = new ZOptionsMenu ( rect, pParent, NULL , 0 , ZSkinService::clsZOptionsMenu);
  
  //***********************************************************************
  m_pMainMenu->setItemSpacing ( 10 );
  
  
  
  QPixmap* pm  = new QPixmap(m_sProgramDir+ IDB_IMAGE_EXIT);
  
  //***********************************************************************
  m_pFileMenu->setItemSpacing ( 10 );
  pm->load(m_sProgramDir+ IDB_IMAGE_NEW);
  m_pFileMenu->insertItem ( QString( IDS_NEW ), NULL, pm , true , 0 , 0 );
  pm->load(m_sProgramDir+ IDB_IMAGE_OPEN);
  m_pFileMenu->insertItem ( QString( IDS_OPEN ), NULL, pm , true , 1 , 1 );
  pm->load(m_sProgramDir+ IDB_IMAGE_SAVE);
  m_pFileMenu->insertItem ( QString( IDS_SAVE ), NULL, pm , true , 2 , 2 );
  pm->load(m_sProgramDir+ IDB_IMAGE_SAVEAS);
  m_pFileMenu->insertItem ( QString( IDS_SAVEAS ), NULL, pm , true , 3 , 3 );
  
  //------------------------------------------------------------------------
  m_pFileMenu->connectItem ( 2, pParent, SLOT ( slot_saveFile() ) );
  m_pFileMenu->connectItem ( 3, pParent, SLOT ( slot_saveFileAs() ) );
  m_pFileMenu->connectItem ( 1, pParent, SLOT ( slot_openFile() ) );
  m_pFileMenu->connectItem ( 0, pParent, SLOT ( slot_newFile() ) );


  //***********************************************************************
  m_pOptionsMenu->setItemSpacing ( 10 );
  //pm->load(m_sProgramDir+ IDB_IMAGE_LANGUAGE);
  //m_pOptionsMenu->insertItem ( QString( IDS_LANGUAGE ), NULL, pm , true , 0 , 0 );
  pm->load(m_sProgramDir+ IDB_IMAGE_TEXTSIZE);
  m_pOptionsMenu->insertItem ( QString( IDS_TEXTSIZE ), NULL, pm , true , 1 , 1 );
  //
  //------------------------------------------------------------------------
  //m_pOptionsMenu->connectItem ( 0, pParent, SLOT ( slot_language() ) );
  m_pOptionsMenu->connectItem ( 1, pParent, SLOT ( slot_textSize() ) );

  //***********************************************************************
  m_pNavigateMenu->setItemSpacing ( 10 );
  pm->load(m_sProgramDir+ IDB_IMAGE_ARROW_UP);
  m_pNavigateMenu->insertItem ( QString( IDS_PAGE_UP ), NULL , pm, true , 0 , 0 );
  pm->load(m_sProgramDir+ IDB_IMAGE_ARROW_DOWN);
  m_pNavigateMenu->insertItem ( QString( IDS_PAGE_DOWN ), NULL, pm, true , 1 , 1 );
  pm->load(m_sProgramDir+ IDB_IMAGE_HOME);
  m_pNavigateMenu->insertItem ( QString( IDS_AT_BEGIN ), NULL, pm , true , 2 , 2 );
  pm->load(m_sProgramDir+ IDB_IMAGE_END);
  m_pNavigateMenu->insertItem ( QString( IDS_AT_END ), NULL, pm , true , 3 , 3 );
  //------------------------------------------------------------------------
  m_pNavigateMenu->connectItem ( 0, pParent, SLOT ( slot_PageUp() ) );
  m_pNavigateMenu->connectItem ( 1, pParent, SLOT ( slot_PageDown() ) );
  m_pNavigateMenu->connectItem ( 2, pParent, SLOT ( slot_Home() ) );
  m_pNavigateMenu->connectItem ( 3, pParent, SLOT ( slot_End() ) );

  //***********************************************************************
  m_pEditMenu->setItemSpacing ( 10 );
  pm->load(m_sProgramDir+ IDB_IMAGE_COPY);
  m_pEditMenu->insertItem ( QString( IDS_COPY ), NULL , pm, true , 0 , 0 );
  pm->load(m_sProgramDir+ IDB_IMAGE_CUT);
  m_pEditMenu->insertItem ( QString( IDS_CUT ), NULL, pm , true , 1 , 1 );
  pm->load(m_sProgramDir+ IDB_IMAGE_PASTE);
  m_pEditMenu->insertItem ( QString( IDS_PASTE ), NULL, pm , true , 2 , 2 );
  pm->load(m_sProgramDir+ IDB_IMAGE_SELALL);
  m_pEditMenu->insertItem ( QString( IDS_SELECT_ALL ), NULL, pm , true , 3 , 3 );
  //m_pEditMenu->insertSeparator ( 4, 4 );
  //pm->load(m_sProgramDir+ IDB_IMAGE_SEARCH);
  //m_pEditMenu->insertItem ( QString( IDS_SEARCH ), NULL, pm , true , 5 , 5 );

//  pm->load(m_sProgramDir+ IDB_IMAGE_BLOCKBEGIN);
//  m_pEditMenu->insertItem ( QString( IDS_BLOCK_START ), NULL, pm , true , 4 , 4 );
//  m_pEditMenu->insertSeparator ( 4, 4 );
//  pm->load(m_sProgramDir+ IDB_IMAGE_BLOCKEND);
//  m_pEditMenu->insertItem ( QString( IDS_BLOCK_END ), NULL, pm , true , 5 , 5 );
  //------------------------------------------------------------------------
  m_pEditMenu->connectItem ( 0, pParent, SLOT ( slot_Copy() ) );
  m_pEditMenu->connectItem ( 1, pParent, SLOT ( slot_Cut() ) );
  m_pEditMenu->connectItem ( 2, pParent, SLOT ( slot_Paste() ) );
  m_pEditMenu->connectItem ( 3, pParent, SLOT ( slot_selectAll() ) );
//  m_pEditMenu->connectItem ( 4, pParent, SLOT ( slot_MarkBegin() ) );
//  m_pEditMenu->connectItem ( 5, pParent, SLOT ( slot_MarkEnd() ) );
  //m_pEditMenu->connectItem ( 5, pParent, SLOT ( slot_search() ) );
  
  pm->load(m_sProgramDir+ IDB_IMAGE_FILE);
  m_pMainMenu->insertItem ( QString( IDS_FILE ), m_pFileMenu, pm , true , 0 , 0 );
  pm->load(m_sProgramDir+ IDB_IMAGE_NAVIGATE);
  m_pMainMenu->insertItem ( QString( IDS_NAVIGATION ), m_pNavigateMenu, pm , true , 1 , 1 );  
  pm->load(m_sProgramDir+ IDB_IMAGE_EDIT);
  m_pMainMenu->insertItem ( QString( IDS_EDIT  ) , m_pEditMenu, pm , true , 2 , 2 );  
  pm->load(m_sProgramDir+ IDB_IMAGE_OPTIONS);
  m_pMainMenu->insertItem ( QString( IDS_OPTIONS ), m_pOptionsMenu, pm , true , 3 , 3 );  
  pm->load(m_sProgramDir+ IDB_IMAGE_ABOUT);
  m_pMainMenu->insertItem ( QString( IDS_ABOUT ), NULL, pm , true , 4 , 4 );  
  pm->load(m_sProgramDir+ IDB_IMAGE_EXIT);
  m_pMainMenu->insertItem ( QString( IDS_EXIT ), NULL , pm, true , 5 , 5 );
  //------------------------------------------------------------------------
  m_pMainMenu->connectItem ( 5, qApp, SLOT ( quit() ) );
  m_pMainMenu->connectItem ( 4, pParent, SLOT ( slot_about() ) );  
}