├── .gitignore
├── LICENSE
├── MFCModule
├── MFCModule.cpp
├── MFCModule.h
├── MFCModule.rc
├── MFCModule.vcxproj
├── MFCModule.vcxproj.filters
├── MFCModuleDlg.cpp
├── MFCModuleDlg.h
├── framework.h
├── pch.cpp
├── pch.h
├── res
│ ├── MFCModule.ico
│ └── MFCModule.rc2
├── resource.h
└── targetver.h
├── MainApp
├── MainApp.pro
├── MainApp.vcxproj
├── MainApp.vcxproj.filters
├── main.cpp
├── mainwindow.cpp
├── mainwindow.h
├── res
│ ├── Image
│ │ ├── Delete.png
│ │ ├── User.png
│ │ ├── ballicon.png
│ │ ├── edit.png
│ │ ├── help.png
│ │ ├── mfc.png
│ │ ├── module.png
│ │ ├── more.png
│ │ ├── pin.png
│ │ ├── proj.png
│ │ └── theme.png
│ ├── MainFrame.xml
│ ├── logo.ico
│ ├── logo.png
│ └── res.rc
└── resource.qrc
├── OfficeStyleApp
├── OfficeStyleApp.pro
├── OfficeStyleApp.qrc
├── OfficeStyleApp.vcxproj
├── OfficeStyleApp.vcxproj.filters
├── dialog
│ ├── ParagraphDialog.cpp
│ ├── ParagraphDialog.h
│ └── ParagraphDialog.ui
├── main.cpp
├── mainwindow.cpp
├── mainwindow.h
├── res
│ ├── Image
│ │ ├── blankpage32x32.png
│ │ ├── bookmark32x32.png
│ │ ├── chart32x32.png
│ │ ├── clipart32x32.png
│ │ ├── clipboard32x32.png
│ │ ├── close16x16.png
│ │ ├── close32x32.png
│ │ ├── color.png
│ │ ├── columns32x32.png
│ │ ├── coverpage32x32.png
│ │ ├── crossref32x32.png
│ │ ├── cut16x16.png
│ │ ├── datatime16x16.png
│ │ ├── dropcap32x32.png
│ │ ├── equation32x32.png
│ │ ├── footer32x32.png
│ │ ├── header32x32.png
│ │ ├── help.png
│ │ ├── hyperlink32x32.png
│ │ ├── largeInsertCaption.png
│ │ ├── largeInsertFootnote.png
│ │ ├── largeInternetfix.png
│ │ ├── largeMail.png
│ │ ├── largeMargins.png
│ │ ├── largeMarkEntry.png
│ │ ├── largePrepare.png
│ │ ├── largePrintPreview.png
│ │ ├── largePrintSetup.png
│ │ ├── largeSend.png
│ │ ├── largeThemes.png
│ │ ├── largedraft.png
│ │ ├── largefullscreen.png
│ │ ├── largeoutline.png
│ │ ├── largetablecontents.png
│ │ ├── largeweblayout.png
│ │ ├── largezoom.png
│ │ ├── new16x16.png
│ │ ├── open.png
│ │ ├── open32x32.png
│ │ ├── orientation32x32.png
│ │ ├── pageborders32x32.png
│ │ ├── pagebreak32x32.png
│ │ ├── pagecolor32x32.png
│ │ ├── pagenumber32x32.png
│ │ ├── picture32x32.png
│ │ ├── popularpage.png
│ │ ├── print16x16.png
│ │ ├── printlayout16x16.png
│ │ ├── printlayout32x32.png
│ │ ├── quickparts32x32.png
│ │ ├── redo16x16.png
│ │ ├── save16x16.png
│ │ ├── save32x32.png
│ │ ├── save_as.png
│ │ ├── saveasfile32x32.png
│ │ ├── shapes32x32.png
│ │ ├── signatureline16x16.png
│ │ ├── size32x32.png
│ │ ├── smallBreaks.png
│ │ ├── smalladdtext.png
│ │ ├── smallafter.png
│ │ ├── smallalignleft.png
│ │ ├── smallalignright.png
│ │ ├── smallbefore.png
│ │ ├── smallbullets.png
│ │ ├── smallcenter.png
│ │ ├── smallchangecase.png
│ │ ├── smallcolor.png
│ │ ├── smallcolors.png
│ │ ├── smallcopy.png
│ │ ├── smallcrossreference.png
│ │ ├── smallcut.png
│ │ ├── smalldecreaseindent.png
│ │ ├── smalldraft.png
│ │ ├── smalleffects.png
│ │ ├── smallfind.png
│ │ ├── smallfontclear.png
│ │ ├── smallfontgrow.png
│ │ ├── smallfonts.png
│ │ ├── smallfontshrink.png
│ │ ├── smallformatpainter.png
│ │ ├── smallfullscreen.png
│ │ ├── smallgoto.png
│ │ ├── smallhighlightcolor.png
│ │ ├── smallhyphenation.png
│ │ ├── smallincreaseindent.png
│ │ ├── smallinsertendnote.png
│ │ ├── smallinserttablefigures.png
│ │ ├── smalljustify.png
│ │ ├── smallleft.png
│ │ ├── smalllinenumbers.png
│ │ ├── smalllinespacing.png
│ │ ├── smallmultilevellist.png
│ │ ├── smallnextfootnote.png
│ │ ├── smallnoborder.png
│ │ ├── smallnumbering.png
│ │ ├── smallonepage.png
│ │ ├── smalloutline.png
│ │ ├── smallpagewidth.png
│ │ ├── smallreplace.png
│ │ ├── smallright.png
│ │ ├── smallselect.png
│ │ ├── smallshading.png
│ │ ├── smallshow_hide_marks.png
│ │ ├── smallshownotes.png
│ │ ├── smallsort.png
│ │ ├── smallstrikethrough.png
│ │ ├── smallsubscript.png
│ │ ├── smallsuperscript.png
│ │ ├── smalltextbold.png
│ │ ├── smalltextitalic.png
│ │ ├── smalltextjustify.png
│ │ ├── smalltextunder.png
│ │ ├── smalltwopage.png
│ │ ├── smallupdatetable.png
│ │ ├── smallweblayout.png
│ │ ├── smartart32x32.png
│ │ ├── symbol32x32.png
│ │ ├── table32x32.png
│ │ ├── textbox32x32.png
│ │ ├── undo16x16.png
│ │ ├── watermark32x32.png
│ │ └── wordart32x32.png
│ └── MainFrame.xml
└── resId.h
├── RibbonFrame
├── RibbonFrame.pro
├── RibbonFrame.rc
├── RibbonFrame.vcxproj
├── RibbonFrame.vcxproj.filters
├── RibbonFrameHelper.cpp
├── RibbonFrameHelper.h
├── modulemanagerdlg.cpp
├── modulemanagerdlg.h
├── modulemanagerdlg.ui
├── res
│ ├── module.png
│ ├── ribbonOptionBtn.png
│ └── settings.png
├── resource.h
├── ribbonframe.qrc
├── ribbonframewindow.cpp
├── settingsdialog.cpp
├── settingsdialog.h
├── settingsdialog.ui
└── widgets
│ ├── navigatewidget.cpp
│ └── navigatewidget.h
├── RibbonFrameDemo.pro
├── RibbonFrameDemo.sln
├── RibbonUiTools
├── GenerateResourceIdDefines
│ ├── GenerateResourceIdDefines.pri
│ ├── widget.cpp
│ ├── widget.h
│ └── widget.ui
├── RibbonUiTools.pro
├── RibbonUiTools.vcxproj
├── RibbonUiTools.vcxproj.filters
├── main.cpp
├── mainwindow.cpp
├── mainwindow.h
├── res
│ ├── MainFrame.xml
│ └── color.png
└── ribbunuitools.qrc
├── StylePlugin
├── StringHelper.cpp
├── StringHelper.h
├── StyleEventFilter.cpp
├── StyleEventFilter.h
├── StylePlugin.pro
├── StylePlugin.rc
├── StylePlugin.vcxproj
├── StylePlugin.vcxproj.filters
├── StylePlugin_global.h
├── qss.qrc
├── qss
│ ├── bf.css
│ ├── bf
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── black.css
│ ├── black
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── blue.css
│ ├── blue
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── darkblack.css
│ ├── darkblack
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── darkblue.css
│ ├── darkblue
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── darkgray.css
│ ├── darkgray
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── default_style.qss
│ ├── flatblack.css
│ ├── flatblack
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── flatwhite.css
│ ├── flatwhite
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── flatwhite2.css
│ ├── gray.css
│ ├── gray
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── lightblack.css
│ ├── lightblack
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── lightblue.css
│ ├── lightblue
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── lightgray.css
│ ├── lightgray
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── offece2010black.css
│ ├── offece2010blue.css
│ ├── offece2010silvery.css
│ ├── offece2013darkgray.css
│ ├── offece2013lightgray.css
│ ├── offece2013white.css
│ ├── offece2016.css
│ ├── offece2016dark.css
│ ├── office2010
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ ├── arrow_right.png
│ │ ├── arrow_up.png
│ │ ├── branch_close.png
│ │ ├── branch_close_hover.png
│ │ ├── branch_open.png
│ │ ├── branch_open_hover.png
│ │ ├── checkbox.png
│ │ ├── checkbox_parcial.png
│ │ ├── radiobutton.png
│ │ ├── spinDown.png
│ │ ├── spinUp.png
│ │ ├── zoomin.png
│ │ ├── zoomin_hover.png
│ │ ├── zoomin_pressed.png
│ │ ├── zoomout.png
│ │ ├── zoomout_hover.png
│ │ └── zoomout_pressed.png
│ ├── office2013
│ │ ├── arrow_down.png
│ │ ├── arrow_left.png
│ │ ├── arrow_right.png
│ │ ├── arrow_up.png
│ │ ├── branch_close.png
│ │ ├── branch_close_hover.png
│ │ ├── branch_open.png
│ │ ├── branch_open_hover.png
│ │ ├── checkbox_black.png
│ │ ├── checkbox_parcial_black.png
│ │ ├── down.png
│ │ ├── radiobutton_black.png
│ │ └── up.png
│ ├── office2016
│ │ ├── branch_open_white.png
│ │ ├── checkbox_parcial_white.png
│ │ ├── checkbox_white.png
│ │ ├── downArrow.png
│ │ ├── downArrowWhite.png
│ │ ├── leftArrowWhite.png
│ │ ├── radiobutton_white.png
│ │ ├── rightArrowWhite.png
│ │ ├── spinDownBtn.png
│ │ ├── spinUpBtn.png
│ │ └── upArrowWhite.png
│ ├── psblack.css
│ ├── psblack
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── silvery.css
│ ├── silvery
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── test.css
│ ├── test
│ │ ├── add_bottom.png
│ │ ├── add_left.png
│ │ ├── add_right.png
│ │ ├── add_top.png
│ │ ├── branch_close.png
│ │ ├── branch_open.png
│ │ ├── calendar_nextmonth.png
│ │ ├── calendar_prevmonth.png
│ │ ├── checkbox_checked.png
│ │ ├── checkbox_checked_disable.png
│ │ ├── checkbox_parcial.png
│ │ ├── checkbox_parcial_disable.png
│ │ ├── checkbox_unchecked.png
│ │ ├── checkbox_unchecked_disable.png
│ │ ├── radiobutton_checked.png
│ │ ├── radiobutton_checked_disable.png
│ │ ├── radiobutton_unchecked.png
│ │ └── radiobutton_unchecked_disable.png
│ ├── windows10
│ │ ├── checkbox_black.png
│ │ └── radiobutton_black.png
│ └── windows10light.css
├── res
│ ├── dark_mode.png
│ ├── light_mode.png
│ └── office.png
├── resource.h
├── stylemanager.cpp
├── stylemanager.h
├── styleplugin.cpp
├── styleplugin.h
├── themecolor.cpp
└── themecolor.h
├── TestModule
├── Common.cpp
├── Common.h
├── TestModule.pro
├── TestModule.vcxproj
├── TestModule.vcxproj.filters
├── mainwidget.cpp
├── mainwidget.h
├── mainwidget.ui
├── res
│ └── Template.png
├── resource.qrc
├── testmodule.cpp
├── testmodule.h
├── testmodule_global.h
└── widgets
│ ├── navigatewidget.cpp
│ └── navigatewidget.h
├── images
├── image-20230826193445586.png
├── image-20230827182536244.png
├── image-20231020104135873.png
├── image-20231020104440439.png
├── image-20231020105002953.png
├── image-20231020105039839.png
├── image-20231025091155934.png
└── theme-color-example.png
├── include
├── mainframe_global.h
├── mainframeinterface.h
├── moduleinterface.h
├── ribbonframewindow.h
├── ribbonuipredefine.h
└── styleinterface.h
└── readme.md
/.gitignore:
--------------------------------------------------------------------------------
1 | # C++ objects and libs
2 | *.slo
3 | *.lo
4 | *.o
5 | *.a
6 | *.la
7 | *.lai
8 | *.so
9 | *.dll
10 | *.dylib
11 | *.obj
12 | *.lib
13 | *.exe
14 |
15 | ### VC6 ###
16 | *.clw
17 | *.opt
18 | *.positions
19 | *.plg
20 |
21 | # Visual C++ cache files
22 | ipch/
23 | *.aps
24 | *.ncb
25 | *.opendb
26 | *.opensdf
27 | *.sdf
28 | *.cachefile
29 | *.VC.db
30 | *.VC.VC.opendb
31 | *.pdb
32 | *.idb
33 | *.ilk
34 | *.exp
35 |
36 | # Visual Studio profiler
37 | *.psess
38 | *.vsp
39 | *.vspx
40 | *.sap
41 | /.vs/
42 |
43 | # User-specific files
44 | *.suo
45 | *.user
46 | *.userosscache
47 | *.sln.docstates
48 |
49 | ### C++ ###
50 |
51 | # Debug/Release
52 | /Debug/
53 | /Release/
54 | /*/Debug/*.*
55 | /*/Release/*.*
56 |
57 | # debug/release
58 | /debug/
59 | /release/
60 | /*/debug/*.*
61 | /*/release/*.*
62 | */bin/debug/
63 | */bin/release/
64 | debug
65 | release
66 |
67 | # Compiled Object files
68 | *.slo
69 | *.lo
70 | *.o
71 | *.obj
72 | *.ilk
73 | *.tlog
74 |
75 | # Precompiled Headers
76 | *.gch
77 | *.pch
78 |
79 | # Executables
80 | *.out
81 | *.app
82 |
83 |
84 | # IPCH
85 | *.ipch
86 |
87 | # SVN
88 | /.svn/
89 | *.svn
90 | */.svn/
91 |
92 | #doc
93 | ~$*
94 |
95 |
96 | ### Word Temp File ###
97 | ~$*
98 | *.tmp
99 |
100 | #msado
101 | *.tlh
102 | *.tli
103 |
104 | # Qt-es
105 | /.qmake.cache
106 | /.qmake.stash
107 | *.pro.user
108 | *.pro.user.*
109 | *.moc
110 | moc_*.cpp
111 | qrc_*.cpp
112 | ui_*.h
113 | Makefile*
114 | *-build-*
115 |
116 | # QtCreator
117 |
118 | *.autosave
119 |
120 | *.log
121 |
122 | /bin
123 | *.qtvscr
124 | build
125 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 zhongyang219
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/MFCModule/MFCModule.h:
--------------------------------------------------------------------------------
1 |
2 | // MFCModule.h: PROJECT_NAME 应用程序的主头文件
3 | //
4 |
5 | #pragma once
6 |
7 | #ifndef __AFXWIN_H__
8 | #error "在包含此文件之前包含 'pch.h' 以生成 PCH"
9 | #endif
10 |
11 | #include "resource.h" // 主符号
12 | #ifdef _WINDLL
13 | #include "moduleinterface.h"
14 | #endif
15 |
16 | // CMFCModuleApp:
17 | // 有关此类的实现,请参阅 MFCModule.cpp
18 | //
19 |
20 | class CMFCModuleApp : public CWinApp
21 | {
22 | public:
23 | CMFCModuleApp();
24 |
25 | // 重写
26 | public:
27 | virtual BOOL InitInstance();
28 |
29 | // 实现
30 | DECLARE_MESSAGE_MAP()
31 | };
32 |
33 | extern CMFCModuleApp theApp;
34 |
35 |
36 | #ifdef _WINDLL
37 | /////////////////////////////////////////////////////////////////////////////////////////
38 | class MFCModuleInterface : public IModule
39 | {
40 | public:
41 | // 通过 IModule 继承
42 | virtual void InitInstance() override;
43 | virtual void UnInitInstance() override;
44 | virtual void UiInitComplete(IMainFrame* pMainFrame) override;
45 | virtual void* GetMainWindow() override;
46 | virtual eMainWindowType GetMainWindowType() const override;
47 | virtual const char* GetModuleName() override;
48 | virtual void OnCommand(const char* strCmd, bool checked) override;
49 | };
50 |
51 | #ifdef __cplusplus
52 | extern "C" {
53 | #endif
54 |
55 | //导出一个名为CreateInstance的函数以创建对象
56 | __declspec(dllexport) IModule* CreateInstance();
57 |
58 | #ifdef __cplusplus
59 | }
60 | #endif
61 |
62 | #endif
63 |
--------------------------------------------------------------------------------
/MFCModule/MFCModule.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MFCModule/MFCModule.rc
--------------------------------------------------------------------------------
/MFCModule/MFCModule.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | 头文件
20 |
21 |
22 | 头文件
23 |
24 |
25 | 头文件
26 |
27 |
28 | 头文件
29 |
30 |
31 | 头文件
32 |
33 |
34 | 头文件
35 |
36 |
37 |
38 |
39 | 源文件
40 |
41 |
42 | 源文件
43 |
44 |
45 | 源文件
46 |
47 |
48 |
49 |
50 | 资源文件
51 |
52 |
53 |
54 |
55 | 资源文件
56 |
57 |
58 |
59 |
60 | 资源文件
61 |
62 |
63 |
--------------------------------------------------------------------------------
/MFCModule/MFCModuleDlg.h:
--------------------------------------------------------------------------------
1 |
2 | // MFCModuleDlg.h: 头文件
3 | //
4 |
5 | #pragma once
6 |
7 |
8 | // CMFCModuleDlg 对话框
9 | class CMFCModuleDlg : public CDialog
10 | {
11 | // 构造
12 | public:
13 | CMFCModuleDlg(CWnd* pParent = nullptr); // 标准构造函数
14 | void SetWindowVisible(bool visible);
15 |
16 | // 对话框数据
17 | #ifdef AFX_DESIGN_TIME
18 | enum { IDD = IDD_MFCMODULE_DIALOG };
19 | #endif
20 |
21 | protected:
22 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
23 |
24 |
25 | // 实现
26 | protected:
27 | HICON m_hIcon;
28 | bool m_windowVisible{ true }; //窗口是否显示
29 |
30 | // 生成的消息映射函数
31 | virtual BOOL OnInitDialog();
32 | afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
33 | afx_msg void OnPaint();
34 | afx_msg HCURSOR OnQueryDragIcon();
35 | DECLARE_MESSAGE_MAP()
36 | afx_msg void OnWindowPosChanging(WINDOWPOS* lpwndpos);
37 | };
38 |
--------------------------------------------------------------------------------
/MFCModule/framework.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #ifndef VC_EXTRALEAN
4 | #define VC_EXTRALEAN // 从 Windows 头中排除极少使用的资料
5 | #endif
6 |
7 | #include "targetver.h"
8 |
9 | #define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // 某些 CString 构造函数将是显式的
10 |
11 | // 关闭 MFC 的一些常见且经常可放心忽略的隐藏警告消息
12 | #define _AFX_ALL_WARNINGS
13 |
14 | #include // MFC 核心组件和标准组件
15 | #include // MFC 扩展
16 |
17 |
18 |
19 |
20 |
21 | #ifndef _AFX_NO_OLE_SUPPORT
22 | #include // MFC 对 Internet Explorer 4 公共控件的支持
23 | #endif
24 | #ifndef _AFX_NO_AFXCMN_SUPPORT
25 | #include // MFC 对 Windows 公共控件的支持
26 | #endif // _AFX_NO_AFXCMN_SUPPORT
27 |
28 | #include // MFC 支持功能区和控制条
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 | #ifdef _UNICODE
38 | #if defined _M_IX86
39 | #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
40 | #elif defined _M_X64
41 | #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
42 | #else
43 | #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
44 | #endif
45 | #endif
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/MFCModule/pch.cpp:
--------------------------------------------------------------------------------
1 | // pch.cpp: 与预编译标头对应的源文件
2 |
3 | #include "pch.h"
4 |
5 | // 当使用预编译的头时,需要使用此源文件,编译才能成功。
6 |
--------------------------------------------------------------------------------
/MFCModule/pch.h:
--------------------------------------------------------------------------------
1 | // pch.h: 这是预编译标头文件。
2 | // 下方列出的文件仅编译一次,提高了将来生成的生成性能。
3 | // 这还将影响 IntelliSense 性能,包括代码完成和许多代码浏览功能。
4 | // 但是,如果此处列出的文件中的任何一个在生成之间有更新,它们全部都将被重新编译。
5 | // 请勿在此处添加要频繁更新的文件,这将使得性能优势无效。
6 |
7 | #ifndef PCH_H
8 | #define PCH_H
9 |
10 | // 添加要在此处预编译的标头
11 | #include "framework.h"
12 |
13 | #endif //PCH_H
14 |
--------------------------------------------------------------------------------
/MFCModule/res/MFCModule.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MFCModule/res/MFCModule.ico
--------------------------------------------------------------------------------
/MFCModule/res/MFCModule.rc2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MFCModule/res/MFCModule.rc2
--------------------------------------------------------------------------------
/MFCModule/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ 生成的包含文件。
3 | // 供 MFCModule.rc 使用
4 | //
5 | #define IDM_ABOUTBOX 0x0010
6 | #define IDD_ABOUTBOX 100
7 | #define IDS_ABOUTBOX 101
8 | #define IDD_MFCMODULE_DIALOG 102
9 | #define IDR_MAINFRAME 128
10 | #define IDC_BUTTON1 1000
11 | #define IDC_COMBO1 1001
12 |
13 | // Next default values for new objects
14 | //
15 | #ifdef APSTUDIO_INVOKED
16 | #ifndef APSTUDIO_READONLY_SYMBOLS
17 | #define _APS_NEXT_RESOURCE_VALUE 130
18 | #define _APS_NEXT_COMMAND_VALUE 32771
19 | #define _APS_NEXT_CONTROL_VALUE 1002
20 | #define _APS_NEXT_SYMED_VALUE 101
21 | #endif
22 | #endif
23 |
--------------------------------------------------------------------------------
/MFCModule/targetver.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | // 包括 SDKDDKVer.h 将定义可用的最高版本的 Windows 平台。
4 |
5 | //如果要为以前的 Windows 平台生成应用程序,请包括 WinSDKVer.h,并
6 | // 将 _WIN32_WINNT 宏设置为要支持的平台,然后再包括 SDKDDKVer.h。
7 |
8 | #include
9 |
--------------------------------------------------------------------------------
/MainApp/MainApp.pro:
--------------------------------------------------------------------------------
1 | QT += core gui
2 |
3 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
4 |
5 | CONFIG += c++11
6 |
7 | # The following define makes your compiler emit warnings if you use
8 | # any Qt feature that has been marked deprecated (the exact warnings
9 | # depend on your compiler). Please consult the documentation of the
10 | # deprecated API in order to know how to port your code away from it.
11 | DEFINES += QT_DEPRECATED_WARNINGS
12 |
13 | # You can also make your code fail to compile if it uses deprecated APIs.
14 | # In order to do so, uncomment the following line.
15 | # You can also select to disable deprecated APIs only up to a certain version of Qt.
16 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
17 |
18 | SOURCES += \
19 | main.cpp \
20 | mainwindow.cpp
21 |
22 | HEADERS += \
23 | mainwindow.h
24 |
25 | # Default rules for deployment.
26 | qnx: target.path = /tmp/$${TARGET}/bin
27 | else: unix:!android: target.path = /opt/$${TARGET}/bin
28 | !isEmpty(target.path): INSTALLS += target
29 |
30 | CONFIG(release, debug|release): {
31 | LIBS += -L$$PWD/../bin/release/ -lRibbonFrame
32 | DESTDIR = $$PWD/../bin/release
33 | }
34 | else:CONFIG(debug, debug|release): {
35 | LIBS += -L$$PWD/../bin/debug/ -lRibbonFrame
36 | DESTDIR = $$PWD/../bin/debug
37 | }
38 |
39 | INCLUDEPATH += $$PWD/../include
40 |
41 | RC_FILE += \
42 | res/res.rc
43 |
44 | RESOURCES += \
45 | resource.qrc
46 |
--------------------------------------------------------------------------------
/MainApp/main.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include
3 | #include "mainwindow.h"
4 |
5 | int main(int argc, char *argv[])
6 | {
7 | // qputenv("QT_QPA_PLATFORM", "windows:darkmode=2");
8 |
9 | //Linux下禁用Qt自带的高DPI缩放,而是使用StylePlugin提供的高DPI缩放方案,避免高DPI下模糊的问题
10 | #if ((defined Q_OS_LINUX) && (QT_VERSION >= QT_VERSION_CHECK(5,6,0)))
11 | QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling);
12 | #endif
13 |
14 | QApplication a(argc, argv);
15 | a.setApplicationVersion("1.0.0");
16 |
17 | QStringList cmdLine;
18 | for (int i = 0; i < argc; i++)
19 | cmdLine.push_back(argv[i]);
20 |
21 | MainWindow w(nullptr, cmdLine);
22 | w.show();
23 |
24 | return a.exec();
25 | }
26 |
--------------------------------------------------------------------------------
/MainApp/mainwindow.cpp:
--------------------------------------------------------------------------------
1 | #include "mainwindow.h"
2 | #include
3 | #include
4 | #include
5 |
6 | #define QSTR(str) QString::fromWCharArray(L ## str)
7 |
8 | MainWindow::MainWindow(QWidget *parent, const QStringList& cmdLine)
9 | : RibbonFrameWindow(parent, ":/res/MainFrame.xml", false, cmdLine)
10 | {
11 | QIcon appIcon(":/res/logo.png");
12 | setWindowIcon(appIcon);
13 | SetItemIcon("AppAbout", appIcon);
14 | }
15 |
16 |
17 | bool MainWindow::OnCommand(const QString &strCmd, bool checked)
18 | {
19 | if (strCmd == "AppAbout")
20 | {
21 | QMessageBox::about(this, QSTR("关于 %1").arg(qApp->applicationName()), QSTR("%1 %2\r\n这是一个界面框架示例程序。\r\nCopyright(C) 2023 by ZhongYang").arg(qApp->applicationName()).arg(qApp->applicationVersion()));
22 | return true;
23 | }
24 | return RibbonFrameWindow::OnCommand(strCmd, checked);
25 | }
26 |
27 |
28 | void MainWindow::closeEvent(QCloseEvent *event)
29 | {
30 | RibbonFrameWindow::closeEvent(event);
31 |
32 | //QMessageBox box(QMessageBox::Question, QString(), QSTR("确实要退出吗?"), QMessageBox::Yes | QMessageBox::No, this);
33 | //if (box.exec() != QMessageBox::Yes)
34 | // event->ignore();
35 | }
36 |
--------------------------------------------------------------------------------
/MainApp/mainwindow.h:
--------------------------------------------------------------------------------
1 | #ifndef MAINWINDOW_H
2 | #define MAINWINDOW_H
3 |
4 | #include
5 | #include "ribbonframewindow.h"
6 |
7 | class MainWindow : public RibbonFrameWindow
8 | {
9 | Q_OBJECT
10 | public:
11 | explicit MainWindow(QWidget *parent = nullptr, const QStringList& cmdLine = QStringList());
12 |
13 | signals:
14 |
15 | // MainFrameWindow interface
16 | private:
17 | virtual bool OnCommand(const QString &strCmd, bool checked) override;
18 |
19 | // QWidget interface
20 | protected:
21 | virtual void closeEvent(QCloseEvent *event) override;
22 | };
23 |
24 | #endif // MAINWINDOW_H
25 |
--------------------------------------------------------------------------------
/MainApp/res/Image/Delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/Delete.png
--------------------------------------------------------------------------------
/MainApp/res/Image/User.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/User.png
--------------------------------------------------------------------------------
/MainApp/res/Image/ballicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/ballicon.png
--------------------------------------------------------------------------------
/MainApp/res/Image/edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/edit.png
--------------------------------------------------------------------------------
/MainApp/res/Image/help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/help.png
--------------------------------------------------------------------------------
/MainApp/res/Image/mfc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/mfc.png
--------------------------------------------------------------------------------
/MainApp/res/Image/module.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/module.png
--------------------------------------------------------------------------------
/MainApp/res/Image/more.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/more.png
--------------------------------------------------------------------------------
/MainApp/res/Image/pin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/pin.png
--------------------------------------------------------------------------------
/MainApp/res/Image/proj.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/proj.png
--------------------------------------------------------------------------------
/MainApp/res/Image/theme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/Image/theme.png
--------------------------------------------------------------------------------
/MainApp/res/logo.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/logo.ico
--------------------------------------------------------------------------------
/MainApp/res/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/MainApp/res/logo.png
--------------------------------------------------------------------------------
/MainApp/res/res.rc:
--------------------------------------------------------------------------------
1 | IDI_ICON1 ICON DISCARDABLE "logo.ico"
2 |
--------------------------------------------------------------------------------
/MainApp/resource.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | res/logo.ico
4 | res/logo.png
5 | res/MainFrame.xml
6 | res/Image/ballicon.png
7 | res/Image/Delete.png
8 | res/Image/edit.png
9 | res/Image/help.png
10 | res/Image/mfc.png
11 | res/Image/module.png
12 | res/Image/more.png
13 | res/Image/proj.png
14 | res/Image/theme.png
15 | res/Image/User.png
16 | res/Image/pin.png
17 |
18 |
19 |
--------------------------------------------------------------------------------
/OfficeStyleApp/OfficeStyleApp.pro:
--------------------------------------------------------------------------------
1 | QT += core gui
2 |
3 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
4 |
5 | CONFIG += c++11
6 |
7 | # The following define makes your compiler emit warnings if you use
8 | # any Qt feature that has been marked deprecated (the exact warnings
9 | # depend on your compiler). Please consult the documentation of the
10 | # deprecated API in order to know how to port your code away from it.
11 | DEFINES += QT_DEPRECATED_WARNINGS
12 |
13 | # You can also make your code fail to compile if it uses deprecated APIs.
14 | # In order to do so, uncomment the following line.
15 | # You can also select to disable deprecated APIs only up to a certain version of Qt.
16 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
17 |
18 | SOURCES += \
19 | dialog/ParagraphDialog.cpp \
20 | main.cpp \
21 | mainwindow.cpp
22 |
23 | HEADERS += \
24 | dialog/ParagraphDialog.h \
25 | mainwindow.h \
26 | resId.h
27 |
28 | # Default rules for deployment.
29 | qnx: target.path = /tmp/$${TARGET}/bin
30 | else: unix:!android: target.path = /opt/$${TARGET}/bin
31 | !isEmpty(target.path): INSTALLS += target
32 |
33 | CONFIG(release, debug|release): {
34 | LIBS += -L$$PWD/../bin/release/ -lRibbonFrame
35 | DESTDIR = $$PWD/../bin/release
36 | }
37 | else:CONFIG(debug, debug|release): {
38 | LIBS += -L$$PWD/../bin/debug/ -lRibbonFrame
39 | DESTDIR = $$PWD/../bin/debug
40 | }
41 |
42 | INCLUDEPATH += $$PWD/../include
43 |
44 | RESOURCES += \
45 | OfficeStyleApp.qrc
46 |
47 | FORMS += \
48 | dialog/ParagraphDialog.ui
49 |
--------------------------------------------------------------------------------
/OfficeStyleApp/dialog/ParagraphDialog.cpp:
--------------------------------------------------------------------------------
1 | #include "ParagraphDialog.h"
2 | #include "ui_ParagraphDialog.h"
3 |
4 | ParagraphDialog::ParagraphDialog(QWidget *parent) :
5 | QDialog(parent),
6 | ui(new Ui::ParagraphDialog)
7 | {
8 | ui->setupUi(this);
9 | }
10 |
11 | ParagraphDialog::~ParagraphDialog()
12 | {
13 | delete ui;
14 | }
15 |
--------------------------------------------------------------------------------
/OfficeStyleApp/dialog/ParagraphDialog.h:
--------------------------------------------------------------------------------
1 | #ifndef PARAGRAPHDIALOG_H
2 | #define PARAGRAPHDIALOG_H
3 |
4 | #include
5 |
6 | namespace Ui {
7 | class ParagraphDialog;
8 | }
9 |
10 | class ParagraphDialog : public QDialog
11 | {
12 | Q_OBJECT
13 |
14 | public:
15 | explicit ParagraphDialog(QWidget *parent = nullptr);
16 | ~ParagraphDialog();
17 |
18 | private:
19 | Ui::ParagraphDialog *ui;
20 | };
21 |
22 | #endif // PARAGRAPHDIALOG_H
23 |
--------------------------------------------------------------------------------
/OfficeStyleApp/main.cpp:
--------------------------------------------------------------------------------
1 | #include "mainwindow.h"
2 |
3 | #include
4 |
5 | int main(int argc, char *argv[])
6 | {
7 | //Linux下禁用Qt自带的高DPI缩放,而是使用StylePlugin提供的高DPI缩放方案,避免高DPI下模糊的问题
8 | #if ((defined Q_OS_LINUX) && (QT_VERSION >= QT_VERSION_CHECK(5,6,0)))
9 | QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling);
10 | #endif
11 |
12 | QApplication a(argc, argv);
13 | MainWindow w;
14 | w.show();
15 | return a.exec();
16 | }
17 |
--------------------------------------------------------------------------------
/OfficeStyleApp/mainwindow.h:
--------------------------------------------------------------------------------
1 | #ifndef MAINWINDOW_H
2 | #define MAINWINDOW_H
3 |
4 | #include "ribbonframewindow.h"
5 | #include
6 |
7 | class MainWindow : public RibbonFrameWindow
8 | {
9 | Q_OBJECT
10 |
11 | public:
12 | MainWindow(QWidget *parent = nullptr);
13 | ~MainWindow();
14 |
15 | private:
16 | enum class DocFormat
17 | {
18 | Text,
19 | Html,
20 | Markdown,
21 | Undefined
22 | };
23 |
24 | void ApplyFont();
25 | void UpdateFontUi();
26 | void UpdateWindowTitle();
27 | DocFormat GetDocFormatByFileName(const QString& fileName);
28 | bool OpenFile(const QString& filePath, DocFormat format = DocFormat::Undefined);
29 | bool SaveFile(const QString& filePath, DocFormat format = DocFormat::Undefined);
30 |
31 | private slots:
32 | void OnCurrentFontChanged(const QFont & font);
33 | void OnCursorPositionChanged();
34 | void OnCopyAvailable(bool yes);
35 | void OnUndoAvailable(bool available);
36 | void OnRedoAvailable(bool available);
37 | void zoomSliderScroll(int value);
38 |
39 | private:
40 | QTextEdit m_edit;
41 | QString m_filePath;
42 | bool m_fontUiApplEnable = true;
43 |
44 | // RibbonFrameWindow interface
45 | protected:
46 | virtual bool OnCommand(const QString &strCmd, bool checked) override;
47 | void OnItemChanged(const QString &strId, int index, const QString &text);
48 | virtual QWidget *CreateUserWidget(const QString &strId, QWidget *pParent) override;
49 | };
50 | #endif // MAINWINDOW_H
51 |
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/blankpage32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/blankpage32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/bookmark32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/bookmark32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/chart32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/chart32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/clipart32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/clipart32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/clipboard32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/clipboard32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/close16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/close16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/close32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/close32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/color.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/columns32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/columns32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/coverpage32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/coverpage32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/crossref32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/crossref32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/cut16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/cut16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/datatime16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/datatime16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/dropcap32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/dropcap32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/equation32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/equation32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/footer32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/footer32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/header32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/header32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/help.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/hyperlink32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/hyperlink32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeInsertCaption.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeInsertCaption.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeInsertFootnote.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeInsertFootnote.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeInternetfix.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeInternetfix.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeMail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeMail.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeMargins.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeMargins.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeMarkEntry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeMarkEntry.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largePrepare.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largePrepare.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largePrintPreview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largePrintPreview.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largePrintSetup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largePrintSetup.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeSend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeSend.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeThemes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeThemes.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largedraft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largedraft.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largefullscreen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largefullscreen.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeoutline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeoutline.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largetablecontents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largetablecontents.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largeweblayout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largeweblayout.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/largezoom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/largezoom.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/new16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/new16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/open.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/open32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/open32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/orientation32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/orientation32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/pageborders32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/pageborders32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/pagebreak32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/pagebreak32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/pagecolor32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/pagecolor32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/pagenumber32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/pagenumber32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/picture32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/picture32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/popularpage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/popularpage.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/print16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/print16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/printlayout16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/printlayout16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/printlayout32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/printlayout32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/quickparts32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/quickparts32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/redo16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/redo16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/save16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/save16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/save32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/save32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/save_as.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/save_as.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/saveasfile32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/saveasfile32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/shapes32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/shapes32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/signatureline16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/signatureline16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/size32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/size32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallBreaks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallBreaks.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalladdtext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalladdtext.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallafter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallafter.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallalignleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallalignleft.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallalignright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallalignright.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallbefore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallbefore.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallbullets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallbullets.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcenter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcenter.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallchangecase.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallchangecase.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcolor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcolor.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcolors.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcolors.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcopy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcopy.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcrossreference.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcrossreference.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallcut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallcut.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalldecreaseindent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalldecreaseindent.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalldraft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalldraft.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalleffects.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalleffects.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfind.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfind.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfontclear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfontclear.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfontgrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfontgrow.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfonts.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfonts.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfontshrink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfontshrink.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallformatpainter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallformatpainter.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallfullscreen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallfullscreen.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallgoto.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallgoto.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallhighlightcolor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallhighlightcolor.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallhyphenation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallhyphenation.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallincreaseindent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallincreaseindent.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallinsertendnote.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallinsertendnote.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallinserttablefigures.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallinserttablefigures.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalljustify.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalljustify.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallleft.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalllinenumbers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalllinenumbers.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalllinespacing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalllinespacing.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallmultilevellist.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallmultilevellist.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallnextfootnote.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallnextfootnote.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallnoborder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallnoborder.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallnumbering.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallnumbering.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallonepage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallonepage.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalloutline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalloutline.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallpagewidth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallpagewidth.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallreplace.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallreplace.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallright.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallselect.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallselect.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallshading.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallshading.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallshow_hide_marks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallshow_hide_marks.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallshownotes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallshownotes.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallsort.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallsort.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallstrikethrough.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallstrikethrough.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallsubscript.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallsubscript.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallsuperscript.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallsuperscript.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalltextbold.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalltextbold.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalltextitalic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalltextitalic.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalltextjustify.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalltextjustify.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalltextunder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalltextunder.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smalltwopage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smalltwopage.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallupdatetable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallupdatetable.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smallweblayout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smallweblayout.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/smartart32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/smartart32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/symbol32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/symbol32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/table32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/table32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/textbox32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/textbox32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/undo16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/undo16x16.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/watermark32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/watermark32x32.png
--------------------------------------------------------------------------------
/OfficeStyleApp/res/Image/wordart32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/OfficeStyleApp/res/Image/wordart32x32.png
--------------------------------------------------------------------------------
/RibbonFrame/RibbonFrame.pro:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------
2 | #
3 | # Project created by QtCreator 2020-10-28T09:10:15
4 | #
5 | #-------------------------------------------------
6 |
7 | QT += core gui xml
8 |
9 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
10 |
11 | CONFIG += c++11
12 |
13 | TARGET = RibbonFrame
14 | TEMPLATE = lib
15 |
16 | DEFINES += RIBBONFRAME_LIBRARY
17 |
18 |
19 | SOURCES += \
20 | RibbonFrameHelper.cpp \
21 | modulemanagerdlg.cpp \
22 | ribbonframewindow.cpp \
23 | settingsdialog.cpp \
24 | widgets/navigatewidget.cpp
25 |
26 | HEADERS += \
27 | ../include/mainframe_global.h \
28 | ../include/mainframeinterface.h \
29 | ../include/moduleinterface.h \
30 | ../include/ribbonframewindow.h \
31 | ../include/ribbonuipredefine.h \
32 | RibbonFrameHelper.h \
33 | modulemanagerdlg.h \
34 | settingsdialog.h \
35 | widgets/navigatewidget.h
36 |
37 | CONFIG(release, debug|release): {
38 | DESTDIR = $$PWD/../bin/release
39 | }
40 | else:CONFIG(debug, debug|release): {
41 | DESTDIR = $$PWD/../bin/debug
42 | }
43 |
44 | INCLUDEPATH += $$PWD/../include
45 |
46 | RESOURCES += \
47 | ribbonframe.qrc
48 |
49 | RC_FILE += \
50 | RibbonFrame.rc
51 |
52 | #关闭“C4100:未引用的形参”警告
53 | win32-msvc* {
54 | QMAKE_CXXFLAGS *= /wd"4100"
55 | contains (QMAKE_CXXFLAGS_WARN_ON, -w34100) : QMAKE_CXXFLAGS_WARN_ON -= -w34100
56 | }
57 |
58 | FORMS += \
59 | modulemanagerdlg.ui \
60 | settingsdialog.ui
61 |
--------------------------------------------------------------------------------
/RibbonFrame/RibbonFrame.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonFrame/RibbonFrame.rc
--------------------------------------------------------------------------------
/RibbonFrame/modulemanagerdlg.cpp:
--------------------------------------------------------------------------------
1 | #include "modulemanagerdlg.h"
2 | #include
3 | #include
4 | #include
5 | #include "ribbonuipredefine.h"
6 |
7 | enum Column
8 | {
9 | COL_NAME,
10 | COL_PATH,
11 | COL_ENABLED,
12 | COL_MAX
13 | };
14 |
15 | ModuleManagerDlg::ModuleManagerDlg(const QList& moduleInfoList, QSet& disabledModulePath, QWidget *parent)
16 | : QDialog(parent),
17 | m_disabledModulePath(disabledModulePath)
18 | {
19 | ui.setupUi(this);
20 | if (layout() != nullptr)
21 | layout()->setMargin(DPI(8));
22 | resize(DPI(480), DPI(350));
23 |
24 | ui.tableWidget->setColumnCount(COL_MAX);
25 | ui.tableWidget->setHorizontalHeaderLabels(QStringList{ u8"模块名称", u8"模块路径", u8"启用状态"});
26 | ui.tableWidget->setColumnWidth(COL_NAME, DPI(140));
27 | ui.tableWidget->setColumnWidth(COL_PATH, DPI(170));
28 | ui.tableWidget->setColumnWidth(COL_ENABLED, DPI(100));
29 | ui.tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
30 |
31 | //显示模块列表
32 | for (const auto& moduleInfo : moduleInfoList)
33 | {
34 | AddTableRow(moduleInfo.icon, moduleInfo.name, moduleInfo.modulePath, !disabledModulePath.contains(moduleInfo.modulePath));
35 | }
36 | }
37 |
38 | ModuleManagerDlg::~ModuleManagerDlg()
39 | {}
40 |
41 | void ModuleManagerDlg::AddTableRow(const QIcon & icon, const QString & name, const QString & path, bool isEnabled)
42 | {
43 | int row = ui.tableWidget->rowCount();
44 | ui.tableWidget->setRowCount(row + 1);
45 |
46 | QTableWidgetItem* pNameItem = new QTableWidgetItem(icon, name);
47 | ui.tableWidget->setItem(row, COL_NAME, pNameItem);
48 |
49 | QTableWidgetItem* pPathItem = new QTableWidgetItem(path);
50 | ui.tableWidget->setItem(row, COL_PATH, pPathItem);
51 |
52 | QComboBox* pEnabledCombo = new QComboBox(ui.tableWidget);
53 | pEnabledCombo->setView(new QListView());
54 | pEnabledCombo->addItems(QStringList{ u8"启用", u8"禁用" });
55 | pEnabledCombo->setCurrentIndex(isEnabled ? 0 : 1);
56 | pEnabledCombo->setProperty("path", path);
57 | connect(pEnabledCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(OnDisabledComboIndexChanged(int)));
58 | ui.tableWidget->setCellWidget(row, COL_ENABLED, pEnabledCombo);
59 | }
60 |
61 | void ModuleManagerDlg::OnDisabledComboIndexChanged(int index)
62 | {
63 | QString modulePath = sender()->property("path").toString();
64 | bool isEnabled = (index == 0);
65 | if (isEnabled)
66 | m_disabledModulePath.remove(modulePath);
67 | else
68 | m_disabledModulePath.insert(modulePath);
69 | }
--------------------------------------------------------------------------------
/RibbonFrame/modulemanagerdlg.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 | #include "ui_modulemanagerdlg.h"
5 | #include
6 |
7 | class ModuleManagerDlg : public QDialog
8 | {
9 | Q_OBJECT
10 |
11 | public:
12 | struct ModuleInfo
13 | {
14 | QString name;
15 | QIcon icon;
16 | QString modulePath;
17 | };
18 |
19 | ModuleManagerDlg(const QList& moduleInfoList, QSet& disabledModulePath, QWidget *parent = nullptr);
20 | ~ModuleManagerDlg();
21 |
22 | protected:
23 | void AddTableRow(const QIcon& icon, const QString& name, const QString& path, bool isEnabled);
24 |
25 | private slots:
26 | void OnDisabledComboIndexChanged(int index);
27 |
28 | private:
29 | Ui::ModuleManagerDlgClass ui;
30 | QSet& m_disabledModulePath;
31 | };
32 |
--------------------------------------------------------------------------------
/RibbonFrame/modulemanagerdlg.ui:
--------------------------------------------------------------------------------
1 |
2 |
3 | ModuleManagerDlgClass
4 |
5 |
6 |
7 | 0
8 | 0
9 | 600
10 | 400
11 |
12 |
13 |
14 | 模块管理
15 |
16 |
17 |
18 | :/icon/res/module.png:/icon/res/module.png
19 |
20 |
21 | -
22 |
23 |
24 | -
25 |
26 |
-
27 |
28 |
29 | Qt::Horizontal
30 |
31 |
32 |
33 | 40
34 | 20
35 |
36 |
37 |
38 |
39 | -
40 |
41 |
42 | 关闭
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 | pushButton
55 | clicked()
56 | ModuleManagerDlgClass
57 | reject()
58 |
59 |
60 | 539
61 | 381
62 |
63 |
64 | 474
65 | 376
66 |
67 |
68 |
69 |
70 |
71 |
--------------------------------------------------------------------------------
/RibbonFrame/res/module.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonFrame/res/module.png
--------------------------------------------------------------------------------
/RibbonFrame/res/ribbonOptionBtn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonFrame/res/ribbonOptionBtn.png
--------------------------------------------------------------------------------
/RibbonFrame/res/settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonFrame/res/settings.png
--------------------------------------------------------------------------------
/RibbonFrame/resource.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonFrame/resource.h
--------------------------------------------------------------------------------
/RibbonFrame/ribbonframe.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | res/ribbonOptionBtn.png
4 | res/settings.png
5 | res/module.png
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RibbonFrame/settingsdialog.h:
--------------------------------------------------------------------------------
1 | #ifndef SETTINGSDIALOG_H
2 | #define SETTINGSDIALOG_H
3 |
4 | #include
5 | #include "styleinterface.h"
6 |
7 | class ColorIndicatorWidget;
8 | namespace Ui {
9 | class SettingsDialog;
10 | }
11 |
12 | class SettingsDialog : public QDialog
13 | {
14 | Q_OBJECT
15 |
16 | public:
17 | struct Data
18 | {
19 | bool ribbonHideEnable{}; //是否允许隐藏功能区
20 | bool ribbonPin{ true }; //是否固定功能区
21 | bool ribbonDoubleClickEnable{}; //是否允许通过双击Ribbon标签显示/隐藏功能区
22 |
23 | //功能区隐藏时,在点击Ribbon标签时显示什么
24 | enum ShowWhenTabClicked
25 | {
26 | None, //无
27 | Ribbon, //显示功能区
28 | Menu //显示菜单
29 | };
30 | ShowWhenTabClicked showWhenTabClicked{};
31 |
32 | bool showLeftNaviBar{}; //是否在左侧显示导航栏
33 | bool showStatusBar{}; //是否显示状态栏
34 |
35 | void Save() const;
36 | void Load();
37 | };
38 |
39 | explicit SettingsDialog(IRibbonStyle* ribbonStyle, QWidget *parent = nullptr);
40 | ~SettingsDialog();
41 |
42 | void SetData(Data data);
43 | Data GetData() const;
44 |
45 | private slots:
46 | void on_enableHideRibbonCheck_stateChanged(int arg1);
47 | void OnBorwseThemeColor();
48 | void OnSetCurThemeColor(const QColor& color);
49 | void OnThemeComboboxIndexChanged(int index);
50 |
51 | private:
52 | void EnableControl();
53 | virtual void accept() override;
54 |
55 | private:
56 | Ui::SettingsDialog *ui;
57 | ColorIndicatorWidget* m_curColor{};
58 | IRibbonStyle* m_ribbonStyle{};
59 | };
60 |
61 |
62 | ///////////////////////////////////////////////////////////////////////////////////////////////////
63 | class ColorIndicatorWidget : public QWidget
64 | {
65 | Q_OBJECT
66 | public:
67 | ColorIndicatorWidget(const QColor& color, const QString& toolTip, QWidget* parent = nullptr);
68 | QColor GetColor() const;
69 |
70 | public slots:
71 | void SetColor(const QColor& color);
72 |
73 | signals:
74 | void colorChanged(const QColor& color);
75 |
76 | private:
77 | virtual void paintEvent(QPaintEvent* event) override;
78 | virtual void mouseReleaseEvent(QMouseEvent* event) override;
79 |
80 | private:
81 | QColor m_color;
82 | };
83 |
84 | #endif // SETTINGSDIALOG_H
85 |
--------------------------------------------------------------------------------
/RibbonFrame/widgets/navigatewidget.h:
--------------------------------------------------------------------------------
1 | #ifndef NAVIGATEWIDGET_H
2 | #define NAVIGATEWIDGET_H
3 |
4 | #include
5 | #include
6 | #include
7 |
8 | class QAbstractButton;
9 |
10 | class NavigateWidget : public QWidget
11 | {
12 | Q_OBJECT
13 | public:
14 | NavigateWidget(Qt::Orientation orientation, QWidget* parent = nullptr);
15 | void AddItem(const QString& name, const QIcon& icon = QIcon());
16 | QString GetItemName(int index);
17 | void AddSpacing();
18 | void SetCurItem(int index);
19 | int GetCurItem() const;
20 | int GetItemCount() const;
21 |
22 | signals:
23 | void curItemChanged(int index);
24 | void curItemChanged(const QString& text);
25 |
26 | private slots:
27 | void OnBtnClicked();
28 |
29 | private:
30 | QBoxLayout* m_pLayout;
31 | QBoxLayout* m_pBtnLayout;
32 | QList m_itemList;
33 | Qt::Orientation m_orientation;
34 | };
35 |
36 | class HorizontalNavigateWidget : public NavigateWidget
37 | {
38 | public:
39 | HorizontalNavigateWidget(QWidget* parent = nullptr)
40 | : NavigateWidget(Qt::Horizontal, parent)
41 | {}
42 | };
43 |
44 | class VerticalNavigateWidget : public NavigateWidget
45 | {
46 | public:
47 | VerticalNavigateWidget(QWidget* parent = nullptr)
48 | : NavigateWidget(Qt::Vertical, parent)
49 | {}
50 | };
51 |
52 | #endif // NAVIGATEWIDGET_H
53 |
--------------------------------------------------------------------------------
/RibbonFrameDemo.pro:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------
2 | #
3 | # Project created by Zhong Yang 22/10/28
4 | #
5 | #-------------------------------------------------
6 |
7 | TEMPLATE = subdirs
8 |
9 | SUBDIRS += RibbonFrame \
10 | RibbonUiTools \
11 | StylePlugin \
12 | TestModule \
13 | MainApp \
14 | OfficeStyleApp
15 |
16 | CONFIG += ordered
17 |
--------------------------------------------------------------------------------
/RibbonUiTools/GenerateResourceIdDefines/GenerateResourceIdDefines.pri:
--------------------------------------------------------------------------------
1 | SOURCES += \
2 | $$PWD/widget.cpp
3 |
4 | HEADERS += \
5 | $$PWD/widget.h
6 |
7 | FORMS += \
8 | $$PWD/widget.ui
9 |
--------------------------------------------------------------------------------
/RibbonUiTools/GenerateResourceIdDefines/widget.h:
--------------------------------------------------------------------------------
1 | #ifndef WIDGET_H
2 | #define WIDGET_H
3 |
4 | #include
5 |
6 | QT_BEGIN_NAMESPACE
7 | namespace Ui { class Widget; }
8 | QT_END_NAMESPACE
9 |
10 | namespace GenerateResourceIdDefines {
11 | class Widget : public QWidget
12 | {
13 | Q_OBJECT
14 |
15 | public:
16 | Widget(QWidget *parent = nullptr);
17 | ~Widget();
18 | void LoadConfig();
19 | void SaveConfig() const;
20 |
21 | private slots:
22 | void on_browseBtn_clicked();
23 |
24 | void on_generateBtn_clicked();
25 |
26 | void on_copyBtn_clicked();
27 |
28 | private:
29 | Ui::Widget *ui;
30 | };
31 |
32 | }
33 |
34 | #endif // WIDGET_H
35 |
--------------------------------------------------------------------------------
/RibbonUiTools/RibbonUiTools.pro:
--------------------------------------------------------------------------------
1 | QT += core gui xml
2 |
3 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
4 |
5 | CONFIG += c++11
6 |
7 | # The following define makes your compiler emit warnings if you use
8 | # any Qt feature that has been marked deprecated (the exact warnings
9 | # depend on your compiler). Please consult the documentation of the
10 | # deprecated API in order to know how to port your code away from it.
11 | DEFINES += QT_DEPRECATED_WARNINGS
12 |
13 | # You can also make your code fail to compile if it uses deprecated APIs.
14 | # In order to do so, uncomment the following line.
15 | # You can also select to disable deprecated APIs only up to a certain version of Qt.
16 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
17 |
18 | SOURCES += \
19 | main.cpp \
20 | mainwindow.cpp
21 |
22 | HEADERS += \
23 | mainwindow.h
24 |
25 | # Default rules for deployment.
26 | qnx: target.path = /tmp/$${TARGET}/bin
27 | else: unix:!android: target.path = /opt/$${TARGET}/bin
28 | !isEmpty(target.path): INSTALLS += target
29 |
30 | include($$PWD/GenerateResourceIdDefines/GenerateResourceIdDefines.pri)
31 |
32 | CONFIG(release, debug|release): {
33 | LIBS += -L$$PWD/../bin/release/ -lRibbonFrame
34 | DESTDIR = $$PWD/../bin/release
35 | }
36 | else:CONFIG(debug, debug|release): {
37 | LIBS += -L$$PWD/../bin/debug/ -lRibbonFrame
38 | DESTDIR = $$PWD/../bin/debug
39 | }
40 |
41 | INCLUDEPATH += $$PWD/../include
42 |
43 | RESOURCES += \
44 | ribbunuitools.qrc
45 |
--------------------------------------------------------------------------------
/RibbonUiTools/main.cpp:
--------------------------------------------------------------------------------
1 | #include "mainwindow.h"
2 |
3 | #include
4 |
5 | int main(int argc, char *argv[])
6 | {
7 | //Linux下禁用Qt自带的高DPI缩放,而是使用StylePlugin提供的高DPI缩放方案,避免高DPI下模糊的问题
8 | #if ((defined Q_OS_LINUX) && (QT_VERSION >= QT_VERSION_CHECK(5,6,0)))
9 | QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling);
10 | #endif
11 |
12 | QApplication a(argc, argv);
13 | MainWindow w;
14 | w.show();
15 | return a.exec();
16 | }
17 |
--------------------------------------------------------------------------------
/RibbonUiTools/mainwindow.cpp:
--------------------------------------------------------------------------------
1 | #include "mainwindow.h"
2 | #include
3 | #include
4 | #include "ribbonuipredefine.h"
5 |
6 | static MainWindow* pIns;
7 |
8 | ////////////////////////////////////////////////////////////////////////////
9 | MainWindow::MainWindow(QWidget *parent)
10 | : RibbonFrameWindow(parent, "://res/MainFrame.xml", true)
11 | {
12 | pIns = this;
13 | InitUi();
14 | SetDefaultWidget(&m_generateResIdDeninesWidget);
15 | resize(DPI(600), DPI(500));
16 |
17 | //获取TabWidget
18 | m_pTabWidget = findChild("MainFrameTab");
19 |
20 | QTimer::singleShot(50, this, SLOT(HideTabArea()));
21 |
22 | m_generateResIdDeninesWidget.LoadConfig();
23 | }
24 |
25 | MainWindow::~MainWindow()
26 | {
27 | m_generateResIdDeninesWidget.SaveConfig();
28 | }
29 |
30 | MainWindow *MainWindow::Instance()
31 | {
32 | return pIns;
33 | }
34 |
35 | void MainWindow::HideTabArea()
36 | {
37 | //将TabWidget的高度设置为标签的高度,即隐藏Tab功能区,只保留标签
38 | if (m_pTabWidget != nullptr)
39 | m_pTabWidget->setMaximumHeight(m_pTabWidget->tabBar()->height());
40 | }
41 |
42 |
43 | void *MainWindow::SendModuleMessage(const char *moduleName, const char *msgType, void *para1, void *para2)
44 | {
45 | Q_UNUSED(para2)
46 | if (QString(msgType) == MODULE_MSG_StyleChanged)
47 | {
48 | //主题更改时重新设置TabWidget的高度
49 | HideTabArea();
50 | }
51 | return RibbonFrameWindow::SendModuleMessage(moduleName, msgType, para1);
52 | }
53 |
--------------------------------------------------------------------------------
/RibbonUiTools/mainwindow.h:
--------------------------------------------------------------------------------
1 | #ifndef MAINWINDOW_H
2 | #define MAINWINDOW_H
3 |
4 | #include
5 | #include "ribbonframewindow.h"
6 | #include "GenerateResourceIdDefines/widget.h"
7 |
8 | class MainWindow : public RibbonFrameWindow
9 | {
10 | Q_OBJECT
11 |
12 | public:
13 | MainWindow(QWidget *parent = nullptr);
14 | ~MainWindow();
15 | static MainWindow* Instance();
16 |
17 | private slots:
18 | void HideTabArea();
19 |
20 | private:
21 |
22 | QTabWidget* m_pTabWidget;
23 | GenerateResourceIdDefines::Widget m_generateResIdDeninesWidget;
24 |
25 | // IMainFrame interface
26 | public:
27 | virtual void* SendModuleMessage(const char* moduleName, const char* msgType, void* para1, void* para2) override;
28 | };
29 | #endif // MAINWINDOW_H
30 |
--------------------------------------------------------------------------------
/RibbonUiTools/res/MainFrame.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/RibbonUiTools/res/color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/RibbonUiTools/res/color.png
--------------------------------------------------------------------------------
/RibbonUiTools/ribbunuitools.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | res/MainFrame.xml
4 | res/color.png
5 |
6 |
7 |
--------------------------------------------------------------------------------
/StylePlugin/StringHelper.cpp:
--------------------------------------------------------------------------------
1 | #include "StringHelper.h"
2 |
3 | int StringHelper::QStringFindFirstOf(const QString& str, const QString& findStr, int index)
4 | {
5 | if (index < 0)
6 | index = 0;
7 | for (int i = index; i < str.size(); i++)
8 | {
9 | if (findStr.contains(str[i]))
10 | return i;
11 | }
12 | return -1;
13 | }
14 |
15 | int StringHelper::QStringFindLastOf(const QString& str, const QString& findStr, int index)
16 | {
17 | if (index > str.size() - 1)
18 | index = str.size() - 1;
19 | for (int i = index; i >= 0; i-- )
20 | {
21 | if (findStr.contains(str[i]))
22 | return i;
23 | }
24 | return -1;
25 | }
26 |
27 | bool StringHelper::IsNumber(char ch)
28 | {
29 | return ch >= '0' && ch <= '9';
30 | }
31 |
32 | bool StringHelper::IsStringContainsForword(const QString& str, const QString& findStr, char stopChar, int index)
33 | {
34 | bool isContains = false;
35 | int stopIndex = -1;
36 | for (int i = index; i >= 0; i--)
37 | {
38 | if (str[i].toLatin1() == stopChar)
39 | {
40 | stopIndex = i;
41 | break;
42 | }
43 | }
44 | if (stopIndex >= 0)
45 | {
46 | QString midStr = str.mid(stopIndex + 1, index - stopIndex - 1);
47 | isContains = midStr.contains(findStr);
48 | }
49 | return isContains;
50 | }
51 |
--------------------------------------------------------------------------------
/StylePlugin/StringHelper.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 |
4 | class StringHelper
5 | {
6 | public:
7 | /**
8 | @brief 利用QString实现std::string中的find_fisrt_of函数的功能
9 | @param str - 被查找的字符串
10 | @param findStr - 要查找的字符串
11 | @param index - 查找的起始位置
12 | @retval - 查找到的位置
13 | **/
14 | static int QStringFindFirstOf(const QString& str, const QString& findStr, int index);
15 |
16 | /**
17 | @brief 利用QString实现std::string中的find_last_of函数的功能
18 | @param str - 被查找的字符串
19 | @param findStr - 要查找的字符串
20 | @param index - 查找的起始位置
21 | @retval - 查找到的位置
22 | **/
23 | static int QStringFindLastOf(const QString& str, const QString& findStr, int index);
24 |
25 | static bool IsNumber(char ch);
26 |
27 | /**
28 | @brief 对于字符串str,从index的位置开始向前查找,直到找到stopChar为止,判断这中间是否包含findStr
29 | @param str - 被查找的字符串
30 | @param findStr - 要查找的字符串
31 | @param stopChar - 查找结束的字符
32 | @param index - 查找的起始位置
33 | @retval - 是否包含要查找的字符串
34 | **/
35 | static bool IsStringContainsForword(const QString& str, const QString& findStr, char stopChar, int index);
36 | };
37 |
38 |
--------------------------------------------------------------------------------
/StylePlugin/StyleEventFilter.cpp:
--------------------------------------------------------------------------------
1 | #include "StyleEventFilter.h"
2 | #ifdef Q_OS_WIN
3 | #include
4 | #include
5 | #pragma comment(lib, "dwmapi.lib")
6 | #endif
7 | #include
8 | #include "styleplugin.h"
9 |
10 | /////////////////////////////////////////////////////////////////////////////////////////////////////////
11 | bool StyleEventFilter::nativeEventFilter(const QByteArray& eventType, void* message, long* result)
12 | {
13 | #ifdef Q_OS_WIN
14 | if (eventType == "windows_generic_MSG")
15 | {
16 | MSG* msg = static_cast(message);
17 | if (msg->message == WM_CREATE || msg->message == WM_INITDIALOG)
18 | {
19 | // 窗口创建时设置深色标题栏
20 | SetWindowDarkTheme(msg->hwnd, StylePlugin::Instance()->IsDarkTheme());
21 | }
22 | //// 监听主题切换事件
23 | //if (msg->message == WM_SETTINGCHANGE) {
24 | // if (msg->lParam && wcscmp(reinterpret_cast(msg->lParam), L"ImmersiveColorSet") == 0)
25 | // {
26 | // int a = 0;
27 | // }
28 | //}
29 | }
30 | #endif
31 | return false; // 返回 false,表示事件继续传递
32 | }
33 |
34 | void StyleEventFilter::SetWindowDarkTheme(void* hWnd, bool darkTheme)
35 | {
36 | #ifdef Q_OS_WIN
37 | BOOL darkMode = darkTheme;
38 | DwmSetWindowAttribute((HWND)hWnd, DWMWA_USE_IMMERSIVE_DARK_MODE, &darkMode, sizeof(darkMode));
39 | #endif
40 | }
41 |
--------------------------------------------------------------------------------
/StylePlugin/StyleEventFilter.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 |
5 | // 本地事件过滤器类
6 | class StyleEventFilter : public QAbstractNativeEventFilter
7 | {
8 | public:
9 | bool nativeEventFilter(const QByteArray& eventType, void* message, long* result) override;
10 |
11 | static void SetWindowDarkTheme(void* hWnd, bool darkTheme);
12 |
13 | };
14 |
--------------------------------------------------------------------------------
/StylePlugin/StylePlugin.pro:
--------------------------------------------------------------------------------
1 | QT += widgets
2 |
3 | TEMPLATE = lib
4 | DEFINES += STYLEPLUGIN_LIBRARY
5 |
6 | CONFIG += c++11 plugin
7 |
8 | # The following define makes your compiler emit warnings if you use
9 | # any Qt feature that has been marked deprecated (the exact warnings
10 | # depend on your compiler). Please consult the documentation of the
11 | # deprecated API in order to know how to port your code away from it.
12 | DEFINES += QT_DEPRECATED_WARNINGS
13 |
14 | # You can also make your code fail to compile if it uses deprecated APIs.
15 | # In order to do so, uncomment the following line.
16 | # You can also select to disable deprecated APIs only up to a certain version of Qt.
17 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
18 |
19 | SOURCES += \
20 | StringHelper.cpp \
21 | stylemanager.cpp \
22 | styleplugin.cpp \
23 | themecolor.cpp \
24 | StyleEventFilter.cpp
25 |
26 | HEADERS += \
27 | StringHelper.h \
28 | StylePlugin_global.h \
29 | stylemanager.h \
30 | styleplugin.h \
31 | themecolor.h \
32 | StyleEventFilter.h
33 |
34 | INCLUDEPATH += $$PWD/../include
35 |
36 | CONFIG(release, debug|release): {
37 | DESTDIR = $$PWD/../bin/release
38 | }
39 | else:CONFIG(debug, debug|release): {
40 | DESTDIR = $$PWD/../bin/debug
41 | }
42 |
43 | win32 {
44 | LIBS += -lAdvapi32
45 | }
46 |
47 | # Default rules for deployment.
48 | unix {
49 | target.path = /usr/lib
50 | }
51 | !isEmpty(target.path): INSTALLS += target
52 |
53 | RESOURCES += \
54 | qss.qrc
55 |
56 | RC_FILE += \
57 | StylePlugin.rc
58 |
--------------------------------------------------------------------------------
/StylePlugin/StylePlugin.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/StylePlugin.rc
--------------------------------------------------------------------------------
/StylePlugin/StylePlugin_global.h:
--------------------------------------------------------------------------------
1 | #ifndef STYLEPLUGIN_GLOBAL_H
2 | #define STYLEPLUGIN_GLOBAL_H
3 |
4 | #include
5 |
6 | #if defined(STYLEPLUGIN_LIBRARY)
7 | # define STYLEPLUGIN_EXPORT Q_DECL_EXPORT
8 | #else
9 | # define STYLEPLUGIN_EXPORT Q_DECL_IMPORT
10 | #endif
11 |
12 | #endif // STYLEPLUGIN_GLOBAL_H
13 |
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/bf/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/bf/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/black/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/black/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/blue/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/blue/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblack/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblack/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkblue/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkblue/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/darkgray/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/darkgray/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/default_style.qss:
--------------------------------------------------------------------------------
1 |
2 | QPushButton#MainFrameBtn{
3 | padding:2px;
4 | border:none;
5 | min-height:22px;
6 | min-width:64px;
7 | background:#2B579A;
8 | color:#ffffff;
9 | }
10 |
11 | QPushButton#MainFrameBtn::hover{
12 | background:#3164B1;
13 | }
14 |
15 | QPushButton#MainFrameBtn::pressed{
16 | background:#3164B1;
17 | }
18 |
19 | QPushButton#MainFrameBtn::menu-indicator{
20 | image:none;
21 | width:0px;
22 | }
23 |
24 | QWidget[nav="left"] QAbstractButton{
25 | min-height: 22px;
26 | }
27 |
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatblack/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatblack/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/flatwhite/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/flatwhite/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/gray/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/gray/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblack/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblack/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightblue/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightblue/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/lightgray/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/lightgray/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/arrow_down.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/arrow_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/arrow_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/arrow_up.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/branch_close_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/branch_close_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/branch_open_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/branch_open_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/checkbox.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/radiobutton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/radiobutton.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/spinDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/spinDown.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/spinUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/spinUp.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomin.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomin_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomin_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomin_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomin_pressed.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomout.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomout_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomout_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2010/zoomout_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2010/zoomout_pressed.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/arrow_down.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/arrow_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/arrow_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/arrow_up.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/branch_close_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/branch_close_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/branch_open_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/branch_open_hover.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/checkbox_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/checkbox_black.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/checkbox_parcial_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/checkbox_parcial_black.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/down.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/radiobutton_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/radiobutton_black.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2013/up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2013/up.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/branch_open_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/branch_open_white.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/checkbox_parcial_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/checkbox_parcial_white.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/checkbox_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/checkbox_white.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/downArrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/downArrow.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/downArrowWhite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/downArrowWhite.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/leftArrowWhite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/leftArrowWhite.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/radiobutton_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/radiobutton_white.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/rightArrowWhite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/rightArrowWhite.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/spinDownBtn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/spinDownBtn.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/spinUpBtn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/spinUpBtn.png
--------------------------------------------------------------------------------
/StylePlugin/qss/office2016/upArrowWhite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/office2016/upArrowWhite.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/psblack/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/psblack/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/silvery/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/silvery/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/add_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/add_bottom.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/add_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/add_left.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/add_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/add_right.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/add_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/add_top.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/branch_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/branch_close.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/branch_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/branch_open.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/calendar_nextmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/calendar_nextmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/calendar_prevmonth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/calendar_prevmonth.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_parcial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_parcial.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_parcial_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_parcial_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/checkbox_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/checkbox_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/radiobutton_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/radiobutton_checked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/radiobutton_checked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/radiobutton_checked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/radiobutton_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/radiobutton_unchecked.png
--------------------------------------------------------------------------------
/StylePlugin/qss/test/radiobutton_unchecked_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/test/radiobutton_unchecked_disable.png
--------------------------------------------------------------------------------
/StylePlugin/qss/windows10/checkbox_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/windows10/checkbox_black.png
--------------------------------------------------------------------------------
/StylePlugin/qss/windows10/radiobutton_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/qss/windows10/radiobutton_black.png
--------------------------------------------------------------------------------
/StylePlugin/res/dark_mode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/res/dark_mode.png
--------------------------------------------------------------------------------
/StylePlugin/res/light_mode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/res/light_mode.png
--------------------------------------------------------------------------------
/StylePlugin/res/office.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/res/office.png
--------------------------------------------------------------------------------
/StylePlugin/resource.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/StylePlugin/resource.h
--------------------------------------------------------------------------------
/StylePlugin/stylemanager.h:
--------------------------------------------------------------------------------
1 | #ifndef CSTYLEMANAGER_H
2 | #define CSTYLEMANAGER_H
3 |
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include "themecolor.h"
9 | #include
10 | #include
11 |
12 | class CStyleManager
13 | {
14 | public:
15 | static CStyleManager* Instance();
16 |
17 | class CStyle
18 | {
19 | public:
20 | enum StyleType
21 | {
22 | Light,
23 | Dark
24 | };
25 |
26 | CStyle(const QString& strPath, const QString name, StyleType type, bool bParsePaletteColor = true);
27 | /*
28 | * 函数说明: 为一个窗口应用样式表
29 | * 输入参数:
30 | * pWidget: 窗口的指针
31 | */
32 | void ApplyStyleSheet(QWidget* pWidget = nullptr, ThemeColor* pThemeColor = nullptr) const;
33 |
34 | /**
35 | @brief 对一个样式表中所有像素值根据系统DPI设定进行放大
36 | @param strStyle - 样式表
37 | **/
38 | static void StyleDpiChange(QString& strStyle);
39 |
40 | public:
41 | QString m_strName;
42 | StyleType m_type;
43 |
44 | private:
45 | QString m_strQss; //样式表
46 | QPalette m_palette; //调色板
47 | bool m_bParsePaletteColor;
48 | };
49 |
50 | void ApplyStyleSheet(const QString& styleName, QWidget* pWidget = nullptr, ThemeColor* pThemeColor = nullptr);
51 | QList> GetAllStyles();
52 | CStyle* GetStyle(const QString& styleName);
53 |
54 | //获取一个主题对应的深色主题
55 | CStyle* GetDarkStyle(const QString& styleName);
56 |
57 | //获取一个主题对应的浅色主题
58 | CStyle* GetLightStyle(const QString& styleName);
59 |
60 | //遍历所有主题
61 | //func返回true则终止遍历
62 | void IterateStyles(std::function)> func);
63 |
64 | static void ApplyQComboboxItemStyle(QComboBox* pCombobox);
65 |
66 | struct StylePair
67 | {
68 | std::shared_ptr lightStyle;
69 | std::shared_ptr darkStyle;
70 | };
71 |
72 | public:
73 | QList m_styleList;
74 | CStyle m_defaultStyle;
75 |
76 | private:
77 | CStyleManager();
78 | //添加一对主题
79 | void AddStylePair(const QString& lightStylePath, const QString& lightStyleName,
80 | const QString& darkStylePath = QString(), const QString& darkStyleName = QString());
81 |
82 | StylePair FindStylePair(const QString& styleName);
83 |
84 | static CStyleManager* m_instance;
85 | };
86 |
87 | #endif // CSTYLEMANAGER_H
88 |
--------------------------------------------------------------------------------
/StylePlugin/styleplugin.h:
--------------------------------------------------------------------------------
1 | #ifndef STYLEPLUGIN_H
2 | #define STYLEPLUGIN_H
3 |
4 | #include "StylePlugin_global.h"
5 | #include "moduleinterface.h"
6 | #include
7 | #include
8 | #include
9 | #include "themecolor.h"
10 | #include "StyleEventFilter.h"
11 | #include "styleinterface.h"
12 |
13 | class IMainFrame;
14 |
15 | class STYLEPLUGIN_EXPORT StylePlugin
16 | : public QObject, public IModule, public IRibbonStyle
17 | {
18 | Q_OBJECT
19 | public:
20 | StylePlugin();
21 | static StylePlugin* Instance();
22 | bool IsDarkTheme() const;
23 |
24 | // IModule interface
25 | public:
26 | virtual void InitInstance() override;
27 | virtual void UiInitComplete(IMainFrame *pMainFrame) override;
28 | virtual void UnInitInstance() override;
29 | eMainWindowType GetMainWindowType() const override ;
30 | virtual void* GetMainWindow() override;
31 | virtual const char* GetModuleName() override;
32 | virtual void OnCommand(const char* strCmd, bool checked) override;
33 | virtual void* OnMessage(const char* msgType, void* para1 = nullptr, void* para2 = nullptr) override;
34 |
35 | private:
36 | QAction* AddThemeAction(const QString& name, QMenu* pMenu);
37 | virtual void timerEvent(QTimerEvent* event) override;
38 |
39 | private slots:
40 | void OnStyleActionTriggered(bool);
41 | void OnThemeColorWord();
42 | void OnThemeColorExcel();
43 | void OnThemeColorPowerPoint();
44 | void OnThemeColorOneNote();
45 | void OnCustomThemeColor();
46 |
47 | private:
48 | QList m_themeActionList;
49 | IMainFrame* m_pMainFrame{};
50 | QString m_curStyle;
51 | QPalette m_defaultPalette;
52 | ThemeColor m_themeColor;
53 | QActionGroup* m_themeActionGroup{};
54 | QAction* m_followSystemColorAction{};
55 | QAction* m_followSystemColorModeAction{};
56 | int m_timerId{};
57 | StyleEventFilter darkTitleBarFilter;
58 |
59 | // 通过 IRibbonStyle 继承
60 | void GetAllStyleNames(QStringList& styleNames) override;
61 | QString GetCurrentStyle() override;
62 | void SetCurrentStyle(const QString& styleName) override;
63 | QColor GetThemeColor() override;
64 | void SetThemeColor(QColor color) override;
65 | void SetFollowingSystemThemeColor(bool followingSystemThemeColor) override;
66 | bool IsFollowingSystemThemeColor() override;
67 | void SetFollowingSystemColorMode(bool followingSystemColorMode) override;
68 | bool IsFollowingSystemColorMode() override;
69 | virtual bool IsStyleMatchSystemColorMode(const QString& styleName) override;
70 | };
71 |
72 | #ifdef __cplusplus
73 | extern "C" {
74 | #endif
75 |
76 | //导出一个名为CreateInstance的函数以创建对象
77 | STYLEPLUGIN_EXPORT IModule* CreateInstance();
78 |
79 | #ifdef __cplusplus
80 | }
81 | #endif
82 |
83 | #endif // STYLEPLUGIN_H
84 |
--------------------------------------------------------------------------------
/StylePlugin/themecolor.cpp:
--------------------------------------------------------------------------------
1 | #include "themecolor.h"
2 |
3 | ThemeColor::ThemeColor()
4 | {
5 |
6 | }
7 |
8 | void ThemeColor::SetColor(const QColor &color)
9 | {
10 | m_color = color;
11 | }
12 |
13 | void ThemeColor::ApplyThemeColor(QString &strStyleSheet) const
14 | {
15 | strStyleSheet.replace("@themeColorOri", OriginalColor().name());
16 | strStyleSheet.replace("@themeColor0", Color0().name());
17 | strStyleSheet.replace("@themeColorLighter1", Lighter1().name());
18 | strStyleSheet.replace("@themeColorLighter2", Lighter2().name());
19 | strStyleSheet.replace("@themeColorLighter3", Lighter3().name());
20 | strStyleSheet.replace("@themeColorLighter4", Lighter4().name());
21 | strStyleSheet.replace("@themeColorDarker1", Darker1().name());
22 | strStyleSheet.replace("@themeColorDarker2", Darker2().name());
23 | strStyleSheet.replace("@themeColorDarker3", Darker3().name());
24 | strStyleSheet.replace("@themeColorDarker4", Darker4().name());
25 | }
26 |
27 | QColor ThemeColor::OriginalColor() const
28 | {
29 | return m_color;
30 | }
31 |
32 | QColor ThemeColor::Color0() const
33 | {
34 | return ChangeLightness(128);
35 | }
36 |
37 | QColor ThemeColor::Lighter1() const
38 | {
39 | return ChangeLightness(154);
40 | }
41 |
42 | QColor ThemeColor::Lighter2() const
43 | {
44 | return ChangeLightness(180);
45 | }
46 |
47 | QColor ThemeColor::Lighter3() const
48 | {
49 | return ChangeLightness(206);
50 | }
51 |
52 | QColor ThemeColor::Lighter4() const
53 | {
54 | return ChangeLightness(232);
55 | }
56 |
57 | QColor ThemeColor::Darker1() const
58 | {
59 | return ChangeLightness(102);
60 | }
61 |
62 | QColor ThemeColor::Darker2() const
63 | {
64 | return ChangeLightness(76);
65 | }
66 |
67 | QColor ThemeColor::Darker3() const
68 | {
69 | return ChangeLightness(50);
70 | }
71 |
72 | QColor ThemeColor::Darker4() const
73 | {
74 | return ChangeLightness(24);
75 | }
76 |
77 | QColor ThemeColor::ChangeLightness(int lightness) const
78 | {
79 | int h, s, l;
80 | m_color.getHsl(&h, &s, &l);
81 | QColor newColor;
82 | newColor.setHsl(h, s, lightness);
83 | return newColor;
84 | }
85 |
--------------------------------------------------------------------------------
/StylePlugin/themecolor.h:
--------------------------------------------------------------------------------
1 | #ifndef THEMECOLOR_H
2 | #define THEMECOLOR_H
3 | #include
4 |
5 | class ThemeColor
6 | {
7 | public:
8 | ThemeColor();
9 | void SetColor(const QColor& color);
10 |
11 | void ApplyThemeColor(QString& strStyleSheet) const;
12 |
13 | QColor OriginalColor() const; //原始主题色
14 | QColor Color0() const; //亮度为128的颜色
15 | QColor Lighter1() const;
16 | QColor Lighter2() const;
17 | QColor Lighter3() const;
18 | QColor Lighter4() const;
19 | QColor Darker1() const;
20 | QColor Darker2() const;
21 | QColor Darker3() const;
22 | QColor Darker4() const;
23 |
24 | /**
25 | * @brief 更改当前主题色的亮度值
26 | * @param[in] lightness 新的亮度值
27 | * @return 更改亮度值后的颜色
28 | */
29 | QColor ChangeLightness(int lightness) const;
30 |
31 | private:
32 | QColor m_color; //当前主题色
33 | };
34 |
35 | #endif // THEMECOLOR_H
36 |
--------------------------------------------------------------------------------
/TestModule/Common.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 |
4 | class CCommon
5 | {
6 | public:
7 | static QString GetStandardIconDescription(int iconIndex);
8 |
9 | };
10 |
11 |
--------------------------------------------------------------------------------
/TestModule/TestModule.pro:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------
2 | #
3 | # Project created by QtCreator 2021-03-24T17:35:25
4 | #
5 | #-------------------------------------------------
6 |
7 | QT += widgets
8 |
9 | CONFIG += c++11 plugin
10 |
11 | TARGET = TestModule
12 | TEMPLATE = lib
13 |
14 | DEFINES += TESTMODULE_LIBRARY
15 |
16 | # The following define makes your compiler emit warnings if you use
17 | # any feature of Qt which as been marked as deprecated (the exact warnings
18 | # depend on your compiler). Please consult the documentation of the
19 | # deprecated API in order to know how to port your code away from it.
20 | DEFINES += QT_DEPRECATED_WARNINGS
21 |
22 | # You can also make your code fail to compile if you use deprecated APIs.
23 | # In order to do so, uncomment the following line.
24 | # You can also select to disable deprecated APIs only up to a certain version of Qt.
25 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
26 |
27 | SOURCES += \
28 | mainwidget.cpp \
29 | testmodule.cpp \
30 | Common.cpp \
31 | widgets/navigatewidget.cpp
32 |
33 | HEADERS += \
34 | mainwidget.h \
35 | testmodule.h \
36 | testmodule_global.h \
37 | Common.h \
38 | widgets/navigatewidget.h
39 |
40 | INCLUDEPATH += $$PWD/../include \
41 | $$PWD/widgets
42 |
43 | CONFIG(release, debug|release): {
44 | DESTDIR = $$PWD/../bin/release
45 | }
46 | else:CONFIG(debug, debug|release): {
47 | DESTDIR = $$PWD/../bin/debug
48 | }
49 |
50 | unix {
51 | target.path = /usr/lib
52 | INSTALLS += target
53 | }
54 |
55 | FORMS += \
56 | mainwidget.ui
57 |
58 | RESOURCES += \
59 | resource.qrc
60 |
--------------------------------------------------------------------------------
/TestModule/mainwidget.h:
--------------------------------------------------------------------------------
1 | #ifndef MAINWIDGET_H
2 | #define MAINWIDGET_H
3 |
4 | #include
5 |
6 | namespace Ui {
7 | class CMainWidget;
8 | }
9 |
10 | class CMainWidget : public QMainWindow
11 | {
12 | Q_OBJECT
13 |
14 | public:
15 | explicit CMainWidget(QMainWindow *parent = nullptr);
16 | ~CMainWidget();
17 |
18 | private:
19 | void InitSytemIcon();
20 |
21 | private slots:
22 | void on_btnInfo_clicked();
23 |
24 | void on_btnQuestion_clicked();
25 |
26 | void on_btnError_clicked();
27 |
28 | void on_btnInput_clicked();
29 |
30 | void on_btnFont_clicked();
31 |
32 | void on_btnColor_clicked();
33 |
34 | void OnIconBtnClicked(bool);
35 |
36 | void OnNavChanged(const QString& text);
37 |
38 | private:
39 | Ui::CMainWidget *ui;
40 | };
41 |
42 | #endif // MAINWIDGET_H
43 |
--------------------------------------------------------------------------------
/TestModule/res/Template.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/TestModule/res/Template.png
--------------------------------------------------------------------------------
/TestModule/resource.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | res/Template.png
4 |
5 |
6 |
--------------------------------------------------------------------------------
/TestModule/testmodule.cpp:
--------------------------------------------------------------------------------
1 | #include "testmodule.h"
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include
7 | #include "mainframeinterface.h"
8 | #include
9 | #include
10 | #include
11 | #include
12 | #include
13 | #include "ribbonuipredefine.h"
14 |
15 | static TestModule* pIns = nullptr;
16 | TestModule::TestModule()
17 | {
18 | }
19 |
20 | TestModule *TestModule::Instance()
21 | {
22 | return pIns;
23 | }
24 |
25 | void TestModule::SetStatusBarText(const QString &text, int timeOut)
26 | {
27 | if (m_pMainFrame != nullptr)
28 | m_pMainFrame->SetStatusBarText(text.toUtf8().constData(), timeOut);
29 | }
30 |
31 |
32 | void TestModule::InitInstance()
33 | {
34 | }
35 |
36 | void TestModule::UnInitInstance()
37 | {
38 | }
39 |
40 | void TestModule::UiInitComplete(IMainFrame *pMainFrame)
41 | {
42 | m_pMainFrame = pMainFrame;
43 | pMainFrame->SetItemEnable("TestCommand13", false);
44 | }
45 |
46 | void* TestModule::GetMainWindow()
47 | {
48 | return &m_mainWidget;
49 | }
50 |
51 | const char* TestModule::GetModuleName()
52 | {
53 | return "TestModule";
54 | }
55 |
56 | void TestModule::OnCommand(const char* strCmd, bool checked)
57 | {
58 | QString itemText = QString::fromUtf8(m_pMainFrame->GetItemText(strCmd));
59 | QString str = QSTR("你点击了按钮“%1”,id=%2,checked=%3").arg(itemText).arg(strCmd).arg(checked);
60 | //QMessageBox::information(&m_mainWidget, QString(), str, QMessageBox::Ok);
61 | m_pMainFrame->SetStatusBarText(str.toUtf8().constData(), 15000);
62 | }
63 |
64 | IModule* CreateInstance()
65 | {
66 | pIns = new TestModule();
67 | return pIns;
68 | }
69 |
70 | void* TestModule::CreateUserWidget(const char* strId, void* pParent)
71 | {
72 | //初始化自定义控件
73 | if (QString::fromUtf8(strId) == "UserWidget1")
74 | {
75 | QDateEdit* pWidget = new QDateEdit((QWidget*)pParent);
76 | pWidget->setCalendarPopup(true);
77 | return pWidget;
78 | }
79 | return nullptr;
80 | }
81 |
82 | IModule::eMainWindowType TestModule::GetMainWindowType() const
83 | {
84 | return IModule::MT_QWIDGET;
85 | }
86 |
87 | void TestModule::OnItemChanged(const char* strId, int index, const char* text)
88 | {
89 | QString str = QSTR("触发控件消息:id=%1,index=%2,text=%3").arg(QString::fromUtf8(strId)).arg(index).arg(QString::fromUtf8(text));
90 | m_pMainFrame->SetStatusBarText(str.toUtf8().constData(), 15000);
91 | }
92 |
--------------------------------------------------------------------------------
/TestModule/testmodule.h:
--------------------------------------------------------------------------------
1 | #ifndef TESTMODULE_H
2 | #define TESTMODULE_H
3 |
4 | #include "testmodule_global.h"
5 | #include "moduleinterface.h"
6 |
7 | #include
8 | #include "mainframeinterface.h"
9 | #include "mainwidget.h"
10 |
11 | class TESTMODULESHARED_EXPORT TestModule
12 | : public QObject, public IModule
13 | {
14 | public:
15 | TestModule();
16 | static TestModule* Instance();
17 |
18 | void SetStatusBarText(const QString& text, int timeOut);
19 |
20 | private:
21 | CMainWidget m_mainWidget;
22 | IMainFrame* m_pMainFrame;
23 |
24 | // IModule interface
25 | public:
26 | virtual void InitInstance() override;
27 | virtual void UnInitInstance() override;
28 | virtual void UiInitComplete(IMainFrame* pMainFrame) override;
29 | virtual void* GetMainWindow() override;
30 | virtual const char* GetModuleName() override;
31 | virtual void OnCommand(const char* strCmd, bool checked) override;
32 | virtual void* CreateUserWidget(const char* strId, void* pParent = nullptr) override;
33 | virtual eMainWindowType GetMainWindowType() const override;
34 | void OnItemChanged(const char* strId, int index, const char* text) override;
35 | };
36 |
37 | #ifdef __cplusplus
38 | extern "C" {
39 | #endif
40 |
41 | //导出一个名为CreateInstance的函数以创建对象
42 | TESTMODULESHARED_EXPORT IModule* CreateInstance();
43 |
44 | #ifdef __cplusplus
45 | }
46 | #endif
47 |
48 | #endif // TESTMODULE_H
49 |
--------------------------------------------------------------------------------
/TestModule/testmodule_global.h:
--------------------------------------------------------------------------------
1 | #ifndef TESTMODULE_GLOBAL_H
2 | #define TESTMODULE_GLOBAL_H
3 |
4 | #include
5 |
6 | #if defined(TESTMODULE_LIBRARY)
7 | # define TESTMODULESHARED_EXPORT Q_DECL_EXPORT
8 | #else
9 | # define TESTMODULESHARED_EXPORT Q_DECL_IMPORT
10 | #endif
11 |
12 | #endif // TESTMODULE_GLOBAL_H
13 |
--------------------------------------------------------------------------------
/TestModule/widgets/navigatewidget.h:
--------------------------------------------------------------------------------
1 | #ifndef NAVIGATEWIDGET_H
2 | #define NAVIGATEWIDGET_H
3 |
4 | #include
5 | #include
6 | #include
7 |
8 | class QAbstractButton;
9 |
10 | class NavigateWidget : public QWidget
11 | {
12 | Q_OBJECT
13 | public:
14 | NavigateWidget(Qt::Orientation orientation, QWidget* parent = nullptr);
15 | void AddItem(const QString& name, const QIcon& icon = QIcon());
16 | QString GetItemName(int index);
17 | void AddSpacing();
18 | void SetCurItem(int index);
19 | int GetCurItem() const;
20 |
21 | signals:
22 | void curItemChanged(int index);
23 | void curItemChanged(const QString& text);
24 |
25 | private slots:
26 | void OnBtnClicked();
27 |
28 | private:
29 | QBoxLayout* m_pLayout;
30 | QBoxLayout* m_pBtnLayout;
31 | QList m_itemList;
32 | Qt::Orientation m_orientation;
33 | };
34 |
35 | class HorizontalNavigateWidget : public NavigateWidget
36 | {
37 | public:
38 | HorizontalNavigateWidget(QWidget* parent = nullptr)
39 | : NavigateWidget(Qt::Horizontal, parent)
40 | {}
41 | };
42 |
43 | class VerticalNavigateWidget : public NavigateWidget
44 | {
45 | public:
46 | VerticalNavigateWidget(QWidget* parent = nullptr)
47 | : NavigateWidget(Qt::Vertical, parent)
48 | {}
49 | };
50 |
51 | #endif // NAVIGATEWIDGET_H
52 |
--------------------------------------------------------------------------------
/images/image-20230826193445586.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20230826193445586.png
--------------------------------------------------------------------------------
/images/image-20230827182536244.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20230827182536244.png
--------------------------------------------------------------------------------
/images/image-20231020104135873.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20231020104135873.png
--------------------------------------------------------------------------------
/images/image-20231020104440439.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20231020104440439.png
--------------------------------------------------------------------------------
/images/image-20231020105002953.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20231020105002953.png
--------------------------------------------------------------------------------
/images/image-20231020105039839.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20231020105039839.png
--------------------------------------------------------------------------------
/images/image-20231025091155934.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/image-20231025091155934.png
--------------------------------------------------------------------------------
/images/theme-color-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zhongyang219/RibbonUiFrame/21f1ceb483fc910a97ba7dd63f086b66314dca80/images/theme-color-example.png
--------------------------------------------------------------------------------
/include/mainframe_global.h:
--------------------------------------------------------------------------------
1 | #ifndef MAINFRAME_GLOBAL_H
2 | #define MAINFRAME_GLOBAL_H
3 |
4 | #include
5 |
6 | #if defined(RIBBONFRAME_LIBRARY)
7 | # define RIBBONFRAME_EXPORT Q_DECL_EXPORT
8 | #else
9 | # define RIBBONFRAME_EXPORT Q_DECL_IMPORT
10 | #endif
11 |
12 | #endif // TMAINFRAME_GLOBAL_H
13 |
--------------------------------------------------------------------------------
/include/moduleinterface.h:
--------------------------------------------------------------------------------
1 | #ifndef MODULEINTERFACE
2 | #define MODULEINTERFACE
3 |
4 | class IMainFrame;
5 |
6 | //模块接口,所有需要被框架加载的项目都要实现此接口
7 | //接口中所有const char*类型均为UTF8编码。
8 | class IModule
9 | {
10 | public:
11 | IModule() {}
12 |
13 | virtual ~IModule() {}
14 |
15 | //定义返回的窗口的类型
16 | enum eMainWindowType
17 | {
18 | MT_QWIDGET, //QWidget类型的指针
19 | MT_HWND, //HWND
20 | };
21 |
22 | //模块被加载后由框架调用
23 | virtual void InitInstance() = 0;
24 |
25 | //模块被析构前由框架调用
26 | virtual void UnInitInstance() = 0;
27 |
28 | /**
29 | * @brief 界面加载完成后由框架调用,并向模块传递框架接口的指针
30 | * @param[in] pMainFrame 框架接口的指针
31 | */
32 | virtual void UiInitComplete(IMainFrame* pMainFrame) {}
33 |
34 | /**
35 | * @brief 获取模块的主窗口
36 | * @details 当切换到该模块的标签时,此窗口会被显示到MainFrame中。可以返回空指针。
37 | * @return 根据GetMainWindowType的返回值返回主模块主窗口的QWidget对象的指针或HWND句柄
38 | */
39 | virtual void* GetMainWindow() = 0;
40 |
41 | //获取返回的主窗口的类型
42 | virtual eMainWindowType GetMainWindowType() const = 0;
43 |
44 | //获取模块名称
45 | virtual const char* GetModuleName() = 0;
46 |
47 | /**
48 | * @brief 当主窗口触发了一个命令时由框架调用
49 | * @param[in] strCmd:命令的ID
50 | * @param[in] checked:命令按钮是否被选中
51 | */
52 | virtual void OnCommand(const char* strCmd, bool checked) = 0;
53 |
54 | /**
55 | * @brief 响应Ribbon标签中Combox或ListWidget当前选中项改变,或LineEdit或TextEdit文本改变
56 | * @param[in] strId: 命令的ID
57 | * @param[in] index: 选中项的序号
58 | * @param[in] text: 选中项的文本
59 | */
60 | virtual void OnItemChanged(const char* strId, int index, const char* text) {}
61 |
62 | /**
63 | * @brief 向模块发送一个消息,用于在同一个进程之间的各个模块发送消息
64 | * @param[in] msgType 消息类型
65 | * @param[in] msgData 消息体
66 | * @return 返回的数据(如果需要的话)
67 | */
68 | virtual void* OnMessage(const char* msgType, void* para1 = nullptr, void* para2 = nullptr) { return nullptr; }
69 |
70 | //当主窗口中切换到模块的标签页时响应
71 | virtual void OnTabEntered() {}
72 |
73 | /**
74 | * @brief 程序在退出前由框架调用
75 | */
76 | virtual void OnAppExit() {}
77 |
78 | /**
79 | * @brief 创建一个用户自定义控件(仅Qt模块支持此接口)
80 | * @note 当xml中使用了UserWidget节点时此函数会被框架调用以创建自定义控件,模块中根据id创建对应的控件,并返回其指针。
81 | * @param[in] strId 控件的id
82 | * @param[in] pParent 控件的父窗口(QWidget指针)
83 | * @return 创建的控件(QWidget指针)
84 | */
85 | virtual void* CreateUserWidget(const char* strId, void* pParent = nullptr) { return nullptr; }
86 |
87 | };
88 |
89 | //一个形如IModule* func()的函数的指针
90 | //模块实现IModule接口后,还应该导出一个名为“CreateInstance”的函数以创建对象,创建的对象由框架负责释放
91 | #if defined(WIN32) || defined(WIN64)
92 | typedef IModule* (__stdcall *pfCreateModuleInstance)();
93 | #else
94 | typedef IModule* (*pfCreateModuleInstance)();
95 | #endif
96 |
97 | #endif // MODULEINTERFACE
98 |
99 |
--------------------------------------------------------------------------------
/include/ribbonuipredefine.h:
--------------------------------------------------------------------------------
1 | #ifndef RIBBONUIPREDEFINE_H
2 | #define RIBBONUIPREDEFINE_H
3 |
4 | #include
5 | #include
6 |
7 | //使用Unicode方式从字面值创建QString对象,以避免中文出现乱码
8 | #define QSTR(str) QString::fromWCharArray(L ## str)
9 |
10 | #define SCOPE_NAME "Apps By ZhongYang"
11 |
12 | //命令id定义
13 | #define CMD_AppExit "AppExit"
14 | #define CMD_AppAboutQt "AppAboutQt"
15 | #define CMD_RibbonPin "RibbonPin"
16 | #define CMD_RibbonOptions "RibbonOptions"
17 | #define CMD_DefaultStyle "DefaultStyle"
18 | #define CMD_ModuleManager "ModuleManager"
19 |
20 | //模块消息定义
21 | #define MODULE_MSG_GetStyleType "GetStyleType" //获取当前主题样式类别,向StylePlugin模块发送,返回CStyleManager::StyleType类型
22 | #define MODULE_MSG_GetStyleName "GetStyleName" //获取当前主题样式名称,向StylePlugin模块发送,返回const char*类型
23 | #define MODULE_MSG_IsDarkTheme "IsDarkTheme" //获取当前主题是否为深色主题,向StylePlugin模块发送,返回bool类型
24 | #define MODULE_MSG_StyleChanged "StyleChanged" //由StylePlugin模块发出,通知主题样式已改变。para1:样式名称,const char*类型
25 | #define MODULE_MSG_SetThemeColor "SetThemeColor" //设置当前主题颜色,向StylePlugin模块发送,参数为主题颜色,const char*类型,主题颜色的十六进制值,如#557eef,可以通过QColor::name函数得到
26 |
27 | #include
28 | #include
29 |
30 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
31 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
32 | //将一个像素值根据当前屏幕DPI设置进行等比放大
33 | static int DPI(int x)
34 | {
35 | #if (QT_VERSION >= QT_VERSION_CHECK(6,0,0))
36 | return x;
37 | #else
38 | return QGuiApplication::primaryScreen()->logicalDotsPerInch() * x / 96;
39 | #endif
40 | }
41 |
42 |
43 | #define ICON_SIZE DPI(24) //大图标的尺寸
44 | #define ICON_SIZE_S DPI(16) //小图标的尺寸(工具栏上的小图标以及菜单图标)
45 |
46 | //ActionGroup选项按钮的尺寸
47 | #ifdef Q_OS_WIN
48 | #define ACTION_GROUP_OPTION_BTN_SIZE DPI(16)
49 | #else
50 | #define ACTION_GROUP_OPTION_BTN_SIZE DPI(18)
51 | #endif
52 |
53 | //ActionGroup选项按钮图标的尺寸
54 | #ifdef Q_OS_WIN
55 | #define ACTION_GROUP_OPTION_ICON_SIZE DPI(8)
56 | #else
57 | #define ACTION_GROUP_OPTION_ICON_SIZE DPI(10)
58 | #endif
59 |
60 | #define MAX_SMALL_ICON_COLUMN 2 //一列小图标的最大数量
61 | #ifdef Q_OS_WIN
62 | #define MAX_WIDGET_HEIGHT DPI(10 + MAX_SMALL_ICON_COLUMN * 18)
63 | #else
64 | #define MAX_WIDGET_HEIGHT DPI(16 + MAX_SMALL_ICON_COLUMN * 24)
65 | #endif
66 |
67 | #endif // RIBBONUIPREDEFINE_H
68 |
--------------------------------------------------------------------------------
/include/styleinterface.h:
--------------------------------------------------------------------------------
1 | #ifndef RIBBONSTYLE_INTERFACE
2 | #define RIBBONSTYLE_INTERFACE
3 |
4 | #include
5 | #include
6 |
7 | class IRibbonStyle
8 | {
9 | public:
10 | virtual void GetAllStyleNames(QStringList& styleNames) = 0;
11 |
12 | virtual QString GetCurrentStyle() = 0;
13 | virtual void SetCurrentStyle(const QString& styleName) = 0;
14 |
15 | virtual QColor GetThemeColor() = 0;
16 | virtual void SetThemeColor(QColor color) = 0;
17 |
18 | virtual void SetFollowingSystemThemeColor(bool followingSystemThemeColor) = 0;
19 | virtual bool IsFollowingSystemThemeColor() = 0;
20 |
21 | virtual void SetFollowingSystemColorMode(bool followingSystemColorMode) = 0;
22 | virtual bool IsFollowingSystemColorMode() = 0;
23 |
24 | //判断一个主题是否匹配当前系统深色/浅色主题
25 | virtual bool IsStyleMatchSystemColorMode(const QString& styleName) = 0;
26 | };
27 |
28 | #endif
--------------------------------------------------------------------------------