Commit Graph

286 Commits

Author SHA1 Message Date
Konstantina Chremmou
60da6080f9
Refactored three button dialog (#2627)
* ThreeButtonDialog simplification step1: Help name.
* ThreeButtonDialog simplification step2: Window title.
* ThreeButtonDialog simplification step3: Removed class Details.
* ThreeButtonDialog simplification step4: Removed unnecessary (and wrong) class.
* ThreeButtonDialog simplification step5: Compacted TDButton constructors.
* ThreeButtonDialog simplification step6: Removed purposeless methods.
* ThreeButtonDialog simplification step7: Refactored constructor logic.
* ThreeButtonDialog simplification step8: Icon normalisation.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2020-04-22 14:47:03 +01:00
Konstantina Chremmou
0ffccc6d03 CA-338184: Check for null before accessing host properties.
Also, property modernisation.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2020-04-21 10:38:15 +01:00
Konstantina Chremmou
a07c68a345 CA-334756: Allow detaching and reattaching all types of SRs.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2020-03-03 09:30:00 +00:00
Konstantina Chremmou
76ba20205e CA-335633: Prevent crash due to iterating through modified dictionary. Ensure that per-XenObject dialogs closed by the user are removed from the tracking table.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2020-02-28 13:33:57 +00:00
Konstantina Chremmou
cf633c3d9d Removed duplicate method.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2020-02-28 13:33:57 +00:00
Konstantina Chremmou
1bcec343f1 Merge remote-tracking branch 'upstream/feature/REQ-803' 2020-02-13 11:43:17 +00:00
Konstantina Chremmou
f7391e991b
CA-156873, CP-31105 (partial): Apply common branding and versioning to assemblies; branding refactoring
Added brand management files and refactored the following brand variables:
* BRANDING_XENSERVER_UPDATE_URL
* BRANDING_PERF_ALERT_MAIL_LANGUAGE_DEFAULT
* BRANDING_SEARCH
* BRANDING_UPDATE
* BRANDING_BACKUP
* BRANDING_LEGACY_PRODUCT_BRAND
* ISO
* BRANDING_VERSION_5_6
* BRANDING_VERSION_6_2
* BRANDING_VERSION_6_0
* BRANDING_VERSION_6_5
* BRANDING_VERSION_7_0
* BRANDING_VERSION_7_1_2
* BRANDING_VERSION_8_0
* BRANDING_VERSION_8_1
* BRANDIND_COPYRIGHT
* BRANDING_COPYRIGHT_2

Also: Try passing the timestamp server as parameter
2020-01-22 14:47:39 +00:00
Konstantina Chremmou
fc1cbf636e Simplified signature of connection events.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-12-06 11:17:46 +00:00
Konstantina Chremmou
a18d6d3ccb The application would not exit if closed with a connection dialog open. Performance improvement.
- Set owner form for some connection commands to ensure that the application
will exit if the user attempts to close the main window while a connection
dialog is visible.
- Do not iterate through all the VMs of the connection in order to close
potentially open VM dialogs.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-12-06 11:17:46 +00:00
Konstantina Chremmou
e34cf30168 Renamed dialog to match containing file name. Minor refactoring.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-12-06 11:17:46 +00:00
Konstantina Chremmou
6bc54fc1e8 CA-330686: use the SM capabilities instead of the allowed operations for deducing if the SR supports mirroring.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-11-18 13:01:33 +00:00
Mihaela Stoica
aca8be2939 CP-32431: Add version check to the drag and drop commands
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-11-13 13:39:27 +00:00
Konstantina Chremmou
99572da0fb Corrections to the logging of Win32 exceptions. Minor refactoring.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-11-13 12:31:44 +00:00
Konstantina Chremmou
f4265732ca Do not localise log entries or ellipsise names. Log exception stack traces where applicable.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-11-13 12:31:44 +00:00
Konstantina Chremmou
fb2edf99b8 Do not initialise a logger if a class does not use it.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-11-13 12:31:44 +00:00
Mihaela Stoica
b73f5c9beb CP-32431: Remove the CPU feature compatibility check from XenCenter
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-11-12 09:47:04 +00:00
Konstantina Chremmou
ec79720057 Do not pass the delegates showing messages as parameters to the actions, but rather have them handle action events.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-10-14 09:24:36 +01:00
Konstantina Chremmou
441734be82 CP-32140: Allow the user to select which XCM VPX to use when there are multiple XCM VPXs in the pool.
Also, corrected the RBAC permission check after stopping using the conversion plugin.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-09-25 13:25:26 +01:00
Konstantina Chremmou
ca72f25ebe Merge remote-tracking branch 'upstream/master' into feature/REQ-756
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

# Conflicts:
#	XenAdmin/MainWindow.Designer.cs
#	XenAdmin/MainWindow.resx
#	XenAdmin/Properties/Resources.resx
2019-09-13 13:17:32 +01:00
Mihaela Stoica
57741506b4 CP-32070: Fix icon visibility + some improvements
- make the info messages icon+text instead of clickable icons. Some rearrangements of the controls on the dialog to accommodate them.
- in the "Assign To Snapshot Schedule" dropdown item, do not add a separator if there are no suitable policies listed.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-09-07 01:35:46 +01:00
Konstantina Chremmou
9157735803 CP-30958: Initial implementation of the Conversion Manager in XenCenter. (#2481)
* CP-30958: Initial implementation of the Conversion Manager in XenCenter.
* Corrections following review and improvements.
* Further corrections and improvements.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-08-22 10:47:43 +01:00
Konstantina Chremmou
ff0cee88ac CA-293375: "Remove Server" main menu item should not be enabled for the pool master.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-08-15 11:33:01 +01:00
Konstantina Chremmou
adab54a9c5 CA-293375: Fixed inconsistencies in the items related to removing servers from a pool
- Add item "Remove From Pool" to the main Server menu; it should be enabled
if the selected servers are removable and disabled at all other times.
The item should be present in the server's right click menu only if it is enabled.
- Replaced the above item in the Pool menu with the dropdown "Remove Server"
where the user can select the server to remove from the list of removable
servers.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-08-15 11:33:01 +01:00
Konstantina Chremmou
dd94ebaf3f Duplicate key. Use "Delete" instead of "Delete VM" to match menus for other objects.
Made Debug Assertion more detailed to aid us pick unique hotkeys.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-07-25 13:09:22 +01:00
Mihaela Stoica
76c806c0b3 CA-322790: Fix unhandled exception when the host cannot be reached to execute an API call.
In the CrossPoolMigrateCanMigrateFilter a WebException can be raised if the host cannot be reached to execute the API call that asserts is the VM can be migrated there. With these changes, we catch any exception (not just Failure) and mark the VM as not migratable (because we couldn't assert if it can be migrated to that host).

Also fixed other places where the same error might occur.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2019-07-24 09:46:00 +01:00
Konstantina Chremmou
8f2794b89d Prevent crash and improve behaviour when the user tries to configure/disable HA in a pool that has lost the HA statefile.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-07-23 10:28:01 +01:00
Konstantina Chremmou
4ce9878b45 Refactored the VIFDialog to fix various problems: (#2398)
* Refactored the VIFDialog to fix various problems:
- Launch the dialog in using blocks.
- Event GotFocus is not meant to be handled directly in the code.
- Populate the dialog in the OnLoad override instead of the constructor
  as this causes problems at design time.
- Popping up an error message for duplicate MAC on combobox item
  selection or textbox text change is not optimal UX. Perform this
  check once when closing the form. Additionally the parent form of the
  pop up should be the dialog, not the main window.
- The validation messages are not obvious to the user because they are
  hidden in the tooltip of a disabled button. Show them inline instead.
- There is no need to create commands for VIF creation/change; use
  the relevant actions instead.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* Corrections as per code review plus some more code tidy and refactoring.

- Added option to suppress Create/DeleteVIFActions
- Use property RebootRequired to indicate hot-plugging is unavailable
  (assigning various objects of different types to the Result of the action
  during its run may cause confusion).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-04-25 08:23:09 +01:00
Konstantina Chremmou
8492d2713a No need to set ShowProgress to its default value. Removed unused constructor. Compacted Properties.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-04-24 15:03:20 +01:00
Konstantina Chremmou
6273856761 Prevent VisualStudio's designer from crashing when opening the MainWindow.
Made command parameterless constructors public; made browsable events public;
replaced manually written with auto-generated code.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-04-24 15:03:20 +01:00
Konstantina Chremmou
c444d21719 Removed duplicate resource.
Also, renamed message to match naming convention for same category messages.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-04-24 15:03:20 +01:00
Konstantina Chremmou
cad6239c3d Enforce icon size 32x32 on the CommandErrorDialog. Compacted constructors
and removed static method creating the dialog from XenObject; the constructor
can be used for this purpose if the command's CantExecuteReasons are keyed
on IXenObjet instead of SelectedItem.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-03-20 16:58:02 +00:00
Konstantina Chremmou
eef3320eca Removed code applicable to servers earlier than dundee since connection to them is now blocked.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-02-06 09:25:38 +00:00
minli1
dba6fe1c9e CA-30405: Change/remove message to generic for VM.suspend with VGPU
Signed-off-by: Min Li <min.li1@citrix.com>
2019-01-10 13:34:23 +00:00
Konstantina Chremmou
cd2c2f6ea7 Reduced accessibility of controls to private. Minor refactoring.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2019-01-08 12:01:46 +00:00
Mihaela Stoica
88ec36ae5f CA-300760: Allow VM intra-pool migration through the wizard, even if the storage migration is not allowed
- if a VM can migrate inside a pool, then we will allow it in the wizard, even if storage migration is not allowed
- If it is a intra-pool migration (without moving the disks), then use the VM migrate action (which does a VM.pool_migrate), not the cross pool migrate action.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-11-26 16:34:46 +00:00
Konstantina Chremmou
ff708345fa Added functionality allowing renaming of folders. Fixed issue where the form
closed on double-clicking on the node expanded icon. Some improvement in the
use of the folder name prompt dialog.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-26 10:29:39 +00:00
Konstantina Chremmou
16c88cc7b7 CA-302791: Rewrote the ChangeFolder dialog to fix usability issues.
- Corrected folder selection; reduced clicks required to select folders;
  improved text; added delete button.
- Moved FolderChangeDialogTreeView to the same folder as the other TreeViews;
- Added missing null checks to the MutliSelectTreeView and hid properties
  HScrollPos and VScrollPos from VS's designer (the former was initialised
  to zero every time the designer was updated, causing the treeview images
  to disappear).

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-11-26 10:29:39 +00:00
Aaron Robson
f95f094e60 CA-172658: Descriptive error message when failing to suspend a VM fro… (#2275)
* CA-172658: Descriptive error message when failing to suspend a VM f om XenCenter.
Checking if a VM has a pass-through GPU or a vGPU assigned and showing the reason in dialog and tooltip.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-11-08 22:27:59 +00:00
Aaron Robson
312ed10b80 CA-293814: If there are no VMs running, immediately start entering Ma… (#2253)
* CA-293814: If there are no VMs running, entering Maintenance Mode without showing Dialog.

* CA-293814: Refreshing the view after shortcutting entering the mainenance view (no running VMs so no window shown) in the same way as the rest of the updates are managed.
Please see: https://github.com/xenserver/xenadmin/pull/2264

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-10-24 11:42:13 +01:00
Konstantina Chremmou
90589a30c9 Modified treeview and toolbar updates (#2264)
This PR is aimimg to (1) fix a regression introduced by #2223 whereby the toolbar items did not have the correct state on first launch; (2) improve performance by removing some updates which I believe are not needed.

* Removed some duplicate calls to RefershTreeView and UpdateToolbars because
they are called within the action's Complete event handler.
Also, normalise the way the treeview refresh is requested by the various actions the
commands are launching.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* Removed some explicit calls to refresh the treeview since this is done by
the connection result handlers.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* The toolbars and tabs should be updated every time the treeview is refreshed.

This should happen when the refresh event is handled rather than calling
UpdateToolbars explicitly after a treeview refresh is requested; also, it is
the treeview refreshes that should be throttled and not the toolbar and
tab updates (the throttling mechanism may need correction).
Also, removed unnecessary Invoke as we are already on the UI thread.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>

* Simplified UpdateManager.Update event declaration.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-10-16 16:24:54 +01:00
Konstantina Chremmou
988db0cbba Separated the MoveVirtualDiskDialog from the MigrateVirtualDiskDialog so it
is easier to understand which one is called from which command.
Removed superfluous TableLayoutPanel.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-10-08 12:33:04 +01:00
Konstantina Chremmou
b6420b6c12 CA-289948: If migration of individual VDIs is not allowed due to licensing restrictions,
do not show the upsell dialog; the user should be able to move the VDIs without
having to detach them first.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-10-08 12:33:04 +01:00
Konstantina Chremmou
c3fcffa236 When we end the connection call OnConnectionClosed instead of OnConnectionStateChanged.
This avoids firing the ConnectionClosed event explicitly after EndConnect;
it also avoids refreshing explicitly the tree as the main Window handles the
ConnectionClosed event which requests a refresh.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-10-08 11:10:44 +01:00
Aaron Robson
ca1113fbcc CA-287643: Replaced list view with data grid view to resolve column sizing issue and for consistency with the rest of the product. (#2226)
CA-287643: Replaced list view with data grid view to resolve column sizing issue and for consistency with the rest of the product.

Signed-off-by: Aaron Robson <aaron.robson@citrix.com>
2018-10-02 10:18:34 +01:00
Mihaela Stoica
56a3725b36 Corrected the title and description of VM lifecycle operations when run as Mulltiple/Parallel actions
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-08-13 17:18:53 +01:00
Konstantina Chremmou
b19d2fdeec CA-104539: Don't allow the user to make a pool into a standalone server if HA is enabled
or being enabled. Although the CLI allows it, it makes sense to disallow deleting the pool
when HA is on because XenCenter does not offer enabling HA if there is no pool there.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-08-10 09:50:31 +01:00
Konstantina Chremmou
9a7fcde66e CA-289948: Do not show the upsell dialog if migration is not permitted due to licensing restrictions; launch the move VM dialog instead.
Also, removed unused constructor.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-05-18 16:37:12 +01:00
Mihaela Stoica
8992e55141 CA-286291: Add the additional menu items immediately after the first item, so we don't have to wait for the WLB recommendations to be
retrieved.

Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
2018-05-14 12:30:40 +01:00
Mihaela Stoica
ba8a612c01 CA-286291: Remove the ToolTip from the VMOperationTollStripManuSubItem, as the reason why the item is disabled is already included in the items's MenuText
This change improves the performance of the drop-down menu considerably, as it avoids the server calls from the Command.ToolTipText

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-05-14 12:30:40 +01:00
Mihaela Stoica
025e92bc7d CA-286291: Some more refactoring in VMOperationToolStripManuItem
(including the removal of the HostListUpdater class)

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2018-05-14 12:30:40 +01:00