diff --git a/build_num b/build_num index 4bda6eee9..1dba3f6b1 100644 --- a/build_num +++ b/build_num @@ -1 +1 @@ -#define BUILD_NUM 1521 +#define BUILD_NUM 1522 diff --git a/src/gui/FWBMainWindow_q.ui b/src/gui/FWBMainWindow_q.ui index 5462bfd15..af74f0e51 100644 --- a/src/gui/FWBMainWindow_q.ui +++ b/src/gui/FWBMainWindow_q.ui @@ -1,10 +1,11 @@ - + + FWBMainWindow_q - - + + true - + 0 0 @@ -12,734 +13,734 @@ 719 - - + + 0 0 - + 0 0 - + Firewall Builder - - + + :/Images/fwbuilder3.png:/Images/fwbuilder3.png - - - + + + 0 - + 0 - - + + Qt::Horizontal - + TopToolBarArea - + false - - - - - - - + + + + + + + - - + + 0 0 741 - 22 + 26 - - + + &Edit - - - - - - - - - - + + + + + + + + + + - - + + Object - - - - - + + + + + - - + + Tools - - + + - - + + &Help - - - - + + + + - - + + Rules - - - - - - - - - - - - + + + + + + + + + + + + - - + + &File - - + + Open Recent - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + Window - - - - - - - + + + + + + + - - + + true - + - + &New Object File - + New Object File - - + + - + &Open... - + Open - + Ctrl+O - - + + - + &Save - + Save - + Ctrl+S - - + + Save &As... - + Save As - + - - + + true - + &Print... - + Print - + Ctrl+P - - + + E&xit - + Exit - + - - + + false - + &Undo - + Undo - + Ctrl+Z - - + + false - + &Redo - + Redo - + Ctrl+Y - - + + &Cut - + Cut - + Ctrl+X - - + + false - + C&opy - + Copy - + Ctrl+C - - + + &Paste - + Paste - + Ctrl+V - - + + - + - + Ctrl+F - - + + &Contents... - + Contents - + - - + + &Index... - + Index - + - - + + &About - + About - + - - + + newfile_25.pngnewfile_25.png - + New - + New - - - + + + :/Icons/openfile_25.png:/Icons/openfile_25.png - + Open - + Open - - - + + + :/Icons/save_25.png:/Icons/save_25.png - + Save - + Save - - + + &Close - + Close - - - + + + :/Icons/compile_25.png:/Icons/compile_25.png - + Compile - + Compile - + Compile rules - - - + + + :/Icons/install_25.png:/Icons/install_25.png - + Install - + Install - + Install firewall policy - - + + false - + back_25.pngback_25.png - + Back - + Back - + Move back to the previous object - + Move back to the previous object - - + + - + &New Object - + New Object - + Create New Object - + Ctrl+N - - - + + + :/Icons/search_25.png:/Icons/search_25.png - + &Find Object - + Find Object - + Find object in the tree - + Find object in the tree - + Ctrl+F - - + + P&references... - + Preferences... - + Edit Preferences - - + + Insert Rule - + Insert Rule - - + + Move Rule Up - + Move Rule Up - - + + Move Rule Down - + Move Rule Down - - + + Add Rule Below - + Add Rule Below - - + + Remove Rule - + Remove Rule - + Ctrl+Del - - + + Copy Rule - + Copy Rule - - + + Cut Rule - + Cut Rule - - + + Paste Rule Above - + Paste Rule Above - - + + Paste Rule Below - + Paste Rule Below - - + + Add File to &RCS - + Add File to RCS - - + + Delete - + Delete - - + + &Export Library - + Export Library To a File - - + + Import &Library - + Import Library From a File - - + + &Debug - + Debug - - + + Propert&ies - + Propert&ies - + Show File Properties - + Ctrl+I - - + + Move Selected Rules - + Move Selected Rules - - + + &Discard - + Discard - + Discard Changes and Overwrite With Clean Copy Of The Head Revision From RCS - - + + Co&mmit - + Commit - + Commit Opened File to RCS and Continue Editing - - + + Lock - + Lock - - + + Unlock - + Unlock - - + + Discovery Druid - + Discovery Druid - - + + new item - + new item - - + + Find Conflicting Objects in Two Files - + Find Conflicting Objects in Two Files - - + + Import Po&licy - + Import Policy - - + + Firewall Builder Help - - + + true - + Clear Menu - + New Object File - - + + Release Notes - + - + @@ -748,11 +749,11 @@ FWBMainWindow_q addRuleAfterCurrent() - + -1 -1 - + 20 20 @@ -764,11 +765,11 @@ FWBMainWindow_q fileAddToRCS() - + -1 -1 - + 20 20 @@ -780,11 +781,11 @@ FWBMainWindow_q compile() - + -1 -1 - + 20 20 @@ -796,11 +797,11 @@ FWBMainWindow_q copyRule() - + -1 -1 - + 20 20 @@ -812,11 +813,11 @@ FWBMainWindow_q cutRule() - + -1 -1 - + 20 20 @@ -828,11 +829,11 @@ FWBMainWindow_q debug() - + -1 -1 - + 20 20 @@ -844,11 +845,11 @@ FWBMainWindow_q toolsDiscoveryDruid() - + -1 -1 - + 20 20 @@ -860,11 +861,11 @@ FWBMainWindow_q editCopy() - + -1 -1 - + 20 20 @@ -876,11 +877,11 @@ FWBMainWindow_q editCut() - + -1 -1 - + 20 20 @@ -892,11 +893,11 @@ FWBMainWindow_q editDelete() - + -1 -1 - + 20 20 @@ -908,11 +909,11 @@ FWBMainWindow_q editFind() - + -1 -1 - + 20 20 @@ -924,11 +925,11 @@ FWBMainWindow_q editPaste() - + -1 -1 - + 20 20 @@ -940,11 +941,11 @@ FWBMainWindow_q editPrefs() - + -1 -1 - + 20 20 @@ -956,11 +957,11 @@ FWBMainWindow_q editRedo() - + -1 -1 - + 20 20 @@ -972,11 +973,11 @@ FWBMainWindow_q editUndo() - + -1 -1 - + 20 20 @@ -988,11 +989,11 @@ FWBMainWindow_q fileClose() - + -1 -1 - + 20 20 @@ -1004,11 +1005,11 @@ FWBMainWindow_q fileCommit() - + -1 -1 - + 20 20 @@ -1020,11 +1021,11 @@ FWBMainWindow_q fileCompare() - + -1 -1 - + 20 20 @@ -1036,11 +1037,11 @@ FWBMainWindow_q fileDiscard() - + -1 -1 - + 20 20 @@ -1052,11 +1053,11 @@ FWBMainWindow_q fileExit() - + -1 -1 - + 20 20 @@ -1068,11 +1069,11 @@ FWBMainWindow_q fileNew() - + -1 -1 - + 20 20 @@ -1084,11 +1085,11 @@ FWBMainWindow_q fileOpen() - + -1 -1 - + 20 20 @@ -1100,11 +1101,11 @@ FWBMainWindow_q filePrint() - + -1 -1 - + 20 20 @@ -1116,11 +1117,11 @@ FWBMainWindow_q fileProp() - + -1 -1 - + 20 20 @@ -1132,11 +1133,11 @@ FWBMainWindow_q fileSave() - + -1 -1 - + 20 20 @@ -1148,11 +1149,11 @@ FWBMainWindow_q fileSaveAs() - + -1 -1 - + 20 20 @@ -1164,11 +1165,11 @@ FWBMainWindow_q helpAbout() - + -1 -1 - + 20 20 @@ -1180,11 +1181,11 @@ FWBMainWindow_q helpContents() - + -1 -1 - + 20 20 @@ -1196,11 +1197,11 @@ FWBMainWindow_q helpIndex() - + -1 -1 - + 20 20 @@ -1212,11 +1213,11 @@ FWBMainWindow_q insertRule() - + -1 -1 - + 20 20 @@ -1228,11 +1229,11 @@ FWBMainWindow_q install() - + -1 -1 - + 20 20 @@ -1244,11 +1245,11 @@ FWBMainWindow_q fileExport() - + -1 -1 - + 20 20 @@ -1260,11 +1261,11 @@ FWBMainWindow_q fileImport() - + -1 -1 - + 20 20 @@ -1276,11 +1277,11 @@ FWBMainWindow_q moveRule() - + -1 -1 - + 20 20 @@ -1292,11 +1293,11 @@ FWBMainWindow_q moveRuleUp() - + -1 -1 - + 20 20 @@ -1308,11 +1309,11 @@ FWBMainWindow_q newObject() - + -1 -1 - + 20 20 @@ -1324,11 +1325,11 @@ FWBMainWindow_q lockObject() - + -1 -1 - + 20 20 @@ -1340,11 +1341,11 @@ FWBMainWindow_q unlockObject() - + -1 -1 - + 20 20 @@ -1356,11 +1357,11 @@ FWBMainWindow_q pasteRuleAbove() - + -1 -1 - + 20 20 @@ -1372,11 +1373,11 @@ FWBMainWindow_q pasteRuleBelow() - + -1 -1 - + 20 20 @@ -1388,11 +1389,11 @@ FWBMainWindow_q removeRule() - + -1 -1 - + 20 20 @@ -1404,11 +1405,11 @@ FWBMainWindow_q fileNew() - + -1 -1 - + 20 20 @@ -1420,11 +1421,11 @@ FWBMainWindow_q fileOpen() - + -1 -1 - + 20 20 @@ -1436,11 +1437,11 @@ FWBMainWindow_q fileSave() - + -1 -1 - + 20 20 @@ -1452,11 +1453,11 @@ FWBMainWindow_q importPolicy() - + -1 -1 - + 20 20 @@ -1468,11 +1469,11 @@ FWBMainWindow_q help() - + -1 -1 - + 370 359 @@ -1484,11 +1485,11 @@ FWBMainWindow_q clearRecentFilesMenu() - + -1 -1 - + 370 359 @@ -1500,11 +1501,11 @@ FWBMainWindow_q showReleaseNotes() - + -1 -1 - + 370 359 diff --git a/src/gui/MainRes.qrc b/src/gui/MainRes.qrc index 789cdca43..5bb86af3d 100644 --- a/src/gui/MainRes.qrc +++ b/src/gui/MainRes.qrc @@ -1,238 +1,238 @@ - - Icons/routing_25.png - Icons/routing_16.png - Icons/failover-cluster-group-neg_16.png - Icons/failover-cluster-group-neg_25.png - Icons/failover-cluster-group-ref_25.png - Icons/failover-cluster-group_16.png - Icons/failover-cluster-group_25.png - Icons/state-sync-cluster-group-neg_16.png - Icons/state-sync-cluster-group-neg_25.png - Icons/state-sync-cluster-group-ref_25.png - Icons/state-sync-cluster-group_16.png - Icons/state-sync-cluster-group_25.png - Images/fwbuilder3-128x128.png - Icons/route_16.png - Icons/accept_16.png - Icons/accept_25.png - Icons/accounting_16.png - Icons/accounting_25.png - Icons/address-neg_16.png - Icons/address-neg_25.png - Icons/address-ref_25.png - Icons/address6-neg_16.png - Icons/address6-neg_25.png - Icons/address6-ref_25.png - Icons/address6_16.png - Icons/address6_25.png - Icons/address_16.png - Icons/address_25.png - Icons/addresstable-neg_16.png - Icons/addresstable-neg_25.png - Icons/addresstable-ref_25.png - Icons/addresstable_16.png - Icons/addresstable_25.png - Icons/apply.png - Icons/back_25.png - Icons/back_32.png - Icons/big-down-arrow.png - Icons/big-left-arrow.png - Icons/big-right-arrow.png - Icons/big-up-arrow.png - Icons/blank.png - Icons/blank_2x16.png - Icons/books1.png - Icons/both_25.png - Icons/both_16.png - Icons/branch_16.png - Icons/branch_25.png - Icons/cancel.png - Icons/classify_16.png - Icons/classify_25.png - Icons/clock-group-neg_16.png - Icons/clock-group-neg_25.png - Icons/clock-group-ref_25.png - Icons/clock-group_16.png - Icons/clock-group_25.png - Icons/clock-neg_25.png - Icons/clock-ref_25.png - Icons/clock_16.png - Icons/clock_25.png - Icons/close.png - Icons/compile_25.png - Icons/continue_16.png - Icons/continue_25.png - Icons/custom_16.png - Icons/custom_25.png - Icons/deny_16.png - Icons/deny_25.png - Icons/domainname-neg_16.png - Icons/domainname-neg_25.png - Icons/domainname-ref_25.png - Icons/domainname_16.png - Icons/domainname_25.png - Icons/down-arrow.png - Icons/drag_object.png - Icons/error.png - Icons/firewall-neg_16.png - Icons/firewall-neg_25.png - Icons/firewall-ref_25.png - Icons/firewall_16.png - Icons/firewall_25.png - Icons/firewall_64.png - Icons/firewall_64.xpm - Icons/floppy.png - Icons/generic.png - Icons/folder_16.png - Icons/folder_25.png - Icons/folder1.png - Icons/host-neg_16.png - Icons/host-neg_25.png - Icons/host-ref_25.png - Icons/host_16.png - Icons/host_25.png - Icons/host_64.png - Icons/host_64.xpm - Icons/inbound_25.png - Icons/inbound_16.png - Icons/info_25.png - Icons/install_25.png - Icons/interface-neg_16.png - Icons/interface-neg_25.png - Icons/interface-ref_25.png - Icons/interface_16.png - Icons/interface_25.png - Icons/key.png - Icons/left-arrow.png - Icons/library_16.png - Icons/library_25.png - Icons/lock.png - Icons/log.png - Icons/log_16.png - Icons/log_25.png - Icons/nat_16.png - Icons/nat_25.png - Icons/neg.png - Icons/network-neg_16.png - Icons/network-neg_25.png - Icons/network-ref_25.png - Icons/network6-neg_16.png - Icons/network6-neg_25.png - Icons/network6-ref_25.png - Icons/network6_16.png - Icons/network6_25.png - Icons/network_16.png - Icons/network_25.png - Icons/newfile_25.png - Icons/newobject_25.png - Icons/newobject_32.png - Icons/no.png - Icons/object-group-neg_16.png - Icons/object-group-neg_25.png - Icons/object-group-ref_25.png - Icons/object-group_16.png - Icons/object-group_25.png - Icons/cluster-neg_16.png - Icons/cluster-neg_25.png - Icons/cluster-ref_25.png - Icons/cluster_16.png - Icons/cluster_25.png - Icons/user-neg_25.png - Icons/user-ref_25.png - Icons/user_16.png - Icons/user_25.png - Icons/ok.png - Icons/openfile_25.png - Icons/options_16.png - Icons/options_25.png - Icons/outbound_25.png - Icons/outbound_16.png - Icons/physaddress-neg_25.png - Icons/physaddress-ref_25.png - Icons/physaddress_16.png - Icons/physaddress_25.png - Icons/pipe_16.png - Icons/pipe_25.png - Icons/protect_host.png - Icons/protect_net.png - Icons/protect_net_and_dmz.png - Icons/question.png - Icons/rangeaddress-neg_16.png - Icons/rangeaddress-neg_25.png - Icons/rangeaddress-ref_25.png - Icons/rangeaddress_16.png - Icons/rangeaddress_25.png - Icons/redo.png - Icons/ref.png - Icons/reject_16.png - Icons/reject_25.png - Icons/right-arrow.png - Icons/route_16.png - Icons/route_25.png - Icons/rules_druid_logo.png - Icons/ruleset_16.png - Icons/ruleset_25.png - Icons/save_25.png - Icons/search_25.png - Icons/service-custom-neg_16.png - Icons/service-custom-neg_25.png - Icons/service-custom-ref_25.png - Icons/service-custom_16.png - Icons/service-custom_25.png - Icons/service-group-neg_16.png - Icons/service-group-neg_25.png - Icons/service-group-ref_25.png - Icons/service-group_16.png - Icons/service-group_25.png - Icons/service-icmp-neg_16.png - Icons/service-icmp-neg_25.png - Icons/service-icmp-ref_25.png - Icons/service-icmp6-neg_16.png - Icons/service-icmp6-neg_25.png - Icons/service-icmp6-ref_25.png - Icons/service-icmp6_16.png - Icons/service-icmp6_25.png - Icons/service-icmp_16.png - Icons/service-icmp_25.png - Icons/service-ip-neg_16.png - Icons/service-ip-neg_25.png - Icons/service-ip-ref_25.png - Icons/service-ip_16.png - Icons/service-ip_25.png - Icons/service-tag-neg_16.png - Icons/service-tag-neg_25.png - Icons/service-tag-ref_25.png - Icons/service-tag_16.png - Icons/service-tag_25.png - Icons/service-tcp-neg_16.png - Icons/service-tcp-neg_25.png - Icons/service-tcp-ref_25.png - Icons/service-tcp_16.png - Icons/service-tcp_25.png - Icons/service-udp-neg_16.png - Icons/service-udp-neg_25.png - Icons/service-udp-ref_25.png - Icons/service-udp_16.png - Icons/service-udp_25.png - Icons/stop.png - Icons/uncheck.png - Icons/undo.png - Icons/up-arrow.png - Icons/user-neg_16.png - Icons/user-neg_25.png - Icons/user-ref_25.png - Icons/user_16.png - Icons/user_25.png - Icons/warning.png - Icons/yes.png - Images/fwbuilder3.png - Icons/tag_16.png - Icons/tag_25.png - Icons/clock-neg_16.png - Icons/library-neg_16.png - Icons/library-neg_25.png - Icons/library-ref_25.png - Icons/info_16.png - + + Icons/routing_25.png + Icons/routing_16.png + Icons/failover-cluster-group-neg_16.png + Icons/failover-cluster-group-neg_25.png + Icons/failover-cluster-group-ref_25.png + Icons/failover-cluster-group_16.png + Icons/failover-cluster-group_25.png + Icons/state-sync-cluster-group-neg_16.png + Icons/state-sync-cluster-group-neg_25.png + Icons/state-sync-cluster-group-ref_25.png + Icons/state-sync-cluster-group_16.png + Icons/state-sync-cluster-group_25.png + Images/fwbuilder3-128x128.png + Icons/route_16.png + Icons/accept_16.png + Icons/accept_25.png + Icons/accounting_16.png + Icons/accounting_25.png + Icons/address-neg_16.png + Icons/address-neg_25.png + Icons/address-ref_25.png + Icons/address6-neg_16.png + Icons/address6-neg_25.png + Icons/address6-ref_25.png + Icons/address6_16.png + Icons/address6_25.png + Icons/address_16.png + Icons/address_25.png + Icons/addresstable-neg_16.png + Icons/addresstable-neg_25.png + Icons/addresstable-ref_25.png + Icons/addresstable_16.png + Icons/addresstable_25.png + Icons/apply.png + Icons/back_25.png + Icons/back_32.png + Icons/big-down-arrow.png + Icons/big-left-arrow.png + Icons/big-right-arrow.png + Icons/big-up-arrow.png + Icons/blank.png + Icons/blank_2x16.png + Icons/books1.png + Icons/both_25.png + Icons/both_16.png + Icons/branch_16.png + Icons/branch_25.png + Icons/cancel.png + Icons/classify_16.png + Icons/classify_25.png + Icons/clock-group-neg_16.png + Icons/clock-group-neg_25.png + Icons/clock-group-ref_25.png + Icons/clock-group_16.png + Icons/clock-group_25.png + Icons/clock-neg_25.png + Icons/clock-ref_25.png + Icons/clock_16.png + Icons/clock_25.png + Icons/close.png + Icons/compile_25.png + Icons/continue_16.png + Icons/continue_25.png + Icons/custom_16.png + Icons/custom_25.png + Icons/deny_16.png + Icons/deny_25.png + Icons/domainname-neg_16.png + Icons/domainname-neg_25.png + Icons/domainname-ref_25.png + Icons/domainname_16.png + Icons/domainname_25.png + Icons/down-arrow.png + Icons/drag_object.png + Icons/error.png + Icons/firewall-neg_16.png + Icons/firewall-neg_25.png + Icons/firewall-ref_25.png + Icons/firewall_16.png + Icons/firewall_25.png + Icons/firewall_64.png + Icons/firewall_64.xpm + Icons/floppy.png + Icons/generic.png + Icons/folder_16.png + Icons/folder_25.png + Icons/folder1.png + Icons/host-neg_16.png + Icons/host-neg_25.png + Icons/host-ref_25.png + Icons/host_16.png + Icons/host_25.png + Icons/host_64.png + Icons/host_64.xpm + Icons/inbound_25.png + Icons/inbound_16.png + Icons/info_25.png + Icons/install_25.png + Icons/interface-neg_16.png + Icons/interface-neg_25.png + Icons/interface-ref_25.png + Icons/interface_16.png + Icons/interface_25.png + Icons/key.png + Icons/left-arrow.png + Icons/library_16.png + Icons/library_25.png + Icons/lock.png + Icons/log.png + Icons/log_16.png + Icons/log_25.png + Icons/nat_16.png + Icons/nat_25.png + Icons/neg.png + Icons/network-neg_16.png + Icons/network-neg_25.png + Icons/network-ref_25.png + Icons/network6-neg_16.png + Icons/network6-neg_25.png + Icons/network6-ref_25.png + Icons/network6_16.png + Icons/network6_25.png + Icons/network_16.png + Icons/network_25.png + Icons/newfile_25.png + Icons/newobject_25.png + Icons/newobject_32.png + Icons/no.png + Icons/object-group-neg_16.png + Icons/object-group-neg_25.png + Icons/object-group-ref_25.png + Icons/object-group_16.png + Icons/object-group_25.png + Icons/cluster-neg_16.png + Icons/cluster-neg_25.png + Icons/cluster-ref_25.png + Icons/cluster_16.png + Icons/cluster_25.png + Icons/user-neg_25.png + Icons/user-ref_25.png + Icons/user_16.png + Icons/user_25.png + Icons/ok.png + Icons/openfile_25.png + Icons/options_16.png + Icons/options_25.png + Icons/outbound_25.png + Icons/outbound_16.png + Icons/physaddress-neg_25.png + Icons/physaddress-ref_25.png + Icons/physaddress_16.png + Icons/physaddress_25.png + Icons/pipe_16.png + Icons/pipe_25.png + Icons/protect_host.png + Icons/protect_net.png + Icons/protect_net_and_dmz.png + Icons/question.png + Icons/rangeaddress-neg_16.png + Icons/rangeaddress-neg_25.png + Icons/rangeaddress-ref_25.png + Icons/rangeaddress_16.png + Icons/rangeaddress_25.png + Icons/redo.png + Icons/ref.png + Icons/reject_16.png + Icons/reject_25.png + Icons/right-arrow.png + Icons/route_16.png + Icons/route_25.png + Icons/rules_druid_logo.png + Icons/ruleset_16.png + Icons/ruleset_25.png + Icons/save_25.png + Icons/search_25.png + Icons/service-custom-neg_16.png + Icons/service-custom-neg_25.png + Icons/service-custom-ref_25.png + Icons/service-custom_16.png + Icons/service-custom_25.png + Icons/service-group-neg_16.png + Icons/service-group-neg_25.png + Icons/service-group-ref_25.png + Icons/service-group_16.png + Icons/service-group_25.png + Icons/service-icmp-neg_16.png + Icons/service-icmp-neg_25.png + Icons/service-icmp-ref_25.png + Icons/service-icmp6-neg_16.png + Icons/service-icmp6-neg_25.png + Icons/service-icmp6-ref_25.png + Icons/service-icmp6_16.png + Icons/service-icmp6_25.png + Icons/service-icmp_16.png + Icons/service-icmp_25.png + Icons/service-ip-neg_16.png + Icons/service-ip-neg_25.png + Icons/service-ip-ref_25.png + Icons/service-ip_16.png + Icons/service-ip_25.png + Icons/service-tag-neg_16.png + Icons/service-tag-neg_25.png + Icons/service-tag-ref_25.png + Icons/service-tag_16.png + Icons/service-tag_25.png + Icons/service-tcp-neg_16.png + Icons/service-tcp-neg_25.png + Icons/service-tcp-ref_25.png + Icons/service-tcp_16.png + Icons/service-tcp_25.png + Icons/service-udp-neg_16.png + Icons/service-udp-neg_25.png + Icons/service-udp-ref_25.png + Icons/service-udp_16.png + Icons/service-udp_25.png + Icons/stop.png + Icons/uncheck.png + Icons/undo.png + Icons/up-arrow.png + Icons/user-neg_16.png + Icons/user-neg_25.png + Icons/user-ref_25.png + Icons/user_16.png + Icons/user_25.png + Icons/warning.png + Icons/yes.png + Images/fwbuilder3.png + Icons/tag_16.png + Icons/tag_25.png + Icons/clock-neg_16.png + Icons/library-neg_16.png + Icons/library-neg_25.png + Icons/library-ref_25.png + Icons/info_16.png + diff --git a/src/gui/ObjectManipulator.cpp b/src/gui/ObjectManipulator.cpp index ad94dff62..8e5dc2b57 100644 --- a/src/gui/ObjectManipulator.cpp +++ b/src/gui/ObjectManipulator.cpp @@ -349,14 +349,6 @@ ObjectTreeViewItem* ObjectManipulator::insertObject(ObjectTreeViewItem *itm, if (Resources::global_res->getObjResourceBool(obj,"hidden") ) return NULL; ObjectTreeViewItem *nitm = NULL; - QString icn_filename; - - if (FWBTree().isStandardFolder(obj)) - icn_filename = ":/Icons/SystemGroup/icon-tree"; - else - icn_filename = (":/Icons/" + obj->getTypeName() + "/icon-tree").c_str(); - - if (obj->getRO()) icn_filename = ":/Icons/lock.png"; if (Resources::global_res->getResourceBool( string("/FWBuilderResources/Type/") + @@ -366,12 +358,10 @@ ObjectTreeViewItem* ObjectManipulator::insertObject(ObjectTreeViewItem *itm, nitm->setLib(""); nitm->setText( 0, getTreeLabel(obj) ); + QPixmap pm; - if ( ! QPixmapCache::find( icn_filename, pm) ) - { - pm.load( icn_filename ); - QPixmapCache::insert( icn_filename, pm); - } + setObjectIcon(obj, &pm); + nitm->setIcon( 0, QIcon(pm) ); nitm->setIcon( 1, QIcon(pm) ); nitm->setFlags(nitm->flags() | Qt::ItemIsDragEnabled); @@ -971,27 +961,11 @@ void ObjectManipulator::addTreePage( FWObject *lib) itm1->setFlags(itm1->flags() | Qt::ItemIsDragEnabled); - itm1->setText( 0, getTreeLabel( lib ) ); - if (lib->isReadOnly()) - { - QPixmap pm; - if ( ! QPixmapCache::find( ":/Icons/lock.png", pm) ) - { - pm.load( ":/Icons/lock.png" ); - QPixmapCache::insert( ":/Icons/lock.png", pm); - } - itm1->setIcon(0, pm ); - } else - { - string icn = ":/Icons/" + lib->getTypeName() + "/icon-tree"; - QPixmap pm; - if (!QPixmapCache::find( icn.c_str(), pm)) - { - pm.load( icn.c_str() ); - QPixmapCache::insert( icn.c_str(), pm); - } - itm1->setIcon( 0, pm); - } + itm1->setText(0, getTreeLabel(lib)); + + QPixmap pm; + setObjectIcon(lib, &pm); + itm1->setIcon( 0, pm); itm1->setProperty("type", lib->getTypeName().c_str() ); itm1->setFWObject( lib ); @@ -2318,7 +2292,10 @@ void ObjectManipulator::lockObject() // lock objects inside because they won't be able to unlock them. if (lib->getId()!=FWObjectDatabase::STANDARD_LIB_ID && lib->getId()!=FWObjectDatabase::TEMPLATE_LIB_ID) + { obj->setReadOnly(true); + updateObjectInTree(obj, false); + } } getCurrentObjectTree()->setLockFlags(); @@ -2345,7 +2322,10 @@ void ObjectManipulator::unlockObject() FWObject *lib = obj->getLibrary(); if (lib->getId()!=FWObjectDatabase::STANDARD_LIB_ID && lib->getId()!=FWObjectDatabase::TEMPLATE_LIB_ID) + { obj->setReadOnly(false); + updateObjectInTree(obj, false); + } } getCurrentObjectTree()->setLockFlags(); @@ -4095,4 +4075,25 @@ void ObjectManipulator::guessSubInterfaceTypeAndAttributes(Interface *intf) delete int_prop; } +void ObjectManipulator::setObjectIcon(FWObject *obj, QPixmap *pm) +{ + QString icn_alias; + + if (obj->getRO()) + icn_alias = ":/Icons/lock"; + else + { + if (FWBTree().isStandardFolder(obj)) + icn_alias = ":/Icons/SystemGroup/icon-tree"; + else + icn_alias = QString(":/Icons/") + obj->getTypeName().c_str() + "/icon-tree"; + } + + if ( ! QPixmapCache::find(icn_alias, *pm) ) + { + pm->load(icn_alias ); + QPixmapCache::insert(icn_alias, *pm); + } +} + diff --git a/src/gui/ObjectManipulator.h b/src/gui/ObjectManipulator.h index f441f188d..31807a9a9 100644 --- a/src/gui/ObjectManipulator.h +++ b/src/gui/ObjectManipulator.h @@ -49,8 +49,11 @@ class ObjectTreeView; class ObjectTreeViewItem; class QComboBox; class QMenu; +class QPixmap; + class ProjectPanel; + namespace libfwbuilder { class Firewall; @@ -58,6 +61,7 @@ namespace libfwbuilder class Library; } + class HistoryItem { ObjectTreeViewItem *itm; int objId; @@ -69,18 +73,9 @@ class HistoryItem { int id() { return objId; } }; -/*class ObjToolTip : public QToolTip { - - ObjectTreeView *otv; - public: - ObjToolTip(ObjectTreeView *widget); - virtual ~ObjToolTip() {} - virtual void maybeTip(const QPoint &p); -};*/ - -class ObjectManipulator : public QWidget/*ObjectManipulator_q*/ { - - Q_OBJECT +class ObjectManipulator : public QWidget +{ + Q_OBJECT; std::vector idxToLibs; std::vector idxToTrees; @@ -116,6 +111,8 @@ class ObjectManipulator : public QWidget/*ObjectManipulator_q*/ { void addTreePage(libfwbuilder::FWObject *lib); void showObjectInTree(ObjectTreeViewItem *otvi); + void setObjectIcon(libfwbuilder::FWObject *obj, QPixmap *pm); + int getIdxForLib(libfwbuilder::FWObject*); void addLib( libfwbuilder::FWObject *lib, QTreeWidget* otv=NULL); void removeLib(libfwbuilder::FWObject*); diff --git a/src/gui/ObjectTreeView.cpp b/src/gui/ObjectTreeView.cpp index ea4375282..42c512bfd 100644 --- a/src/gui/ObjectTreeView.cpp +++ b/src/gui/ObjectTreeView.cpp @@ -292,10 +292,10 @@ void ObjectTreeView::updateTreeIcons() QString icn; QPixmap pm_lock; - if ( ! QPixmapCache::find( ":/Icons/lock.png", pm_lock) ) + if ( ! QPixmapCache::find( ":/Icons/lock", pm_lock) ) { - pm_lock.load( ":/Icons/lock.png" ); - QPixmapCache::insert( ":/Icons/lock.png", pm_lock); + pm_lock.load( ":/Icons/lock" ); + QPixmapCache::insert( ":/Icons/lock", pm_lock); } while ( *it )