├── .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 | 3 | 4 | 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 --------------------------------------------------------------------------------