mirror of
https://github.com/AskDavis/Casinotest.git
synced 2026-01-06 21:09:48 -08:00
Menu Toolbar version 1.1
This commit is contained in:
70
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.cpp
Normal file
70
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.cpp
Normal file
@@ -0,0 +1,70 @@
|
||||
#include "guimenutoolbarcontrol.h"
|
||||
|
||||
#include "guimenutoolbarlistview.h"
|
||||
#include "qmlmenutoolbarmodel.h"
|
||||
#include "qmlmenutoolbaritem.h"
|
||||
|
||||
#include "gui20_skin.h"
|
||||
|
||||
GUIMenuToolbarControl::GUIMenuToolbarControl( QQuickItem* a_pParent )
|
||||
: QQuickItem( a_pParent )
|
||||
, m_pMenuToolbarView( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
GUIMenuToolbarControl::~GUIMenuToolbarControl()
|
||||
{
|
||||
if ( m_pMenuToolbarView )
|
||||
{
|
||||
delete m_pMenuToolbarView;
|
||||
m_pMenuToolbarView = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void GUIMenuToolbarControl::InitializeMenuToolbarView( GUIMenuToolbarListView* a_pView )
|
||||
{
|
||||
if ( a_pView )
|
||||
{
|
||||
if ( m_pMenuToolbarView )
|
||||
{
|
||||
delete m_pMenuToolbarView;
|
||||
}
|
||||
m_pMenuToolbarView = a_pView;
|
||||
if ( m_pMenuToolbarView )
|
||||
{
|
||||
QmlMenuToolbarModel* pStandardMenuModel = new QmlMenuToolbarModel( m_pMenuToolbarView );
|
||||
if ( pStandardMenuModel )
|
||||
{
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Overview" ), tr( "Overview description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_overview_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_overview.png" , OVERVIEW ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Send" ), tr( "Send description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_send_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_send.png" , SEND ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Receive" ), tr( "Receive description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_receive_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_receive.png" , RECEIVE ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Transactions" ), tr( "Transactions description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_transactions_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_transactions.png" , TRANSACTIONS ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Contacts" ), tr( "Contacts description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_contacts_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_contacts.png" , CONTACTS ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Redeem Prypto" ), tr( "Redeem Prypto description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_redeemprypto_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_redeemprypto.png" , REDEEM_PRYPTO ) );
|
||||
pStandardMenuModel->append( new QmlMenuToolbarItem( tr( "Info" ), tr( "Info description" ), "qrc:/icons/res/icons/GUI20_mainToolBar_info_hover.png", "qrc:/icons/res/icons/GUI20_mainToolBar_info.png" , INFO ) );
|
||||
pStandardMenuModel->SetCurrentItemIndex( 0 );
|
||||
m_pMenuToolbarView->SetModel( pStandardMenuModel );
|
||||
ConnectListViewSignals();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GUIMenuToolbarControl::ConnectListViewSignals()
|
||||
{
|
||||
if ( m_pMenuToolbarView )
|
||||
{
|
||||
disconnect( m_pMenuToolbarView );
|
||||
QmlMenuToolbarModel* pModel = m_pMenuToolbarView->GetModel();
|
||||
if ( pModel )
|
||||
{
|
||||
connect( pModel, SIGNAL( signalCurrentItemIndexChanged() ), this, SLOT( slotCurrentItemIndexChanged() ), Qt::UniqueConnection );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GUIMenuToolbarControl::slotCurrentItemIndexChanged()
|
||||
{
|
||||
emit signalCurrentItemIndexChanged();
|
||||
}
|
||||
44
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.h
Normal file
44
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.h
Normal file
@@ -0,0 +1,44 @@
|
||||
#ifndef GUIMENUTOOLBARCONTROL_H
|
||||
#define GUIMENUTOOLBARCONTROL_H
|
||||
|
||||
#include <QQuickItem>
|
||||
|
||||
class GUIMenuToolbarListView;
|
||||
|
||||
class GUIMenuToolbarControl : public QQuickItem
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_ENUMS( EMenuToolbarItemTypes )
|
||||
public:
|
||||
|
||||
enum EMenuToolbarItemTypes
|
||||
{ OVERVIEW
|
||||
, SEND
|
||||
, RECEIVE
|
||||
, TRANSACTIONS
|
||||
, CONTACTS
|
||||
, REDEEM_PRYPTO
|
||||
, INFO
|
||||
};
|
||||
|
||||
GUIMenuToolbarControl( QQuickItem* a_pParent = 0 );
|
||||
virtual ~GUIMenuToolbarControl();
|
||||
|
||||
Q_INVOKABLE void InitializeMenuToolbarView( GUIMenuToolbarListView* a_pView );
|
||||
GUIMenuToolbarListView* GetMenuToolbarView() const { return m_pMenuToolbarView; }
|
||||
|
||||
public slots:
|
||||
|
||||
signals:
|
||||
void signalCurrentItemIndexChanged();
|
||||
public slots:
|
||||
|
||||
private:
|
||||
GUIMenuToolbarListView* m_pMenuToolbarView;
|
||||
|
||||
void ConnectListViewSignals();
|
||||
private slots:
|
||||
void slotCurrentItemIndexChanged();
|
||||
};
|
||||
|
||||
#endif // GUIMENUTOOLBARCONTROL_H
|
||||
47
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.cpp
Normal file
47
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.cpp
Normal file
@@ -0,0 +1,47 @@
|
||||
#include "guimenutoolbarlistview.h"
|
||||
|
||||
#include "qmlmenutoolbarmodel.h"
|
||||
#include "qmlmenutoolbaritem.h"
|
||||
|
||||
GUIMenuToolbarListView::GUIMenuToolbarListView( QQuickItem* a_pParent )
|
||||
: QQuickItem( a_pParent )
|
||||
, m_pModel( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
void GUIMenuToolbarListView::Clear()
|
||||
{
|
||||
if ( m_pModel )
|
||||
{
|
||||
m_pModel->clear();
|
||||
}
|
||||
}
|
||||
|
||||
void GUIMenuToolbarListView::OnClicked( int a_iItemIndex )
|
||||
{
|
||||
if ( m_pModel )
|
||||
{
|
||||
m_pModel->SetCurrentItemIndex( a_iItemIndex );
|
||||
}
|
||||
}
|
||||
|
||||
GUIMenuToolbarListView::~GUIMenuToolbarListView()
|
||||
{
|
||||
if ( m_pModel )
|
||||
{
|
||||
delete m_pModel;
|
||||
m_pModel = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void GUIMenuToolbarListView::SetModel( QmlMenuToolbarModel* a_pModel )
|
||||
{
|
||||
if ( m_pModel )
|
||||
{
|
||||
delete m_pModel;
|
||||
}
|
||||
m_pModel = a_pModel;
|
||||
emit signalModelChanged();
|
||||
}
|
||||
|
||||
|
||||
36
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.h
Normal file
36
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.h
Normal file
@@ -0,0 +1,36 @@
|
||||
#ifndef GUIMENUTOOLBARLISTVIEW_H
|
||||
#define GUIMENUTOOLBARLISTVIEW_H
|
||||
|
||||
#include <QQuickItem>
|
||||
|
||||
class QmlListModel;
|
||||
class QmlMenuToolbarModel;
|
||||
class QmlMenuToolbarItem;
|
||||
|
||||
|
||||
class GUIMenuToolbarListView : public QQuickItem
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_PROPERTY( QmlMenuToolbarModel* p_pListModel MEMBER m_pModel NOTIFY signalModelChanged )
|
||||
|
||||
public:
|
||||
explicit GUIMenuToolbarListView( QQuickItem *a_pParent = 0 );
|
||||
virtual ~GUIMenuToolbarListView(); /** Destructor **/
|
||||
|
||||
void SetModel( QmlMenuToolbarModel* a_pModel );
|
||||
QmlMenuToolbarModel* GetModel() const { return m_pModel; }
|
||||
|
||||
void Clear();
|
||||
|
||||
Q_INVOKABLE void OnClicked( int a_iItemIndex );
|
||||
signals:
|
||||
void signalModelChanged();
|
||||
|
||||
public slots:
|
||||
|
||||
private:
|
||||
|
||||
QmlMenuToolbarModel* m_pModel;
|
||||
};
|
||||
|
||||
#endif // GUIMENUTOOLBARLISTVIEW_H
|
||||
106
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.cpp
Normal file
106
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.cpp
Normal file
@@ -0,0 +1,106 @@
|
||||
#include "guimenutoolbarwidget.h"
|
||||
|
||||
#include "guimenutoolbarcontrol.h"
|
||||
#include "guimenutoolbarlistview.h"
|
||||
#include "qmlmenutoolbarmodel.h"
|
||||
#include "qmlmenutoolbaritem.h"
|
||||
|
||||
#include "qmlimageprovider.h"
|
||||
#include "gui20_skin.h"
|
||||
|
||||
#include <QQuickView>
|
||||
#include <QQmlContext>
|
||||
|
||||
GUIMenuToolbarWidget::GUIMenuToolbarWidget( QWidget *a_pParent )
|
||||
: QWidget( a_pParent )
|
||||
, m_pToolbarControl( 0 )
|
||||
, m_pQmlImageProvider( 0 )
|
||||
{
|
||||
registerCustomQmlTypes();
|
||||
}
|
||||
|
||||
GUIMenuToolbarWidget::~GUIMenuToolbarWidget()
|
||||
{
|
||||
if ( m_pQmlImageProvider )
|
||||
{
|
||||
delete m_pQmlImageProvider;
|
||||
m_pQmlImageProvider = 0;
|
||||
}
|
||||
if( m_pToolbarControl )
|
||||
{
|
||||
delete m_pToolbarControl;
|
||||
m_pToolbarControl = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void GUIMenuToolbarWidget::registerCustomQmlTypes()
|
||||
{
|
||||
qmlRegisterType<GUIMenuToolbarControl>("CasinoCoinControls", 1, 0, "GUIMenuToolbarControl" );
|
||||
qmlRegisterType<GUIMenuToolbarListView>("CasinoCoinControls", 1, 0, "GUIMenuToolbarListView" );
|
||||
qmlRegisterType<QmlMenuToolbarModel>("CasinoCoinControls", 1, 0, "QmlMenuToolbarModel" );
|
||||
}
|
||||
|
||||
void GUIMenuToolbarWidget::slotCurrentItemChanged()
|
||||
{
|
||||
if ( m_pToolbarControl )
|
||||
{
|
||||
GUIMenuToolbarListView* pListView = m_pToolbarControl->GetMenuToolbarView();
|
||||
if ( pListView )
|
||||
{
|
||||
QmlMenuToolbarModel* pModel = pListView->GetModel();
|
||||
if ( pModel )
|
||||
{
|
||||
emit signalItemClicked( static_cast<GUIMenuToolbarControl::EMenuToolbarItemTypes>( pModel->GetData( pModel->GetCurrentItemIndex(), QmlMenuToolbarItem::ROLE_INTERNAL_TYPE ).toInt() ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
QWidget* GUIMenuToolbarWidget::dockQmlToWidget()
|
||||
{
|
||||
QQuickView* pMenuToolbarWindow = new QQuickView;
|
||||
QQmlContext* pContext = pMenuToolbarWindow->rootContext();
|
||||
if ( pContext )
|
||||
{
|
||||
pContext->setContextProperty( "GUI20Skin", &GUI20Skin::Instance() );
|
||||
}
|
||||
QQmlEngine* pEngine = pMenuToolbarWindow->engine();
|
||||
if ( pEngine )
|
||||
{
|
||||
m_pQmlImageProvider = new QmlImageProvider();
|
||||
pEngine->addImageProvider( "mainToolBarImages", m_pQmlImageProvider );
|
||||
}
|
||||
pMenuToolbarWindow->setSource( QUrl( QStringLiteral( "qrc:/qml/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml" ) ) );
|
||||
QQuickItem* pRootObject = pMenuToolbarWindow->rootObject();
|
||||
if ( pRootObject )
|
||||
{
|
||||
m_pToolbarControl = pRootObject->findChild<GUIMenuToolbarControl*>();
|
||||
if ( m_pToolbarControl )
|
||||
{
|
||||
connect( m_pToolbarControl, SIGNAL( signalCurrentItemIndexChanged() ), this, SLOT( slotCurrentItemChanged() ), Qt::UniqueConnection );
|
||||
}
|
||||
}
|
||||
QWidget* pPlaceHolder = QWidget::createWindowContainer( pMenuToolbarWindow, this );
|
||||
if ( pPlaceHolder )
|
||||
{
|
||||
pPlaceHolder->setMinimumHeight( 82 );
|
||||
}
|
||||
return pPlaceHolder;
|
||||
}
|
||||
|
||||
void GUIMenuToolbarWidget::SetCurrentItemType( GUIMenuToolbarControl::EMenuToolbarItemTypes a_eType )
|
||||
{
|
||||
if ( m_pToolbarControl )
|
||||
{
|
||||
GUIMenuToolbarListView* pListView = m_pToolbarControl->GetMenuToolbarView();
|
||||
if ( pListView )
|
||||
{
|
||||
QmlMenuToolbarModel* pModel = pListView->GetModel();
|
||||
if ( pModel )
|
||||
{
|
||||
pModel->SetCurrentItemIndex( pModel->GetItemIndex( QmlMenuToolbarItem::ROLE_INTERNAL_TYPE, QVariant( a_eType ) ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
34
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.h
Normal file
34
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.h
Normal file
@@ -0,0 +1,34 @@
|
||||
#ifndef GUIMENUTOOLBARWIDGET_H
|
||||
#define GUIMENUTOOLBARWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include "guimenutoolbarcontrol.h"
|
||||
|
||||
class QmlImageProvider;
|
||||
|
||||
class GUIMenuToolbarWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
|
||||
explicit GUIMenuToolbarWidget( QWidget* a_pParent = 0 );
|
||||
virtual ~GUIMenuToolbarWidget();
|
||||
|
||||
QWidget* dockQmlToWidget();
|
||||
|
||||
void SetCurrentItemType( GUIMenuToolbarControl::EMenuToolbarItemTypes a_eType );
|
||||
signals:
|
||||
void signalItemClicked( GUIMenuToolbarControl::EMenuToolbarItemTypes a_eType );
|
||||
public slots:
|
||||
|
||||
private:
|
||||
void registerCustomQmlTypes();
|
||||
|
||||
GUIMenuToolbarControl* m_pToolbarControl;
|
||||
QmlImageProvider* m_pQmlImageProvider;
|
||||
|
||||
private slots:
|
||||
void slotCurrentItemChanged();
|
||||
};
|
||||
|
||||
#endif // GUIMENUTOOLBARWIDGET_H
|
||||
@@ -22,8 +22,9 @@ void QmlImageProvider::AddToImagePool( const QMap<QString, QImage>& a_aImages )
|
||||
}
|
||||
}
|
||||
|
||||
QImage QmlImageProvider::requestImage( const QString& a_rImageID, QSize* a_pSize, const QSize& a_ra_rRequestedSize )
|
||||
QImage QmlImageProvider::requestImage( const QString& a_rImageID, QSize* a_pSize, const QSize& a_rRequestedSize )
|
||||
{
|
||||
Q_UNUSED( a_rRequestedSize );
|
||||
QImage oImage( m_aImagePool.value( a_rImageID ) );
|
||||
if ( a_pSize )
|
||||
{
|
||||
|
||||
37
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.cpp
Normal file
37
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.cpp
Normal file
@@ -0,0 +1,37 @@
|
||||
#include "qmlmenutoolbaritem.h"
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
QmlMenuToolbarItem::QmlMenuToolbarItem
|
||||
( QString a_strText
|
||||
, QString a_strDescription
|
||||
, QString a_strImageHoverSource
|
||||
, QString a_strImageNormalSource
|
||||
, int a_iType
|
||||
, QObject *a_pParent
|
||||
)
|
||||
: QmlListItem( QVariant( a_strText ), QVariant( a_strDescription ), QVariant( a_strImageHoverSource ), QVariant( a_strImageNormalSource ), QVariant( a_iType ), a_pParent )
|
||||
{
|
||||
}
|
||||
|
||||
QmlMenuToolbarItem::QmlMenuToolbarItem( QObject* a_pParent )
|
||||
: QmlListItem( QVariant( "" ), QVariant( "" ), QVariant( "" ), QVariant( "" ), QVariant( -1 ), a_pParent )
|
||||
{
|
||||
}
|
||||
|
||||
QmlMenuToolbarItem::~QmlMenuToolbarItem()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QHash<int, QByteArray> QmlMenuToolbarItem::RoleNames() const
|
||||
{
|
||||
QHash<int, QByteArray> aRoleNames;
|
||||
aRoleNames[ROLE_TEXT] = "m_text";
|
||||
aRoleNames[ROLE_DESCRIPTION] = "m_description";
|
||||
aRoleNames[ROLE_IMAGE_HOVER_SOURCE] = "m_imageHoverSource";
|
||||
aRoleNames[ROLE_IMAGE_NORMAL_SOURCE] = "m_imageNormalSource";
|
||||
aRoleNames[ROLE_INTERNAL_TYPE] = "m_internalType";
|
||||
return aRoleNames;
|
||||
}
|
||||
|
||||
36
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.h
Normal file
36
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.h
Normal file
@@ -0,0 +1,36 @@
|
||||
#ifndef QMLMENUTOOLBARITEM_H
|
||||
#define QMLMENUTOOLBARITEM_H
|
||||
|
||||
#include "qmllistitem.h"
|
||||
|
||||
class QmlMenuToolbarItem : public QmlListItem
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_ENUMS( EMenuToolbarRoles )
|
||||
|
||||
public:
|
||||
enum EMenuToolbarRoles /** User-specific model roles **/
|
||||
{ ROLE_TEXT = ROLE_1
|
||||
, ROLE_DESCRIPTION = ROLE_2
|
||||
, ROLE_IMAGE_HOVER_SOURCE = ROLE_3
|
||||
, ROLE_IMAGE_NORMAL_SOURCE = ROLE_4
|
||||
, ROLE_INTERNAL_TYPE = ROLE_5
|
||||
};
|
||||
|
||||
explicit QmlMenuToolbarItem
|
||||
( QString a_strText
|
||||
, QString a_strDescription
|
||||
, QString a_strImageHoverSource
|
||||
, QString a_strImageNormalSource
|
||||
, int a_iType
|
||||
, QObject *a_pParent = 0
|
||||
);
|
||||
|
||||
explicit QmlMenuToolbarItem( QObject *a_pParent = 0 );
|
||||
virtual ~QmlMenuToolbarItem();
|
||||
|
||||
virtual QHash<int, QByteArray> RoleNames() const; /** Define class-specific roles **/
|
||||
|
||||
};
|
||||
|
||||
#endif // QMLMENUTOOLBARITEM_H
|
||||
15
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.cpp
Normal file
15
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.cpp
Normal file
@@ -0,0 +1,15 @@
|
||||
#include "qmlmenutoolbarmodel.h"
|
||||
|
||||
#include "qmlmenutoolbaritem.h"
|
||||
#include <QDebug>
|
||||
|
||||
QmlMenuToolbarModel::QmlMenuToolbarModel( QObject* a_pParent )
|
||||
: QmlListModel( new QmlMenuToolbarItem(), a_pParent )
|
||||
{
|
||||
}
|
||||
|
||||
QmlMenuToolbarModel::~QmlMenuToolbarModel()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
16
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.h
Normal file
16
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.h
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifndef QMLMENUTOOLBARMODEL_H
|
||||
#define QMLMENUTOOLBARMODEL_H
|
||||
|
||||
#include "qmllistmodel.h"
|
||||
|
||||
class QmlMenuToolbarItem;
|
||||
|
||||
class QmlMenuToolbarModel : public QmlListModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit QmlMenuToolbarModel( QObject* a_pParent = 0 );
|
||||
virtual ~QmlMenuToolbarModel(); /** Destructor **/
|
||||
};
|
||||
|
||||
#endif // QMLMENUTOOLBARMODEL_H
|
||||
@@ -7,7 +7,6 @@ Rectangle
|
||||
{
|
||||
id: id_bannerControlMain
|
||||
}
|
||||
color: "#F2F0F1"
|
||||
width: id_bannerControlMain.width
|
||||
height: id_bannerControlMain.height
|
||||
}
|
||||
|
||||
57
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml
Normal file
57
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml
Normal file
@@ -0,0 +1,57 @@
|
||||
import QtQuick 2.0
|
||||
import CasinoCoinControls 1.0
|
||||
|
||||
GUIMenuToolbarControl
|
||||
{
|
||||
id: id_toolbarControl
|
||||
|
||||
Rectangle
|
||||
{
|
||||
id: id_toolbarRect
|
||||
anchors.top: id_toolbarControl.top
|
||||
anchors.left: id_toolbarControl.left
|
||||
width: id_toolbarControl.width
|
||||
height: id_toolbarControl.height - id_toolbarBottomStripe.height
|
||||
gradient:
|
||||
Gradient
|
||||
{
|
||||
GradientStop { position: 0.0; color: GUI20Skin.colorToolbarMainGradientBegin }
|
||||
GradientStop { position: 1.0; color: GUI20Skin.colorToolbarMainGradientEnd }
|
||||
}
|
||||
z: 0
|
||||
QmlGUIMenuToolbarListView
|
||||
{
|
||||
id: id_menuToolbarListView
|
||||
width: id_toolbarControl.width
|
||||
anchors.left: id_toolbarRect.left
|
||||
anchors.top: id_toolbarRect.top
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
id_toolbarControl.InitializeMenuToolbarView( id_menuToolbarListView )
|
||||
}
|
||||
z: 2
|
||||
}
|
||||
Rectangle
|
||||
{
|
||||
id: id_currentSelectionIndicator
|
||||
height: id_toolbarControl.height
|
||||
width: height
|
||||
color: GUI20Skin.colorToolbarMainCurrent
|
||||
z: 1
|
||||
x: id_menuToolbarListView.m_iCurrentItemXProperty
|
||||
Rectangle
|
||||
{
|
||||
id: id_toolbarBottomStripe
|
||||
width: id_currentSelectionIndicator.width
|
||||
height: 5
|
||||
anchors.bottom: id_currentSelectionIndicator.bottom
|
||||
color: GUI20Skin.colorToolbarMainBottomCurrent
|
||||
}
|
||||
Behavior on x
|
||||
{
|
||||
NumberAnimation { duration: 300; easing.type: Easing.InOutQuad }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
79
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml
Normal file
79
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml
Normal file
@@ -0,0 +1,79 @@
|
||||
import QtQuick 2.0
|
||||
import CasinoCoinControls 1.0
|
||||
|
||||
GUIMenuToolbarListView
|
||||
{
|
||||
id: id_ListViewItem
|
||||
|
||||
property alias m_ListModel: id_ListView.model
|
||||
property alias m_ListView: id_ListView
|
||||
property real m_iCurrentItemXProperty: id_ListView.currentIndex * id_toolbarControl.height
|
||||
property real m_iCppCurrentIndex: p_pListModel.p_iCurrentElementIndex
|
||||
|
||||
ListView
|
||||
{
|
||||
id: id_ListView
|
||||
anchors.fill: id_ListViewItem
|
||||
|
||||
model: p_pListModel
|
||||
delegate: id_menuToolbarViewDelegate
|
||||
|
||||
orientation: ListView.Horizontal
|
||||
currentIndex: m_iCppCurrentIndex
|
||||
}
|
||||
|
||||
|
||||
Component
|
||||
{
|
||||
id: id_menuToolbarViewDelegate
|
||||
Rectangle
|
||||
{
|
||||
id: id_delegateRect
|
||||
height: id_toolbarControl.height
|
||||
width: height
|
||||
color: "transparent"
|
||||
z: 1
|
||||
Rectangle
|
||||
{
|
||||
id: id_singleButton
|
||||
height: id_toolbarControl.height - id_toolbarBottomStripe.height
|
||||
width: id_delegateRect.width
|
||||
color: "transparent"
|
||||
Image
|
||||
{
|
||||
id: id_singleButtonImage
|
||||
source: id_delegateMouseArea.containsMouse ? m_imageHoverSource : p_pListModel.p_iCurrentElementIndex == index ? m_imageHoverSource : m_imageNormalSource
|
||||
anchors.centerIn: id_singleButton
|
||||
}
|
||||
Text
|
||||
{
|
||||
id: id_singleButtonText
|
||||
|
||||
text: m_text
|
||||
wrapMode: Text.Wrap
|
||||
color: id_delegateMouseArea.containsMouse ? GUI20Skin.colorToolbarMainTextCurrent : p_pListModel.p_iCurrentElementIndex == index ? GUI20Skin.colorToolbarMainTextCurrent : GUI20Skin.colorToolbarMainTextNormal
|
||||
style: Text.Sunken
|
||||
styleColor: GUI20Skin.colorToolbarMainTextShadow
|
||||
font.pixelSize: 10
|
||||
|
||||
anchors.bottom: id_singleButton.bottom
|
||||
anchors.bottomMargin: 5
|
||||
anchors.horizontalCenter: id_singleButton.horizontalCenter
|
||||
|
||||
}
|
||||
}
|
||||
MouseArea
|
||||
{
|
||||
id: id_delegateMouseArea
|
||||
anchors.fill: id_singleButton
|
||||
hoverEnabled: true
|
||||
onClicked:
|
||||
{
|
||||
OnClicked( index )
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
14
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml
Normal file
14
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml
Normal file
@@ -0,0 +1,14 @@
|
||||
import QtQuick 2.0
|
||||
|
||||
Rectangle
|
||||
{
|
||||
id: id_toolbarRoot
|
||||
width: 1280
|
||||
height: 77 + 5
|
||||
color: "transparent"
|
||||
QmlGUIMenuToolbarControl
|
||||
{
|
||||
id: id_toolbarControlMain
|
||||
anchors.fill: id_toolbarRoot
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user