Class: Uniword::WindowsWordImplementation

Inherits:
WordImplementation show all
Defined in:
lib/uniword/word_implementation_windows.rb

Instance Method Summary collapse

Methods inherited from WordImplementation

#available_color_schemes, #available_font_schemes, #available_stylesets, #available_themes, detect

Instance Method Details

#cache_pathObject



56
57
58
59
# File 'lib/uniword/word_implementation_windows.rb', line 56

def cache_path
  appdata = ENV["APPDATA"] || Dir.home || "."
  File.join(appdata, ".uniword")
end

#color_schemes_pathObject



36
37
38
39
40
41
42
43
44
# File 'lib/uniword/word_implementation_windows.rb', line 36

def color_schemes_path
  return nil unless installed?

  appdata = ENV.fetch("APPDATA", nil)
  return nil unless appdata

  File.join(appdata, "Microsoft", "Templates", "Document Themes",
            "Theme Colors")
end

#font_schemes_pathObject



46
47
48
49
50
51
52
53
54
# File 'lib/uniword/word_implementation_windows.rb', line 46

def font_schemes_path
  return nil unless installed?

  appdata = ENV.fetch("APPDATA", nil)
  return nil unless appdata

  File.join(appdata, "Microsoft", "Templates", "Document Themes",
            "Theme Fonts")
end

#installed?Boolean

Returns:

  • (Boolean)


5
6
7
8
# File 'lib/uniword/word_implementation_windows.rb', line 5

def installed?
  # Check if Word is installed by checking for common paths
  !word_install_path.nil?
end

#stylesets_pathObject



27
28
29
30
31
32
33
34
# File 'lib/uniword/word_implementation_windows.rb', line 27

def stylesets_path
  return nil unless installed?

  appdata = ENV.fetch("APPDATA", nil)
  return nil unless appdata

  File.join(appdata, "Microsoft", "QuickStyles")
end

#themes_pathObject



18
19
20
21
22
23
24
25
# File 'lib/uniword/word_implementation_windows.rb', line 18

def themes_path
  return nil unless installed?

  appdata = ENV.fetch("APPDATA", nil)
  return nil unless appdata

  File.join(appdata, "Microsoft", "Templates", "Document Themes")
end

#versionObject



10
11
12
13
14
15
16
# File 'lib/uniword/word_implementation_windows.rb', line 10

def version
  return nil unless installed?

  # Read version from registry would require win32ole
  # For now, return a placeholder
  "Unknown"
end