[CDR 2017-2021] Вызвать refresh палитры

mnemonix

ॐ मणि पद्मे हूँ
Топикстартер
Сообщения
576
Реакции
174
Может подскажете, как реализовать кнопкой или макросом refresh, в стандартной customization не нашёл:


refresh.jpg
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835

DukereD

макрософил
Сообщения
459
Реакции
112
а просто application.refresh не помогает?
 

mnemonix

ॐ मणि पद्मे हूँ
Топикстартер
Сообщения
576
Реакции
174
Кода не нашел, application.refresh не помогает, хочется удалить лишние цвета из палитры документа, а если нужно- вставить.
Со вставкой проблем нет: ActiveDocument.AddColorsToDocPalette
С удалением: надо перебрать все цвета в документе, сравнить с палитрой и, если в палитре есть неиспользуемые, то удалить.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835

dastin

Некромант-любитель
12 лет на форуме
Сообщения
2 131
Реакции
2 027
без GUID
***********
1 and/or 2
*************
запускать первый Sub

Код:
Sub Reset_DocPalette()

ResetPalette ActiveDocument
End Sub

Sub ResetPalette(ByRef iDoc As Document)

Dim CurColNo As Integer, CurPg As Page, CurSh As Shape, CurSR As ShapeRange, DoIt As Boolean

For CurColNo = iDoc.Palette.Colors.Count To 1 Step -1
   DoIt = True
   For Each CurPg In iDoc.Pages
      Set CurSR = CurPg.Shapes.All
      If CurSR.Shapes.Count > 0 Then
         For Each CurSh In CurSR.Shapes
            If CurSh.Fill.Type = cdrUniformFill Then
               If CurSh.Fill.UniformColor.IsSame(iDoc.Palette.Colors(CurColNo)) Then DoIt = False
            End If
         Next CurSh
      End If
   Next CurPg
   If DoIt Then iDoc.Palette.RemoveColor CurColNo
Next CurColNo

End Sub

add
****
группы, поверклипы, пантоны в поиск не попадают
 
Последнее редактирование:

mnemonix

ॐ मणि पद्मे हूँ
Топикстартер
Сообщения
576
Реакции
174
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835